Just a quick note on how to resolve serial connectivity issues with Bluetooth Low Energy boards (BLE) sold as iBeacons or iBeacon Sensors.
I’ve recently been evaluating various iBeacon modules, and bought a number of HM10 and HM11 based BLE beacons from various suppliers on eBay.
One of the BLE beacons I bought, consists of a small board aka HM11, containing a Ti CC2541, mounted onto a CR2032 button cell holder.
These BLE “sensor” beacons, are reconfigured to operate as an “iBeacon”, but they also have connections on the PCB to connect via RS232 (3.3V) to an Arduino or PC via a serial to USB adaptor.
The problem I encountered with the HM11 iBeacon boards, was that the boards are configured to go into hibernation / sleep mode between transmissions, which results in them not communicating via serial.
The normal method to wake up HM10 and HM11 devices, is to send a continuous stream of at least 80 fairly random characters to the module. However in the case of the HM11 “Sensor” firmware, it either doesn’t have this feature or it doesn’t appear to work.
After some research, I came across a reference to being able to wake the board by pulling pin 16 to Gnd.
So I have it a try and it worked !
I have not tested whether the same applies to HM10, but it can’t do much harm to try it, as long as you use a resistor to Gnd rather than shorting the pin – which would most likely case damage to pin 16 if it was not configured by the firmware as an input