mbed Cookbook Community Wiki
Welcome to the mbed Cookbook, a wiki for publishing user-contributed libraries and resources. This is the community "Handbook" for all the useful component and library building blocks that can be reused to cook up your prototypes.
Please feel free contribute component libraries, building blocks and any reference that could be reused. If you see ways to improve existing resources with extra examples, explanations or insights, please jump in!
Introduction and Help
- Course Notes - Course notes being developed to support workshops, lectures and self learning
Notebooks
This is the cookbook, which is for documenting components, libraries and tutorials, but for project writeups and tips, also try the Notebooks!
Components and Libraries
This section is for information about different reusable building blocks; primarily components and the libraries, code and information to make use of them. For more about Libraries, see Working with Libraries.
TCP/IP Networking
Network clients and servers
Internet of Things and Websockets
USB
Official USB Libraries can be found in the handbook:
- /handbook/USBDevice - Using mbed as a USB Device
- /handbook/USBMouse - Emulate a USB Mouse with absolute or relative positioning
- /handbook/USBKeyboard - Emulate a USB Keyboard, sending normal and media control keys
- /handbook/USBMouseKeyboard - Emulate a USB Keyboard and a USB mouse with absolute or relative positionning
- /handbook/USBHID - Communicate over a raw USBHID interface, great for driverless communication with a custom PC program
- /handbook/USBMIDI - Send and recieve MIDI messages to control and be controlled by PC music sequencers etc
- /handbook/USBSerial - Create a virtual serial port over the USB port. Great to easily communicate with a computer.
- /handbook/USBAudio - Create a USBAudio device able to receive audio stream from a computer over USB.
- /handbook/USBMSD - Generic class which implements the Mass Storage Device protocol in order to access all kinds of block storage chips
- USBHID bindings - Design your own USB device on top of USBHID class by developing programs in different languages and running on different platforms
Here some other examples:
LCDs and Displays
Audio
Wireless
Motors and Actuators
- Servo - Control a Radio Control (R/C) model servo
- Motor - Control a DC motor with PWM and an H-bridge
- Dynamixel AX12 Servo - Digitally controlled robot servo
- SimpleSteppers - A software interface to TIMER2 to drive upto four stepper motors
- SimpleRCservos - A software interface to PWM to control simple radio-control servo units
Sensors
Cameras
- CameraC328 - C328 (COMedia) - JPEG Color Camera with UART Interface
- Camera_LS_Y201 - LinkSprite JPEG Color Camera TTL Interface
Accelerometer
Inclinometers
- SCA61T - Single axis digital SPI inclinometer
Compass
RFID and Barcodes
Temperature
Clocks and Oscillators
- Si570 - Silicon Laboratories Si570 frequency synthesizer, with I2C interface.
Interfaces and Drivers
Storage, Smart Cards, and Magnetic Cards
Digital Signal Processing
Interfacing with other languages
Utilities for an application
- ConfigFile - Variable configuration file helper class
- FirmwareUpdater - Update your application binary via WEB.
- SerialBuffered - An extension to the Serial library that provides customisable buffering
- DebounceIn - Extends DigitalIn to add mechanical switch deboucing of inputs.
- PinDetect - Similar to DebounceIn above but adds "interrupt" style callbacks on pin state change.
- MODGPS - A library that supports easily adding a GPS module to your project.
- MODMAX7456 - A library that supports the MAX7456 on-screen display chip.
- MODSERIAL - An extended version of Serial that provides full IO buffering.
- MODDMA - A library that manages the GPDMA peripheral as an easy to use library.
- MAX3100 Additional external serial ports.
- FunctionPointer - Mbed's callback mechanism explained
- FPointer - An advanced library callback mechanism
- ASyncTicker - a ticker not using an ISR, allowing for more complex stuff
- Localization - a library for storing external / to-be-localized strings
- TimeZone - TimeZone handling
- CSV parser - port of Israel Ekpo\'s CSV parser library
- SPXml parser - Mbed port of the Simple Plain Xml parser.
- MD5 - port of a simple MD5 library
- MatrixClass - A class to handle Matrices.
Baseboards
Breadboards & Breakout Boards
- Solderless Breadboards - What is available and where to find it.
- Individual Connector Breakout Boards - Ethernet, USB, CAN, PS/2, RS-232, microSD, Smart Card, SIM, VGA, and audio connectors
- IC, Sensor, and Driver Breakout Boards - What is available and where to find it.
Reference, Tutorials and Examples, Events
This section is for the sort of reusable information that can help you get your job done.
Events & Classes
Books
Tutorials and Examples
Internet of Things
Software Development
Hardware Tutorials
- Pushbuttons and switches – demo code and videos using internal pull-ups, switch debouncing, interrupts, and callbacks
- Drivers, Relays, and Solid State Relays – How to control high current or high voltage DC and AC devices using digital outputs on mbed
- Serial Interrupts - How to get started using serial interrupts with buffering and demo code
- Power Management - How to get started using power management features to reduce power and demo code
- WatchDog Timer - How to use the watchdog timer, brown-out detection, and a short code example
- I2C Debug Tool - Hit GUI buttons in RealTerm to experiment with a new I2C device without writing code.
Robotics
Reference
PCBs
This section is about PCB design resources
Projects
Cookbook pages or links to notebook pages documenting any projects you are working on.
Community and Support
Other Things
- Blogroll - Add in your favourite blogs and mentions of mbed
- Backup - Backup your published programs and libraries
Last modified 2 days, 14 hours ago, by
HM Yoong

No tags
|
17 comments
What is the difference between the LPC2368 & LPC1768,
the only thing i can find is LPC1768 appeas to have more code examples for USB !