In my quest to find a low cost programmer for the CC2540 and CC2541 series of Bluetooth Low Energy Soc devices, commonly used as BLE beacons, I bought a device sold as a “Zigbee debugger emulator” from eBay.
On paper this device looked very promising, it contains a Silicon Labs C8051F320 which is the same as used in Texas Instruments own CC-Debugger, and it also claim to emulate the Ti SmartRF04EB device, which is part of TI’s BLE evaluation board.
The board arrived a few days ago, and on plugging it into my PC, it was detected as a SmartRF04EB device, and after I downloaded and installed TI’s SmartRF Studio, the software recognised the board and indicated that the firmware was out of date and needed to be updated by SmartRF Studio.
As it appeared that the board would not work with SmartRF Studio without doing an update, I pressed the button, but the update failed, with a message about needing to change some link settings.
The board had 3 empty pins on it, which looked like a jumper could be connected, so I soldered on 3 pins and carefully checked with a current meter that shorting the middle pin to either of the outer pins, would not draw a large current.
The connecting 2 pins seems to cause a LED to light up, labelled run, and connecting the other 2 pins didnt seem to do anything, which I presume is the default condition.
In “run” mode the USB device vanished from the PC, and I was unable to update, nor did it update with the lump link in the default position
Undeterred, I did some research and found what appeared to be the original supplier details on this board.
Which seemed to contain the pinout for the 10 pin connector to the BLE module, which seemed identical to the pinout of the TI CC-Debugger.
So I wired the programmer to a HM10 (CC2540) using Reset, clock, data, power, gnd and power sense.
But unfortunately Smartrf Studio still didn’t show the SmartRF04 as having any devices connected to it.
Using an oscilloscope I looked to see if the Reset line was being toggled at any time, or whether the data or clock lines were changing, but none of them were. So my best guess is either the connection required are different to those published on the original supplier website, or the board is defective, or there is a chance that my attempt to update the firmware failed and caused problems. However I don’t think its a firmware update issue, as the device still appears on USB as before, and SmartRF Studio still reports the programmer and its version number.
Its possible that if the firmware on the C8051F320 was updated to a newer version it may work, but that would require a Silicon labs programmer, which would defeat the reason I bought the board, i.e because it could be a budget programmer for CC2540 and CC2541 devices.
Since I ordered this device, 3 or 4 weeks ago, some clone CC-Debuggers have come onto the market for $16 USD (21 AUD), so I have now ordered one of those, and I will post again when it arrives and hopefully I will finally be able to replace the firmware on my BLE modules