A RetroSearch Logo

Home - News ( United States | United Kingdom | Italy | Germany ) - Football scores

Search Query:

Showing content from https://github.com/arduino/arduino-fwuploader/commit/bac1d051b67b509e741818e688530d46a68a0c88 below:

Add documentation on the new plugin system (#179) · arduino/arduino-fwuploader@bac1d05 · GitHub

1 +

# Plugins

2 + 3 +

A new plugin-system has been implemented in the Arduino Firmware Uploader. A plugin is basically another

4 +

executable/tool, specifically tailored for a board/family of boards, but with a well-defined user interface. Inside the

5 +

plugin, there is all the business logic to support a board/family of boards. Every plugin implements the

6 +

[interface](https://pkg.go.dev/github.com/arduino/fwuploader-plugin-helper#Plugin) contained in the

7 +

[fwuploader-plugin-helper](https://github.com/arduino/fwuploader-plugin-helper) repository.

8 + 9 +

The fwuploader is still responsible for downloading the files required for the plugin to work:

10 + 11 +

- plugins/tools

12 +

- certificates

13 +

- firmware

14 + 15 +

The new information is hosted in the

16 +

[plugin_firmware_index.json](https://downloads.arduino.cc/arduino-fwuploader/boards/plugin_firmware_index.json), which

17 +

is generated by `generator.py`.

18 + 19 +

## uno-r4-wifi-plugin

20 + 21 +

The source code can be found [here](https://github.com/arduino/uno-r4-wifi-fwuploader-plugin).

22 + 23 +

### Known issues

24 + 25 +

#### Espflash panic `UnknownModel`

26 + 27 +

On some arm64 Linux distros, version 2.0.0 of [espflash](https://github.com/esp-rs/espflash/) might panic with the

28 +

following error:

29 + 30 +

```

31 +

Error: × Main thread panicked.

32 +

├─▶ at espflash/src/interface.rs:70:33

33 +

╰─▶ called `Result::unwrap()` on an `Err` value: UnknownModel

34 +

help: set the `RUST_BACKTRACE=1` environment variable to display a

35 +

backtrace.

36 +

```

37 + 38 +

#### The ESP32 module does not go into download mode

39 + 40 +

On Linux, the UNO R4 WiFi must be plugged into a **USB hub** to make the flash process work. Otherwise, it won’t be able

41 +

to reboot in download mode.

42 + 43 +

```bash

44 +

$ arduino-fwuploader firmware flash -b arduino:renesas_uno:unor4wifi -a /dev/ttyACM0 -v --log-level debug

45 + 46 +

Done in 0.001 seconds

47 +

Write 46588 bytes to flash (12 pages)

48 +

[==============================] 100% (12/12 pages)

49 +

Done in 3.106 seconds

50 + 51 +

Waiting to flash the binary...

52 +

time=2023-07-18T14:50:10.492+02:00 level=INFO msg="getting firmware version"

53 +

time=2023-07-18T14:50:10.509+02:00 level=INFO msg="firmware version is > 0.1.0 using sketch"

54 +

time=2023-07-18T14:50:10.511+02:00 level=INFO msg="check if serial port has changed"

55 +

[2023-07-18T12:50:20Z INFO ] 🚀 A new version of espflash is available: v2.0.1

56 +

[2023-07-18T12:50:20Z INFO ] Serial port: '/dev/ttyACM0'

57 +

[2023-07-18T12:50:20Z INFO ] Connecting...

58 +

[2023-07-18T12:50:20Z INFO ] Unable to connect, retrying with extra delay...

59 +

[2023-07-18T12:50:21Z INFO ] Unable to connect, retrying with default delay...

60 +

[2023-07-18T12:50:21Z INFO ] Unable to connect, retrying with extra delay...

61 +

[2023-07-18T12:50:21Z INFO ] Unable to connect, retrying with default delay...

62 +

[2023-07-18T12:50:21Z INFO ] Unable to connect, retrying with extra delay...

63 +

[2023-07-18T12:50:21Z INFO ] Unable to connect, retrying with default delay...

64 +

[2023-07-18T12:50:21Z INFO ] Unable to connect, retrying with extra delay...

65 +

Error: espflash::connection_failed

66 + 67 +

× Error while connecting to device

68 +

╰─▶ Failed to connect to the device

69 +

help: Ensure that the device is connected and the reset and boot pins are

70 +

not being held down

71 + 72 +

Error: exit status 1

73 +

ERRO[0021] couldn't update firmware: exit status 3

74 +

INFO[0021] Waiting 1 second before retrying...

75 +

INFO[0022] Uploading firmware (try 2 of 9)

76 +

time=2023-07-18T14:50:22.229+02:00 level=INFO msg=upload_command_sketch

77 +

time=2023-07-18T14:50:22.230+02:00 level=INFO msg="sending serial reset"

78 +

Error: reboot mode: upload commands sketch: setting DTR to OFF

79 +

...

80 +

```

81 + 82 +

#### I flashed the certificates, but I am unable to reach the host

83 + 84 +

The **whole certificate chain** is needed to make it work. Using

85 +

[`-u` flags](commands/arduino-fwuploader_certificates_flash.md#options) (ex: `-u www.arduino.cc:443`) won’t work because

86 +

it only downloads the root certificates. The solution is to use only the

87 +

[`-f` flag](commands/arduino-fwuploader_certificates_flash.md#options) and provide a pem certificate containing the

88 +

whole chain.

89 + 90 +

#### My antivirus says that `espflash` is a threat

91 + 92 +

The binary is not signed [#348](https://github.com/esp-rs/espflash/issues/348), and some antiviruses might complain. If

93 +

still doubtful, https://github.com/esp-rs/espflash is open source, and it's possible to double-check the md5 hashes of

94 +

the binary and the source code. For more information, you can follow

95 +

[this](https://forum.arduino.cc/t/radio-module-firmware-version-0-2-0-is-now-available/1147361/11) forum thread.

96 + 97 +

#### Not running on armv7

98 + 99 +

At the moment, we are always downloading the armv6 binaries. Since they are dynamically linked, most likely they are not

100 +

going to run on armv7. More infos on the topic:

101 +

[here](https://developer.arm.com/documentation/ddi0419/c/Appendices/ARMv7-M-Differences/ARMv6-M-and-ARMv7-M-compatibility).


RetroSearch is an open source project built by @garambo | Open a GitHub Issue

Search and Browse the WWW like it's 1997 | Search results from DuckDuckGo

HTML: 3.2 | Encoding: UTF-8 | Version: 0.7.4