Friday, 5 November 2021

BlueFlyVario_TTL_GPS_V12.2 released

The BlueFlyVario_Bluetooth_TTL_GPS_v12.2 is ready for release. This model has been developed because the lead time on the XA1110 GPS module is crazy, and all of my stock of that module is reserved for the GPS_IGC model. Nonetheless, from crisis come innovation, and this model has some major benefits over the TTL_GPS_v12 released over three years ago. The number of pilots installing a BlueFly on a Kobo has reduced, but it is still very popular and I am pleased that I have found a way to continue to support it during the chip shortage. 

What is going on with chips? 

The global electronics chip shortage is madness. For a little electronics design and manufacturing company like Bluefly it is particularly bad. I am a one-man part-time business and the chip shortage has affected availability, price, and development.   

  • I can get one or two of almost any component, or if I was a big manufacturer am sure I could get half a million of critical components, but trying to find 500 to 5000 of anything made of silicon is hard. That is exactly the quantities that a company like the Bluefly is operating in. 
  • The price of all components are up 20% to 50%. 
  • All of this makes development harder. Over the last year I have been designing sub-components of a future vario project, using a different pressure sensor and new microcontroller family, but just as I was ready to build a full prototype, lead times for the components I included in the design extended to over a year. This has not been wasted time, but it will postpone my plans. 
The new GPS

There are a few GPS modules that are suitable for these little Blueflys.  I am looking for GPS modules that include an antenna for reduced part count, are surface mount for easily assembly, are small enough to fit in the design. Most importantly, the module must be available in the quantities needed. There are basically two types; those with a ceramic antenna (like the XA1110 of the previous model), and those with a small chip antenna. 

I have experimented with chip antenna in the past, but I could never get the performance to work as well as a ceramic antenna. However, with the TTL_GPS there are some criteria that made me think I could get it to work. I could make the circuit board large enough for a good ground plane, and there was no need for a battery with copper foil directly underneath the antenna. After a bit of research I found the Quectel L96 and decided to experiment with it. This has some advantages of having the same internal MTK chipset I am familiar with and the price is comparable. 

After my first prototype it was pretty clear that this was going to work. In fact, the performance of the ceramic chip antenna for this GPS with a larger ground plane is better than the previous ceramic antenna model (reduced time-to-first-fix). The image below shows the difference in size between the v12.2 (top) at 20mm x 60mm compared to v12 (bottom) at 17mm x 50mm. It is difficult to see, but without the height of the ceramic antenna the new vario has a much lower profile. 


New hardware features

The BlueFlyVario_Bluetooth_TTL_GPS_v12.2 has some differences from the earlier designs:

  • It is larger, as described above.
  • The component layout is different (switch and speaker on the opposite side, sparser components). This is all about designing the board to maximise the performance of the chip antenna. 
  • The headers/pins for the TTL serial connection have solder tabs to offer alternate ways to connect the wires. 
  • I have included a V_Backup tab. For most users I do not suggest that you use this (and do not suggest that you close the solder jumper to connect it to V+). If you feel that V_Backup is for you make sure you read the datasheet for the L96 to understand how it works. 
  • The ON solder jumper next to the voltage regulator is closed by default. This means that as soon as power is connected between GND and V+ that the vario will power on. If you want the same behaviour as the v12 then you can cut the connecting wire on the tab. 
  • The GPS LED is orange. When the GPS has a 3D fix it will flash. 
  • Pads for GND, RST and BOOT are exposed on the top of the board. 
    • Short GND and RST when powering on to reset the default hardware settings. 
    • Short GND and BOOT when powering on to enter the bootloader for updating firmware via TTL_Serial (if I release an update). 
  • Note that there are a couple of components near the GPS that are not populated. This is not a mistake. 
The image below shows the layout on the front and back of the board. 


New firmware

Some updates to the firmware for this model include:
  • Some changed default settings to match the different GPS (internal baud rate).
  • startDelayMS is set at 2000 by default. This adds a 2s delay between the vario powering on (indicated with a very brief chip), and data being sent out. It is used because the ON solder jumper is closed by default. The behaviour is that when your Kobo is started, and power flows from the Kobo serial port, the vario starts right away. 
  • There is a higher performing vario/GPS sentence multiplexing algorithm. 
What is in the bag?

The BlueFlyVario_TTL_GPS_v12.2 includes:
  • The vario module.
  • A small piece of neoprene. It is very important that this is placed over the pressure sensor to protect it from the light, but still allow air to come through. Make sure to leave the white tape on, and place the black squishy side of the neoprene on the sensor. 
  • Some blue PVC heatshrink to hold the neoprene in place and help protect the components. You will only put this on at the final assembly stage. 
  • Some telephone cable. Strip this for the individual wires. 

