A GCSE lesson

Ben Llewellyn Smith is Head of Computing and ECDL manager at AKS in Lytham St Annes. He showed us this video just before last week’s Jamboree, to demonstrate his newly installed classroom Debian server being used by a class of GCSE students who all use Raspberry Pis.

Ben’s pupils each own a Raspberry Pi: we’re convinced that there’s enormous learning value in the sense of ownership and ability to customise that having your own Raspberry Pi, rather than a borrowed school unit, gives you. It’s one of the reasons we worked so hard at getting the cost of the Raspberry Pi down so low. This also means that the pupils can carry on working with their Pis at home in the evenings.

You’ll see the pupils being given a very simple Scratch task to test Ben’s new system in this video, and get a feel for what a teaching environment can be like. Ben’s aiming towards getting the class’s GCSE coursework done as a Minecraft hack, using Python on the Pi: he’s the kind of teacher I wish I’d had. (True story: my own Miss Lyons had to keep a picture of a floppy disk being inserted on her desk so she could remember which way up it fitted in the slot.)


The investigation that Ben’s class will be doing for the GCSE can be done on a Pi as well. We’re very pleased that Ben’s been able to be able to share this video with us all: I hope it’ll be of some help to other teachers out there. You’ll find a lot more from Ben at his YouTube channel: enjoy!



I haven’t watched the whole video, but when students are working on a Pi both at school and at home, is the typical scenario carrying around the whole Pi (lots of plugging and unplugging) or having separate computers at home and school and just moving just the SD card ?


…or, I suppose most easily, accessing a shared server and moving nothing physical.


If theres issues with wear on connectors, what about mag-pin connectors?


In the video the pupils are taking the Raspberry Pis in to class and swapping the keyboard from the PC into the Raspberry Pi.

I’ve had experience with swapping PCs for Raspberry Pis through running Code Club in a school using Raspberry Pis. The way I dealt with it was not as easy as how Ben dealt with it, as I was using a shared computer room which I needed to leave back in the same condition as I found it. I would spend 15 to 30 minutes (I got faster as it as the term progressed) unplugging all the cables from the back of each PC and plugging them into the appropriate Raspberry Pi, then in reverse at the end. This was OK when I was able to get into the room in advance, but did cause a few minutes delay to the start if a class was using the room up to the last minute.

I don’t think there is much risk to the connectors if handled correctly – they should take a lot of connections / disconnections before wearing out. The problem that Ben experienced with the mice is more likely due to cheap mice getting knocked around in the storage box. As these are low cost it’s probably worth taking a hit in the cost of replacement every now and again, but I understand how frustrating it is not knowing whether it’s a problem with the Pi, the power, the SD card or a peripheral especially when you’ve got a full class wanting to get on with the lesson.

One of the biggest problems I had – which I didn’t actually find the cause of until late in the term was due to the HDMI to DVI adapters not fitting some of the Raspberry Pis cases I was using. I was using adapters on the Raspberry Pi so that I could swap to the DVI cables that were plugged into the back of the PC. It was only a few that had this issue and only certain adapters (most were effected, but I had two adapters which were a thinner and longer which worked). The reason it was so hard to identify the cause was that the adapters sort of worked initially – in that a signal would be going to the monitor and so it would look like it was booting correctly, but then when it reached the point to detect whether a HDMI monitor was connected then it failed to detect the monitor and switched to Composite mode. Although I think the latest NOOBs would help here as it defaults to HDMI even if no TV detected.


Maybe students need to carry the flash card or Pi because their home network is slow, metered or nonexistent.

What might help would be a Pi emulator for a Windows computer that could boot the flash card and provided a virtual GPIO connections along with emulated Pi camera and GPU. This would allow schools that already had the desktops to teach programming in a way compatible with the Pi that the child could own.


Supplying a compatable PCI adapter could be an idea but to be worth it the unit cost would need to be MUCH less than the pi.


There are many ways in which programming can be shared between home and school without taking a Pi home, but I think there are many benefits to personal ownership of a Raspberry Pi. It provides them a dedicated computer that they can play / experiment with without needing to share the family computer and without risk to any work that a parent may have saved on the computer. The idea of having something physical that they can touch and show off is particularly good.

If that’s not possible then many of the programming languages available on the Raspberry Pi can be installed on other computers (Python is good example of a portable language that can normally run without modification on Linux or Windows – although there are some things that may not work cross platform). Or it is possible to install Linux (Debian which is closest to the Pi – or Ubuntu which is a little easier to install and use) on a USB stick (or virtual machine).

