Spark Firmware compatibility and porting to other STM32 chips

Thanks for the responses everyone. I think for now I’m going to pursue using mbed to develop on the F0 series in the interests of meeting approaching deadlines.

Once things are working and undergoing field testing, I’ll reassess things and choose one of the following options:

  1. migrate from mbed to some kind of hacked version of STM32Cube with CAN bootloader
  2. buy a STM32 F0 series firmware base + HAL + CAN bootloader from a 3rd party embedded software company
  3. Port the Particle firmware library to F0 series and “tweak” the bootloader code to be able to do DFU over CAN bus

Here’s a follow up question on Particle firmware porting to other chips:

if I decided to port the particle firmware to the F0 chip, is it feasible to cut out all the non-needed components/features of spark firmware to reduce code bloat and make more memory available (i.e. get rid of the cellular, TCP/IP, Cloud, UDP, Keyboard, Mouse modules)?

What about changing the bootloader to accept firmware updates from CAN bus instead of from a modem?