Testing the range of Nucleo-WB55 boards (OpenThread)
During the design phase of one of my recent projects, I had to pick a radio IC for transmitting data. One of the options which came up was using a STM32WB-series IC, which embeds an 802.15.4 radio modem. However, I had zero experience with these chips or with this radio modem, so it was hard to determine whether it would meet the project’s criteria, mostly range. Even after a bit of Googling, I only found a specification which said that the range should be about 100 feet (30 meters), but that was too vague for my taste (at what output power? with what antenna?).
So I decided to buy two of the NUCLEO-WB55RG kits and get some real world data on the range I can expect. I used the Thread_Coap_Generic
example provided by ST, with the following modifications
- on line 321 in file
app_thread.c
, I added a call tootPlatRadioSetTransmitPower(NULL, pwr)
, which enabled me to change the output power - on line 737, I changed the response callback to a custom function, which turned on an LED
The testing took place in “Line-of-Sight” scenario on a long street in a small town. I simply set one kit on 1 meter high pile of snow and walked away with the other kit, periodically pressing one of the pushbuttons, which initiated sending the Coap message. If a response was received, an LED was illuminated (ie the connection was tested in both directions), and I continued walking further. The tests were performed with three different antennas:
- PCB antenna of the Nucleo
- W1095K, a short 2.4 GHz antenna, which I connected to the Nucleo via an SMA connector
- GW.34.5153, a long 2.4 GHz antenna, connected the same way
Also, just out of curiosity, I 3D printed a 2mm thick plastic cover from TPU, which I fitted over the PCB antenna, to see the impact.
And here are the results:
Kit #1 power [dBm] | Kit #1 antenna | Kit #2 power [dBm] | Kit #2 antenna | Range [meters] |
---|---|---|---|---|
+6 | PCB antenna | +6 | PCB antenna | 43 |
+6 | PCB antenna w/cover | +6 | PCB antenna | 16 |
+6 | PCB antenna | +6 | W1095K | 55 |
+6 | PCB antenna w/cover | +6 | W1095K | 42 |
+6 | PCB antenna | +6 | GW.34.5153 | 64 |
+6 | PCB antenna w/cover | +6 | GW.34.5153 | 56 |
+4 | PCB antenna | +6 | GW.34.5153 | 61 |
+4 | PCB antenna w/cover | +6 | GW.34.5153 | 49 |
+6 | GW.34.5153 | +6 | GW.34.5153 | 86 |
Conclusion
As always, any range measurements concerning RF are highly dependant on the setup, surroundings etc., so treat this with a huge grain of salt. But I think that the conditions of the experiment changed very little, so the relative accuracy shouldn’t be bad.