Tag Archives: Uncategorized

Preview the upcoming Maynard desktop

via Raspberry Pi

Some of you will be aware that we’ve been working on a new, more responsive and more modern desktop experience for the Raspberry Pi. We thought you might like an update on where we are with the project.

The chip at the heart of the Raspberry Pi, BCM2835, contains an extremely powerful and flexible hardware video scaler (HVS), which can be used to assemble a stack of windows on the fly for output to the screen. In many ways the HVS resembles the sprite engines you may remember from 8- and 16-bit computers and games consoles from the Commodore 64 onward, with each window treated as a separate translated and scaled “sprite” on top of a fixed background.

The Wayland compositor API gives us a way to present the HVS to applications in a standards-based way. Over the last year we’ve been working with Collabora to implement a custom backend for the Weston reference compositor which uses the HVS to assemble the display. Last year we shipped a technology demonstration of this, and we’ve been working hard since then to improve its stability and performance.

The “missing piece” required before we can consider shipping a Wayland desktop as standard on the Pi is a graphical shell. This is the component that adds task launching and task switching on top of the raw compositor service provided by Wayland/Weston. The LXDE shell we ship with X on the Pi doesn’t support Wayland, while those shells that do (such as GNOME) are too heavyweight to run well on the Pi. We’ve therefore been working with Collabora since the start of the year to develop a lightweight Wayland shell, which we’ve christened Maynard (maintaining the tradition of New England placenames). While it’s some distance from being ready for the prime time, we though we’d share a preview so you can see where we’re going.

Packages for Raspbian are available (this is a work in progress, so you won’t be able to replace your regular Raspbian desktop with this for general use just yet, and you’ll find that some features are slow, and others are missing). Collabra have made a Wiki page with compilation instructions available: and there’s a Git repository you can have a poke around in too.

Mudra: a Braille dicta-teacher

via Raspberry Pi

Sanskriti Dawle and Aman Srivastav are second-year students at the Birla Institute of Technology and Science in Goa. After a Raspberry Pi workshop they decided they wanted to do something more meaningful than just flash LEDs on and off, and set this month’s PyCon in Montreal as their deadline.


Aman Srivastav and Sanskriti Dawle

They ended up producing something really special. Mudra means “sign” in Sanskrit: the Raspberry Pi-based device is a learning tool for visually impaired people, which teaches Braille by translating speech to Braille symbols. Braille literacy among blind people is poor even in the developed world: in India, it’s extremely low, and braille teachers are very, very few. So automating the teaching process – especially in an open and inexpensive way like this – is invaluable.

In its learning mode, Mudra uses Google’s speech API to translate single letters and numbers into Braille, so learners can go at their own speed. Exam modes and auto modes are also available. This whole video is well worth your time, but if you’re anxious to see the device in action, fast-forward to 1:30.

Sanskriti and Aman say:

Mudra is an excellent example of what even programming newbies can achieve using Python. It is built on a Raspi to make it as out-of-the-box as possible. We have close to zero coding experience, yet Python has empowered us enough to make a social impact with Mudra, the braille dicta-teacher, which just might be the future of Braille instruction and learning.

We think Mudra’s a real achievement, and a great example of clean and simple ideas which can have exceptional impact. You can see the Mudra repository on GitHub if you’d like a nose around how things work; we’re hoping that Sanskriti and Aman are able to productise their idea and make it widely available to people all over the world.

Books, the digitising and text-to-speechifying thereof

via Raspberry Pi

A couple of books projects for you today. One is simple, practical and of great use to the visually-impaired. The other is over-complicated, and a little bit nuts; nonetheless, we think it’s rather wonderful; and actually kind of useful if you’ve got a lot of patience.

We’ll start with the simple and practical one first: Kolibre is a Finnish non-profit making open-source audiobook software so you can build a reader with very simple controls. This is Vadelma, an internet-enabled audio e-reader. It’s very easy to put together at home with a Raspberry Pi: you can find full instructions and discussion of the project at Kolibre’s website.

