A birthday present from Broadcom

Two years ago today*, the Raspberry Pi Model B went on sale, selling 100,000 units on the first day. Since then, over 2.5 million Raspberry Pis have found homes with hobbyists, children and professional engineers around the world.

Each Pi in this first pallet now has over 1250 friends.

The success of the Pi has allowed us to make substantial financial contributions to a range of open-source projects, including XBMC, libav, PyPy, Pixman, Wayland/Weston, Squeak, Scratch and WebKit, and we are continuing to sponsor projects like these. But it’s always felt like we have a piece of unfinished business.

In common with every other ARM-based SoC, using the VideoCore IV 3d graphics core on the Pi requires a block of closed-source binary driver code (a “blob”) which talks to the hardware. In our case, this blob runs on the VPU vector processor of the BCM2835 (the SOC or System On a Chip at the heart of the Raspberry Pi); our existing open-source graphics drivers are a thin shim running on the ARM11, which talks to that blob via a communication driver in the Linux kernel. The lack of true open-source graphics drivers and documentation is widely acknowledged to be a significant problem for Linux on ARM, as it prevents users from fixing driver bugs, adding features and generally understanding what their hardware is doing.

Earlier today, Broadcom announced the release of full documentation for the VideoCore IV graphics core, and a complete source release of the graphics stack under a 3-clause BSD license. The source release targets the BCM21553 cellphone chip, but it should be reasonably straightforward to port this to the BCM2835, allowing access to the graphics core without using the blob. As an incentive to do this work, we will pay a bounty of $10,000 to the first person to demonstrate to us satisfactorily that they can successfully run Quake III at a playable framerate on Raspberry Pi using these drivers. This competition is open worldwide, and you can find competition rules here which describe what you have to do, and how to enter.

We filmed a demo of a Raspberry Pi alpha board running Quake 3 back in 2011. It feels like it happened a lifetime ago.

This isn’t the end of the road for us: there are still significant parts of the multimedia hardware on BCM2835 which are only accessible via the blob. But we’re incredibly proud that VideoCore IV is the first publicly documented mobile graphics core, and hope this is the first step towards a blob-free future for Raspberry Pi: we’re continuing to work on that, and we hope you’ll come along with us!

* Okay, so sue us**: we launched on February 29.

** Please don’t sue us.


Gameboy cosplay (Pi-powered, naturally)

We have no details about this other than the video below. (A picture appeared on Reddit last August, but there’s been absolutely no other information: we do not know who these people are, what the event they’re at is, how many worked on the outfit, or where they’re from.) But it’s magnificent, so we had to share. Great job, shady-looking guy! Get in touch with us if you see this: we’d like to know who you are, and what other superpowers you have.

Thanks to Recantha for the spot!


Graphic equaliser

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!


Mission Control desk

Some parents take the carrot approach to homework enforcement, others the stick.

This is the best carrot I’ve ever seen. Some world-class parenting skills are on display right here. This is the homework desk of Jeff Highsmith’s older son:

And this is what it looks like when he’s finished his homework and is allowed to raise the lid.

The desk came about as the result of a family visit to the Kennedy Space Center. It’s not an exact facsimile of an Apollo Mission control desk (the real ones don’t make whooshy fizzy rocket noises, deep mechanical clankings and exciting beepings, and, as Jeff says, they do more monitoring than controlling), but those of you who have seen the real thing will definitely recognise what this is based on.

Here is a wonderful, wonderful how-to video which walks you around the build and the finished desk. We love the clear panel to display the Pi and the Arduino!

(Eben got to the bit in the video where Jeff’s son issues the command to stir the oxygen tanks and shouted: “NOOOOOOO!”)

The whole thing is run on a Raspberry Pi and Arduino, working together. Jeff says:

The programming of the console, which I posted to GitHub, has the Arduino and the Raspberry Pi working cooperatively. The Arduino uses four I/O expanders (MCP23017) to read the state of switches and buttons. Whenever a switch (be it a momentary push-button switch, a rocker switch, or a toggle switch) changes state (on to off or off to on), the Arduino tells the Raspberry Pi over a serial connection (USB cable). The Raspberry Pi plays a sound or starts a sequence of events, if necessary, and sends any commands for controlling LEDs to the Arduino. The Arduino uses five LED matrix drivers (HT16K33 on a carrier board from Adafruit) to control all of the LEDs. That allows for 640 separate LEDs, which sounds like a lot, until you consider that the numerical displays have eight LEDs per digit and the LED bargraph displays have 24 LEDs per graph (they make three colors by having a red and green LED in each segment so they can make red, yellow, or green). The potentiometers are read by the analog inputs of the Arduino.

