Setting Up Raspberry Pi @OfficeDepot

Later this semester, I'm hoping to start up a high school Raspberry PI technology group. This is an idea I've been rolling around in my mind for sometime. Here's a quick revisit of the original post:

One of my ideas that I'm waiting for the right time to implement is to do a kid academy using spare, donated flat screen monitors, USB keyboards and mice, as well as the Raspberry PI.
Order it online in the U.S.

The Raspberry Pi is a credit-card sized computer that plugs into your TV and a keyboard. It’s a capable little PC which can be used for many of the things that your desktop PC does, like spreadsheets, word-processing and games. It also plays high-definition video. We want to see it being used by kids all over the world to learn programming. You can buy the Raspberry Pi through Premier Farnell/Element 14 and RS Components (Source:FAQ)
How cool would that be to give away to students a fully working computer for about $35-$40 they could work on?

Some folks are doing neat things with Raspberry Pi...check out this RPi car:
This is an RC car with a homemade pan-tilt camera (mount was 3D printed), controlled by a computer with a GUI in the style of a driving combat game. It has seen many evolutions of technology, but is now connected via a Raspberry Pi, which may take over more functions in future :)
Source: Joel Byrnes G+ post via Raspberry Pi G+ Community

When I visited OfficeDepot earlier today, I had no plans to purchase an SD card. In fact, my family and I were there for the simple purpose of picking up a few surge protectors. But then, I guiltily remembered the Raspberry Pi I'd bought from colleague Jonathan Hulbert, and felt terrible about letting Winter Break slip by me without actually doing anything with the Raspberry Pi. As a result, I felt compelled to ask, "Hi! I need to get a Raspberry Pi friendly SD card. Any suggestions?"

The young man, Rick (a pseudonym), whom I asked looked at me blankly. "I've never heard of that," he confessed. "I can look it up on the Internet."

"Sure, that would be great," I responded as my daughter tagged along.  I followed him and coached on doing a search on Raspberry PI. As we discussed the kind of SD Card I needed, the young man was beside himself with excitement. Even as he looked for an SD card, he also was clicking through various links about Raspberry PI absorbing the information, his enthusiasm growing increasingly contagious.
"This is going to be my next project," he confided, "when I get home tonight!" Those words pretty much stoked my enthusiasm because it meant young folks (and he was obviously a late teen or early 20s) could get excited as I was. "Do you use Linux?" I inquired, and his reply was an affirmative.

As my family wrapped up their purchases, he set aside his excitement about something new, and proceeded to help me find the best deals available, searching for competitor web sites selling 16gig SD cards. "If a competitor has one and it's less expensive than what we have, we have to give you their pricing." Fortunately for me, a competitor's pricing was approx <=$13 for a 16 gig SD Card, as opposed to $27 at OfficeDepot. I'm grateful to a highly motivated person like Rick at OfficeDepot! Just the kind of great service I expected when I walked in. Thanks, OfficeDepot!

Later that night, I decided to start playing around and get stuff ready. What a fun adventure!

Checklist Prior to Setup
  1. Computer with SD Card Reader
  2. SD Card compatible with Raspberry PI. I bought the (SanDisk SDHC Card 16GB (4))
  3. HDMI cable if you're going to connect to a TV or monitor (I didn't, but that's more complicated)
  4. USB Mouse/Keyboard (or USB port)
  5. Ethernet cable
  6. sudo apt-get install arp-scan (this is a program that will allow you to scan your local network and see various IP of them is your Raspberry PI once you get it hooked up; it's an IP Scanner for Linux, but you can get one for Windows, too)

For the High School Project, this is what I anticipate needing at an estimated cost of $90:

  1. $35-$45 for Raspberry Pi
  2. $13 for SanDisk SDHC Card 16GB (4)
  3. $1.98 MicroSD cable power source
  4. $5.99 for HDMI cable
  5. $7.76 HDMI to VGA Female adapter
  6. Donated flat screen computer monitor
  7. Donated USB keyboard and USB optical mouse
  8. Ethernet cable

Anyone see any problems with that setup?

Setting Up Raspberry PI
Below are the steps I followed to setup Raspberry Pi. There are so many wonderful tutorials out there, it's easy to be overwhelmed by search results. Since I'm running on a LubuntuLinux (ubuntu-based), I customized my steps for Linux. Windows users may want to follow this set of instructions.

1. Download Raspberry PI Wheezy Debian - This provides the software I needed to put on an SD card. The SD card serves like a hard drive with all the necessary software. I used a torrent download, which is a lot faster than the straight download via the web.

2. I plugged in my SD card into my computer and it auto-mounted (appeared ready for use) on my screen.

3. Unzipped the downloaded Debian IMG file. At the command line, I typed the following:
unzip 2012*.zip
...which unzipped the file, yielding a file with a name of 2012-12-16-wheezy-raspbian.img

4. Create the Raspberry PI SD Card with Debian Linux on it. To do that, I typed in
sudo dd bs=1M if=2012-12-16-wheezy-raspbian.img of=/dev/mmcblk0

a) When this process was over, eject the SD card then plug it back in.

b) You'll want to setup the Raspberry PI SD card to receive connections via ssh. At the command line, cd (change directory) to the SD card (the larger partition)...I used this command:
cd /media/b7*

