Raspberry Pi

Raspberry Pi

The Raspberry Pi is a sub-$40 credit-card sized PC. It draws it’s power from a cellular phone charger and has no moving parts. It’s cool and it’s captured the attention of both amateur and professional hardware developers who are constantly tweaking it and making upgrades  and producing add-ons. Our own Sam Kinch, became an early adopter and pushed one into my hands at Defcon. I was impressed. It was cool and it was fun, but when I brought it back to Uganda, my friend Josh Hanby, an educator by trade had a list of gripes. He agreed that it was a cool gadget but he challenged us to make it work for education. Here’s the whole story that started our “Education Initiative”.

When we started our work in Uganda, we saw an immediate need for educational materials and training. We addressed tech training through our free-access Computer Training Center in Jinja. As we began rolling computer systems out to local schools, we entered the traditional education market.

We worked with the good folks at World Possible and rolled out their RACHEL package into many schools and offered it for free to teachers and educators. The package contained offline copies of Khan Academy, Wikipedia, CK-12 textbooks, Hesperian health guides and a selection of ebooks from Project Gutenberg. Several volunteers helped us out by downloading this massive collection of materials and sending it to us in Uganda.

I installed dozens of copies of RACHEL all over Uganda, usually on donated machines that I re-donated to various schools and organizations. As a techie, I loved showing off the various RACHEL packages, ranging in size from minimal 10gb installs on P3 laptops to 120gb installs on multi-station nComputing setups. I loved showing off RACHEL. The content was decidedly “first world”, massive and offline. In my mind it was wonderful, and I felt like I was making a real dent in the poor education standards of Uganda.

Then, I sat down with Josh Hanby at Xchange International. His reaction was decidedly blasé.

“Its not bad,” he said, “but we need more”.

As an educator, he realized that RACHEL was lacking. I pressed him for his dream list, and he laid it on me. He wanted:

  1. …Khan’s exercises working offline so he could test aptitude. I told him these were online, and required a Gmail account. Classrooms would need to be given Internet connections (expensive, distracting, impossible in some locations) and students and teachers wold need to create accounts.
  2. …The Khan training map. I told him that was also only available online, and referred to the list above.
  3. …A way to see which students were doing what. He wanted to know what students were up to each day including what videos they watched, which exercises they did, and how they were doing. He needed to know which students were struggling so the teachers could get involved, and perhaps assign student mentors.
  4. …All this to work offline, and he wanted a store and forward system that would push those statistics to a central server where an admin could see who’s doing what. And oh, by the way it would be good to see multiple schools, and even top-level reports showing combined activity at each school.
  5. …All the stuff included in RACHEL, but with better Khan.
  6. …The ability to update Khan easily when new content came out.
  7. …A new hardware platform. He wanted a classroom with minimal power requirements. It must run on cheap solar, be extremely portable so it can be packed and locked at the end of each day, and allow him to move the equipment from location to location to server several schools in one week.
  8. …A lower cost-per-seat than we currently offered. We were floating around $450 per seat, even with nComputing.
  9. …A solution FAST. He had figured out the grant process and assured me that we could get access to lots of grant money if we met this criteria, but he was leaving for the US to meet with investors in a week’s time.

My first reaction was the classic, “Good, fast, cheap. Pick two.” But the hacker in me saw a challenge, and I dug in. In one of the busiest weeks of my life, as we were hosting the documentary team and one other team at the BnB, a solution came together.

I used the Raspberry Pi ($40) I picked up at last year’s Defcon as the base platform. I paid a ridiculous $100 for a 32gb Class 10 SD card in Uganda, and a usb wifi adapter I had from my war driving days. With that, I had a low-cost server. I installed WorldPossible’s Raspberry Pi build as the base OS which put all that content on the Pi. To address most of the problems with Khan Academy, i grabbed Ka-Lite and moved the Khan content I had from Rachel over to its content directory. This gave us distinct user, teacher and admin accounts, offline Khan exercises, basic local tracking (red or green blocks per student to show those completing or struggling with exercises, respectively), the raw framework for multiple schools and districts and an slick Khan update feature.

The server built, I turned my attention to the client. Since the Pi served content wirelessly, we needed a low-cost client with a wifi adapter. I tested the system with various laptops, an iPad 2, an iPhone, a Kindle Fire and a Pwnie Express Pwn Pad, an Android-based tablet donated by our friends at Pwnie Express.

Raspberry Pi with Pwn Pad client

Raspberry Pi with Pwn Pad client

The results were encouraging. The system worked well with all the clients, the cheapest and most promising being the Android tablet.

And, a bit accidentally, we have developed our first stage of a low-cost, low power system that’s not only portable and powerful but it’s educator-approved as a system that could revolutionize the stagnant Ugandan education system and break the cycle of poverty at it’s roots, providing a brighter future for all Ugandans.

