IoT Hack: Upgrade Your Particle Devices with Teal Connectivity
Many people are aware of the IoT hardware company Particle. They have been very successful in providing an easy-to-use end-to-end platform for developing IoT solutions, which has undoubtedly contributed to the rapid growth of the Internet of Things.
Unfortunately for users of their product, Particle’s platform is great at some things (device management and hardware design) but poor at others (dynamic eSIM, connectivity management, and cellular offerings). The good news is that there’s a great alternative for those frustrated with Particle’s connectivity offerings.
Teal’s intelligent connectivity platform can help Particle users upgrade their cellular connectivity in a few easy steps. Unlike Particle, Teal’s connectivity solution is redundant (for example, our platform has LTE-M on AT&T and Verizon in the U.S.), affordable (just $0.01 per MB, instead of $0.40 per MB (OwO)) and it can be continuously managed through a carrier-neutral eSIM platform.
The rest of this blog will take you through the steps our dev team went through to combine the hardware benefits of Particle, with Teal’s intelligent connectivity solution.
Plugged the Boron module into the PC and put it into Download/DFU mode (blinking yellow) by holding down both RESET and MODE, then released only the RESET button. While still holding down the MODE button, waited for the LED to start flashing yellow (it will flash magenta first) before releasing the MODE button and being in DFU mode.
Opened a Command Prompt / Terminal and navigated to where we saved the hybrid bin file. Ran the below code:
particle flash –usb hybrid-0.9.0-boron.bin
After these steps, the Boron LTE-M device was running the hybrid firmware!
Teal APN Program + Firmware Compile
Below is the program Particle’s Boron device needs to run in order to set the Teal eSIM as active and apply the Teal APN. You can copy our code below into your existing programs or download the program as we have saved it for you. Note: remove the “teal.cpp.txt” txt extension so it is just “teal.cpp” Note: The Teal APN is stored as a global value, so you will not need to reflash it after every eSIM operation.
// setActiveSim and setCredentials must be in STARTUP to take effect immediately
});// The order here is important because the APN needs to be set only after the SIM switch
int at_ret_val =1;
int retry_count =3;
while(at_ret_val !=RESP_OK&& retry_count)
// not resetting after UMNOPROF setting because in Gen3,
// we reset as a part of putting the second/actual app firmware
Finally, we were ready to flash the custom firmware we compiled. Putting our device back into Download/DFU mode, we ran the below code from the same file directory /downloads/boronteal as the previous steps:
particle flash —usb tealfirmware.bin
Then, we flashed Tinker back to the Boron
particle flash —usb tinker–0.9.0–boron.bin
Voila! The device finished flashing and turned on with the Teal eSIM inserted. We saw that calming breathing blue cyan LED on the device which indicated that it was communicating with the Particle platform (but supercharged with Teal’s eSIM!).