Sunday, 22 March 2015

BlueFlyVario_TTL_GPS_v10 improvements

It has been a long time in between blog posts (almost 11 weeks)! This little hobby continues to keep me too busy. It has been one of the worst flying seasons in Canberra for many years which has given me time to continue production, build weather stations (the freeflightwx), and work on the BlueFlyVario.

I have been working on some new devices. In a future post I will describe plans for a BlueFly model that includes Blutooth, GPS, an SDCard for recording tracks, and USB computer interface. However, this post is all about improvements to the TTL_GPS model to make the GPS work better.

The issues

A few pilots reported that the BlueFlyVario_TTL_GPS with Kobo/xcSoar combination occasionally dropped portions of the track or had difficulty maintaining a satellite fix. With the help of our community of pilots I have determined that there are two distinct issues, both of which have now been addressed.

The first issues is a simple firmware error. In the firmware version M01 to M04 the GPS sentences being sent from the PA6H GPS were being clipped if the sentence length was longer than 79 characters. A NMEA sentence can be up to 80 visible characters long. Unfortunately, the bug clipped the sentence when it was longer than 79 characters, meaning the GPS data was not being transferred through to the Kobo. There are only some very particular circumstances when the PA6H would use the full 80 characters. The PA6H needs a DGPS fix (which we do not get in Australia) and needed to fix 10 or more satellites. In strong signal areas of Europe this can happen, and was causing dropouts which were very difficult to understand. The fix was super simple and has been rolled into the M05 firmware release (which will be on the support page of the website shortly). Unless you are having issues with a bad GPS track, and the NMEA log shows you are getting dropouts, then I would not worry about upgrading the firmware.

The second issue is associated with power supply noise and the ability of the GPS to get a good fix. I postulated that there are a few causes of the GPS power supply noise:
  • Broadband power supply noise from the 3.3v UART power from the Kobo. I measure that as around 70 to 100 mV pp (measured on an oscilloscope with AC coupling, 1x probe)
  • Broadband power supply EM emissions from the Kobo which are picked up by wires or the BlueFly/GPS circuitry. 
  • EM emissions from the Kobo which are at GPS frequencies (or appropriate multiples) and increase the baseline a real GPS signal must overcome. 
1 and 2 combine to affect GPS power supply noise on the BlueFly module. In the rev2 board on the first realease of the v10 the noise was filtered with only a 0.1uf cap at the input to the GPS, but further upstream the TC1015 regulator has 1uf on both the supply and output. This gets the Vpp down to less than the PA6H spec requirements of 50mV pp.

Improving power supply noise on the rev 2

If you have a BlueFlyVario_TTL_GPS_v10 with a rev2 board then you can adopt the following strategies to reduce power supply noise:
  • Make sure the wires which connect the BlueFly module to the Kobo are as short as possible, less than 5cm if possible. 
  • If the wires are longer, include a twist in the VCC/GND pair and the Tx/Rx pair.
  • Make sure that the wires are not routed across the middle of the Kobo PCB. 
  • Make sure that all solder joints are clean of flux. A little acetone on a small cotton swab will help clean any connections you have made. 
  • While the VBACKUP can improve time to first fix when you first turn it on, the long wire can also pick up electrical noise so you should consider if it is really needed. 
Further improvements - The rev 3 pcb

To further reduce power supply noise we needed a new pcb layout and some extra filtering components. The latest batch of BlueFlyVario_TTL_GPS_v10 pcbs are a new rev3 layout. I will be shipping rev3 pcb with all BlueFlyVario_TTL_GPS_v10 orders from now on. 

The rev 3 pcb incorporates the following changes:
  • Improvements to the ground plane under the GPS. This means that I removed the external pads for hacking to communicate with the GPS. If you want to get super serious about customizing your GPS you will have to solder to the PA6H pads instead. I am pretty sure that will only affect less than 1% of users.
  • Added Tx/Rx resistors for communication between the micro-controller and the GPS. This reduces noise on those lines.
  • Added an extra cap and ferrite to the power supply to make an LCC filter (600 ohm ferrite, 1uf, 0.01uf)
  • Moved the pressure sensor a little to make the neoprene fit over it better.
  • Moved the blue (or red) LED away from the pressure sensor.