[block]we have developed our first stage of a low-cost, low power system that’s not only portable and powerful but it’s educator-approved as a system that could revolutionize the stagnant Ugandan education system and break the cycle of poverty at it’s roots, providing a brighter future for all Ugandans.[/block]

We have several future goals for the project:

  • We want to implement an on-board Internet solution that uses iptables (or similar) to block all inbound and outbound requests except interactions with a central server.
  • We want centralized tracking, allowing our admins to see into the schools we install. We specifically want to know top-level stats for each facility, including hours of video watched each day, number of exercises attempted and results of those exercises. Ka-lite has a framework started, but this is not implemented. This will be a push mechanism that will send the data when the system gets a connection, but will also allow us to pull data to a USB flash drive for store-and-forward storage which we can push to the central server.
  • We want to install the camera module to allow for remote screenshots of the classroom the Pi is installed in.
  • We want to allow donors to purchase a classroom and get access to a web application that shows their classroom on a map and allows them to see the classroom (photo) and also see how the students are doing. Our goal is to involve donors in what’s happening in the classroom they support.
  • We want to enhance Ka-Lite to provide better student reports, enable searching, create more helpful views and logs and more. See below for more details.

[block]Our goal is to involve donors in what’s happening in the classroom they support.[/block]

In order to make this fly, we have a few specific needs.

  1. We need software developers to help with the Ka-Lite project to implement the changes we need to put this over the top. If the folks at Ka-Lite are unwilling to implement the changes we need, we may need to create a spin-off project to accommodate our needs. The software requirements are outlined on our Google Groups discussion page. If you are a developer, consider joining and lending a hand.
  2. We desperately need hardware for prototyping our final solution. We either can’t get or can’t afford to purchase that gear in Uganda. I’m initially asking for the following equipment and asking that it be purchased and delivered to Hawaii by August 12, 2013. (I have a speaking gig there and would like to get everything worked out by Derbycon).

Keep an eye on this section of our blog where we will post updates as this project develops.

Here is the list of hardware we’re seeking. Minimally, we would like to have two complete sets (Raspberry Pi, case, wi-fi, SD card, power) so that we can deploy one to a school or street kid rehabilitation center), and use a second for testing and development.

Please email me, use the comment form, or use the contact form for more information and for the shipping address.


I listed adafruit because they apparently have a deal where a $350 order scores a free raspberry pi.

  • Raspberry Pi model B $39.95: http://www.adafruit.com/products/998
  • Pi case $9.95: http://www.adafruit.com/products/1326
  • Pi bow case $19.95: http://www.adafruit.com/products/1124
  • Pi bow vesa mounting plate: http://www.adafruit.com/products/1320
  • USB wifi adapter $9.95: http://www.adafruit.com/products/814
  • Low profile ad card adapter $6: http://www.adafruit.com/products/966
  • USB power supply $5: http://www.adafruit.com/products/501

Total for this setup: $100, or approximately $130 with the 32gb card and wifi adapter listed below.

We also need class 10 sd cards (any format, but micro preferred if buying new) and wifi adapters to make this thing work. Note that we can get 32gb class 10 sd cards in Uganda for $100 each!?!


  • USB wifi adapter $7.58: http://www.amazon.com/802-11n-150m-Wireless-Network-Adapter/dp/B007BWFXYS
  • USB wifi adapter 150m $7.25: http://www.amazon.com/Mini-Wireless-802-11-Adapter-Antenna/dp/B008Z9IZSW/ref=pd_sim_pc_3. Note that one adapter has an antenna which in theory gives better range. We want to test this.
  • Class10 32gb sd card $24: http://www.amazon.com/SanDisk-microSDHC-Memory-Adapter-SDSDQUA-032G-U46A/dp/B007XZM6VG/ref=sr_1_3?s=electronics&ie=UTF8&qid=1375328274&sr=1-3&keywords=32+gb+micro+sd+card
  • Class10 64gb sd card $44: http://www.amazon.com/SanDisk-microSDXC-Memory-Adapter-SDSDQUA-064G-U46A/dp/B007WTAJTO/ref=sr_1_2?s=electronics&ie=UTF8&qid=1375328353&sr=1-2&keywords=64+gb+micro+sd+card

Odds and ends:

I’m also looking for portable power solutions for the pi. USB battery packs should be fine if you have one you’re not using.

  • There are high end solutions like this one at £149: http://www.deben.com/lithium-polymer-battery-packs/12v-10ah-lithium-polymer-battery-pack.html
  • This one for $37: http://dx.com/p/12v-9800mah-rechargeable-portable-emergency-power-li-ion-battery-90998
  • Or a unit like this that runs on AA batteries that we can buy cheap from any supermarket in Uganda: http://www.jaycar.com.au/productView.asp?ID=MP3083.

Again, please email me, use the comment form, or use the contact form for more information and for the shipping address.

Pi, USB battery, laptop and PWn Pad clients.

Pi, USB battery, laptop and Pwn Pad clients.