c) Type this command in (via these instructions):

for i in 2 3 4 5; do sudo ln -s /etc/init.d/ssh etc/rc$i.d/S02ssh; done

d) Eject your SD card from your computer and plug it into your Raspberry PI

e) Plug in USB keyboard/mouse (or not if you're going to connect remotely to your Raspberry PI as indicated in the instructions in Step 5 below).

f) Plug in power (Nook micro-sd power cable fit the bill, but I'm sure a phone charging cable (micro-SD) will work just fine)

5. Connect to your Raspberry PI via SSH (or you could just plug an HDMI cable from a monitor/TV into it and skip the esoteric commands below):

a) To get a list of connected devices to your network via IP address, type sudo arp-scan -l
(you may recall we installed arp-scan earlier...all it does it give you a list of IP addresses connected on your local network)
Quick Explanation: Note that (which you'll see further below in these steps) is my local network's IP address assigned by DHCP server. Any device you connect to your network (that has a router on it, Linksys on mine) will get its own unique IP address. The problem is finding out what that IP address is.
b) To connect via SSH, type the following at the command line and you'll see the message that appears after the command. Note that pi is the username, while raspberry is the password you'll need after you type YES to continue connecting.

Here's what it looks like:

~ # ssh -X -l pi
The authenticity of host ' (' can't be established.
ECDSA key fingerprint is d0:61:a1:17:0e:a7:7f:3f:77:d4:55:8b:9d:55:77:ca.
Are you sure you want to continue connecting (yes/no)?

After you type YES to the question, enter the password (raspberry) when prompted. Here's what I see next:

Are you sure you want to continue connecting (yes/no)? yes
Warning: Permanently added '' (ECDSA) to the list of known hosts.
pi@'s password:
Linux raspberrypi 3.2.27+ #250 PREEMPT Thu Oct 18 19:03:02 BST 2012 armv6l
The programs included with the Debian GNU/Linux system are free software;
the exact distribution terms for each program are described in the
individual files in /usr/share/doc/*/copyright.
Debian GNU/Linux comes with ABSOLUTELY NO WARRANTY, to the extent
permitted by applicable law.
/usr/bin/xauth:  file /home/pi/.Xauthority does not exist
NOTICE: the software on this Raspberry Pi has not been fully configured. Please run 'sudo raspi-config'

6) Run raspi-config with the command
sudo raspi-config
This will yield a screen like the following:

a) Go through and make adjustments to settings. After you're done tinkering with the settings, you can restart. You'll see something like this:

Broadcast message from root@raspberrypi (pts/0) (Sat Jan  5 23:39:34 2013):
The system is going down for reboot NOW!
pi@raspberrypi ~ $ Connection to closed by remote host.
Connection to closed.
b) To re-open the connection, type ssh -l pi

7) Enable VNC on the Raspberry PI so that you can see what's going on, rather than typing at the command line.

a) While connected to Raspberry PI via ssh, install the tightvncserver. To install it, type the following at the command line while connected via ssh to Raspberry PI:
sudo apt-get install tightvncserver
Once it's installed, you'll be able to remotely view your Raspberry PI. This makes it possible for you to work on your RP without having a monitor connected and view the desktop, much the way you do on the computer you're using now.

To start sharing stuff, you'll need to type:
vncserver :1 -geometry 800x600 -depth 24
If prompted for a password, be sure to enter something you can remember...maybe raspberr (it cuts off at 8 characters).

To connect to the Raspberry PI vncserver, type the following from the command line of your computer:

You'll be prompted for the password you set earlier, so enter that.

At that point, a screen will pop up on your computer:

At that point, you can play around. You essentially have a Debian LXDE desktop. Since I used a 16gig SD card (SanDisk SDHC Card 16GB (4)), I have quite a bit of storage to play with:

At this point, it's a matter of playing around. For example, I installed htop (sudo apt-get install htop) and that gave me some interesting stats....

I was able to install other programs like Chromium Internet browser (looks and works much like Chrome):

I'll be exploring some of the resources I've collected in my Evernote Notebook on Raspberry Pi (subscribe to RSS feed) over time.

Now that I've gone through all the trouble of setting up a Raspberry PI friendly 16gig SD card, I want to make a backup of it so that I don't lose my work in case it goes bad (or if I want to share it with a friend). To accomplish that, I am going to reverse the DD command I used earlier:
sudo dd bs=1M if=/dev/mmcblk0 of=2012-12-16-wheezy-raspbian.img
or to get a compressed version:
dd if=/dev/mmcblk0 | gzip -c > wheezyraspian.img.gz 

My goal is being able to duplicate the SD Card I've spent time configuring and setting up...think of it as backing up my hard-drive for my Raspberry PI. I haven't tried this last step because I don't have a second 16gig SD card to restore the backup on.

Everything posted on Miguel Guhlin's blogs/wikis are his personal opinion and do not necessarily represent the views of his employer(s) or its clients. Read Full Disclosure


Anonymous said…
Be careful with the hdmi to vga adapter. My understanding is that they may consume so much power that they wreck your Pi ... I have not verified this ...

Popular posts from this blog

#Chromecast Add-Ons to Play Various Video File Formats

Free Professional Learning! Education On Air #googleedu

10 Steps to a Blended Learning Classroom #MIEexpert #MIE #tceamie1