VX-8DR and GPS

I recently obtained a Yaesu VX-8DR, primarily for use on SOTA activations.  The radio has the six metre band, which is a bonus as SOTA is presently running a six metre challenge. It’s a nice little radio with lots of features, especially the APRS integration.

On some more remote SOTA trips, we have used APRS over 3/4G when it was available. So, the VX-8DR with APRS was a possible supplement or replacement for APRS.  The only problem is that the VX-8DR doesn’t come with a GPS receiver and the GPS option has a hefty price tag.  To add GPS, an adaptor is required that sits atop the radio and anchors to the antenna base.  The adaptor itself is quite expensive.  The GPS plugs into this adaptor.

Having a look on the web, it turns out that the GPS receiver used on the VX-8DR has a non-standard NMEA interface based on GGA and RMC messages but with some subtle differences in fields.  This means that you cannot just interface a standard GPS receiver to the radio and expect it to work.

The NMEA comms software algorithm in the radio is not very tolerant of any deviations to the format from the Yaesu GPS.   For instance, it expects three decimal places for some fields and will not process two decimal places. I came across this project by David Fannin which uses an arduino to process the standard GPS messages from a UBlox GPS and convert them to the Yaesu protocol.  It looked like a great place to start, although the end solution had to be reasonably compact.

I had a look on Ebay and found some UBlox Neo 6m receivers at very cheap prices, I bought two, one from China for $13 delivered and one locally for $25 delivered.  The local one had a battery backup and a slightly taller antenna connected via a plug and socket. The Chinese one has the antenna directly connected to the module, although it is a little more compact and doesn’t have an LNA.  The GPS receivers are 56 channel so they should perform better than the 12 channel unit that is supplied as an option for the VX-8DR.

Both receivers worked fine on arrival, and they worked nicely indoors. BTW, the serial port levels are 3.3V, so an FTDI type interface with these levels must be used. My interface came from a VX-8DR programming lead purchased from Ebay.  The cable was cut in half, one half was used to connect the GPS to the radio, and the other end for an experimental 3.3V USB serial interface for the PC.   As the UBlox GPS is a 3.3V unit, I ran the Arduino Nano at 3.3V instead of 5V so that everything was level compatible.  The Arduino ran fine at 3.3V even with the 16MHz clock.

Testing UBlox GPS

Testing UBlox GPS

The power to the GPS was accidentally reversed while testing.  A little puff of smoke rose, and the power was ripped off quickly.  The GPS still worked, so must have just half cooked a resistor. As expected, the GPS from China did not remember any of its configuration settings or satellite data when power cycled.  The strange thing is that this receiver has a flash chip on it, but it doesn’t seem to store any settings.  Maybe it has a design error and was sold cheaply due to this.

The Ublox can be monitored and configured by this great program from Ublox.  It is very comprehensive and can monitor and change many settings. David’s Arduino NMEA converter program was restored to defaults and worked fine between the Ublox and VX-8DR.

Now the challenge was to package it up somehow and keep it small.  The radio connector supplies 3.3V from its own regulator inside the radio, but the programming lead that was purchased for the radio plug did not bring out the pin for 3.3V, so for the moment, I decided to power the GPS from a small LiPo battery externally. The Arduino Nano, GPS receiver and the battery all fit in a small project box about 48  mm x 78  mm x 20 mm.

Packaged up

Packaged up

There are two screws on the battery that hold the belt clip on.  The idea is to take off the belt clip and use these screws to fix the box to the rear of the battery. Earlier I was going to use a quadrifilar helix Sarantel antenna on the top side of the box, but I found that the patch antenna with the GPS worked fine, even while oriented on its side.  This kept things a little simpler.

Inside the box

Inside the box

The whole thing works fine, although the battery inside the box must be switched off when not in use.  The next step is to power the box from the VX-8DR 3.3 V rail on the accessory connector, although before that, the GPS box needs to be made smaller and the Arduino replaced with an Atmega328 with minimum components.  ideally I would like the make the GPS box about 10-15mm high.

