= Cookbook = [[PageOutline]] Welcome to the Cookbook, a '''wiki''' and '''code repository''' for publishing projects, experiments, resources and ideas. We've now introduced a "Notebook" for everyone, sowe want to see how well that concept works. Please use your "Notebook" for publishing any new projects, and perhaps post them in the forum to tell others what you are up to. We'll maintain this as a good snapshot reference for now, but we'll look to upgrade it to integrate with Notebooks in the future. == Libraries == ||''Name''||''Description''|| ||''' Display ''' || || || [wiki:TextLCD]||A 16×2 Text LCD|| || [wiki:Servo] || Controlling a Servo|| || [wiki:MobileLCD] || A 130×130 Nokia Mobile Screen || ||''' Comms ''' || || || [wiki:RFID] || An ID-12 RFID tag reader|| || [wiki:HTTPClient HTTPClient] || Some simple to use HTTPClient examples.|| || [wiki:SDCard] || File system access of an SD Card || || ''' Robotics and Motors ''' || || ||[wiki:PimpMySumovore Pimp My Sumovore] || Yet more Sumovore stuff|| || [wiki:MotorController] || Controlling Motors with mbed || || ''' Spatial: GPS, Accelerometers, Rangefinding ''' || || || [wiki:Where_is_up] || A Simple accelerometer project || || [wiki:SRF05] || Low cost ultrasonic range finder || || [wiki:LIS302] || Digital accelerometer fun || == Experiments / Code snippets / Articles == ||''Name''||''Description''|| || '''Comms''' || || || [wiki:CanBusExample1] || Interfacing the Controller Area Network (CAN)|| || [wiki:EMAC Networking] || Shows how the network stack works, with a webserver as an example. Gets your mbed on the internet || || [wiki:EMAC/HTTPClient Twitter] || A simple HTTPClient to twitter or what ever you can make with POST and GET || || [wiki:timetric Timetric] || Use an mbed to create series with timetric.com || || [wiki:PowerOverEthernet Power Over Ethernet] || Dangle your webserver on a CAT5 cable, because you can! || || [wiki:XBee] || Communicating wirelessly with the MaxStream XBee module via UART serial interface || ||''' Input ''' || || || [wiki:Touchpad] || A musical instrument with Nintendo DS touchpad & Freescale MMA7260 accelerometer || || [wiki:Keypad4x3 Keypad4x3] || Interfacing a 4×3 numeric keypad. || || [wiki:WiiChuck] || Interfacing a Wii Nunchuck controller using I2C || ||''' Audio ''' || || || [wiki:Beeper] || Driving an Piezo sounder || || [wiki:MIDI] || For communicating using MIDI (musical instrument digital interface) || ||''' Misc ''' || || || [wiki:MAX5842] || A MAX5842 DAC || || [wiki:24LC256] || EEPROM || || [wiki:PCF8574 IO Expander PCF8574] || More digital IO for your mbed Microcontroller! || || [wiki:PyMite] || Python-on-a-Chip: running the PyMite VM on mbed with interactive interface|| || [wiki:DemoBoard] || Lots of little mini projects using the demo board || || [wiki:AT45] || AT45 series SPI flash || || [wiki:mbed-BoB] || The 'official' breakout board || || [wiki:mbed-BoB2] || BoB2 - Son of BoB || || [wiki:TextLCD_I2C TextLCD with I2C interface] || ... Because I am too lazy to wire stuff up || || [wiki:SPIThermometer] || SPI Digital Thermometer || || [wiki:TipsAndTricks] || Some useful code snippets || || [wiki:Breadboard] || More tie points for your mbed || || [wiki:RPC] || RPC fun with mbed Interfaces || || [wiki:BarGraph] || Simple way to make a bar graph from a percentage || || [wiki:GPS] ||Read location using a GPS module || = Beta = Work here is from the Beta trial, and so may not work on the mbed NXP LPC1768. Usually there is a small amount of work to bring a project up to scratch. Next time have a fiddle with the project, feel free to upgrade it to the latest mbed Microcontroller and update the cookbook. == Experiments / Code snippets / Articles == ||''Name''||''Description''||''Target''|| ||'''Display''' || || || [wiki:Bitmaps] || Drawing bitmaps on a screen || beta || [wiki:Colour] || Online colour mixer for generating HEX RGB colours || beta || [wiki:VGAConsole VGA console] || VGA console || beta || [wiki:ComponentlessVGA Componentless VGA] || VGA with no components || beta || [wiki:CustomizableTextLCD] || Customizable version of the TextLCD library || beta || [wiki:LEDDotMatrix] || Using a 8×8 LED Dot Matrix display, and experimenting with a 16×16 one controlled using an I²C I/O expander || beta || [wiki:Graphics] || A 2D and wireframe 3D graphics library built on top of the [wiki:MobileLCD] library || beta || '''Comms''' || || || [wiki:EthernetTest] || Hokey webserver just to test the Ethernet ||beta || [wiki:SLP440] || Controlling a Smart Label Printer through the mbed || beta || [wiki:RCDemux R/C Demux] || R/C Reciever demuliplexer || beta || [wiki:NC4BluetoothModule] || Using the NC4 bluetooth module with the mbed || beta || [wiki:PCF8591T] || 8 Bit A/D and D/A converter using I2C || beta || [wiki:lock Door Lock] || A Door Lock Using RF-ID || beta || [wiki:TVRemoteReader] || Displays pulses and timing of Sky+ Remote on MobileLCD || beta || [wiki:RemoteDecoder] || IR Sky+ Remote key decoder for robot control || beta || [wiki:SerialProxyWebserver] || Experiments with proxying http over serial || beta || [wiki:NokiaWirelessPresenter] || || beta || [wiki:SFE_Bluetooth] || Getting going with the Sparkfun bluetooth module || beta ||''' Input ''' || || || [wiki:PS2Keyboard PS2 Keyboard] || PS/2 Keyboard interface || beta || [wiki:PS2Mouse PS2 Mouse] || PS/2 Mouse Interface || beta ||''' Audio ''' || || || [wiki:iPod] || Using a PodBreakout board to control an iPod || beta || [wiki:PlayMusic] || Experiments in playing music files || beta || [wiki:WavePlayer] || a .wav file player || beta || SndRecorder || Au format sound recorder || beta || [wiki:MusicalNotes]||Table of musical notes and thier frequencies || beta || [wiki:VS1002MP3Decoder] || streaming mp3s with the VS1002 || beta || [wiki:GTuner] || Guitar Tuner || beta || [wiki:Synth] || A music synthesis library, capable of running alongside other activities || beta ||''' Misc ''' || || || [wiki:Rockets] || What can we control with an mbed inside a rocket? || beta || [wiki:Gyroscopes] || Using an IDG300 dual-axis gyroscope || beta || [wiki:TestRig Test Rig] || Creating a test rig for the mbed || beta || [wiki:SecondLife SecondLife] || Interacting with SecondLife || beta || [wiki:Voltmeter Voltmeter] || Teaching project || beta || [wiki:DigitalDice Digital Dice] || Without using 74 series logic! || beta || [wiki:Scratch] || Interacting with Scratch Programming Environment || beta || [wiki:Metronome] || Simple metronome || beta || [wiki:HowCold] || How Cold?? Data logging with SPI Digital Thermometer || beta || [wiki:MainsRemoteControl] || Mains remote control|| beta || [wiki:SetTheRTC Set The RTC] || Simple utility I made || beta || [wiki:pong Pong] || The classic game of Pong|| beta || [wiki:ASC712] || Using the ASC712 current sensor to monitor power usage|| beta || [wiki:NiMH NiMH Charging] || Charging NiMH batteries using PWMout || beta || ''' Robotics and Motors ''' || || ||[wiki:RobotDesign] || Logo Turtle for the 21st Century|| beta ||[wiki:Sumovore] || Sumovore fun, including A Logo-like interpreter and infrared sensors controlled|| beta ||[wiki:SumovoreExperiments] || Some more Sumovore experiments|| beta || [wiki:HomeTheatre Home Theatre Motor Control] || Motorized Home Theatre || beta || ''' Spatial: GPS, Accelerometers, Rangefinding ''' || [wiki:DigitalCompass] || Experiments with a Digital Compass || beta || [wiki:AccelerationDatalogger] || Data logger using LIS302 Accelerometer (for the car) || beta || [wiki:TiltCompCompass] || Build a Tilt Compensated Digital Compass || beta || ''' Interfacing with a Host ''' || || || [wiki:PythonInteraction] || Making mbed talk to Python, including mbed RPC library || beta || [wiki:MatlabInteraction] || Making mbed talk to Matlab || beta ||''' mbed hacking & development ''' || || || [wiki:Ninja] || Down and dirty with mbed internals... || beta || [wiki:PopularIngredients Popular Ingredients] ||Useful supplies and tools || beta || [wiki:Eagle] || Resources for Eagle PCB tool || beta || [wiki:gEDA] || Resources for gEDA || beta || [wiki:Workshops mbed Workshops session] || Planning for an mbed workshop. || beta || [wiki:MBEDDevelopmentBoard] || Collection of design ideas for an mbed development board || beta || ''' Benchmarking Experiments ''' || || || [wiki:DACBenchmark] || how fast is the AnalogOut routine || beta || [wiki:LFSBenchmark] || how fast is the LocalFileSystem || beta || [wiki:SDBenchmark] || how fast is the SD filesystem || beta ||''' Misc ''' || || || [wiki:USRF] || SRF08 Ultrasonic range finder || beta