Here is the most rubbery review presenter we’ve ever met. Bryan Lunduke is here to show you how even a complete beginner whose hands are made from foam can build a games console from scratch, using a Raspberry Pi.
A tip, Bryan. I know you do not have hands that work (or, presumably, fingernails); but you’ll find that Pibow you’re using looks EVEN BETTER if you peel the backing paper off each layer!
I got up late today; it’s Boxing day. And there in my inbox was a festive message from our friends in New York, PT and LadyAda, who found themselves at a loose end in the Adafruit factory on Christmas Day and took some video of a beta test they did for a new Raspberry Pi HAT (coming soon to a store near you!)
Merry Christmas from all of us at Pi Towers to everybody reading – we hope your Christmas holiday is as much fun as ours is this year!
A quick housekeeping note: we are not committing to the usual blog post per day this week because we’re supposed to be taking a break, but if we get bored with hanging out with our families, you’ll find something here, so keep checking. I’m off to make a sandwich out of leftovers.
I had the opportunity to play with this machine a few months ago, when Brian Corteil, a Cambridge maker-extraordinaire, brought it to a Raspberry Jam. It’s a piece of genius: the Naughty or Nice machine removes the guesswork from Santa’s assessment of the year’s behaviour, and applies the scientific method to the problem.
A palm rested on the reindeer-leather surface inside is assessed by tiny elves imprisoned in the baseplate, and little sleighbells, dangling from a festive holly wreath, tinkle a coded message to Santa to let him know whether the hand’s owner is naughty or nice.
(Actually, the machine takes a photo of your hand and counts the red pixels. This means that little people, with little hands, will come out with a much nicer score than us naughty grownups.)
Children I saw using this machine thought it was magical, and formed a long line – for once my “explain all the technology” instinct was subdued, and we just let them think the machine was driven by enchantment. And a Raspberry Pi. Brian’s made full build instructions available over at Adafruit – thank you Brian, and I hope Santa’s made a generous assessment of your own behaviour this year!
The good people at Adafruit pointed us at this video. Besides the fact that the costume is driven by a Raspberry Pi, we don’t know much about the build (or the guy who made it – he goes by MikeHandidate on YouTube, but we suspect that’s not actually his name) – good though, isn’t it?
More Halloween goodies to come tomorrow. Are you using a Pi in your costume or house decorations this year?
Alex Markley, a programmer, writer and comedian, has a young relative who, thanks to a Model A Raspberry Pi, some Adafruit Neopixels, some sensors and a scooter is currently the world’s happiest nine-year-old.
I asked Alex if he’s written the project up – he says he’s working on it. We’ll add a link to any build instructions he produces as soon as they’re available.
Arduino Gemma preview – Final board coming late autumn
During his saturday morning presentation at Maker Faire Rome, Massimo Banzi gave a preview of a new collaboration and a new board: Adafruit Gemma becomes officially Arduino Gemma, a tiny but powerful wearable microcontroller board in a 27mm diameter package.
Powered by an Attiny85 and programmable with the Arduino IDE over USB, anyone will be able to easily create wearable projects with all the advantages of being part of the Arduino family. The board will be default-supported in the Arduino IDE, equipped with an on/off switch and a microUSB connector.
The Attiny85 is a great processor because despite being so small, it has 8K of flash and 5 I/O pins, including analog inputs and PWM ‘analog’ outputs. It was designed with a USB bootloader so you can plug it into any computer and reprogram it over a USB port (it uses 2 of the 5 I/O pins, leaving you with 3). Ideal for small & simple projects sewn with conductive thread, the Arduino Gemma fits the needs of most of entry-level wearable creations including reading sensors and driving addressable LED pixels.
After the fruitful joint effort developing Arduino Micro, once more the Arduino Gemma has been developed in collaboration with Adafruit Industries, one of the main leaders of the Maker movement. Arduino Gemma will be available for purchase on the Arduino Store and Adafruit Industries starting late autumn 2014.
Technical specifications: Microcontroller: ATtiny85 Operating Voltage: 3.3V Input Voltage (recommended): 4-16V via battery port Input Voltage (limits): 3-18V Digital I/O Pins: 3 PWM Channels: 2 Analog Input Channels: 1 DC Current per I/O Pin: 40 mA DC Current for 3.3V Pin: 150 mA Flash Memory: 8 KB (ATtiny85) of which 2.5 KB used by bootloader SRAM: 0.5 KB (ATtiny85) EEPROM: 0.5 KB (ATtiny85) Clock Speed: 8 MHz MicroUSB for USB Bootloader JST 2-PH for external battery
Ben Heck, King of the Makers, has made the prettiest point-and-shoot camera build we’ve seen done with a Raspberry Pi. The secret to it is a bit of desoldering and depopulating the Pi he uses, to slim down the profile of the board – he’s yanked nearly everything except the SoC – the processor and memory package in the middle of the Pi. (If we were you, Ben, we’d have used a Model B+ so you didn’t have that SD card sticking out.)
Our own Ben Nuttall, who affects to be totally unimpressed by everything, was overheard saying: “That’s a very cool camera.” There is no higher praise.
There’s no writeup, but the video is very thorough and walks you through everything you need to know, including a parts list (that nice little TFT touchscreen, which is the thing I anticipate most of you being interested in, is from Adafruit). Let us know what you’d do differently, and if you plan on making something similar yourself, in the comments!
Here at MailChimp, we’re always trying to listen hard and change fast. Turns out, this requires a good bit of coffee. Each department has its own take on how to keep the stuff flowing, mostly with the standard Bunn-O-Matic commercial machines. A few folks regularly avail themselves of our espresso setup. The developers fill two airpots—one with regular, the other double strength.
And then there’s the marketing team and our precious Chemex.
We make a pour-over pot once every hour or so, all day long, 5 days a week, 50-something weeks a year. Last December, when we were gathering data for our annual report, we got curious about how many Fresh Pots that might amount to. We tried to count it up, but begrudgingly had to accept the fact we didn’t have a good measure beyond pounds consumed. We even tried to keep track with a bean counter, but that didn’t last long.
For a while, the exact nature of our coffee consumption seemed like it would remain just another mystery of the universe. But then one day, talking to Mark while waiting on yet another Fresh Pot, I said, “Hey, I bet we could track the temperature with a Raspberry Pi and post to the group chat when there’s a fresh one.”
I wasn’t too serious, but Mark’s response was one often heard around MailChimp when ridiculous projects are proposed: “Sounds great, just let me know what you need to get it done.”
With a Raspberry Pi in hand, the first thing I did was add a script to the boot process that sent an email using Mandrill with its IP so I could find it on our network without trouble.
Then, I had to tackle the problem of detecting pot states with only a single datapoint: current temperature. I hoped that comparing the running averages of different time spans would be enough to determine the pot’s status. (The average Chemex temperature over the course of a few minutes, for instance, would tell us something different than the average temperate over the course of an hour.)
Since this was a greenfield project, I wanted to work with an unfamiliar language. I felt like the more functional nature of Clojure would be a great fit for passing along a single piece of state. This turned out to be a great decision, and I’ll explain why in a minute.
Graph it home
I hacked together a quick program that would spit out the current temperature, minute’s running average, hour’s running average, and the running average’s rate of change to a log file so I could analyze them.
Log files in hand, I temporarily turned back to Ruby using the wonderful Gruff charting library to visualize things and make patterns easier to spot.
A few batches of hot water gave me a decent idea what things should look like, so I moved our coffee equipment to my desk to get some live data. This let me check in with the actual running state of the program and compare it with the status of the pot (and led to some coworker laughs and a wonderful smell at my workspace all day).
A brewing or fresh pot is easy to recognize, but figuring out when the pot is empty turned out to be a little tricky. It takes a while for the Chemex to completely cool off, which means it could be empty and still warm, which I’m sure would lead to more than a few disappointing trips to the kitchen. Luckily, the rate a pot cools tells us if it is empty or not—for instance, a half-full pot stays warm longer than an empty one simply because of the coffee still in it. Always nice to have physics on your side.
Watchers for the win
Armed with the collection of datapoints (running averages, rate of change, etc.) for each of the pot’s states, I moved on to figuring out how to notify our department’s group chat room when a pot was brewing, ready, empty, or stale. This is where some of the built-in features of Clojure came in handy.
I already had a program that logged the current state of itself every second. By switching the actual state to an agent, I could apply watchers to it. These watchers get called whenever the agent changes, which is perfect for analyzing changes in state.
Another agent added was the pot itself. The watcher for the temperature would look for the above mentioned boundaries, and update the pot’s state, leaving another watcher to track the pot and notify our chat room. When it came time to pick an alias to deliver the notifications, Dave Grohl was the natural choice.
Here’s a simple example of the pot watcher looking for a brewing pot:
The great thing is the watcher only gets called when the status changes, not on each tick of the temperature. Using agents felt great to me in this case as they provided a clean way to watch state (without callbacks or a ton of boilerplate) and maintain separation of concern between different parts of the program.
Freshness into the future
I’m still working out a few kinks, tuning in the bounds, and keeping a log of pots. It’s been a fun experience and I learned a ton. Something tells me this won’t be the last time we work with Raspberry Pi on a project. What’s next, Fresh Pots in space? Luckily, we’ve got plenty of coffee to propel us.
Ben: Thanks to Steven and MailChimp for permission to use the post – we’re very pleased to see the Pi used as the tool of choice of coffee-hungry developers around the world! Coffee is important to us here at Pi Towers…
Blast from the past – remember this coffee pot? Click to read more
MailChimp is what I use to power Pi Weekly – my weekly Raspberry Pi news & projects email newsletter – check it out at piweekly.net!
If you’re a regular reader, you’ll recall that a month or so ago, we announced a new way of making add-on hardware for the Raspberry Pi: namely, the Raspberry Pi HAT (Hardware Attached on Top). You can read James, our Director of Hardware, explaining what they’re all about in the original blog post: in short, the HAT is a solder-less way of attaching hardware which can be auto-detected by the Pi, so GPIOs and headers are automagically configured by the Pi, without you having to do anything.
The pink confection on top of Gordon is a hat, not a HAT.
(A tangentially related question: how do you pronounce EEPROM? Fights are breaking out at Pi Towers: a small majority of us rhyme the first syllable with “meep”, while the rest of us rhyme with “meh”. This is like the scone/scone thing all over again. Angry opinions in the comments, please.)
HATs are starting to appear in the wild. Adafruit are sending PCBs out for prototyping. HiFiBerry have HATs you can buy now: the Digi+, which enables you to connect an external digital-to-analogue converter; and the DAC+, a high-res all-in-one DAC. AB Electronics are carrying several HATs: an analogue-to-digital converter (ADC); a GPIO port expander; a real-time clock (RTC) and an RS232 serial interface. And the whimsical bearded pixies at Pimoroni have come up with my favourite so far (it’s my favourite because SPARKLES): the Unicorn HAT. I saw it in the flesh on Saturday at the Cambridge Raspberry Jam. It’s a thing of beauty. Here’s Paul, introducing the Unicorn HAT.
Are you making a HAT? Let us know in the comments: I’ll add links to this post if I’ve missed yours out here.
Adafruit’s 3D Thursday series is getting us terribly excited every time they roll out a new project with a Pi in it. Yesterday’s was a doozy: so much so that the engineering team stood around my desk and made puppy-dog eyes and sighing sounds at me until I agreed to email LadyAda and beg a demo sample of the project from them. (She says she’s sending the pink one, Gordon, just to punish you for being so demanding.)
Meet the extraordinary PiGrrl, a home-baked Raspberry Pi clone of the Game Boy.
If you don’t think that’s the best thing ever, you’re dead inside.
As always with Adafruit projects, the PiGrrl is documented minutely; you can find a complete tutorial on their website, along with files for the 3d printer at Thingiverse. This is one of the more complicated builds we’ve featured, but we think the results speak for themselves
LadyAda says: “Woohoo!” After careful consideration, so do we.
Our good friends across the pond at Adafruit are running their first ever Raspberry Pi Photography Award – and I’ve been roped into helping judge this year’s entries.
Lady Ada and PT say:
Anyone, worldwide, with a Raspberry Pi and camera can enter. All photos must be taken with Raspberry Pi + Raspberry Pi camera and/or webcam/camera connected to the Pi. The photos cannot be altered “post” in an image editing program (GIMP, Photoshop, etc) but you can use the built-in filters that the Pi Camera has such as “Sketch”, “Oil Painting”, etc! Be creative and take a photo using a Raspberry Pi of something interesting, like this cat (Carmen) and clock, taken with a Raspberry Pi.
It’s a charming sample picture, but, cute as Carmen is, you’ll need to do something more exciting if you want to win.
We do not want photos taken of Raspberry Pi units, please take photos using the Raspberry Pi. Grand prize is $314 in the Adafruit store, and we have 14 $30 winners too!
You can find full instructions on how to enter at Adafruit’s site. I am looking forward to finding out what you end up sending us, and I am instructed to inform you I am incorruptible in these matters: bribery will not work if you’re looking to affect the judging process. If you’re looking for inspiration, check out the posts here tagged “photography“. Good luck!
The good people at Adafruit have a new tutorial up on making a wearable display, powered by a Pi, that clips on to your regular glasses or (if you’re a Terminator with perfect vision) sunglasses.
The composite display from a pair of “Private Display Glasses” – glasses which are meant to allow you to watch immersive video from the comfort of your own sofa/bed/deckchair - is hacked into a new, 3D-printed shell (the files for the shell are available on Thingiverse), and attached to a Pi along with a mini-keyboard, which lives in your pocket.
(On watching that video, Gordon said “That looks silly.” I replied: “SO DOES YOUR FACE.” There is a hostile working environment at Pi Towers.)
We love it as a proof of concept, and it’s not too much of a leap to get voice recognition (which the Pi handles admirably – you’ll find a mountain of pointers in this forum thread) working on a piece of kit like this; mounting a Raspberry Pi camera board on there shouldn’t be too much of a stretch either. If you have a go yourselves, get in touch: we’d love to see where this goes next!
Our good friends at Adafruit put this project on their Learning System earlier this month. It’s a beaut: you’ll learn something making it, and it looks fantastic when set up. Before we get into the nitty gritty, here’s some video:
This graphic equaliser (a spectrum analys/zer if you’re from the USA) is made from a RGB led strip, with everything down to the audio processing run on the Pi. Everything you see in the video is happening in real time. The setup runs Python, and is based on LightShowPi (which was originally designed to orchestrate Christmas lights), so you’ll be able add LightShowPi features like SMS control from your phone if you’re an advanced user.
Some soldering is required – but soldering is easy, and this is a good project to earn your soldering wings on if you haven’t already. There’s the usual full and helpful tutorial over at Adafruit, along with tips, a parts list, code and all that good stuff. I wish I’d had one of these for my student bedroom. Imagine the parties!
Finally found some time today to solder the parts onto my first OSH Park PCB. The primary motivation for this was to learn Eagle and try out OSH Park, so I wanted to make something with only components I’d already purchased, and that’s why it has a whole Arduino Micro attached to it even though a smaller board (or even just a lone microcontroller) would’ve been sufficient. I didn’t get the displays lined up quite right, so there’s a small gap between them that looks obvious in this photo but isn’t so bad if you’re further away and looking at it head-on. But my learning for next time is to watch out for the positioning of odd-sized components.