The overriding problem with automated audio e-readers is always the quality of the text-to-speech voice, and it’s the reason that books recorded with real, live actors reading them are currently so much more popular; but those are expensive, and it’s likely we’ll see innovations in text-to-speech as natural language processing research progresses (its challenging: people have been hammering away at this problem for half a century), and as this stuff becomes easier to automate and more widespread.

How easy is automation? Well, the good people at Dexter Industries decided that what the Pi community (which, you’ll have noticed, has a distinct crossover with the LEGO community) really needed was a  robot that could use optical character recognition (OCR) to digitise the text of a book, Google Books style. They got that up and running with a Pi and a camera module, using the text on a Kindle as proof of concept pretty quickly.

But if you’re that far along, why stop there? The Dexter team went on to add Lego features, until they ended up with a robot capable of wrangling real paper books, down to turning pages with one of those rubber wheels when the device has finished scanning the current text.

So there you have it: a Google Books project you can make at home, and a machine you can make to read the books to you when you’re done. If you want to read more about what Dexter Industries did, they’ve made a comprehensive writeup available at Makezine. Let us know how you get on if you decide to reduce your own library to bits.

MagPi issue 22

via Raspberry Pi

I’m about two weeks late to the party on this one – massive apologies to all at The MagPi. It’s been a bit busy around here so far this month. Right now, Picademy’s underway in the office space we’ve got set up as a classroom, and 24 teachers are busy making blooping noises with Sonic Pi while Clive booms at them in Teachervoice. It’s distracting but curiously enjoyable.

Alongside the preparation for Picademy, this month we’ve seen the launch of this new website, and the announcement about the new Compute Module. While all this was going on, the April edition of The MagPi came out, and I didn’t notice because I was too busy glueing Raspberry Pi logos on sticks and sending boxes of jam to Johnny Ball (true story).

MagPi April 14

 As usual, The MagPi is full of wonderful things like internet-enabled garage doors, night lights that repel under-bed goblins, reviews, competitions, tutorials and much more. My favourite article this month discusses a solar cell (this month’s cover star) that tracks the sun to provide 140% more energy than a static cell. Go and read it online for free: you can also order a printed copy for your personal library or for your school. Thanks MagPi folks – I promise to be more timely about letting people know about next month’s issue!

BitScope Micro

via Raspberry Pi

We met the folks from BitScope some months ago to talk about their plans for a miniature scope especially for the Raspberry Pi. They’ve just launched the product we discussed today, and our socks have been comprehensively knocked off by it; the engineers who sit behind me think this is one of the most exciting Raspberry Pi add-ons they’ve seen so far.


This is the BitScope Micro, built especially for the Raspberry Pi. It turns your Pi into a dual channel digital oscilloscope, a multi-channel logic analyser, a waveform and clock generator and a spectrum analyser; it comes bundled with BitScope’s full suite of software (well worth a look if you’re even slightly interested – this thing has features coming out of the wazoo), and it’s probably the cheapest digital scope we’ve ever seen, coming in at USD $95 if you buy in volume, and $145 at one-off retail. You can read much more at BitScope’s website.


Sample output


More sample output

We think that’s an incredibly good deal – for the same analogue bandwidth in a bench scope you’re looking at an instrument that’s many, many times the price, even at retail.

The BitScope Micro comes bundled with ten signal clips and a USB cable.

The BitScope Micro comes bundled with ten signal clips and a USB cable.

It’s exciting for us to see proper scientific instrumentation coming to the Pi; we’re looking forward to seeing what the community does with tools like the BitScope Micro. Give us your ideas in the comments.


New how-to animation – special guest star!

via Raspberry Pi

We’ve just taken delivery of another video from the lovely guys at Saladhouse Animation. This one’s for the new Quick Start page, to help out all those beginners who have asked which cables go where, and what they do.

UK readers over 30 or so might recognise the voice of our animated presenter.

Massive thanks, as always, to Sam Alder and Scott Lockhart at Saladhouse, who we love working with; they’re some of our favourite people. But the biggest thanks of all has to go to my childhood hero (he’s also the childhood hero of all the actual grown-ups in the office) – without this guy’s influence when I was a kid, I wouldn’t have ended up loving science, and I wouldn’t have ended up working on Raspberry Pi. Here he is at the recording session with Sam (mouth) and Scott (tall):


