GPS on My Toughbook

by Layer 8 in Circuits > Computers

14495 Views, 48 Favorites, 0 Comments

GPS on My Toughbook

IMG_2342.JPG

I've got a great laptop from my wife. It's a Panasonic Toughbook CF-53 which is
the best solution for me. I'm running Linux and use the computer mainly for my projects. Which means that I often don't take care of the equipment. Also I'm quite often outside or on the road in Europe. Normally I use my mobile to get an idea where I am but from time to time I have no cellular connection when I have to refresh the map. Of course there are Apps to solve the problem but I hate the devices especially the one with an banana on the back (Place it on the table --> cracked display ;-)). To overcome the bad devices I planed to implement a GPS into the Toughbook. I'll illustrate how to change the HW and setup the module for my Manjaro Linux to use as many functions as possible.

Choose the Right Hardware

IMG_2281.JPG
IMG_2282.JPG
IMG_2283.JPG
IMG_2285.JPG
IMG_2286.JPG

I've tried the GOBI2000 which is normally build in in the Toughbooks.
Pro:

- The mini-pci card is cheep

- has also some cellular thing ongoing

Con:

- Doesn't work (It is possible to get it running on Linux but it is a mess)

Then I got my hands on a Versalogic VL-MPEu-G2 GPS which is mainly a ublox Neo-7N-0-002. This thing worked nearly out of the box but the lid of my toughtbook can't be closed due to the height. So heat up the iron and remove all unnecessary stuff. Like the Battery and some connectors. Also I overshrinked the cellular antenna.

more information for the Versalogic:

https://www.versalogic.com/products/DS.asp?Product...

More inforamtion for the neo7:

https://www.u-blox.com/en/product/neo-7-series

Strange Things for the BIOS

IMG_2434.JPG
IMG_2435.JPG

first of all I had the problem that I haven't seen the devices coming up as either a pic or a USB device
The neo will come up as a USB device so you can try "lsusb" for that. But as mentioned the device was not listed. After some decades in the Internet I've found out that the PCI slot was turned off by default. (I've used a multimeter for this)

Directly out of the manual: The W_DISABLE# signal on pin 20 of the Mini PCIe connector can be used to turn module power off. When the signal is high (default),power is on. When the signal is low, the board is powered off. This is useful for very low power applications.How this signal is controlled depends on the board on which the module is installed. The intended use for this signal is to turn off transmitters on wireless modules,so the use on this module is not normally supported by standard drivers.

To enable the mini-pci port you have to boot into bios there go to "Optional Kit Configuration" you'll be asked for a PW use "toughkit" (I've found it somewhere in the net) There change the code to 04 hex... Now after a save and restart the pci slot is powered on and with

lsusb

you should find something

Bus 001 Device 004: ID 1546:01a7 U-Blox AG [u-blox 7]

Get GPSd Running

Screenshot from 2018-02-07 21-27-36.png

First of all install gpsd:
pacman -Ss gpsd then add the corresponding device to the gpsd-config for me it is the "/dev/ttyACM0"

You have to open the config and add accordingly. Also helpfull the -n option to search for signal also before a client is connected:

joe /etc/gpsd

and look for

DEVICES="/dev/ttyACM0"

GPSD_OPTIONS="-n"

then you have to enable and start gpsd

systemctl enable gpsd

systemctl start gpsd

now the deamon should run

Get the First Respond

Screenshot from 2018-01-27 08-47-20.png

You can use gpsmon in the terminal to get some information shown in a way you can't use for anything.
But you can see if the thing is working or not. To install use

pacman -Ss gpsmon

after a successful installation you can simply start it with

gpsmon

There you can see the position time and other stuff.

Get Navit Running

Screenshot from 2018-01-23 21-21-36.png
Screenshot from 2018-01-23 21-20-48.png
Screenshot from 2018-01-27 09-14-09.png
Screenshot from 2018-01-23 21-22-03.png
Screenshot from 2018-01-27 08-39-24.png

You can use navit to show your position on a map. (Everything I want) Also possible a turn by turn navigation. (I'll need this function in my new Truck... in 10 years)
To install navit use

pacman -Ss navit

To get navit working with offline maps you need to download the maps and add the path to the config.

joe /usr/share/navit/navit.xml

Look for the line:

<!-- Mapset template for openstreetmaps -->

to add the offline maps

Also make shure that you have enabled gpsd as input device:

<!-- Vehicle with GPS enabled on unix -->


To download the map you can reffer to this page:

https://wiki.navit-project.org/index.php/OpenStree...

Add the Time to NTP

Screenshot from 2018-02-07 21-36-53.png
Screenshot from 2018-02-07 21-36-24.png

To also use the time on your system you have to add some lines to the ntp.config this allows much better and precise timing on you system.

joe /etc/ntp.conf

and enter:

# GPS (USB /dev/ttyACM0)
server 127.127.28.0 minpoll 4 maxpoll 4 prefer

fudge 127.127.28.0 refid GPSd

fudge 127.127.28.0 time1 0.065

and restart the ntp deamon

systemctl restart ntpd

You'll see whats going on with

ntpq -p

Increase You Entropy Pool... Still Has to Be Done

Right now I'm playing around to use the signal strenth and other stuff to increase the entropy pool from my machine.

I don't have it done jet but I started to understand all the topics but still no solution.

I've installed tng-tools and use gpspipe for the raw data from the gps receiver.

pacman -Ss rng-tools

gpspipe -R > test.txt

sudo rngd -f -r test.txt

This will be done at some point.