I think that there would be only a little benefit to having a GPIO emulator on a PC as it would only replicate a basic on/off switch or LED (unless it was a full electronics simulator, but that’s very different). Whilst it won’t be able to program directly to the GPU or camera except on a Pi the number of children looking to program directly to those is going to be fairly limited and hopefully by the time they reach that level they should be able to get access to a Pi.

I think personal ownership of the Raspberry Pi is the best solution, but you have raised a good point about coding across platforms. I think it would be useful to have a resource explaining how to share coding between different environments highlighting some of the ways that this can be done and some of the potential pitfalls. For example when programming in Scratch if you want to share between platforms then need to only run Scratch 1.4 – If you save edit and save a Scratch program as version 2 then you won’t be able to open it on the Raspberry Pi.


I think the questions have more to do with, can you have to Raspberry Pi’s, that use the same flash drive (whicch if the only storage device that would have to be a yes), allowing you to leave each plugged in at a given location. Then you take all your data with you in your pocket and use them without having to do anything but plug and unplug your usb stick…


Just thinking about the faulty mice is it probably because they were being banged around when being put in a box hitting of each other. They all have a tiny quartz crystal (XTAL) inside them which vibrates at 6MHz/12MHz/24MHz (USB 1.0/USB 1.1/USB 2.0), bang them about enough and they chip/crack/de-tune and change from their calibrated frequency. If the change is big enough then they will no longer be able to talk the USB protocol. If they speed up or slowdown enough the computer will no longer understand what they are transmitting, and not see them as a valid device. Here is something about repairing failed USB sticks but it is the same idea – http://hackaday.com/2013/11/27/repairing-dead-usb-flash-drives/


I’m not suggesting to repair the mice or anything, just most technical people like to know why something breaks and is there anything that they can do to stop them from breaking as fast (given enough time everything breaks).


This is something that I’m looking to emulate at my school when I set up my dedicated pi room next week. This makes so much sense from a teaching point of view in terms of assessment and security.



Great Video! Good job Ben – I hope that a lot of teachers struggling with how to implement the Pi into a classroom environment can take inspiration from this.




Have you thought about using a VNC server, or are you not allowed due to licensing and networking issues?

I assume you run the Pi’s over an isolated network?

Reason I say this, is because I use a RPi, but only have to plug in a WiFi USB which cost £3. It connects to the network and is assigned a static IP via DHCP through the router.

I can then connect to it with a VNC Viewer (lookup TightVNCServer for installation on the Pi) and I can also use SSH.

This all means that I do not need to plug in monitors, keyboards and mice. I simply plug in a Power Supply and connect via IP when the boot process is completed.


Can just say …. You earn your money bro … hat off to you …


So are you saying you have set up a LTSP server, and the Pis are running as thin clients? If they all log in as the same user, won’t they overwrite each other’s files?

Though we use Debian-edu here, I decided not to run the Pis as thin clients, so that kids would have responsibility for their OS and not just data (they have their own Pis).

I have bundles of cables coming up to the desk (the towers are on the floor behind the desks), including 3 usb extension cables, into which are plugged the kb and mouse, with the third for pendrives.

When kids switch from class computer to Pi, they unplug kb and mouse, and find the HDMI, micro usb and LAN cables coming up to the desk. Like you, I use VGA from monitor to tower, so the HDMI cable is free, and I put in an extra LAN cable per desktop. At the end of the lesson, they unplug the Pi and put the kb and mouse back into the extension cables, which is very fast and simple.

A brief write-up would help a lot. Your video is long and its hard to find technical details from it. Thanks for letting us see your lesson.


Great video Ben really interesting from a teachers perspective. Is there any info available on the Debian server you have setup?


It isn’t obvious how he’s configured the server. If I had to guess, he’s probably followed this guide to set up a terminal server:

Raspberry PI LTSP How-To


In answer to your question chris (although a little late..).
In the video was trailing a FAT client system I have been working on for the past few months based off LTSP.
It is better explained in a few of his other videos (which have now been removed :( ).
Project can be found here – https://github.com/gbaman/RaspberryPi-LTSP

One big key thing about it though is that they are FAT clients!
Fat clients mean all the processing is done on the pi, also with the added advantage then of having direct access to GPIO and camera module.


Hi – the YouTube video is claiming it is ‘private’. Have you disabled or removed this video?

Leave a Comment

Comments are closed