That’s the LEGENDARY Johnny Ball. Johnny donated his time and his voice talent to the Raspberry Pi Foundation, and we couldn’t be more grateful: Johnny, please watch out for the postman next week, ‘cos we’re sending  you a present to say thanks.

Meet Jasper: open-source voice computing

via Raspberry Pi

Meet Jasper. He’s like Siri, but much better, in that it’s open-source and completely customisable. All you need to set up your own is a microphone, a speaker, and a Raspberry Pi.

Jasper already comes with modules to deal with things like time, weather, Gmail, playing your Spotify music, news (and what’s on Hacker News)…and knock knock jokes. You can build your own modules to add more functionality. We’re really impressed by how well-documented Jasper is; new developers should be able to get to grips with building on the platform very easily, and we’re looking forward to watching what you guys get up to with it.

Easy as Pi Piano

via Raspberry Pi

I’m on the fence about whether or not this is an effective way to learn how to play the piano: but it’s definitely an effective way to learn about electronics, Python, servo motors, and why lasers are cool. Shane Snipe and his dad took about 50 hours to put this project together – astonishingly, neither of them had ever written any Python before they started the project.

Over at YouTube, Shane says:

My dad and I made the Easy as Pi Piano system to make learning chords faster and easier. This project took about 50 hours to complete due to the fact that we were new to the Python programming language. The Easy as Pi Piano system functions as a piano teacher. Learn to play the chords to your favorite song! The servo motor lasers show you which keys to play. Slow it down or speed it up with the scale. On the monitor, you will see the finger placements, the current chord, and the lyrics to the whole song. We hope that our hard work makes learning how to play piano easy as pie.

Thanks Shane, and thanks Dad!

Raspberry Pi Compute Module: new product!

via Raspberry Pi

As regular readers will know, it’s been a busy time here at Pi Towers recently with the launch of our new website, free educational materials and £1m education fund.

On the engineering side of things we’ve also been very busy over the past year, and not to be outdone by the education team, we are ready to take the wraps off something special, this time aimed at business and industrial users.

What's this little thing? Read on to find out.

What’s this little thing? Read on to find out.

From humble beginnings, the Raspberry Pi platform has grown and matured: the software is now full-featured and stable, and is still constantly improving thanks to the continuing hard work of our heroic community of volunteers; as well as targeted injections of funding to solve some specific issues. The Pi, and the Broadcom BCM2835 SoC at its heart, are also steadily becoming more open.

We love hearing about what users are doing with their Raspberry Pis, and are constantly amazed at the range of projects, as well as the inventiveness and creativeness of the community. We are also aware that there are a very significant number of users out there who are embedding the Raspberry Pi into systems and even commercial products. We think there needs to be a better way to allow people to get their hands on this great technology in a more flexible form factor, but still keep things at a sensible price.

Like proud parents, we want to free the core technology of the Raspberry Pi to go forth and become an integral part of new and exciting products and devices, and so today we are announcing the forthcoming Raspberry Pi Compute Module.


Compute Module on the left. What does it do? Read on to find out.

The compute module contains the guts of a Raspberry Pi (the BCM2835 processor and 512Mbyte of RAM) as well as a 4Gbyte eMMC Flash device (which is the equivalent of the SD card in the Pi). This is all integrated on to a small 67.6x30mm board which fits into a standard DDR2 SODIMM connector (the same type of connector as used for laptop memory*). The Flash memory is connected directly to the processor on the board, but the remaining processor interfaces are available to the user via the connector pins. You get the full flexibility of the BCM2835 SoC (which means that many more GPIOs and interfaces are available as compared to the Raspberry Pi), and designing the module into a custom system should be relatively straightforward as we’ve put all the tricky bits onto the module itself.

So what you are seeing here is a Raspberry Pi shrunk down to fit on a SODIMM with onboard memory, whose connectors you can customise for your own needs.

The Compute Module is primarily designed for those who are going to create their own PCB. However, we are also launching something called the Compute Module IO Board to help designers get started.

Empty IO board on the left: Compute Module snapped into place on the right.

Empty IO Board on the left: Compute Module snapped into place on the right.

