Gpsd: Fixing for Ubuntu

I have an LT-20 Delorme Earthmate GPS.  It may not be the best GPS, but it gets the job done.  Getting it to work in Ubuntu was no easy feat.

I had to fix a bug in a cypress module.  I followed the instructions from here.

To get the kernel version, I ran:

uname -r

Then, to install the kernel source, I ran:

sudo apt-get install linux-source-2.6.24

Then, I changed directories into the installation directory and unzipped the source:

cd /usr/src
sudo tar -xvf linux-source-2.6.24.tar.bz2

Then, I copied the two files:

cd linux-source-2.6.24/drivers/usb/serial/
sudo mkdir /usr/src/modules
sudo cp cypress_m8.h cypress_m8.c /usr/src/modules/

Next, I created the make file (note that I have installed gvim.  I saw a note saying that they had problems using the gedit text editor):

cd /usr/src/modules
sudo gvim Makefile

And, I pasted these lines into the Makefile:

obj-m := cypress_m8.o
KDIR := /lib/modules/

$(shell uname -r)/build
PWD := $(shell pwd)
default:
$(MAKE) -C $(KDIR) SUBDIRS=$(PWD) modules

Then, I edited cypress_m8.c and commented out line 408.  The original instructions have more detail on this.  I thought the line number might be different, but it was the same as the original instructions.

When running make (sudo make) I had trouble with “make: Nothing to be done for `default’.” message.  I just opened the file and deleted and readded the tab in front of the last line.  Then, it ran fine.

Then, I ran the command:

sudo install -m 644 cypress_m8.ko /lib/modules/`uname -r`/kernel/drivers/usb/serial/cypress_m8.ko
sudo depmod -a

Resources

One thought on “Gpsd: Fixing for Ubuntu

Leave a Comment

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