GPS Using L80
Going to try to enter Sensor contest.
Okay, so it's a terrible picture. But I'm a LAZY Old Geek (L.O.G.). I'm holding a tablet in my hand but that's just so I can shoot the picture (remotely). What this is about is in the pouch on my vest which contains a GPS connected to the antenna on my shoulder.
Sure you say, smartphones have GPSs but what's the challenge in that for a GEEK. With mine so far I can record my walk with my dog and plot it on Google Earth Pro.
So I just completed a different GPS project:
https://www.instructables.com/id/Old-Man-and-the-Arduino-GPS/
For that one I used a MTK3339 GPS like the Adafruit Ultimate, sometimes called a PA6H or LadyBird1. I did some Internet searching and found an L80 GPS module for a lot cheaper than the PA6H. Now apparently, it also uses the MTK3339 but in a different package. Apparently it’s made by Quectel. Now I have no idea if it’s a clone or a licensed version or has the MTK3339 chip inside it or what, but I ordered a couple from Aliexpress. Besides price, the other thing I liked was the the connections were on 0.1” spacing, which means it’s much easier for this OLD man to solder.
Quectel seems to have a better website than any I found for the other LadyBird1 MTK3339:
Testing
Well, it would be nice to be able to test the L80 (see pictures) without having to solder it to a PCB. The connector pins on the L80 are 0.1” but are pretty small for a regular header. I happened to have some machined pin headers that would fit pretty good. See picture.
So I soldered them on. See picture.
Machined pin headers: They are machined for a tighter fit and more contact area. They will work in standard breadboards and regular headers but are not very secure. I recommend using male machined headers only with female machined headers or just soldered.
The good thing about having an L80 with pins is that it can be moved from breadboard to PCB and easily replaced.
TIP: So the cheap machined headers I bought tended to melt when I soldered them in. They seemed to work okay, though.
Okay, so I breadboarded it along with my Adafruit Feather M4 Express and tested it. It basically worked the same as my PA6H GPS.
I think there is a little difference in how you ask it for antenna status and the response but that’s all I found. Antenna status is whether an external active antenna is attached or not or if the antenna connector is shorted.
L80 PCB
So I wanted to make a PCB with the L80 to work with my Arduino Feather M4 Express.
Requirements:
Single sided PCB
microSD card
On/off switch
Antenna status LED
Battery for L80
Two antenna connections
One u.fl
One MCX (Since I had an antenna with MCX accidently)
Okay, I designed the PCB, made it using my toner transfer method:
https://www.instructables.com/id/Vinyl-Sticker-PCB-How-To/
I soldered it up and tried to get it to work. First I had trouble with jumpers as some of them were under the micro SD adapter and broke, then I had power connection problems and the L80 would not work with an external antenna.
So the external antenna would not work in my PCB but it worked on the breadboard. (Having the L80 with pins made it easier to go back and forth) This was very frustrating to me. Finally I thought about it and the one difference was that I had a resistor and LED on the Antenna status pin. If I removed the LED, it worked okay.
Well, the documentation wasn’t clear and there were no sample schematics. I’m assuming that maybe it would need a mosFET buffer to work.
Belated TIP: If possible breadboard the whole circuit before making a PCB. When I was younger, I would always do that but this time I made too many assumptions.
Finally, I gave up on this one and made another version.
Version 2:
I decided not to have an antenna status LED.
I decided not to have an on/off switch as it would’ve affected the M4 and don’t know how it would work with battery backup.
I decided to not put any jumpers under the microSD card.
Since the L80 was on header pins, I put a couple of capacitors in between the L80 headers.
So I use Eagle Cadsoft to create schematics and PCB layout.
Schematic is attached along with the CadSoft files plus in Eagle.zip
One comment on the schematic: D1 is a diode but I used a resistor device in Eagle because I could get a smaller package.
Since I only make single sided PCBs, in this one the copper (traces) are on the top, the blue traces on the bottom are wire wrap wires.
I found an Eagle library part for the L80 but had to make a variant so I could use headers instead of SMD pads.
In the Eagle.zip file I’ve included some tips on how I make the PCBs.
EAGLE USERS:
Included is a dru file to use with Eagle. Since I’m OLD and can’t see closeup as well, I try to make my PCBs with wider traces and lots of clearance between them. That’s where I use the MTS.dru file. There's a lot of stuff in the dru file that I don't understand (OLD) but here’s some notes I made:
DIY boards
Should be able to use MTS.dru
Clearance
Wire to Wire 24mil
Wire to Pad 16mil
Wire to via 24mil
Size
Min Width 16mil
Mid Drill 12mil?
Routing wires Width 0.016 Drill: 0.03149
Sometimes need to decrease Clearance
Wire to Pad 12mil
To run traces between header pins
Then I set it back to 16mil
To run polygon GND
This will give clearance errors but should allow more clearance for ground
plane and still work.
Once I got it working, I used some clear Gorilla Glue on the bottom to (hopefully) keep the jumper wires from pulling out and to keep the battery holder in place. See picture
Downloads
Field Testing
So I assembled and tested PCB, everything worked and I could use the same sketch as in my other.
Apparently GPS antennas work best when they’re pointing up.
I sewed a pouch on my vest and put some Velcro on the shoulder. See picture
Glued some Velcro on an antenna
Put the GPS in the pouch and stuck antenna on my shoulder. Ready for a walk.
Okay, it works pretty good. Here’s some problems:
One, the antenna cable in the picture is too long. I have another antenna but not the correct connector yet.
Two, I was trying to secure a u.fl antenna cable to the PCB. These cables are stiff and the connector is tiny. I broke the u.fl connector. Will try to replace it.
Three, on a track I recorded and plotted on Google Earth, the track is off from where I actually was. See picture.This could be because the GPS almanac stuff wasn't complete. Also could be a bad L80. Anyway, I have a second L80 but am awaiting some more machined pins so I can try it.