Delivering new firmware to core using xbee

I’ve got the following setup:

Base Station: Beaglebone + Xbee
Remote Device: Spark Core + Xbee

The two are 1 mile apart, and communicate data robustly. The spark core does not have a wifi connection.

I’d like to update the firmware of the spark core via the xbee in the current setup. Is this possible?

If it is not possible, is there a way to trick the spark core into thinking the xbee is its wifi device sending updated firmware?

The new fimware will allow firmware update via YMODEM protocol but i need to check if that is available for the core.

This basically means using a tx/rx line to update firmware :wink:


Thanks for your answer!

It will be available for the photon?

How does this process work? Since it is a long link, possibly with a node in the middle, I’d be worried about dropped packets and whatnot.

Hi @hwestbrook! I recently refactored the firmware upload code to better separate the overall OTA process from the method of delivery, so it should be possible to support other transports, such as xbee.

(In the same vein, we will later be opening up to allowing data to be delivered to user firmware so the firmware can decide what it wants to do with the data - save to eeprom, or SD card etc…)


Hey @mdma,

Thanks for the answer. I didn’t get an email, so I wasn’t sure I got more answers!

Where would I get started with how to use another transport method for this. Are there any docs?

There are no docs at present (afaik) since this feature hasn’t been released yet (it’s part of 0.4.0)

This thread discusses what is available.