I’m one of the RIOT-OS team members and I got a core in my hands recently. We are an open source IoT operating project, which has a long background in academics and is now evolving in the open source community for more than a year.
I choose to let the bootloader in place and just replace the firmware with our OS.
I think the bootloader is supervising my firmware in a way that it detects it as “dead” and performs a reset.
You can find my code here: https://github.com/mehlis/RIOT/compare/add_board_spark_core
I tried to disable the watchdog and expose the status https://github.com/mehlis/RIOT/compare/add_board_spark_core#diff-93845846deb1152766f476434bf0bbcaR32 but it wasn’t working so far.
I hope to find documentation to make the bootloader/watchdog happy with RIOT-OS!
To replicate my setup:
- checkout my branch
- cd to examples/hello-world
- BOARD=spark-core make
- arm-none-eabi-objcopy -O binary bin/spark-core/hello-world.elf bin/spark-core/hello-world.bin
- dfu-util -d 1d50:607f -a 0 -s 0x08005000:leave -D bin/spark-core/hello-world.bin
Thanks for this peace of hardware!