The Compute Module IO Board is a simple, open-source breakout board that you can plug a Compute Module into. It provides the necessary power to the module, and gives you the ability to program the module’s Flash memory, access the processor interfaces in a slightly more friendly fashion (pin headers and flexi connectors, much like the Pi) and provides the necessary HDMI and USB connectors so that you have an entire system that can boot Raspbian (or the OS of your choice). This board provides both a starting template for those who want to design with the Compute Module, and a quick way to start experimenting with the hardware and building and testing a system before going to the expense of fabricating a custom board.

IO Board

IO Board

Initially, the Compute Module and IO Board will be available to buy together as the Raspberry Pi Compute Module Development Kit.

These kits will be available from RS and element14 some time in June. Shortly after that the Compute Module will be available to buy separately, with a unit cost of around $30 in batches of 100; you will also be able to buy them individually, but the price will be slightly higher. The Raspberry Pi Foundation is a charity, and as with everything we make here, all profits are pushed straight back into educating kids in computing.

I’m sure people will be keen to get their design process started; initially we are releasing just the schematics for both the Compute Module and IO Board, but we will be adding plenty more documentation over the coming days and weeks.

Happy creating!

*But don’t go plugging the Compute Module into your laptop – the pins assignments aren’t even remotely the same!

PA Consulting Raspberry Pi Competition

via Raspberry Pi

The PA Raspberry Pi competition challenges young people to use the Raspberry Pi to make the world a better place. Last year I helped judge the competition and was amazed by the creativity and innovation of the entries (the excellent AirPi was one of last year’s winners). This year’s event was held in the Science Museum, and I went along to judge the Year 4-6 and Year 7-11 categories, and to run some workshops along the way.

The Sonic Pi workshops were fantastic—they almost ran themselves, with the students continually trying out new things in quest to make the best music or silliest sounds (the exploding farmyard was a particular favourite). I’ve said it before, but Sonic Pi is genius.

In the afternoon I joined my fellow judges: Rory Cellan-Jones, the BBC’s technology correspondent, and Claire Sutcliffe, co-founder of Code Club. We spent 15 minutes talking to each of the seven teams.  The winning projects had to have the potential to benefit the world in some way and we were also looking for things like innovation, creativity and originality. What really stood out was the energy of the teams — they all talked passionately and knowledgeably about their projects and how they had used the Raspberry Pi to solve real world problems.


St Mary’s CE Primary, with Pi ‘n’ Mighty, their recycling robot

The year 4-6 category was won by St Mary’s CE Primary School with their recycling robot Pi ‘n’ Mighty. The robot scans packaging barcodes and then tells you if it can be recycled and which bin to put it in. The team was bursting with energy and falling over themselves to explain how they’d made it and what it did. I’d love to see a Pi ‘n’ Mighty in every school canteen, encouraging recycling and helping children learn about the topic. And it looks fantastic, exactly how a robot should look!


Frome Community College won the year 7-11 category prize with their prodigious Plant Pi, a system to care for plants and monitor their environment. The team had covered every aspect including hardware and web monitoring, and they had even created an app. It really is a brilliantly designed and engineered solution that already has the makings of a commercial product. The project is open source and includes code, instructions, parts list and documentation.

It was a great day and it was a real pleasure to speak to the finalists and to see young people doing remarkable and useful things with the Raspberry Pi. If I could bottle the innovation, enthusiasm, creativity and technical skills in that room then I would have a Phial of Awesome +10. (I would carry it around with me in a belt holster and open it for the occasional sniff when feeling uninspired.) Best of all, I know that we’ll be seeing some of these finalists again: skills like computational thinking stay with you for life and will serve these kids in whatever they do in the future.

Announcing our million-pound education charity fund

via Raspberry Pi

It’s been a busy month for us here at Pi towers, and after the recent announcement of Picademy and the launch of the new website with an increased focus on educational resources, you may be wondering what’s next for our educational mission.

Without disappearing too far down the rabbit-hole of superlatives, I can say we are all super-excited to announce the launch of the Raspberry Pi Foundation Education Fund. Thanks to the support of the community over the past two years through buying Raspberry Pis and building inspiring, innovative projects, we’ve been able to build up a bag of funds to spend on our education mission. So today we are announcing a £1 million education fund.


