As you can see in the system diagram the brains of Magpi Radio is a Raspberry Pi computer. These are small, cheap linux computers that pack a lot of horse power, making them perfect for internet-of-thingsy projects like this. Here are some of the benefits of the Pi when picking your hardware:
• Speed: The Pi runs at 700 mhz with 512 MB of RAM. I never experienced any latency when making this project.
• Audio: Playing audio files is a breeze through the audio jack and supports pretty much any format you throw at it.
• Programming: You’re not limited to a specific library or language. I wrote the Magpi software in Ruby to leverage the excellent Twitter gems (twitter and tweetstream).
You’ll also notice an Arduino in the diagram, which handled the physical interface (the knobs and light). The reason I used the Arduino in addition to the Pi is because the Pi doesn’t have great support for analog io. I was able to read the volume potentiometer with an ADC chip through the GPIO pins, but because there’s only 1 PWM pin I wasn’t able to control the RBG LED. (If you’re interested in using the Pi’s GPIO pins for sensor io, I’d recommend the WiringPi lib).
MCP3008 – 8-Channel 10-Bit ADC With SPI Interface – Need to add analog inputs? This chip will add 8 channels of 10-bit analog input to your microcontroller or microcomputer project. It’s super easy to use, and uses SPI so only 4 pins are required. We chose this chip as a great accompaniment to the Raspberry Pi computer, because its fun to have analog inputs but the Pi does not have an ADC.
Each Friday is PiDay here at Adafruit! Be sure to check out our posts, tutorials and new Raspberry Pi related products. Adafruit has the largest and best selection of Raspberry Pi accessories and all the code & tutorials to get you up and running in no time!
Stop breadboarding and soldering – start making immediately! Adafruit’s Circuit Playground is jam-packed with LEDs, sensors, buttons, alligator clip pads and more. Build projects with Circuit Playground in a few minutes with the drag-and-drop MakeCode programming site, learn computer science using the CS Discoveries class on code.org, jump into CircuitPython to learn Python and hardware together, TinyGO, or even use the Arduino IDE. Circuit Playground Express is the newest and best Circuit Playground board, with support for CircuitPython, MakeCode, and Arduino. It has a powerful processor, 10 NeoPixels, mini speaker, InfraRed receive and transmit, two buttons, a switch, 14 alligator clip pads, and lots of sensors: capacitive touch, IR proximity, temperature, light, motion and sound. A whole wide world of electronics and coding is waiting for you, and it fits in the palm of your hand.