Keyboards

Bluetooth Keyboard

As I mentioned before the 770 is extremely versatile, what with it running an opensource operating system. Support for bluetooth keyboards has been hacked in, so the 770 can be used as a word processor with AbiWord, to ssh into remote hosts with OpenSSH, and then just generally for writing emails etc.

There are two types of bluetooth keyboards doing the rounds, HID and non-HID. HID is a bluetooth profile which the Nokia supports so it’s very easy to connect the keyboard to the 770 and work away, no messing around. You can get the bluetooth plugin from here. The other type of bluetooth keybaord, the non-hid ones are a bit more awkward. It involves creating a serial connection to the keyboard and using kbdd as a userspace keyboard driver. There is however a decent guide and some scripts written to help with this.

This second type of keyboard is the one I have, a Freedom Keyboard. If you can afford it I would advise going for the HID profile ones, these are much easier to use and somewhat less buggy.

Nokia 770

Nokia 770

Nokia 770

So I bought a Nokia 770 a while ago from the States. My brother was good enough to bring it over with him last time he came home. In case you’re not familiar with the 770, it is a handheld computer running a variant of Debian Linux. Nokia have setup an opensource development environment and are attemping to create a community around their http://www.maemo.org website. Maemo being the name of the OS.

The 770 is sold as an ‘Internet Tablet‘. Its claim to fame over any other same size PDA type device is its screen. It has a 4″ 800×480 resolution screen, extremely high quality. I used to read a lot my books on a Tungsten E palm, and was looking around for something new to read with. The 770 is considerably cheaper and more versatile than the current batch of EInk readers, so I went with that instead, at least in the short term. There are excellent reading tools available on the 770, namely FBReaderand Evince. Reading on the device is a pleasure with the high quality screen.

A number of applications have been written for the 770 and a number have been ported. Porting involves recompiling software for the Arm processor, or in the case of GUI applications, rewriting them to utilise the Hildon API. The Hildon API is a GTK+ based extension, designed for handheld type devices, opensourced by Nokia. There are full examples and tutorials on the Maemo website for creating a development environmenet and details of the Hildon API. I have looked briefly at writing some simply monitoring applications for the 770, it seems quite straightforward. Porting command line applications is very easy, the only issue can be external dependancies.

Bluetooth GPS

Bluetooth GPS

Some excellent software I have been utilising recently, is Maemo Mapper, written from the ground up for Maemo. MaemoMapper uses a bluetooth GPS in combination with an online map source such as Google Maps to act as a GPS client. It is an excellent tool, stable and versatile. You can use it to log routes or in conjunction with Googles location service, obtain routes from one point to another. I found it very useful when on holidays in Sardinia recently.

The advantage of a bluetooth GPS is it’s versatility. I have a SE K750i mobile phone, which has bluetooth and support for java midlets. There are a number of free GPS client tools for the mobile phone which can use Google Maps. An excellent tool if in a foreign city !

Also, as part of the GPS fascination, I’ve been playing with Kismet, which has recently been ported correctly to the 770. Initially there had been trouble with the 770′s wireless driver, resulting in ‘ghost’ access points appearing. This has all been resolved now. Kismet, in conjunction with GPSD and a Bluetooth GPS, allows one to wardrive and plot the location of wireless access points extremely easily. It’s a small step to then transform the kismet CSV output into a Google Maps based display.
Wireless access points
I’ve been playing with it a bit now and it’s not the most reliable, the bluetooth connection can be lost on occasion. I suspect it’s the GPSD software, as Maemo Mapper has no problems maintaining bluetooth connections with the GPS. A solution may simply be to log the GPS coordinates on my phone, using the NMEA format, and write a small script to extract GPS coordinates based on the time an AP is spotted in the Kismet CSV log.