A helper to easily flash the Teensy and F9P for agOpenGPS
First of all - full credit to https://github.com/luni64/TeensySharp for this excellent library that makes flashing the Teensy super-simple! And to Jaap van den Handel for his excellent F9P configuration code !
Go to the Releases page and download the latest! Unzip it and run the main program.
People have had issues with various versions of TeensyDuino (specifically, versions higher than 1.57 causing boot loops) and also in locating different versions of the firmware for specific situations. Also, the F9P configuration is prone to error, as U-Center is not the most friendly of apps at times.
All connections are done over USB - remove the Teensy and F9P from the PCB and connect them direct to your computer !!
This tool aims to simplify all that. Go to the Releases section and download the big AOGConfigOMatic zip file, unzip it, and run the AOGConfigOMatic.exe file.
When you run it, you'll see the following:
There are two tabs at the top, Ublox and Teensy - switch between the two depending on what you have plugged in. I'd advise only plugging in one device at a time however.
If you plug a ublox F9P in after starting the program, it won't show up automatically (unlike the Teensy, which will). Press Rescan Ports to look for it. Then, connect to the device.
If it's a cold start for the F9P, the messages that fly by won't include a location (yet). Note the green at top right (1) - indicating we are on version 1.13 of firmware. The configuration only works with version 1.13, and if it's not that, you'll be advised to downgrade it first - which you do by pressing "Flash firmware"(2). Look for a box that pops up and indicates the flashing progress, be patient, it can take a couple of minutes and don't interrupt it.
Once that's done, you can send the configuration with the "Configure F9P"(3) button. Before you do that, ensure you've picked the right configuration button from the list below(4).
All being well, the progress bar at the bottom will fill up and seconds later, you'll have just GNGGA and GNVTG flying by at a rate of about 10 per second. You're done!
Now, if you need to, either do your other F9P (if you're using Dual), or switch to the Teensy tab.
If you've never ran this before, you should Refresh the list of available firmware, so press that Refresh List button at the top.
The list is retrieved from github and saved locally as Firmwares.csv in the same folder as the program (see below for how you can add your own to this list). If you have any firmwares that should be added to the tool for everyone's benefit, please log an issue on github or message andyinv/lansalot on discourse/telegram etc.
Plug in your Teensy and you'll see it appear in the list.
Now, it's simply a matter of picking the firmware you wish - if it's not present already, it'll be downloaded - and press Program!
If anything goes wrong, make sure you don't have the Arduino IDE open or anything like that. And again, any issues, please let me know.
From the start, the app will load any present any HEX files found in the same directory as the app - so you can simply add your own images by dropping them in that folder. Give them descriptive names so you know what's-what.
For the online/libray stuff, out of the box, the app doesn't know about any "official" images, or where to find them. That's why it comes up empty (if you didn't drop any custom ones) and advises you to press Refresh.
When you do that, it'll connect to this repository and pull the CSV file and store it in the same folder as the app, populating the listbox with the entries in it.
If the HEX file you want to flash isn't also in the same folder as the app, it'll pull it from the repo and cache it there. Once it has the CSV and the HEX files you're interested in, it will never need internet access again (until you press Refresh again of course).