Over the years of my IoT journey, I've made the connectivity progression from wired (Serial, USB, Ethernet) to wireless (WiFi b/g/n, Bluetooth BR/EDR) to low power wireless (BLE, LoRa) and have recently added cellular (LTE-M and LTE-CAT1) into the mix.
For short range battery operated devices (primarily remote sensors), I prefer to use BLE. I use it for both data and control, either interfacing to a tablet or cellphone using a mobile app or a laptop/desktop using WebBLE or a Cloud Dashboard.
As a result, I have a large collection of development boards and sensors using BLE - usually in combination with WiFi. I did a quick survey of board types that I've used with respect to the device used for BLE (if the device is on a module - I listed the Module type). Not a complete list, but a good representation of the boards I use. Three chipset manufacturers stand out - Espressif (ESP32), Nordic (nRF), and Infineon (CYW). That's probably because of the type of boards that I buy and the development frameworks that I use. When I started out with WiFi, I used a lot of boards with the Espressif ESP8266 - primarily because they were very low cost and widely available. I moved to the ESP32 for higher performance and that provided an easy migration path from WiFi to BLE using the same boards. I've recently been using a lot more Nordic based boards due to their good low power performance and excellent application support.
BLE Device |
Antenna |
Other RF |
ESP32 |
|
|
Adafruit HUZZAH32 |
PCB |
WiFi b/g/n |
M5Stack StickC |
Internal |
WiFi b/g/n |
M5Stack StickC Plus |
Internal |
WiFi b/g/n |
Sparkfun ESP32 Thing |
PCB |
WiFi b/g/n |
Sparkfun ESP32 Thing Plus |
U.FL |
WiFi b/g/n |
|
|
|
NINA W102 (ESP32) |
|
|
Arduino MKR WiFi 1010 |
PCB (PIFA) |
WiFi b/g/n |
Arduino Nano 33 IoT |
PCB (PIFA) |
WiFi b/g/n |
Arduino Nano RP2040 Connect |
PCB (PIFA) |
WiFi b/g/n |
Arduino Vidor 4000 |
PCB (PIFA) |
WiFi b/g/n |
|
|
|
nRF52840 |
|
|
Nordic nRF52840 USB Dongle |
PCB |
|
Nordic Thingy:91 |
Internal |
LTE-M (nRF9160) |
RAKwireless RAK4631 |
U.FL |
LoRa (SX1262) |
Seeed XIAO BLE nRF52840 |
Chip |
|
Seeed XIAO BLE nRF52840 Sense |
Chip |
|
Sparkfun Micromod nRF52840 |
PCB |
|
|
|
|
NINA B306 (nRF52840) |
|
|
Arduino Nano 33 BLE Sense |
PCB |
|
|
|
|
ANNA-B112 (nRF52832) |
|
|
Arduino Nicla Sense ME |
Chip |
|
|
|
|
nRF51822 |
|
|
Adafruit BLE Friend UART |
PCB |
|
Microbit v1 |
PCB |
|
|
|
|
nRF52833 |
|
|
Microbit v2 |
PCB |
|
|
|
|
nRF5340 |
|
|
Nordic nRF5340 DK |
PCB |
|
|
|
|
Murata 1DX (CYW4343W) |
|
|
Arduino Portenta H7 |
U.FL |
WiFi b/g/n |
Infineon CY8CKIT-062-WIFI-BT |
Chip |
WiFi b/g/n |
|
|
|
Murata 1LV (CYW43012) |
|
|
Infineon CY8CKIT-062S2-43012 |
Chip |
WiFi b/g/n |
|
|
|
CYW43455 |
|
|
RPi3A+ |
PCB |
WiFi b/g/n |
RPi3B+ |
PCB |
WiFi b/g/n |
RPi4B |
PCB |
WiFi b/g/n |
|
|
|
BCM43438 |
|
|
RPi3B |
PCB |
WiFi b/g/n |
RPi Zero W |
PCB |
WiFi b/g/n |
|
|
|
SYN43436 |
|
|
RPi Zero 2 W |
PCB |
WiFi b/g/n |
|
|
|
RTL8720DN |
|
|
Seeed Wio Terminal |
Internal |
WiFi b/g/n |
|
|
|
RTL8722DM |
|
|
Ameba RTL8722DM Mini |
Internal |
WiFi b/g/n |
A few of the boards:
For the purposes of this demonstration project, I would like to develop a test methodology that I can use with the 3 main device types that I use (ESP32, nRF, and CYW). I'll start with the ESP32 since I have the most experience with that device. The Sparkfun ESP32 Thing Plus has an external U.FL antenna port that provides me with the ability to use either a direct cable connection or antennas to connect to the FPC1500 (note: there is another version of this board that uses an ESP32 module with a PCB antenna).
Sparkfun ESP32 Thing Plus
With omnidirectional antenna:
I have a variety of external antennas that I could try ( a few different omnidirectional "rubber duck" antennas with various gains and some dual band WiFi antennas from a Molex sample kit). I'll probably save that for an addendum to this project.
Dual Band 2.4/5GHz antennas from Molex sample kit:
Top Comments