The EECOM panel contains four potentiometers that are each mapped to a 12-segment bargraph display. Turning the knobs adjusts the number of segments lit, and I made it so all the segments change color to reflect how urgent a given value is. If the value is adjusted to the safe middle four segments, all segments lit are lit green. If it’s adjusted a bit higher or a bit lower, all lit segments are lit yellow. If the level is adjusted way too high or way too low, lit segments are red.

It even plays real clips from the real Apollo 11 mission, which Jeff was able to source online. You can read much more about the build, what all those wonderful switches and dials do in Jeff’s article for MAKE. Jeff, I hope you’re at the big Maker Faire Bay Area this May. We’re sending our education team, and they’re big fans; they’d like to pick your brains!


What can you do with a Raspberry Pi?

Last month we released an animation called What is a Raspberry Pi? which explains why the Pi exists, what it’s all about and touches on some application we’ve seen – and we recently discovered a video which points out some great ideas for what you can do with yours!

Everyone takes different kinds of inspiration before they start a Pi project – whether it’s following a guide in a book or online, seeing somebody else make something at a Jam or maker faire, or solving a real life problem and getting straight to it. Plenty of people like the idea of the Pi before they have a use for it – sometimes it’s nice just to be presented with some example applications and let one pique your interest. We hope that’s what this great video will do for some of you.

We’d love to hear about your sources of inspiration – as usual – in the comments below.

Our education team (Clive, Carrie Anne, Dave and I) will be at the Jamboree in Manchester this week. There’s an excellent line-up including talks, workshops, panels, ask an expert – and more! The conference part, focusing on Pi in education, on Thursday and Friday, will be held at the Manchester Central Conference Centre, followed by a Jam Hack Day at Edge Hill in Ormskirk. There are still tickets available, including evening sessions for those unavailable during the day – and the party on Friday night – organised by the wonderful Lisa Mather, where there are to be special badges (below) and plenty of swag up for grabs. The conference takes place adjacent to the Education Innovation Conference & Exhibition. We hope to see plenty of you at the event!

The Raspberry Pi Guy’s own name badge


Does your Raspberry Pi belong in a gallery?

It is a beautiful piece of hardware and I’m sure takes pride of place in many a building, with scores of people gazing upon it in wonder, especially if you’ve hacked it to do something cool. But is it art? Google Developers certainly think so, and have launched Dev Art: Art Made with Code mid-February, as an open platform that allows artists to share their digital art with the world and also detail the process they took to create their work in a unique way. If you have not already checked out the site, then I would highly recommend doing so. Raspberry Pi is listed as a platform, and there are some examples of its use in this project such as the Wireless Poetry Installation.

As well as the Dev Art website, Google have teamed up with the Barbican in London to host an exhibition of digital interactive art this summer and they are offering anyone the chance to exhibit alongside some of the worlds most well known digital artists in this exhibition through their Dev Art competition.

The winning creative coder will receive a budget of £25K, Google Developer support as well as curational and production support from the Barbican to help realise their concept into a digital art installation.

 

The Top 10 Finalists will have the opportunity to meet the DevArt judging panel during a Google+ Hangout, along with a ‘DevArt Finalist’ award for their site.

We know how powerful art can be in teaching computing skills since working with Dr Sam Aaron on Sonic Pi, and watching our own Artist in Residence Rachel Rayns lead workshops. Now it is over to you! We hope that the wider Raspberry Pi community will feel motivated to submit their projects to the Dev Art competition. Who knows, maybe you could be exhibiting at the Barbican!

 

 


Pi-powered T-shirt cannon

Don’t forget to enter our latest competition: win an Adventures in Raspberry Pi and PiHUB bundle!

I went to a baseball match in Phoenix, Arizona a few years ago. (Go Diamondbacks!) It’s a remarkable cultural experience if you’re not American: and I am grateful to the man next to me who put up with a stream of questions (“Why has that number just gone up? Why isn’t he MOVING? Why does it stop every ten minutes? What is that giant plush hotdog thing? What sort of country carpets its stadia and serves beer at games? How is his leg doing that?”) not by killing me, as he must have been sorely tempted to do, but by sharing his packet of salted sunflower seeds.