All of these changes reduce the power supply noise, which in turn should improve the GPS performance. I remain confident that the rev2 board works well, but this new board should be just a little better. I have attached a schematic and layout below.


  1. How can i define which rev of the BlueFlyVario_TTL_GPS_v10 i have? Did you only ship rev_2?

    1. Look at the components near the bottom left corner of the GPS. On the rev3 three are two 330k resistors. Another way is to check the date of the shipping notification email I sent you. If it was before 18 Mar 15 I sent you a rev2 pcb, after then it is a rev3.

    2. OK, i have rev2. Since GND and VCC pads are on the sides on both PCB and UART, i've routed the wires keeping them on the sides. Is needed to twist them if they aren't near? I will twist TX and RX wires.
      BTW i only have issues once in a while, that are longer time to first fix. (2-5 min vs 30-50s). What are the expected time to first fix without VBACKUP?

  2. I think there is no need to twist the wires unless they are more than about 5 cm long.
    The time to first fix should be less than 1 minute if you are in an area where you last had a fix, the previous fix was in the last few days, and you have a clear view of the sky. Otherwise, it will probably take longer.

  3. My wires are a little longer, probably 10cm. Since VCC and GND are on the opposited sides, shall i twist them? One twist is enough or shall i twist more?

    1. I have not tested the twist at various lengths. There are so many factors that will influence performance such as the proximity to sources of RF noise. Just try it out and let us know.

  4. Could I order the rev3 right now ?

    1. Yes you can. It is the versio I have been shipping since I made this blog post about a month ago. Please order here Note that I am a few weeks behind on orders.

  5. I bought a BlueFlyVario TTL v10 from you a month ago.
    I have built it into a kobo mini.

    Problem is iam getting no data from the BlueFlyVario, xcsoar always says "no data".
    If i replace my v10 with a friends v9 version it works.

    I have tried some settings and found that i can succesfully send commands to the module.
    For example turn on/off green LED $BLD or set volume $BVL.

    But iam getting no data back, for example in the v10 module the command $BST or $TMP doesnt deliver data back.

    iam no longer know what to do, any suggestions ?

    I believe problem lies in the v10 module because the v9 module works with the exact same installation

    mfg Christoph

    1. and it even doesn't work in an friend's Kobo touch where a v9 version works great

    2. Christoph, What does the data look like in the xcsoar Monitor? Are there any GPS sentences coming through at all?

    3. no data is coming through, nothing at all

    4. Could you please email me a close up photo of the BlueFly connected to your Kobo, and a screen shot of your device settings in xcsoar. Is the Audio working normally?

  6. Hi guys, I just bought the kobo glo, I see something new, on Bluefly's webpage, like BlueFly_Shield_v11_Airspeed.... we all know that the best measure is the pressure difference but in this case xcsoar would not disclose our position and consequently would not help to find the heart of the thermal! Then, should wait for new products? The ideal is to have both, right? air and GPS !! thanks to all.

    1. At this stage I have only developed the airspeed and GPS shield for close integration with the Bluetooth model of the BlueFly. I am not sure I will develop it in the same way for the TTL_GPS model. The biggest issue is that the airspeed sensor wires can not be too long, nor should the air pressure tubes to the pitot. This means that the airspeed sensor will be within 30cm or so of the TTL_GPS. There is no good spot on a PG to mount the airspeed sensor so close to the normal place you would put your Kobo. What do you think?

    2. Dear friend, i am beginner pg but if it's possible i would like to helping your project.
      For example we can ask help to somebody of
      Problem is to assembly all on kobo glo ?
      Okay, if we have absolutly 30 cm. we have serius problem..
      I am sorry but how variometer skybean work ?
      it's possibile to use a similar device ?
      Bye bye Lucas