Lightweight 32-bits micro-controllers SDK.

View on GitHub


uC-sdk is an SDK that lets you work with 32-bits micro-controllers. It has been designed to be simplistic yet usable with little overhead. The letters uC in its name stand for micro-controller. Technically, the u stands for the greek letter ยต (Mu), but using UTF-8 in URLs that are supposed to be used in command-line tools isn't always a good idea.


The two main authors of uC-sdk are @nicolasnoble and @rackhamlenoir. One is a Software Engineer working in the Bay Area with quite some experience writing software, and the other is an Assistant Professor with a PhD in HCI. We both have various interests for dabbling in electronics.


Working with micro-controllers can be tricky. Anyone would want free, open source development tools that are easy to use, of high quality, support multiple platforms, operating systems, and that aren't basically bloatware. After experiencing a lot of frustration, we decided to create our own SDK as we couldn't find any that was matching all these requirements. We hope uC-sdk can live up to these standards, and be useful to others.


uC-sdk is being actively developed on its github repository. Contributions are more than welcome, so feel free to fork the project and work and have fun with us!



You can can grab the source code from github:

$ git clone https://github.com/grumpycoders/uC-sdk.git

Please clone the repository and browse the examples folder. It contains sample projects for several of the boards that it supports. Documentation is an ongoing effort as the API is still quite in flux.


At the moment, uC-sdk is only supporting ARM embedded 32-bits micro-controllers. As a result, you'll most definitely want to use an ARM toolchain. You'll find it available pre-packaged for Windows, Linux and MacOS. Note that Ubuntu 14.04 natively has packages available.


OpenOCD is a great tool to work with the kind of CPUs that uC-sdk supports.