Emma has been busy getting artistic with the folding stuff this morning.

This fund is in support of our core charitable mission, so we are looking to fund innovative and exciting projects that enhance understanding of and education in computing for children aged between 5 and 18.  The fund does not exclusively target Computing as a subject; we are also interested in supporting projects that demonstrate and promote the use of computing technology in other subjects, particularly STEM and the creative arts.

Our aim is to support a range of projects: from those that increase participation, to those that target excellence. Given our charitable status, priority will be given to organisations that have a not-for-profit ethos. The fund will operate through match funding, so not only are we wanting to hear from people with potential projects ideas; we are also wanting to hear from industry and third-sector partners who’d be interested in co-funding some of the projects.

If you’d like to know more about the fund, how it will operate and how to make an application, you can find out more on our Education Fund page.


Welcome to our new website

via Raspberry Pi

You’ll notice that things round here don’t look like they used to. This website has had a comprehensive overhaul: we hope you like what you see. (That stuff from yesterday? April Fool’s. Sorry.)

We are treating this new website as a Beta. There are a few things we won’t be able to move across until this morning, when everything on the server is properly migrated; and we’re sure there are some snags we haven’t spotted. If you find a navigation problem or something that you think is an obvious error, please let us know in the comments below. You’ll notice the nice new friendly URLs for blog posts (/welcome-to-our-new-website/ rather than /archives/6754) but don’t worry – all the old links will still work. And URLs of any pages that aren’t where they used to be should point at their new home. If you spot any 404s let us know in the comments or in the forum.

Everything that you’re used to from our old website is still here: the blog, help pages, forums (which we’ve yet to overhaul and bring in line with the new look – that’s coming in the next couple of months) and Swag Store are all available as usual through the navigation bar you can see at the top of the page. I’m not linking to them here, so you have a reason to start experimenting by clicking around. But there are also some new areas which you might like to spend some time exploring today, and some new ways in which we’re presenting old information.

Teach, Learn, Make

We’re launching a new area of the site for teachers, learners and makers, full of free resources and projects. Teachers will find entire schemes of work, complete with lesson plans, linked to the UK’s new Computing curriculum. Those of you who want to learn on your own will also find materials you can use to find your way around a Raspberry Pi, and what you can do with it; and people who want a step-by-step guide to make their own Raspberry Pi projects will find just what they’re looking for.

All of our materials are Creative Commons licensed. The licence we use is CC BY-SA (attribution and share-alike), which is the licence used by Wikipedia.


We welcome your contributions to our materials. What you see here today is only the start: we will be adding more materials very regularly in all three categories: Teach, Learn and Make. Keep checking back; we’ll also flag up on this blog and on Twitter whenever new resources are available.


We have made a big change to the way we deal with documentation. A bit of background is necessary here. Until now, we’ve relied on the third-party, crowd-sourced wiki at eLinux. This was set up in 2012 when we had absolutely no staff, and we asked the community to help populate it, because we didn’t have the resources ourselves. We at the Foundation have no oversight over that wiki, and we’ve noticed that it’s become a bit out of date.

So we’ve taken the decision to move all of our documentation in-house, but we’ve done so in a way that means that you can make additions and alterations if you think we’ve missed something – with our oversight. All of our documentation is written in Markdown, and lives on GitHub. It’s not an open wiki, but if you want to make a change, please open an issue on GitHub. (Learn more here.) We’ll consider all issues which are opened, and if we accept yours, you can file a pull request with your change. It’s a way to keep things lean, consistent and accurate. Everything gets looked over by the team of people who make the Raspberry Pi to be checked for accuracy: at the same time, it allows you to pull us up on anything you think we should expand on.

Some of what we have here now is based around a kernel of documentation from the old eLinux wiki, and we are very, very grateful to everyone who contributed materials to it that we have been able to use here. The new documentation also covers all the stuff we used to host here separately: datasheets, hardware specs and so on. We’ve still got some editorial work to do on some of what we’ve pulled in to the new documentation, but it should be usable from today.


