Adventures with the Raspberry Pi

Almost a month ago now I got on the bandwagon and bought a Raspberry Pi. So far I think it’s day-to-day job will be as a media server; my SD card has 16GB capacity, which should be more than sufficient for my relatively small 5GB music library plus basic software.

For the moment, however, the job has been in setting it up. Although I could run it off a TV temporarily, the difficulty in plugging it into a regular computer monitor (one without an HDMI socket) seemed prohibitive with regards its longer term use. Fortunately, there was an easy answer: set up a remote connection and hence obviate the need for any peripherals at all. For this, I was indebted to Neil Black’s tutorial on the subject.

My gripes with this approach have been twofold (neither of them related to Neil’s great tutorial!). The first is that the lightweight Java version of the TightVNC client has a major bug which prevents the CTRL key being sent. This seems to have been on the “to fix” list for some time; hopefully, a release including the fix will be out soon. In the meantime, using the remote connection is a pain.

The other is that one has to know the IP address of the Pi. Clearly, on a home network, setting up a static IP is not particularly tricky. However, on a public network – such as that at my university – I am dubious as to whether the Pi will really be able to ensure it is allocated the IP address I have chosen for it. Because I can’t fix the Pi without the remote connection, I needed more of a guarantee about its virtual location than mere hope.

My solution is a python script, started every time the Pi boots up via /etc/rc.local, which forwards the result of codeip addr/code to a web script (which then emails me). Thus, whatever IP address the Pi is allocated, I’ll know about it. Then I can connect remotely, and do whatever I need to do. (Saving the output to a USB key would also work, I think.)

Not easy, but probably worth it.

One thought on “Adventures with the Raspberry Pi”

Leave a Reply

Your email address will not be published. Required fields are marked *