eeepc, android x86, external GPS

Awhile back I got an Asus EEEpc 1005p. Those tiny laptops were all the hype back then. It sports 1.66 ghz Atom processor, 2Gb ram, 160gb HDD… same as my Sony “smart” phone, perfect for android. What am I going to make with it? Eeepc, android x86, external GPS… get it? 😀

Asus EEEpc 1005p

Asus EEEpc 1005p

There exists an android image for that laptop, but not the latest version. So I downloaded Android-x86 5.1-rc1 live and installation iso. To install it to your laptop, get Unetbootin, select Diskimage, find the iso.you just downloaded, select the USB disk, and click OK.

After that, insert the USB into laptop’s USB port, and boot the laptop from USB. Installation is pretty straight forward, just be sure to select ext3 as filesystem when you format the drive.

Tiny laptop running Android

Tiny laptop running Android

It really is that easy

 

GPS SOFTWARE

To use external GPS module, you have to persuade the system to read GPS data from serial port. Install the program You Are Here (click here). What it does, is forwards the GPS data from usb to Android as a mock location. It’s kind of as workaround, so you need to enable Developer options and enable Mock Locations. Apart from configuration, this is it… sw side.

GPS HARDWARE

well, you need one GPS module 😀 It doesn’t really matter what kind, just be sure to know the baudrate. If you have some sort of serial2usb converter, you can test it. Just connect it to gps, vcc to vcc, gnd to gnd, gpsTx to converterRx. Use any serial emulator to connect to it. Change baudrates until you get a successful connection.

For me, i’m going to use an old bluetooth GPS, that I’ve used in my MultiWii quad. It works at 38400 baudrate, and it also has those pins broken out.

I had mine laying around, but there’s a pretty cheap GPS module on DealExtreme.com

Salvaged GPS module

Salvaged GPS module

As this is serial communication, it has to be converted to usb. You probably know pl2303 or FTDI. Connect it.

We have lift off! Red led working, serial monitor showing OK. a good day 🙂

Gps connected to serial converter

Gps connected to serial converter

Well, not that good, our datastream and You Are Here have different speeds, GPS sends data with 38400 and the program can only read 4800 and 9600 baud.

Uh, oh! No right baudrate

Uh, oh! No right baudrate

Received data is a mess

Received data is a mess

Enter Arduino pro mini. With it’s SoftwareSerial library we can read serial 38400 at one end and spit it out with 9600 at the other.

I use arduino’s digital pin 5 for GPS TX and forward it to Atmel pin 2 (Rx) and pin 3 (Tx), which are pin 0 and pin 1 on the Arduino.

This is what I programmed it with:

#include <SoftwareSerial.h>
SoftwareSerial mySerial(5, 6); // RX, TX, GPS on 5
void setup()
{
Serial.begin(9600);
mySerial.begin(38400);
// Serial.println(“Hello world”);
}
void loop()
{
if (mySerial.available())
Serial.write(mySerial.read());
}

Looking like this

GPS and Arduino on a protoboad

GPS and Arduino on a protoboad

Connected to laptop

Everything working in harmony

Data is readable now Data is readable now

SUCCESS!!

Feel free to use it for whatever you want, I used it for APM planner, and follow me mode 😀

 

[paypal_donation_button align=”left”]

[ecp code=”LayerBanner”][ecp code=”TExtLinkAd”]

 

Leave a Reply

This site uses Akismet to reduce spam. Learn how your comment data is processed.