I was reminded just how superficial my understanding of American institutions like baseball (or monster trucks, or roller derby, or that thing they call “football” that isn’t) is, and how much of that understanding has been gained entirely from watching The Simpsons. That baseball match had everything: dancing mascots, footlong hot dogs, an organ playing “Take me out to the Ball Game”, and a t-shirt cannon, just like the one that killed Maude Flanders. (This is not a spoiler. Maude Flanders died nearly fifteen years ago.)

Since that baseball game (where none of the t-shirts made it in my direction) I have had the odd daydream about owning a t-shirt cannon. It’d be great. I could use it to clothe people a long way away. David Bryan and a Raspberry Pi have made it all possible.

You’ll need a lot of PVC tubing, an understanding of both Pi the computer and Pi the irrational number, a compressed air tank…and sprinkler valves. Dave’s cannon’s not just a hobby project: it sees regular use at Minnesota Rollergirls events.

Dave has written a superb how-to, with detailed diagrams, parts lists, some help with the maths you’ll need, an explanation of how he came to the engineering decisions he made, all the necessary code, and much more. I must check up on the legality of letting the work experience kids near compressed air: we could use one of these ourselves for events.

Thank you Dave! (If you like the way Dave does things check out his cat feeder, which we featured here last year) – and RIP Maude Flanders.

 


Get Carrie Anne’s book for six quid! (And a competition!)

A lot of you have had huge success in the last few months using our very own Carrie Anne Philbin’s Adventures in Raspberry Pi as a resource for kids of all ages. It’s engaging, friendly and works really well in getting kids excited and confident about using their Raspberry Pi. So much so that we’ve found schools are ordering classroom sets; so are after-school clubs, and we’ve had amazing feedback from kids and their parents.

Carrie Anne (whose job title here at Pi Towers is Education Pioneer) says:

“I’m totally stunned by the success of Adventures in Raspberry Pi so far. I’m  amazed that teachers and after school club mentors are buying it and using it to teach programming.”

We aren’t amazed at all – the book’s brilliant.

Shortly after taking this picture, Carrie Anne tried to saw Ben’s ear off.

We wanted to make Adventures in Raspberry Pi easier for schools to buy (at full price, with shipping, a classroom set can be expensive). So we’ve bought a pallet full here at Pi Towers so we can sell them to you at a much reduced price compared to other vendors (we’ve reduced the margin we take by selling these to almost nothing), with very low shipping costs for bulk orders. If you only buy one book, shipping is £4 (which works out cheaper than buying it on Amazon even if you have Amazon Prime): but it becomes an amazing bargain when you buy more than one, with P&P at only £6 for between 2 and 10 books, so if you’re ordering them for a class or club, or for all your tiny relatives, then you end up paying much less. Here’s a table of prices:

Units Unit cost including P&P
1 £10
2 £9
5 £7.20
10 £6.60

We are also celebrating the addition of Pimoroni’s PiHUB to the Swag Store – it’s a really handy, super-reliable, powered USB hub for your Pi that works with every USB device we’ve tested on it. If you would like to win a bundle including one of five copies of Adventures in Raspberry Pi, some Raspberry Pi stickers and your very own PiHUB, please leave a comment below telling us what you would like to see us stock in the Swag Store. We’ll pick the five ideas that made us laugh the most or that made little lightbulbs go off in our heads as the winners. The competition is open worldwide to people of all ages, and closes on February 26. Make sure that you use a genuine email address when you comment so we can get in touch with you if you win.

Here is a bonus video of Carrie Anne at the last Cambridge Raspberry Jam. She’s planning on visiting Alex from RasPi.TV with the Minecraft sword unless he adds the bit where she later got the highest score of the day…

(If you’d like a go yourself, you can buy the Seven Segments of Pi kit you need to make this and other games, which comes with some great tutorial materials, from Cyntech. Some soldering required.)


The MagPi – Kickstart the Volume 2 Binder for 432 pages of Pi goodness!