Simple Assembly

There are many ways to assemble the module on the Kobo. I suggest you read old blog posts on here and check out Nev's page at http://gethighstayhigh.co.uk/kobo-self-build/ for more ideas. Some pilots design 3D cases. I prefer a simple install method these days. 

Some important tips for all installs:
  • Keep the wires as short as possible. The location of the Bluefly will depend on which kobo you have. Note that xcsoar can be configured in any of the four orientations and you should select a layout to match. 
  • Put the neoprene on correctly. Make sure the black squishy side is on top of the pressure sensor to protect it from light, but still let air in. 
  • Keep your solder joints clean. Use a hot soldering iron with flux for the minimum time needed to get good solder joints. Clean the flux off with isopropyl alcohol. 
  • Make sure the antenna is hanging over the edge of the bezel, with nothing behind the keep out area on the back of the Bluefly board. 
  • In xcsoar, set the Bluefly as Device A, Port: ttymxc0 (or something like that, only one will work), Baud rate: 115200, Driver: BlueFly Vario.
The image below shows mid way through an install on an old Kobo Glo. Notice the neoprene in the right spot. At about this point I always make sure that I check the Monitor in the Devices menu of xcsoar to see the data streaming in. 

In my simple installs I generally just attached the vario using double sided tape (after heatshrink). Hot melt glue helps protect the wires.

Sunday, 25 July 2021

Bluefly IGC Validation

Six weeks ago I released a new model of the Bluefly with onboard GPS and IGC recording. The BlueFlyVario_Bluetooth_GPS_IGC_v12.3 has been more popular than I first thought. Today I am pleased to announce the BlueFly IGC files can be validated with GpsDump (Version 5.40), so you can use it as a backup for competitions that require validated IGC files. 

What is IGC File Validation?

It would be possible for a pilot to create a fake IGC file for competitions or records. Signing the file with a G-Record is designed to prevent this. Nothing is 100% secure, but the signing mechansim prevents casual tampering except by really determined highly technical hackers. Of course, faking an IGC file would be silly, but some people worry about it. 

The original IGC spec by the FAI requires a pretty sophisticated mechanism for signing IGC files, based on individual device serial number and public key encryption. Some high end devices implement this spec, but they are pretty much limited to use on sailplanes. 

A more relaxed version of the specification is produced by FAI CIVL for Hang Gliding and Paragliding use. This is what has now been implemented on the Bluefly and this new model has been submitted for approval by CIVL. In addition, the developer of GPSDump has implemented Bluefly IGC download and validation and that can be used right now for uploading your IGC files to online competitions.

You can read a lot more about IGC files and CIVL here

GpsDump and the Bluefly (XGD)

GpsDump is one of the most widely used programs for downloading IGC files from flight instruments. Stein has been very kind to implement the Bluefly IGC download protocol and validate the Bluefly G-Record. Once the data is in GpsDump it can then be saved as a GpsDump signed IGC file, which is widely supported by competitions and online validators. After you have your Bluefly successfully installed as a COM port, the first step is to read the list of files from the Bluefly. 

The list of IGC files on the Bluefly is then like this. Note that the duration is approximate only. 


Once the file is downloaded you can then 'Save IGC file made by GpsDump' and add a few details if you like. The GpsDump saved file is re-signed and can then be used by any competition that uses GpsDump files, which I think is almost all of them. 

Bluefly Validation (VBF)

The G-Record signing in the Bluefly can also be used to directly validate the files you have downloaded using the BFVDesktop application. See the release blog post for information on how to download the files directly. The IGC files on the Bluefly use the three letter code VBF in anticipation of this code being compliant with the specification (this may change to XBF in the future). 

To validate files from the Bluefly that you have downloaded directly using the BFVDesktop application you will need the validation program vali-vbf.exe. Use it from the command line like:

>vali-vbf.exe filename.igc

