A curated list of resources for the BBC micro:bit.
Inspired by the Awesome lists.
Table Of Contents:
- Visual Programming Languages
- Written programming Languages
- Online Code Editors
- Desktop Code Editors
- Programming Tools
- Interface Chip
- Libraries
- Projects
- Articles
- Teaching Resources
- Microsoft Blocks - A Block interface that produces Touch Develop code.
- Code Kingdoms - A graphical interface that provides a transitioning experience from 'drag and drop' to text-based programming (JavaScript).
- PXT - The Programming eXperience Toolkit for the micro:bit provides a Blocks interface with more capabilities than Microsoft Blocks.
- MicroPython - Port of MicroPython, a Python 3 implementation for microcontrollers and constrained environments.
- C/C++ runtime - Guidance on how to start using the runtime in C/C++ including full documentation of the APIs, drivers, and types that make up the micro:bit runtime. Bluetooth documentation includes a link to the original *.hex file that ships on the micro:bit devices.
- Touch Develop - A flexible, text-based programming language with an interactive visual component.
- PTX TypeScript - The Programming eXperience Toolkit is based on a subset of TypeScript, which in itself is a superset of JavaScript.
- Espruino JavaScript - A JavaScript interpreter for microcontrollers. It also offers a WebIDE for written code and blocks.
- Rust on BBC micro:bit - Describes the experience and steps of compiling Rust code for the micro:bit with and without interaction with the runtime DAL.
- microbit website - Includes the Code Kingdoms, Microsoft Blocks, Touch Develop, and Python editors.
- PTX - Includes the Blocks and TypeScript editors for the Programming eXperience Toolkit.
- create.withcode.uk - A Python online editor and simulator that supports the micro:bit MicroPython (instructions).
- Mu - A "micro" editor for MicroPython and the BBC micro:bit.
- Atom microbit-python package - Flash Python code to your micro:bit directly from the Atom text editor.
- Micro:Pi - A C/C++ editor with serial monitor and deploy functionality. Written in Python with an installer (ATM Linux only, but could be manually installed in any OS) that includes all dependencies.
- Vagrant C/C++ Development Environment - With a single command it creates a virtual machine with all the toolchain required to compile and flash C/C++ programs to the micro:bit (including MicroPython).
- Android App - Connects and flashes programs to the micro:bit via Bluetooth.
- iOS App - Connects and flashes programs to the micro:bit via Bluetooth.
- uFlash - A utility for flashing the BBC micro:bit with Python scripts and the MicroPython runtime.
- MicroFs - A simple command line tool and module for interacting with the limited file system provided by MicroPython on the BBC micro:bit.
- micro:bit uploader - Windows application that monitors your Downloads forlder and flashes any new programs to the micro:bit.
The Interface Chip is the microcontroller placed close to the battery connector. It provides the USB mass storage capability to load the micro:bit firmware using the Operating System file explorer.
- DAPLink on micro:bit - The DAPLink is the default software running on the Interface Chip, this page contains information, update instructions, and the latest firmware.
- J-Link OB Firmware - Offers the same flashing functionality than the DAPLink and expands it to include J-Link debugging.
- MicroPeri - Run Python programs on your computer with the same micro:bit MicroPython API and connecting a micro:bit as an external peripheral device or sensor.
- microbit_stub - A Python module that emulates the BBC micro:bit as defined by the micro:bit MicroPython API.
- node-bbc-microbit - Control a BBC micro:bit from Node.js using BLE.
All these projects contain steps and resources required for reproduction.
- Quiz:bit - micro:bit programs and a matching application for providing a quiz-voter-style service using micro:bits as the controls.
Useful Articles for developing on the BBC micro:bit.
- Getting Started Microbit & Microsoft’s new www.codethemicrobit.com Environment
- Offline C/C++ Development With The Micro:bit
- Sending 'commands' from a micro:bit over Bluetooth
- microbit.co.uk Teaches and Parents
- IET micro:bit Teaching Resources
- Code Club micro:bit projects
- Make with the micro:bit by Technology Will Save Us
To the extent possible under law, the authors have waived all copyright and related or neighbouring rights to this work.
This projects is not endorsed, sponsored or associated with the BBC. "BBC”, “micro:bit”, and their logos are trade marks of the BBC. http://microbit.co.uk