Imperial News

Successful Raspberry Pi project inspires many 1st Year DoC students

by Royston Ingram

During the summer term all our first year undergraduates undertook ambitious group projects to create emulators and assemblers using the Raspberry Pi.

First Year Raspberry Pi project success

During the summer term all our first year undergraduates undertook  ambitious group projects in C to create emulators and assemblers for a subset of ARM11.  The Department then provided them with Raspberry Pi's, some LEDs and resistors, minimal instructions to boot their assembled programs directly on the Pis, and promised a few marks for "making something interesting".

For three days the markers and guests (including personal tutors, members of CSG and many other interested students) were treated to an impressive set of presentations and demos showing off everything from simple flashing LEDs, Morse code messengers, timing/reaction games and graphical displays.  All the software running on the Pis had been written in ARM assembly and assembled by the student's own tools.

One of the most ambitious groups (consisting of Xu Ji, Bora Mollamustafaoglu, and Gun Pinyo) created a 15,000 assembly line  program that implements a graphical two player chess game.  They created circuits and logic to control the input, and then figured out how to drive the HDMI output to draw a full graphical chess board.

Luckily for us, after the exercise they re-recorded their presentation and uploaded it to YouTube[1] before subsequently posting about it on the Raspberry Pi forums.  Their impressive feat was picked up by the RaspberryPi.org front-page[2] and (at the time of writing) their video has been viewed over 10,000 times by Raspberry Pi enthusiasts world wide.

We are incredibly proud of the achievements of all our first year undergraduate students, and look forward to seeing what they get up to in future years.

[1] http://www.youtube.com/watch?v=-03bouPsfEQ

[2] http://www.raspberrypi.org/archives/4300

student demo their Rasperry Pi project