Please note that you will need firmware version 12.529 or later on your BlueFlyVario_Bluetooth_GPS_IGC for the Bluefly IGC validation to work. There were only a few copies of this new model sent out with an earlier version of the firmware. If you do not have 12.529 or later please contact me and I will help you update it.  























    Friday, 11 June 2021

    BlueFlyVario_Bluetooth_GPS_IGC_v12.3 released

    The BlueFlyVario_Bluetooth_GPS_IGC_v12.3 is ready for release. This model was developed following requests from many pilots who wanted to add a GPS and IGC tracklog recording to the Bluetooth_USB model.  

    The motivation was to integrate the GPS on to the main board instead of using an add-on. The GPS add-on released a few years ago worked well, but it was a lot of messing around for those pilots that just wanted a vario with GPS. I took advantage of the opportunity to add a memory chip to add IGC tracklog recording. The new model utilizes many of the same components and code from the other v12 models, with a redesigned the PCB layout to fit in the translucent blue case. This was harder than expected and the design process has taken well over a year through many prototype iterations. The new vario is available now and is shipped fully assembled and ready for pilots to enjoy. I am pleased that the GPS antenna is flush with the top of the case. By using the same acrylic button recently released on the Bluetooth_USB_v12.3 model I was able to keep the profile pretty clean. 

    Features

    The BlueFlyVario_Bluetooth_GPS_IGC_v12.3 has a combination of features that complement the other Bluefly models, including:

    • Reliable vario sensitivity and audio performance of the other v12 models - it beeps when you go up in the way that pilots love. 
    • The same Bluetooth and USB interface as the Bluetooth_USB model for data output and adjusting settings. You can adjust all of the same settings, plus a few new ones.   
    • The XA1110 GPS from the TTL_GPS model: 
      • Better time-to-first-fix than other models through improved PCB layout. 
      • Uses battery backup for super fast subsequent fixes on the same day in a similar location. 
      • Operates at 1 second intervals, although with some tinkering can be set to operate at higher intervals. 
    • Reliable serial flash memory for storing about 60 hours of flight time at 1 second intervals. 
      • If the vario is on and the GPS has a 3D fix then IGC recording will start. 
      • Recording continues until the vario is shut down.
    • LED's for indicating status: 
      • Orange: 1 second flashing = 3D fix
      • Blue: Single flash = bluetooth scanning; Double flash = connection. 
      • Red: Charging.
      • Green: Button press, Lift and other indications as described in the manual. 
    • Battery life of about eight hours.
    What is in the box?

    The BlueFlyVario_Bluetooth_GPS_IGC_v12.3 is shipped fully assembled and ready to use. A sticky velcro patch is included to allow mounting it to your flight deck. 

    Typical Use

    This model is designed for stand alone use, or for connecting to a smartphone. Follow these quickstart steps to begin:

    Step 1 - Charging. To begin, find a MicroUSB cable and charge the vario. Any phone charger that provides 5V can be used, or even a computer USB port. The red LED should come on, then turn off when the vario is fully charged. A full charge will take about two or three hours. 

    Step 2 - Turn it on. A short single press will turn on the vario. The button, beeps and lights are described in more detail here. Move the vario from your feet to above your head to simulate lift and hear the beeping as it rises.

    Step 3 - Connect to a PC (optional). Download the BFVDesktop application from the software page of the website. Using a USB cable connect the vario to your PC and see the settings. Read the hardware settings manual for a more detailed description of this settings (although note that the manual is not yet updated with the IGC settings described below). 

    Step 4 - Connect to an app. We will use XCTrack. This is a popular app among paraglider pilots and works well with the Bluefly. Do the following:
    • Install XCTrack on your android device by searching for it in Google play. 
    • Restart the vario (long press to shut it down, then short press to start it up). This ensures that the bluetooth module is ready to go. 
    • In your android device settings pair the Bluefly as a bluetooth device. The name will be 'Bluefly-ABCD'. 
    • Open XCTrack and drag down to see the menu. Click Preferences|'Connection & Sensors'|'External sensor' then select the Bluefly you paired with in the previous step. If you select the wrong one select "None", then try again. 
    • If you want, choose 'Use external GPS' to allow XCTrack to use the GPS information from the Bluefly instead of using the internal android GPS. This is useful on old devices with unreliable GPS, or on android e-readers that do not have a GPS. 
    • At the bottom of this menu click 'Calibrate' to see pressure data streaming in from the Bluefly. There is no need to adjust the default XCTrack calibration settings here. 
    • Go back to the main display and you should see the GPS and Bluetooth icon indicating a connection. To test, shut the Bluefly down, and see the disconnected message, then start it up again and see the reconnection messages. 
    IGC Tracklogs

    This is the first Bluefly model which incorporates a memory for recording IGC tracklogs from GPS fixes, and there are some new settings which control how it happens. When the vario is on and the GPS has a valid GPS fix then tracklog recording will start. This means you will always get a backup record without having to rely on your flight software trying to interpret when a flight started or stopped. 

    IGC Format. The IGC files produced work well with online logging programs and visualization software, but at this stage the firmware does not add a signed G-record required in some high level competitions. In other respects, the IGC file structure follows the recommendations in the FAI sporting code for HPG instruments

    Memory Structure. IGC files are stored on a NOR Flash memory chip soldered to the Bluefly circuit board with a SPI interface to the processor. This is a low profile component and provides 64Mbit of raw memory storage. I had initially envisaged that a standard file system structure would be used, with a mass storage device interface. However, this is not possible with the current Bluefly processer and is something to think about for future Bluefly models. So, for this model, the Bluefly firmware uses a custom memory structure for recording file information. A simplified description of the memory structure is:

    • The NOR Flash Memory chip is structured in 2048 sectors which are 4096 bytes in size. 
    • Each file starts in a fresh sector. When recording starts a file data header consisting of the file name, the start sector, and the file number is written to the first few bytes of the sector. The file name is based on the date and time received from the GPS (note that this is the UTC time). 
    • Next, the IGC header information is written (A record and H records). 
    • Next, B records are written as GPS information is recorded. 
    • When the end of the sector is reached, the same file data header is written to the following sector, then recording continues. This means that every sector with IGC data also has a file data header.
    • When the Bluefly is shut down the file is closed, and the location of the next sector is stored in the Bluefly memory. 
    • The next file is written in the same way. When all of the sectors are full (after about 60 hours of recording at 1 second intervals), the memory wraps around and the sector pointer sets to 0. In this way there is a continuous record of the last 60 hours of flight time, although the oldest file will be incomplete if the memory is full. 
    User Interface. The BFVDesktop application (version 0.8) has been updated with the new settings and functionality to download IGC files. The screenshot below shows the new settings:
    • gpsLogInterval has been changed in this model to control how often track points are recorded. The GPS outputs $GNRMC messages once a second (by default), and if gpsLogInterval is set to 1 then each of these messages is formatted to a B record and saved to the IGC memory. If it is set to 2, then every second point is recorded, and so on. 
    • igcSectorNumber is the next memory sector that will be used. There is no need to change this for anything other than developmental reasons. 
    • igcFileNumber is the number stored in the data file header. Again, there is no need to change this. 
    • pilotName is the name stored in the IGC file H record. I am not sure who really cares about this, but it might be important if there is a G record in the future. 
    When the vario is connected if you press on the IGC button in the Hardware Commands section of the interface it will pop up the BFV IGC File Downloader window shown below:
    • When the window opens a command is sent to the Bluefly to poll each sector for a file data headers the list of files is build. Press Refresh to poll the memory again. 
    • The file name incorporates the data and time that recording of that file commenced. The file number can be ignored for most purposes. The start sector is where the files starts in memory. And the number of sectors gives you an indication of the size of the file (each sector stores about 110 records at 1 second intervals). In the example below, 11 sectors is about 20 minutes of recording. 
    • Highlight the file you want and press Download to save it. You can change the save location by using Select Save Directory. 
    • You can Format the entire IGC memory, deleting everything, and setting the start sector back to 0. 

    Future Development

    I am always tinkering. It may be time to change to a new processor, add new features, try to drive down the price, and so on... However, time is always hard to find. Let me know your thoughts. 



    Monday, 5 April 2021

    BlueFlyVario_Bluetooth_USB_v12.3 released

    The BlueFlyVario_Bluetooth_USB_v12.3 is another minor update to the previous version released a few years ago - the Bluefly has a new button! 

    Please read this post in conjunction with the release post for the BlueFlyVario_Bluetooth_USB_v12 and the release post for the BlueFlyVario_Bluetooth_USB_v12.2 to understand the changes.

    The new button

    One of the most frustrating part of electronic design is getting the physical user interface right - the case, usb connector, lights, and button. I have experimented with a few different buttons in the Bluefly project. The trick is to find the right balance between usability (including with gloves), avoiding accidental presses, cost, reliability of component supply and appearance. The button on previous versions met most of these requirements, however some pilots found that it was pressed accidently too often. 

    The new button is a lower profile 4x4x1.5mm smd tact switch that is actuated with a machined acrylic part. The button hole in the translucent blue case is machined to 6mm diameter to fit. It costs a bit more, and I need to machine the acrylic myself, but I have found it to be much more pleasant to use. It was tested with competition pilots earlier this year and I am now happy to release it as the default Bluefly button. 

    For those pilots that have followed the Bluefly journey since the beginning, the clear acrylic button might make you think fondly of the first sandwich case released with version 0.5b



    What is in the bag?

    For self assembly, the v12.3 model of the BlueFly is supplied with the following components:
    • The BlueFlyVario_Bluetooth_USB_v12 mainboard. There is a small piece of neoprene covering the pressure sensor; glued at one end to hold it in place (do not remove it)
    • The translucent blue case with four small screws (P1 screwdriver needed) and the machined acrylic button.
    • A 750 mAh single cell Lithium Polymer battery.


    Assembly

    Assembly is pretty simple and will take most people less than 5 minutes. However, if you would prefer not to touch a screwdriver, you can order the vario fully assembled.

    Step 1 - Initial Test

    Before you put the board in the case, plug in the battery, press the button, and make sure you can hear the vario beep. Also, plug in a microUSB charging cable and make sure the red LED comes on.

    Step 2 - Fit the button into the case

    The button should fit neatly into the case as shown in the image below. The machining looks a bit rough under the magnifying glass, but is neat at the surface that matters. You might feel the need to scrape of machine fragments of the case or button with your finger nail. Make sure the button can move easily in the hole. 


    Step 3 - Screw the board into the case 

    Place the board in the case ensuring that the USB connector is in the hole at the end. The USB edge of the PCB should be flush with the inside edge of the case. 

    The small self tapping M2.5x5mm P1 screws secure the board into the case. You really only need two screws on a diagonal, but there is no harm if your use all four. Don't drive the screws home to tightly or you will strip the stand-offs in the case. Just use enough pressure to ensure that the board is secure.

    Step 4 - Battery and close

    Plug in the battery and place it on the back of the PCB centrally between all four screws, making sure not to place it on the end of the screws. Then close the case. 

    Step 5 - Check charging works

    Plug in a microUSB cable to charge the vario. The red light should come on. Cables with longer tongues work better.  

    Step 6 - Velcro and/or lanyard (optional)

    Many pilots will put a small piece of velcro on the back of the vario to attach it to their flight deck (this is what I do). Others will drill some small holes in the case and attach a lanyard (I do not do this anymore). 

    Next Steps

    After install you probably want to connect to the BFVDesktop application to adjust settings, or connect to and Android or iOS device to experiment with different apps. See the software page for more information. 

    Sunday, 4 August 2019

    GPS Logging on the Bluefly with the XA1110

    This post is about using onboard logging capability of the XA1110 GPS on the Bluefly. It gets technical, and then I finish by suggesting for most pilots that you probably do not need it.

    For many years the Bluefly varios have had the ability to stream a GPS signal to an app like xcsoar or XCTrack on Android (for the Bluetooth model), or to xcsoar on the Kobo (for the TTL_GPS model). Most pilots will use the logging capabilities of those apps to keep a record of their flights or to submit them for competition flying. However, the XA1110 has a small onboard memory and can record its own log. This post tells you how to use it if you feel like experimenting.

    What models does this post relate to?

    Any model of the bluefly which is connected to the XA1110 GPS. This includes:


    The XA1110 GPS uses the MediaTek MT3333 chipset which has the 'Locus' function that the logging is based on. If you have another GPS using this chipset, or perhaps even some other MediaTek chipset, then you might find you can interact with its Locus memory in a similar way.

    Why would you want to do this?

    Upfront, I would say that in many cases you probably do not want to do mess with the logging capabilities of the XA1110. For most of our flying adventures keeping a GPS track log is nice to have but is not essential. If you keep your android or iphone battery charged then it is probably better to record a log on whatever app you are using.

    However, if you want a backup to your backup, then switching on the Locus of your XA1110 might be for you. One day, if the competition director is pleasant, it might be your last resort to prove that you made goal. Although, it is important to note that the IGC that you might produce from GPS Babel is unsigned.

    How the XA1110 Locus GPS Log works

    The Locus log is pretty simple:
    • If the GPS has a fix, and logging is 'started', then logging will begin.
    • The logging interval can be changed from 1 second to 12 hours (in theory).
    • Each log point stores time, latitude, longitude, and GPS altitude (each point uses 16 bytes).
    • The memory size is 128k, which means it can store 8192 points. At 1s track intervals that is only 2.27 hours, but at 10s intervals it provides almost 24 hours of logging. I think that is reasonable for the kind of use case I am considering in this blog post (a backup to the backup).
    • Once the log reaches the end, the GPS just begins to overwrite points from the start of the log. 
    The main drawback of the log is that it is painful to access. You need to send specific commands to the XA1110 to configure, start and restart logging (see the XA1110 Software User Guide for more information). I had hoped that if we start logging that it would continue it after the GPS had rebooted, but I found this only works if VBACKUP is connected and the GPS hot starts. The log needs to be manually started on each cold start.

    Firmware update 

    In order to simplify the commands, a few days ago I uploaded new firmware (BlueFlyVario_12.M25). This firmware includes one new hardware setting gpsLogInterval (code BGL).

    Updating the firmware on the TTL_GPS model is a pain as you will need to remove your Bluefly from the Kobo, connect it to a USB_Serial converter, then updated it using the ds30loader application from a Windows PC. It is much easier for the Bluetooth_USB model. In either case, if you manage to update your firmware then it works like this:
    • If gpsLogInterval is set to 0, then it turns off the log. 
    • In all other cases, the Bluefly sends the following commands to the XA1110 on startup (or when gpsLogInterval is changed):
      • A test command (PMTK000)
      • The command to set the log interval (PMTK187,1,{BGL Value})
      • The command to start logging (PMTK185,0)
      • The command to query the locus (PMTK183)
    • This results in an output from the Bluefly like:
    $PMTK001,0,3*30
    $PMTK001,187,3*3E
    $PMTK001,185,3*3C
    $PMTKLOG,16,0,a,31,10,0,0,0,3837,48*20
    $PMTK001,183,3*3A

    You can decipher this using the XA1110 Software User Guide if you feel you must, but the bottom line is that it shows that logging is happening at 10s intervals. 

    BFVDesktop application update

    I have also updated the BFVDesktop application. Version 0.61 includes the gpsLogInterval hardware setting. In addition, there are a few PMTK commands in the Hardware Commands drop-down to query the locus (PMTK185,0), erase the log (PMTK184,1), and download the log  (Query Locus Data - PMTK622,0). To download a log use these steps:
    • Make sure you can see GPS sentences. You might need to set uart1BRG to 16 to make sure that data rate of U1 (which the XA1110 is connected to) is set to 115200.
    • Note your outputMode setting, then adjust it to 4 (to disable the bluefly output). You should still see GPS sentences. 
    • Send PMTK622,0 to begin downloading the log. You should see sentences like:
    $PMTKLOX,0,1366*6B
    1563683257,2019-07-202T04:27:37Z,2,-35.39281,149.20744,681
    1563683258,2019-07-202T04:27:38Z,2,-35.392807,149.20744,681
    $PMTKLOX,1,0,0100000A,1F000000,01000000,00001F0A,00000000,00000000,00000000,00000000,00000000,00000000,00000000,0000001F,FFFFFFFF,FFFFFFFF,FFFFFFFF,000C8C14,B9E9335D,023D920D,C21B3515,43A9028F,BAE9335D,023C920D,C21B3515,43A9028D*5F
    1563683259,2019-07-202T04:27:39Z,2,-35.39281,149.20744,681
    1563683260,2019-07-202T04:27:40Z,2,-35.39281,149.20744,681
    1563683261,2019-07-202T04:27:41Z,2,-35.39281,149.20744,681
    1563683262,2019-07-202T04:27:42Z,2,-35.392803,149.20744,681
    1563683263,2019-07-202T04:27:43Z,2,-35.392803,149.20746,681
    1563683264,2019-07-202T04:27:44Z,2,-35.392803,149.20746,681
    $PMTKLOX,1,1,BBE9335D,023D920D,C21B3515,43A9028D,BCE9335D,023D920D,C21B3515,43A9028A,BDE9335D,023D920D,C21B3515,43A9028B,BEE9335D,023B920D,C21B3515,43A9028E,BFE9335D,023B920D,C21C3515,43A90288,C0E9335D,023B920D,C21C3515,43A902F7*5B
    1563683265,2019-07-202T04:27:45Z,2,-35.392807,149.20746,681
    1563683266,2019-07-202T04:27:46Z,2,-35.39281,149.20746,681
    1563683267,2019-07-202T04:27:47Z,2,-35.39281,149.20746,681
    1563683277,2019-07-202T04:27:57Z,2,-35.39282,149.20746,681
    • Note the PMTKLOX sentences are from the XA1110 GPS in the funky 6 x 16 byte format. The other sentences are CSV separated interpretations from the BFV Desktop application.
    • It takes about 1 minute to download the log over a 115200 connection. 
    • You will find two files in your BFVDesktop folder. 
      • locus_record.csv is all valid track points that were decoded from the locus log. You might use this to view the points in excel
      • locus_record.mtk are the complete log PMTKLOX sentences. Use GPSBabel to convert that 'MediaTek Locus' file to any tracklog format you want (like FAI/IGC...). 
      • Note that the points are not ordered by date. You will probably need to do some manual editing to create a log that makes sense. 
      • Also note that the points are not split into flights. Again, some manual editing will be required to work out when your flight started and finished (remember, this is the backup to the backup...)
    • When you are done, set your outputMode back to whatever you started with. 
    Notes for a Kobo

    I have not tested this on a Kobo yet. However, if you have a TTL_GPS setup on a Kobo (with the updated firmware), and you want to get your locus record, then I would experiment with the following procedure:
    • Create a custom xci file to create some menu options send the appropriate commands to the Bluefly. 
    • Turn on NMEA logging to record the raw output from the Bluefly. 
    • Send the PMTK622,0 command to begin downloading the PMTKLOX. 
    • Copy the NMEA log, and edit it excel to copy all of the PMTKLOX sentences to a new file. 
    • Convert that file using GPS Babel. 
    If updating the firmware is beyond you, then you might be able to create some other mechanism to send the appropriate commands to commence logging when xcsoar events occur. 

    The bottom line

    If you have read this far, then you probably have worked out that the XA1110 Locus thing with the Bluefly is probably to much hard work for not much benefit. I really just did this to prove to myself that I could. If you really want to do it then I suggest you experiment before relying on it as a backup. 

    Saturday, 29 June 2019

    BlueFlyVario_Bluetooth_USB_v12.2 released

    The BlueFlyVario_Bluetooth_USB_v12.2 is a minor update to the previous version released a few years ago. The classic model of the Bluefly has a fancy new translucent blue case and is easier to assemble. Please read this post in conjunction with the release post for the BlueFlyVario_Bluetooth_USB_v12 to understand the changes.

    Translucent Blue Case

    The new translucent blue case is an upgrade on the sky blue case that has been used for the last few years. The new case includes the following improvements:

    • It incorporates stand-offs in the design, which makes the connection between the mainboard and the case more secure. 
    • Cutouts are very slightly larger. 
    • The lid is secured with different clips, which are much more secure than the older case. 


    What is in the bag?

    The v12 model of the BlueFly is supplied with the following components:
    • The BlueFlyVario_Bluetooth_USB_v12 mainboard. There is a small piece of neoprene covering the pressure sensor; glued at one end to hold it in place (do not remove it!)
    • The translucent blue case with four small screws (P1 screwdriver needed).
    • A 750 mAh singe cell Lithium Polymer battery.

    Assembly

    Assembly is pretty simple and will take most people less than 5 minutes. However, if you would prefer not to touch a screwdriver, or you want your vario configured to your custom settings, you can order the simple assembly service.

    The simpler assembly method refines the steps outlined in the initial release:

    Step 1 - Initial Test

    Before you put the board in the case, plug in the battery, press the button, and make sure you can hear the vario beep. Also, plug in a microUSB charging cable and make sure the red LED comes on.

    Step 2 - Screw the board into the case 

    The small self tapping M2.5x5mm P1 screws secure the board into the case as shown below. You really only need two screws on a diagonal, but there is no harm if your use all four. Don't drive the screws home to tightly or you will strip the stand-offs in the case. Just use enough pressure to ensure that the board is secure. 

    Step 3 - Ensure the button is aligned 

    The button should be aligned with the center of the cutout hole. If it is off center and touching the edge of the hole then the case will interfere with the proper operation of the button. If you need to adjust it unscrew the screws by one turn or so, just enough so you can move the board around, then tighten them again. 


    Step 4 - Battery and close

    Plug in the battery. Place it in the case, making sure not to place it on the end of the screws. Then close the case. There is no longer any need to use tape to keep the case closed (the new lid clips are much more secure), nor any need to secure the battery (it fits snugly). 

    Step 5 - Check charging works

    Plug in a microUSB cable to charge the vario. The red light should come on. Cables with longer tongues work better.  

    Step 6 - Velcro and/or lanyard (optional)

    Many pilots will put a small piece of velcro on the back of the vario to attach it to their flight deck (this is what I do). Others will drill some small holes in the case and attach a lanyard (I do not do this anymore). 

    Next Steps

    After install you probably want to connect to the BFVDesktop application to adjust settings, or connect to and Android or iOS device to experiment with different apps. See the software page for more information. 

    Bluefly_GPS_AddOn_v12 Released

    I am pleased to be able to release the Bluefly_GPS_AddOn_v12 board today. Adding a GPS to the Bluefly has been possible for many years (see this post for an example http://blueflyvario.blogspot.com/2017/08/blueflyvariousbv12-released.html). This new board is designed especially for the Bluefly and uses the XA1110 module which offers a range of premium features.

    Before reading on, why would you want to add a GPS to the Bluetooth model of the Bluefly? For many pilots the answer is you probably do not. If you are using the Bluefly in stand alone mode (just using it's audio), or if you are connecting to almost any Android or iOS device, then that device probably already has a GPS. However, there are a few Android devices that do not have GPS such as Android based eReaders that some pilots are now using with XCSoar. The Bluetooth model of the Bluefly with this new GPS board can provide the location input you need for XCSoar or other apps.

    Features

    The image below shows the layout of the board.


    Features of the board are:

    • The XA1110 Mulit-GNSS module from Sierra Wireless
    • It's own 3.0v Voltage Regulator and conditioning components for optimal performance. 
    • The blue LED flashes once per second when the GPS has a fix. 
    • The main connectors are:
      • The U1 connections to the Bluefly for Ground, Tx, Rx and 3.3v input. 
      • RA7 enables the voltage regulator (you need the most recent version of the firmware for the Bluetooth model of the Bluefly for this to work). 
      • VBAT connects to the GPS VBACKUP for fast time-to-first-fix (about 5 seconds) and maintains other configuration settings on the GPS. You need to close the solder jumper for this to work. 
    • There are pads for a U.Fl connector for those that want to experiment with an external antenna. 

    Assembly

    Assembly is pretty easy if you have basic soldering skills. Before you begin read through all of these steps. If you are really uncomfortable doing this yourself then I am also able to offer an assembly service (but note that this makes the size of the package greater than can be shipped with free shipping).

    Step 1 - Checking your Bluefly 

    To complete your the assembly process your Bluefly will need to be removed from the case. Do this carefully by first removing the battery and any packing holding the vario in position. Next use a small flat screwdriver and gently twist between the end of the PCB and the end of the case with the USB hole. The aim is to release the end tabs of the USB connector from the hole, then press on the button to push the PCB free from the case. If you are gentle the PCB should come out easily, and you will not damage the button or the USB connector.

    Next, plug the battery back in and connect to the BFVDesktop application on a windows PC. Send the 'BTN' command a few times just to make sure you have a good connection to the vario.  You need firmware version 12.423 or later for this to work.

    Step 2 - Attaching the GPS_AddOn

    Begin by soldering headers to U1, RA7 and VBAT as shown below (I will include a strip of 6 or more headers in the package with the AddOn board). Note that I have used right angled headers in this image, but you can also use straight headers. I strongly suggest that you trim the pin of the headers flush with the board before you solder it (not shown in this image). This will help prevent the LiPo battery from damage. Also note that the secret of all good soldering is lots of flux, a clean hot soldering iron with quality solder, and good cleaning with isopropyl alcohol after soldering.

    Next, attach the AddOn board. Note that it sits flush on top of the bluetooth module shield, and slightly squishes the neoprene. Again, trim the headers before soldering. 

    This final image shows the required pins soldered. Also, note that the VBAT solder jumper has been closed.

    Step 3 - Configuration

    At this point, before putting it in the case, it is a good idea to test to make sure it is working. Follow these steps:

    • Connect the vario to the BFVDesktop application and start it up. You should see the vario data streaming in. 
    • Adjust uart1BRG from the default of 207 to 16. That changes the U1 baud rate (the rate between the vario microcontroller and the GPS module) from 9600 to 115200. 
    • You should now see data from the GPS streaming in. Change the outputMode to 4 to disable the Bluefly sentences and you will be left with just the GPS information. 
    • Shut down and restart the Bluefly. After a few minutes, if the antenna is pointing to the sky, you should get your first fix (and the blue light on the under side of the GPS board will start to blink). 
    • Shut down and restart the Bluefly again. If you have VBAT connected correctly and the solder jumper has been closed then the time-to-first-fix should be no more than 5 to 10 seconds. 
    • Make sure to set the outputMode and outputFrequency back to whatever you want for connecting to your app.

    Step 4 - Prepare the case

    The Bluefly with GPS_AddOn fits in the Sky Blue or new Translucent Blue case provided you cut out a hole for the GPS.

    Begin by downloading the pdf template to use to cut the hole in the right spot. The only really tricky part is to make sure you print the template at the right scale. The images below show the template and final cutout.



    This final image shows the vario assembled into the older Sky Blue case.


    Next Steps

    Now you have a vario with working XA1110 you may want to experiment with the capabilities of that GPS module. There are many configuration options which you might find useful.

    At some stage I will be blogging about configuring and using the onboard memory of the XA1110 GPS module. With a little effort the GPS can be made to continuously record the last 8186 track points (including height) in its 128k memory. This can provide a backup GPS track for the last 11 hours of GPS on time at 5 second intervals. It is not super awesome, and takes some effort to configure and download the memory, but as a backup track could make the difference for many pilots.