A new version of the firmware for the radio module on the UNO R4 WiFi board is now available.
This version adds some important capabilities to the board:
- Support for use as an Arduino IoT Cloud Device
- Support for BLE
- Fixes and enhancements related to SSL certificates
Full changelog here:
https://github.com/arduino/uno-r4-wifi-usb-bridge/compare/0.1.0...0.2.0
Updating the Firmware on Your Board
I'll provide instructions you can follow to update the radio module firmware on your UNO R4 WiFi board. Please let me know if you have any questions or problems while following the instructions.
There are three available methods for updating the firmware. I'll provide instructions for all three below. You can pick whichever one of the three is most convenient to you:
Arduino IDE 2.x
Support for updating the UNO R4 WiFi was added in Arduino IDE 2.2.0.
- Connect the UNO R4 WiFi board to your computer with the USB cable.
- If you have the Arduino IDE Serial Monitor or Serial Plotter running, close them.
ⓘ You can close Serial Monitor by clicking the X icon that appears on its tab when selected:
- Select Tools > Firmware Updater from the Arduino IDE menus.
The "Firmware Updater" dialog will open. - Select the UNO R4 WiFi from the "Select Board" menu in the "Firmware Updater" dialog.
- Click the "CHECK UPDATES" button.
An "INSTALL" button will be added to the dialog. - Click the "INSTALL" button.
An "Installing firmware" process will start, as indicated by the message near the bottom of the dialog. - Wait for the firmware update process to finish successfully, as indicated by the message in the dialog:
Firmware successfully installed.
- Click the X icon in the dialog.
The dialog will close. - Disconnect the USB cable of the UNO R4 WiFi board from your computer.
- Connect the UNO R4 WiFi board to your computer with the USB cable again.
Arduino Firmware Uploader
If you prefer to update the firmware via the command line, this can be done using the Arduino Firmware Uploader tool.
Installation and usage instructions are available here:
https://arduino.github.io/arduino-fwuploader/
Update Scripts
The original approach of updating the firmware via the provided scripts still works as well as ever, but is no longer recommended now that the more convenient method of update via Arduino IDE or Arduino Firmware Uploader is available.
Click here to see instructions
If You Are Using Linux
- Unplug any non-essential USB devices from your computer.
- Connect the UNO R4 WiFi board to your computer with the USB cable.
- Open the release page for the latest version of the firmware in your web browser:
https://github.com/arduino/uno-r4-wifi-usb-bridge/releases/latest - Click the "unor4wifi-update-linux.zip" download link under the "Assets" section of the release page:
- Wait for the download to finish.
- Extract the downloaded ZIP file.
- Open a command line terminal in the extracted folder.
- Type the following command:
./update.sh
- Press the Enter key.
- The terminal window might now show a list of the serial ports present on your computer.
For example:
If so, use the ↓ key on your keyboard to select the port of the UNO R4 WiFi board from the list, and then press the Enter key.Start flashing firmware [2023-07-12T15:02:36Z INFO ] Detected 3 serial ports [2023-07-12T15:02:36Z INFO ] Ports which match a known common dev board are highlighted [2023-07-12T15:02:36Z INFO ] Please select a port ❯ /dev/ttyACM0 - 7 Series/C210 Series Chipset Family USB xHCI Host Controller /dev/ttyS4 /dev/ttyS0
- The terminal window will now show the following prompt:
Press the N key on your keyboard.? Remember this serial port for future use? (y/n) ›
- The flashing process should now start. Wait for it to finish, as indicated by output that looks something like this:
[2023-07-12T15:04:46Z INFO ] Serial port: '/dev/ttyACM0' [2023-07-12T15:04:46Z INFO ] Connecting... [2023-07-12T15:04:46Z INFO ] Using flash stub Chip type: esp32s3 (revision v0.1) Crystal frequency: 40MHz Flash size: 8MB Features: WiFi, BLE MAC address: dc:54:75:c4:c6:54 [00:00:14] [========================================] 689/689 0x0
- Close the terminal window.
- Disconnect the USB cable of the UNO R4 WiFi board from your computer.
- Connect the UNO R4 WiFi board to your computer with the USB cable again.
If You Are Using macOS
- Unplug any non-essential USB devices from your computer.
- Connect the UNO R4 WiFi board to your computer with the USB cable.
- Open the release page for the latest version of the firmware in your web browser:
https://github.com/arduino/uno-r4-wifi-usb-bridge/releases/latest - Click the "unor4wifi-update-macos.zip"download link under the "Assets" section of the release page:
- Wait for the download to finish.
- Unzip the downloaded file.
- Control-click on the unzipped
unor4wifi-update-macos
folder.
A context menu will open. - Select "New Terminal at Folder" from the context menu.
A terminal window will open. - Type the following command in the Terminal window:
chmod a+x update.command && sudo xattr -d com.apple.quarantine bin/espflash && sudo xattr -d com.apple.quarantine bin/unor4wifi-reboot-macos && ./update.command
- Press the Enter key.
A "Password" prompt will appear in the Terminal window. - Type your macOS user password.
- Press the Enter key.
- The terminal window might now show a list of the serial ports present on your computer.
For example:
If so, use the ↓ key on your keyboard to select the port of the UNO R4 WiFi board from the list and then press the Enter key.Start flashing firmware [2023-07-11T08:55:51Z INFO ] Detected 6 serial ports [2023-07-11T08:55:51Z INFO ] Ports which match a known common dev board are highlighted [2023-07-11T08:55:51Z INFO ] Please select a port ❯ /dev/cu.wlan-debug /dev/tty.wlan-debug /dev/cu.Bluetooth-Incoming-Port /dev/tty.Bluetooth-Incoming-Port /dev/cu.usbmodem2214101 - USB JTAG_serial debug unit /dev/tty.usbmodem2214101 - USB JTAG_serial debug unit
- The terminal window will now show the following prompt:
Press the N key on your keyboard.? Remember this serial port for future use? (y/n) ›
- The flashing process should now start. Wait for it to finish, as indicated by output that looks something like this:
[2023-07-11T08:59:44Z INFO ] Serial port: '/dev/cu.usbmodem2214101' [2023-07-11T08:59:44Z INFO ] Connecting... [2023-07-11T08:59:45Z INFO ] Using flash stub Chip type: esp32s3 (revision v0.1) Crystal frequency: 40MHz Flash size: 8MB Features: WiFi, BLE MAC address: dc:54:75:c4:c6:54 [00:00:14] [========================================] 689/689 0x0
- Close the Terminal window.
- Disconnect the USB cable of the UNO R4 WiFi board from your computer.
- Connect the UNO R4 WiFi board to your computer with the USB cable again.
If You Are Using Windows
-
Unplug any non-essential USB devices from your computer.
-
Connect the UNO R4 WiFi board to your computer with the USB cable.
-
Open the release page for the latest version of the firmware in your web browser:
https://github.com/arduino/uno-r4-wifi-usb-bridge/releases/latest -
Click the "unor4wifi-update-windows.zip" download link under the "Assets" section of the release page:
-
Wait for the download to finish.
-
Unzip the downloaded file.
-
Double click on the
update.bat
file that is in the unzipped folder. -
Depending on your Windows security settings, a "Windows protected your PC" dialog might now open:
Microsoft Defender SmartScreen prevented an unrecognized app from starting. Running this app might put your PC at risk.
If so, click the "More info" link in the dialog and then click the "Run anyway" button.
-
A terminal window will open. The terminal window might now show a list of the serial ports present on your computer.
For example:Start flashing firmware [2023-07-11T06:39:09Z INFO ] Detected 2 serial ports [2023-07-11T06:39:09Z INFO ] Ports which match a known common dev board are highlighted [2023-07-11T06:39:09Z INFO ] Please select a port ❯ COM1 COM43 - USB Serial Device (COM43)
If so, use the ↓ key on your keyboard to select the port of the UNO R4 WiFi board from the list, and then press the Enter key.
-
The terminal window will now show the following prompt:
? Remember this serial port for future use? (y/n) ›
Press the N key on your keyboard.
-
The flashing process should now start. Wait for it to finish, as indicated by output that looks something like this:
Chip type: esp32s3 (revision v0.1) Crystal frequency: 40MHz Flash size: 8MB Features: WiFi, BLE MAC address: dc:54:75:c4:c6:54 [00:00:15] [========================================] 689/689 0x0 Press any key to continue . . .
-
Press any key on your keyboard.
The terminal window will now close. -
Disconnect the USB cable of the UNO R4 WiFi board from your computer.
-
Connect the UNO R4 WiFi board to your computer with the USB cable again.
ArduinoBLE Library
In addition to the changes made to the radio module firmware to support BLE, work is in progress on the "ArduinoBLE" library to make it compatible with the UNO R4 WiFi board. Testing and feedback of the ArduinoBLE library on the UNO R4 WiFi board is very welcome.
I'll provide instructions you can follow to install the beta tester version of the ArduinoBLE library that has support for the UNO R4 WiFi. Please let me know if you have any questions or problems while following the instructions.
ⓘ These instructions are written for Arduino IDE 2.x. The procedure is similar if you are using Arduino IDE 1.x.
UPDATE: Support for the UNO R4 WiFi board is now available in the release version of the ArduinoBLE library, so it is no longer necessary to install the beta tester version of the library. Instead, just install the latest version of the library via the Arduino IDE Library Manager as usual.
Click here to see the obsolete beta tester version installation instructions
A. Setup
- Select Tools > Board > Boards Manager from the Arduino IDE menus to open the "Boards Manager" view in the left side panel.
- In the "Filter your search" field, type
arduino uno r4 boards
- Check the version number that is shown in the "Arduino UNO R4 Boards" entry in the search results. If you have a version older than 1.0.2 installed, click the "UPDATE" button in the "Arduino UNO R4 Boards" entry.
- Select Sketch > Include Library > Manage Libraries... from the Arduino IDE menus to open the "Library Manager" view in the left side panel.
- In the "Filter your search" field, type
arduinoble
- Scroll down through the list of libraries until you see the "ArduinoBLE by Arduino" entry.
- Check to see whether the ArduinoBLE library is installed (which will be indicated by a label that says something like "1.3.4 installed" on the entry). If the library is not installed skip the rest of the instructions here in "Setup" section and proceed directly to the instructions in the "Install Beta Tester Version of ArduinoBLE Library" section below.
- Hover the mouse pointer over the "ArduinoBLE by Arduino" entry.
- You will see a ●●● icon appear near the top right corner of the library entry. Click on that icon.
A context menu will open. - Select "Remove" from the context menu.
An "Uninstall" dialog will open. - Click the "YES" button in the "Uninstall" dialog to confirm that you want to uninstall the library.
- Wait for the uninstall process to finish.
B. Install Beta Tester Version of ArduinoBLE Library
- Click the following link to download the ZIP file that contains the beta tester version of the ArduinoBLE library:
https://github.com/facchinm/ArduinoBLE/archive/refs/heads/uno_r4_wifi.zip - Wait for the download to finish.
- Select Sketch > Include library > Add .ZIP Library from the Arduino IDE menus.
- Select the downloaded file.
- Click the Open button.
- If you already had the ArduinoBLE library installed, a "Do you want to overwrite the existing library?" dialog will appear. If you approve of overwriting the previous installation of the library, click the "YES" button.
ⓘ After you are finished testing the beta version of the ArduinoBLE library, you can use Library Manager to reinstall the production version of the library again as usual. - Wait for Arduino IDE to show a "Successfully installed library ... notification.
Please let us know if you experience any problems while using the beta tester version of the ArduinoBLE library with your UNO R4 WiFi board. You can submit formal reports or reviews on GitHub in the pull request:
https://github.com/arduino-libraries/ArduinoBLE/pull/305
Reports and discussion is also welcome here on Arduino Forum.