Table of Contents

http://libopencm3.org/

Logger

http://www.etalabs.net/

Memory allocation

https://hps.vi4io.org/_media/teaching/wintersemester_2013_2014/epc-1314-ellermann-dynamic-memory-allocation-report.pdf

MCU peripheral forwarding

https://interrupt.memfault.com/blog/mcu-peripheral-forwarding?_hsmi=278069723

Task schedulers

This can provide cooperative multitasking for simple tasks, avoiding the need of an RTOS.

https://www.cs.ucr.edu/~vahid/rios/

Small C libraries

http://pdclib.e43.eu/

http://neptune.billgatliff.com/newlib.html

http://www.musl-libc.org/faq.html

http://www.embecosm.com/appnotes/ean9/ean9-howto-newlib-1.0.html

https://sergeev.io/

https://github.com/nothings/single_file_libs

https://github.com/rideskip/anchor/tree/master/fsm

json parsing with a single header

Printf

http://elm-chan.org/fsw/strf/xprintf.html

http://www.menie.org/georges/embedded/printf.html

http://www.sparetimelabs.com/tinyprintf/tinyprintf.php

https://github.com/mickjc750/prnf

https://interrupt.memfault.com/blog/printf-on-embedded?_hsmi=275217339

Bit-banging serial output

Serial protocols

https://developers.google.com/protocol-buffers/docs/overview

https://code.google.com/p/nanopb/

UART

http://www.teuniz.net/RS-232/

Graphics

https://littlevgl.com/

https://www.segger.com/products/user-interface/emwin/

Software updates

https://github.com/sbabic

OpenBLT

Bootloaders

https://github.com/JelmerT/cc2538-bsl

MCU boot from mynewt project