The code has now been been put into a stand alone 328.


NMEA converter in Atmega328

NMEA Converter

NMEA Converter

The GPS conversion code was transferred to an Atmega328 from the junkbox.  The Arduino boot code was loaded into it using Optiloader.  The code from Optiloader was downloaded to an Arduino Uno which downloads the boot code to the Atmega328.  This saves a little bit of physical space and drops the current consumption a little due to the lack of USB chip that was on the Nano.

To upload to the 328, I just use the 3.3V FTDI cable on the USB port of the PC.  When downloading from Arduino IDE, you have to hit reset on the 328 just when the IDE starts downloading to the chip as the DTE line is not used for reset.  The battery and regulator shown in the schematic will eventually be replaced by 3.3V from the VX-8DR.

The next step might be to implement power up and down of the UVblox GPS from the Arduino to save power.  The location reports only need to be sent say, every 5 -10 minutes and the GPS can sleep for a lot of this time.  The GPS is quite sensitive and re-acquires quickly.  So far the GPS receiver uses about 56mA at 3.3V when locked and the Atmeg328 another 10mA which is a little more than originally budgeted for.   The GPS without the LNA uses 33mA when locked.  The GPS has various power management settings yet to be explored.

See this update to the project to make it more compact.

This entry was posted in Projects, SOTA and tagged , , , , . Bookmark the permalink.

10 Responses to VX-8DR and GPS

  1. Hi Glenn, I purchased a VX-8DR yesterday, should arrive tomorrow. Like you I don’t plan to spend extra money on GPS accessories

    • vk3yy says:

      Hi Andrew,
      That’s great. Its a nice solid little radio. My only slight niggle is that sometimes the buttons are a bit hard to press (presumbly due to IP67 sealing). The 6m inclusion is handy too.

  2. Kim VK5FJ says:

    Are you heading to Linux.conf.au in February; http://linux.conf.au/
    I’d love to see a talk on something like this at the OpenRadio Miniconf; http://openradio.net.au/index.php/Main_Page
    Kim VK5FJ

    • vk3yy says:

      Hi Kim, the conference looks interesting, I see that you are presenting! (I assume that the Kim is yourself)

      • Kim VK5FJ says:

        Yes, I am hosting/organizing the OpenRadio Miniconf and hopefully I can get a few more talks in so i don’t have to present! =)

        None the less, I’m quite interested in exploring the telemetry and data modes so new folks can get an idea of how things work.

        Kim VK5FJ

  3. EA1CDV says:

    Great Job!! 73 from EA1CDV

  4. Pingback: Yaesu VX8-DR GPS Revisited | VK3YY

  5. Paul Taylor says:

    Nice project well executed! I also experimented with Ublox 6M from memory interfaced via a serial adapter to a Nano. I wrote script to pull some basic position time and elevation data from a couple of the NMEA messages and compute grid square. It amazed me how well this whole GPS system works. I made a GPS UTC clock script — always accurate… no need to ever set the time!

    I started thinking about building a GPS into a homebrew rig … push a button and the LCD flips to show GPS data such as UTC time position and elevation when activating. Then I wondered if I could find the distance to the nearest summit via a web service call to ParksnPeaks or Sotawatch and a 3G GSM card… then I thought that the device could do some logging for you in background… then I lost interest and started building something else 😉

    • vk3yy says:

      Thanks Paul, your project sounds interesting, the Ublox GPS is amazingly cheap for what it does. Very impressed on indoor acquisition.

      • Paul Taylor says:

        My project is stalled but I do think we’ll see someone do something like this for activators soon!

        On CW your keyer could log your called stations in background too.

        I was very impressed with Ublox Control Centre software, they upgraded it recently too.

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out /  Change )

Google photo

You are commenting using your Google account. Log Out /  Change )

Twitter picture

You are commenting using your Twitter account. Log Out /  Change )

Facebook photo

You are commenting using your Facebook account. Log Out /  Change )

Connecting to %s