I’d like to thank the education and web folks here at Pi Towers, especially Carrie Anne Philbin, who has written more top-quality resources in the last two months than we thought it was possible for one human being to produce, all while running workshops and organising Picademy; and Ben Nuttall, who has been stumbling around the office muttering and tugging at his hair for the last fortnight, sent three-quarters mad by a mixture of insufficient sleep, ignorant requests from his boss (me) and too much staring at a terminal window. His wild eyes and trembling lip are making me feel guilty, and I have been worried that he might die of overwork or run away and retrain as a sponge diver before we got everything finished. (I think you’ll agree that he’s done a simply amazing job in a very short time. Most of what you see here is down to Ben; despite appearances to the contrary, he’s a bundle of joy, and we’re very lucky to have him on the team.)

This is what not enough sleep and too much coffee looks like.

This is what not enough sleep and too much coffee looks like.

Thanks to Laura for the exceptionally smooth and painless editorial ride she’s given us. Thanks to Dave and Clive for the resources and the cakes; thanks to Lance for his oversight (we couldn’t manage without you, Lance); thanks to Emma for keeping us all in line; thanks to Rachel for the photos; thanks to the team at Du.st for the design work – and no thanks at all to Gordon, who ate all our jelly babies, drank most of the coffee and laughed at us when we asked him what hdmi_ignore_edid=0xa5000080 does.

We hope you like what you see. As for me and the team, we’re going to go and sit very quietly on a lawn somewhere, read the newspaper and drink tea for the rest of the day.

New website design is here!

via Raspberry Pi

As you’ll know if you’ve been following us here and on social media recently, we’ve been hard at work redeveloping the Raspberry Pi website. We’re excited to announce our new-look site today! You’ll find this new site has the following features:

  • Optimised for use with the Raspberry Pi
  • Handsome retro look and feel
  • Elegant colour scheme
  • ASCII art for the new millennium
  • Tastes of electric limes when licked.

Have a look around and tell us what you think! Many thanks to Ben Nuttall for his design work, which we plan on using to repel new customers from now on.

Update (2nd April): Yes, it was an April Fool’s prank. We’re really pleased so many of you enjoyed the site yesterday, and feel sorry for those of you who got really upset about it. It turned out to be one of our most commented posts ever. We intend to make the stylesheet available as a novelty (don’t worry, we won’t force it upon you).

Update (4th April): You can now view the site in glorious monospace by appending ?fool to the end of any URL on the site e.g. raspberrypi.org/new-website-design-is-here/?fool

Quake III bounty: we have a winner!

via Raspberry Pi

At the end of February, Broadcom announced the release of full documentation for the VideoCore IV graphics core, and a complete source release of the graphics stack for the BCM21553 cellphone chip. To celebrate, we offered a $10k prize to the first person to port this codebase to the BCM2835 application processor that sits at the heart of the Raspberry Pi, and to get Quake 3 (which already runs on the Pi) running on the newly open ARM driver, rather on the closed-source VPU driver. Our hope was that the ported driver would be a helpful reference for anyone working on a Mesa/Gallium3D driver for VideoCore IV.

Hands up if you spent far too long playing this when you were young.

I’m delighted to say that we have a winner. Simon Hall is a longtime Pi hacker, who also produced the first ARMv6-accelerated copies-and-fills library back in 2012 and wrote the DMA kernel module that we integrate in our Raspbian releases. The prize couldn’t have gone to a more fitting recipient.

So, without further ado, here are Simon’s instructions for getting the driver up and running.


You will need:

  • a Raspberry Pi, preferably a 512MB version, with the latest Raspbian
  • a network connection
  • a monitor capable of displaying 1080p
  • an SD card, at least 8GB (10GB is recommended)

We need plenty of space to build the kernel. Compiling will take around 12 hours, so it is helpful to overclock the Pi for this task. We also require the latest firmware, and the necessary packages we’re going to use to build the code.

Note: We’re going to use gcc 4.7, as the code generated is 10% faster than with 4.6. 4.8 is 10% faster still, but this is not available on Raspbian. If you cross-compile you can get better frame times.

Enter the raspi-config utility with:

sudo raspi-config

Expand the filesystem, set the overclock to at least medium (900 MHz), and reboot. Now perform an update with:

sudo rpi-update

and reboot again. We need to install several packages. Enter the following command to do this:

sudo apt-get -y install gcc make bc screen ncurses-dev g++-4.7 libsdl1.2-dev


Enter the following commands to retrieve the necessary software from GitHub:

git clone --depth=1 https://github.com/raspberrypi/linux.git
git clone https://github.com/simonjhall/challenge
git clone https://github.com/simonjhall/dma
git clone https://github.com/raspberrypi/quake3.git


This will take around 10 hours with all kernel modules. Pruning the modules to the bare minimum can improve compile times if you wish. Enter the following commands:

cd linux
git apply ~/challenge/kernel/patch.diff
zcat /proc/config.gz > .config
make oldconfig
make menuconfig

Enter “general setup”, select “local version”, enter the string “simon” and then exit to the main menu and save. Now build the kernel with:

make ARCH=arm


Enter the following commands to install the new kernel:

sudo make ARCH=arm modules_install
sudo cp arch/arm/boot/Image /boot/kernel_simon.img
sudo su
echo kernel=kernel_simon.img >> /boot/config.txt
echo gpu_mem=128 >> /boot/config.txt

When the devices comes back up, verify that the new kernel is loaded with the following command:

uname -a

You should see something similar to this:

Linux raspberrypi 3.10.33simon+ #1 PREEMPT Sat Mar 22 09:49:59 UTC 2014 armv6l x


Enter the following commands to build the rest of the software:

cd ~/quake3
git apply ~/challenge/quake/patch.diff
cd ~/dma
cp ~/challenge/kernel/module/dmaer.c .

Next, verify that the module has installed with this command:

tail /var/log/kern.log

You should see something similar to this:

Mar 23 15:22:45 raspberrypi kernel: [ 20.814750] smsc95xx 1-1.1:1.0 eth0:lin1
Mar 23 15:22:45 raspberrypi kernel: [ 21.376702] bcm2835-cpufreq: switching td
Mar 23 15:22:45 raspberrypi kernel: [ 21.376710] bcm2835-cpufreq: switching td
Mar 23 15:22:46 raspberrypi kernel: [ 24.472575] Adding 102396k swap on /var/S
Mar 23 15:25:02 raspberrypi kernel: [ 143.984835] 20c00000 f2c00000 deadbeef
Mar 23 15:25:02 raspberrypi kernel: [ 143.984866] major device number 248
Mar 23 15:25:02 raspberrypi kernel: [ 143.984890] vma list size 12, page list 6
Mar 23 15:25:02 raspberrypi kernel: [ 143.984909] allocated dma channel 4(f208
Mar 23 15:25:02 raspberrypi kernel: [ 143.985242] qpu ENABLED
Mar 23 15:25:02 raspberrypi kernel: [ 143.985264] V3D identify test: V3D versi2

Now enter the following commands:

cd ~/challenge/source
sudo make install


First of all you must ensure that you have the Quake 3 Arena data files on your Pi. You require the ‘point release’ pak files installed. There are various ways to do this but you could either transfer them from another machine with SCP, or copy them across on a USB stick. Copy the files into a folder called ‘baseq3′. This should now contain pak files numbered from 0 to 8 (eg pak1.pk3).

Next, enter the following commands:

sudo mkdir /root/.q3a
sudo mv baseq3/ /root/.q3a/
cd ~/quake3/build/release-linux-arm/
sudo mknod char_dev c 100 0
sudo cp ~/challenge/quake/demo.cfg /root/.q3a/baseq3/


Enter the game folder with the following command:

cd ~/quake3/build/release-linux-arm/

Run the game using this command:

sudo ./ioquake3.arm +exec demo

If you wish to play the game after a reboot, you must run the following commands to re-load the necessary files:

cd ~/dma

If you see multi-second pauses of the game, this is because the system is paging to swap! You can see this by running top at the same time, and watch the swap usage jump during a spike. Close some running programs to alleviate this problem. Running the game without gdb and loading minimal kernel modules will prevent swapping.