My project interest is to send sensor data from Peripheral to Central with low current consumption BLE. If the transmission is infrequent, a large current consumption reduction can be achieved by sending the data on the Advertise packet as ManufactureSpecificData without connection.
‘System_ON_Sleep of XIAO BLE - #31 by msfujino’
It is also important that the value of the sleep current be as small as possible since most of the time the device is in sleep mode, and that the current consumption during Advertise, although transmission is occasional, be small.
The XIAO series BLE devices available now include ESP32C3, ESP32C6, ESP32S3, nRF52840, and EFR32MG24, and I have already reported on their sleep current.
‘Comparison of Sleep Currents for XIAO ESP32C6, S3, and C3’
‘Light / Deep Sleep Current Comparison of XIAO_MG24 and XIAO_nRF52840’
‘Sleep Current of XIAO nRF52840, Deep Sleep vs. Light Sleep’
In this report, assuming my project, I compared the superiority of the average current using a sequence that advertises 10 times per second and then sleeps for 59 seconds.
Peripheral and Central are not connected, so the same data is sent 10 times to increase the reliability of the reception. Also, since short distance is assumed, the transmit power was set to 4 dBm.
I used only ArduinoIDE and some available BoardSupportPackages, and did not consider using chip-specific IDE or low-power co-processors.
AdvertisingCurrent.zip (10.3 KB)
The following is a comparison of advertised waveforms, current consumption, and sleep current. With the following conclusions based on limited my projects assumptions,
- ESP32s are not suitable for BLE projects with low current consumption.
- The EFR32MG24 has a very low sleep current, which may give it an advantage over the nRF52840 in applications where transmission interval exceeds 15 minutes. It is unfortunate that the transmitter is not designed for low power.
(For reference, LoRa-E5 has a model for low power)
‘Programming LoRa-E5 with Arduino, Comparison of LoRa-E5 and LoRa-E5-LE transmit currents’ - nRF52840 is by far the best for low current consumption BLE applications.
I hope this will be helpful to others interested in similar projects.