Today I discovered that on Arduino boards using the ESP32-based u-blox NINA-W102 wireless module, WiFi and Bluetooth LE could not be used simultaneously. This affects the Arduino Nano RP2040 Connect, Arduino MKR WiFi 1010, and Arduino Nano 33 IoT boards.
This issue has been present since the first Arduino board featuring the NINA-W10 was released in 2018, allowing either WiFi or Bluetooth LE usage, but not both at the same time. Fortunately, this limitation has been resolved with a new firmware update and updated WiFi and BLE libraries.
For this to work, the following updates are needed:
- WiFiNINA library version 2.0.0 or higher
- ArduinoBLE library version 2.0.0 or higher
- NINA-W102 firmware version 3.0.1 or higher
The libraries can be updated via the Library Manager in the Arduino IDE, and the firmware should be updated using the Firmware Updater Tool in Tools > WiFi101 / WiFiNINA Firmware Updater.
The update enhances all three initially mentioned boards, but the Arduino UNO WiFi Rev2 board is unable to benefit due to memory constraints, despite also containing a NINA-W102 module. Below is an example of using WiFi and Bluetooth at the same time: