Bluetooth and Wifi in parallel

Hello,

I have an application where I need to communicate in UDP over Wifi while in parallel I need to communicate in BLE. Is this possible with the Board ? As my testing reveal that the BLE is working on its own, and the wifi also, but if I use both (WiFiNINA.h and ArduinoBLE.h) only the first one I am initialising will work.

Maybe anyone has an idea ?

Thanks a lot,

Tom

What board? My crystal ball is out for an oil change and polish.

My fault sorry that is if you are too fast :slight_smile: the cristal ball, and my desk say it is a MKR WIFI 1010 :slight_smile:

I've read here the following "The MKR WiFi 1010 is a dual processor device that invites for experimentation. Hacking the WiFiNINA module allows you to, for example, make use of both WiFi and BLE / Bluetooth® at once on the board"

So it should be possible, however using:

#include <ArduinoBLE.h>
BLE.begin()
BLE.advertise()

and

#include <WiFiNINA.h>
wifiStatus = WiFi.begin(wifiSSID,wifiPass);
Udp.begin(port);

Only the first Usage case is working, the later does not either advertise or connect to the server

Any Idea what I am doing wrong?

Many thanks

The ublox NINA-W10 does not support BLE and WiFi at the same time. ublox has modules that support this e.g., the ublox NINA-W15

https://www.u-blox.com/en/product/nina-w15-series

A dual processor design would not help a lot with this use case. What you would need is a software stack that handles both at the same time because you have one radio and both protocols work in the same ISM band. To ensure BLE is working while WiFi is active, the stack needs to make sure the BLE is time sliced in between the WiFi packets. Even if you had two radios you would need to do that because the WiFi signal would otherwise disturb the BLE transfers. Only the BLE advertisement channels are positioned in between the WiFi channels. This allows BLE devices to find each other and then jump around the other channels (channel hopping) to avoid active WiFi transmissions.

If your application would be happy with switching between the protocols, you can still use your Arduino. The switch will take some time, so you cannot switch back and forth within a second.

I had a similar discussion last year with the Arduino Nano 33 IoT (a smaller variant of your board). I posted an example in reply#7.

https://forum.arduino.cc/t/switching-between-wifi-and-ble/629966/7

If there are any issues with this example, please let me know. Sometimes the Arduino libraries change something that requires some minor modifications.

This topic was automatically closed 120 days after the last reply. New replies are no longer allowed.