The MagPi magazine is the single thing to have come out of the Raspberry Pi community that I’m proudest of, in a sort of godmotherly way – we at the Raspberry Pi Foundation do not have any association with The MagPi besides thinking it’s the best thing since sliced maltloaf.

They’ve got a new Kickstarter running.

The MagPi is a monthly free download, full of projects, tutorials, reviews and interviews about the Raspberry Pi. The magazine is staffed entirely by volunteers, and it’s just entering its third year of publication. Last year, the MagPi team served up a Kickstarter to bring the magazine to print, which proved really successful: print copies go down especially well if you’re using the magazine for reference or working through the tutorials. That Kickstarter meant that you could get hold of all of the first year’s magazine in a print version, with a handsome binder to put everything in. We have a couple of the first year’s binders filled with magazines in the office: the Pi Towers team finds the MagPi a really useful resource.

Many people have asked for another binder for the second year’s print copies, having accumulated a heap of them at home. So Team MagPi are running a short-duration Kickstarter to fund manufacture of a binder for Vol 2 (i.e. every edition of The MagPi that came out in 2013). They’re keeping it to a two-week funding run because financing a binder costs them much less than last year’s bid to pay for printing what had been a virtual magazine. You can pledge at different levels, so you can fund anything from a sticker, an empty Vol 2 binder for yourself, a Vol 2 binder with all of last year’s magazines inside, or both volumes – complete, of course, with binders.

The MagPi team don’t make a penny for themselves out of this: the project has always been run on a strictly voluntary basis, and it amazes us to see how the magazine continues to evolve, given that it’s run on a shoestring. They say:

Any extra funding will be used to fund the ongoing costs of producing The MagPi, plus it will allow us to explore other ways of expanding the availability of the magazine, introduce other types of content, and translations to other languages. Any profits after that will be invested into future print runs and the Raspberry Pi community.

You can back this project by clicking here, or on any of the images in this post. Good luck, MagPi people – it goes without saying, but we think you’re brilliant!

 


Vernier sensors and the Wolfram Language

Here’s another guest post from Allison at Wolfram Research. Today we’re looking at how to interface external sensors from Vernier Software & Technology to the Pi using the Wolfram Language.

Even though we only released the Wolfram Language on the Raspberry Pi a few months ago, Bob LeSuer is already a power user. He’s an Associate Professor of Chemistry at Chicago State University and is naturally a big proponent of incorporating technology into his teaching. In his lab classes, he uses instruments from Vernier, a company that creates a wide array of sensors for collecting data, from accelerometers and barometers to CO2 and pH sensors. But what particularly piqued our interest was that Bob came up with the idea to connect these sensors to the Raspberry Pi with the Wolfram Language! So of course we had to share.

Equipment you will need:

First, download the Vernier Software Development Kit for Linux and follow the instructions for unpacking the file. A few additional lines of code will need to be added to get it to run on the Pi.

In config.in, add:

AC_CONFIG_MACRO_DIR([m4])

And to Makefile.am, add:

ACLOCAL_AMFLAGS= -I m4

The following C code and MathLink template were used to create the functions getLibVersion, getDeviceInfo, and getSimpleMeasurements, which can be used in Mathematica. Download the two files and compile them with the following command:

mcc -o vernier vernier.c vernier.tm -I/usr/include/GoIO -lGoIO

Make sure the GoIO library is linked and that the /usr/include/GoIO directory is included in the search path.

And now, switching to the Wolfram Language, you can dynamically update the readings from your sensor with the following code:

link = Install["/mnt/documents/Pi/vernier/Vernier"]

Dynamic[{Column[{Row@StringSplit[getDeviceInfo[], ","][[{4, 5}]],
getSimpleMeasurement[]}], Clock[{1, 1}, 2]}]

The code will even continuously update with the appropriate readings as you swap sensors!

Similarly, you can make a plot update in real time, as shown below using a light sensor:

info = StringSplit[getDeviceInfo[], ","]

Dynamic@ListPlot[data, PlotLabel -> info[[4]],
Frame -> {True, True, False, False}, FrameLabel -> "Time (s)",
"Light " <> info[[5]]]

And this is just the start! There are an infinite number of ways now for this data to be analyzed and optimized with the Wolfram Language. You tell us—where would you go from here?

Bob’s web page also has some more great ideas for using the Wolfram Language and the Raspberry Pi for experiments (like building a spectrometer using Lego!).