Monday, June 1, 2015

Boards, Firmware and Stuff - Part 9 of the Springtime Project

Just to wind things up here are the parts and designs I used in the Springtime Project GPS/APRS for the car. If you have any questions feel free to post a comment.

The 5V 2A supplies are used to power the MCUs and the LCD screens.


The voltage regulators are 5V@2A LDO voltage regulators, with .8V dropout at full current rating
The smaller Caps are 47uf, and the larger caps are 100uf. 
I didnt use the connectors for the inputs and the outputs but soldered 12 gauge pre-tinned wire to the pads directly.

The 3.3V GPS power supply:


This provides 3.3Vdc to the GPS
The Voltage regulator is a 3.3LDO surface mounted regulator
You could redesign it for a traditional regulator, I needed this to fit into the enclosure
The caps are 47uf, the resistor is 1K, and the LED is optional
I did solder in a surface mounted LED in place of the regulator LED, for space savings
The headers can be redesigned, they are labelled VCC,GND, TX and RX for the serial communications from the GPS
Note: On the header on the bottom, VCC is replaced with 5v0, this is the 5V input to the power supply! The GPS I used, runs only on 3.3V. If you find a 5V version this power supply is unnecessary!

Both of these boards are available at OshPark.com in my personal projects listings, if you want the actual boards, contact me, Ill give you access to order them. 

Firmware:

 Since I ran into the issue of the LCDs using the same address, and I was under a time constraint, I used my original arduino sketch and busted it into 2 parts, one for the time and temp, the other for the GPS. Here is the sketch in its entirety. You can do what I did, or use a serial LCD and a I2C LCD, or in my next version Im using a larger OLED screen, which Ill be able to fit all the information on one screen. This sketch can help you get started.







The sketch is an adaptation of the demo sketch from the TinyGPS++ library for arduino. That about wraps up everything I did. Hope it helped someone a little. Again if you would like any or all of the materials I used, help with the firmware, or want to adapt it for your car, feel free to comment below and as always

Happy Coding!


Post Install.........Final Part

I can safely say that this project was fun, and version two of this is already in my head. I do think Ill wait a while though before I change things and enjoy the fruits of my labor. The console is now officially in the car, and aside from trying out the cell phone chargers, its working like a charm.


The console contains:

2 - Pro-Mini328 Arduino compatible MCUs ( one runs the time/temp, the other the GPS)
2 - cell phone chargers  ( one offering a cigarette lighter type, the other USB)

All the switches. Those controlling 12V are lighted.
1 - ICOM2100H 144MHz radio for APRS broadcasts

Power distrubution

2 - Self designed 2A 5V power supplies

Also included in this install

1 - 144Mhz collinear whip antenna
1 - GPS unit/ self designed 3.3V power supply
1 - Byonics APRS Tinytrak3 GPS encoder

Initial test show that my 1second updates to the LCD screens are more than enough to show an near real time position indication. I cross checked this against my Yeasu350 and they are both dead on. Its kinda nice now to have near real time readout of position, as well as other features in the car.

Final thoughts:

After working on this I think that I would have used a different medium for the actual console shell. You can see in the final picture above that the wood has imperfections on the milling process, and additional sanding on my behalf still left some " hills and valleys" in the side of the console. Im opting for an all plexiglass body in the next version.

Wiring: The wiring started out neat and looked good, but when I added in the GPS cable, and and the pigtails to power the unit from the car, I could have done better. There are no " barely hanging wires", or possible shorts or problems , " just waiting to happen, but I dont like being rushed and the wiring can be done better with more time. You dont see any of this because its inside the console shell, but I know its there :-)

I was glad I added a switch for the 20x4 LCD back light. I tested this at night, and the large LCD is VERY BRIGHT! I knew this going in, and added the switch so that while driving at night, it can be turned off and on as needed, but not disturb the driver.

Lock up time on the GPS ( not pictured but its in its enclosure on the dash) is fast. Way faster than when I was testing in my house. Its around 30 seconds from a cold boot. It often locks up before I leave the driveway.

What about performance? On 25watts, I am able to reach the distant digipeater. The 6dbi gain of the collinear antenna makes up for the lower power Im using. The first morning commute test run of the system was good


I dont have great coverage in the town I live in due to hills, but once I got out of town I was able to access the APRS digipeater and get my position reported in the system! Im taking a long trip in a few days...time will tell.

All in all this was fun, there is a lot of room for improvement, but it was a great project to meld together, arduinos, GPS, cars and amateur radio all in one project. Look for Version 2 of this in the coming months, but for now, I think its pretty cool!

Happy coding!