hd-zero / hdzero-goggle

MIT License
264 stars 76 forks source link

Online Firmware Downloader (Goggle & VTX) #346

Closed SumolX closed 1 year ago

SumolX commented 1 year ago

This PR introduces the ability to automatically download the latest official releases from github for both the goggle and vtx firmwares. The vertical menu will notify the user of a firmware update via an exclamation point. The user can then enter the page and highlight either VTX or GOGGLE entries and use the right function button to review the release notes associated with downloaded release. Once reviewed the exclamation point will be removed from the firmware menu entry and is marked read. Below are a few screenshots of what is to be expected when a new release is encountered. In order to make use of this functionality the user must remove any bin files such as HDZERO_TX.bin and HDZERO_GOGGLE.bin from the root of the SD Card. This legacy way of flashing firmware was NOT removed due to user requiring recovery of their goggles.

This PR requires extensive testing... and help would be greatly appreciated to report issues I have yet to encounter. Tested flashing for both VTX and Goggles but its always good to get a few people to try it out as well.

Firmware notification: image

Notes describing the use of the function button for both Update VTX and Update GOGGLE: image

Reviewing VTX Release Notes (press function button to view): image

Reviewing GOGGLE Release Notes (press function button to view): image

Notice how the Firmware notification icon has now disappeared... this was due to reading the release notes of the goggles.

Updating VTX Firmware: image

Updating GOGGLE Firmware: image

As you can see we now have the ability to backout and cancel a firmware update as well.

Legacy VTX or Goggle Flashing: image image

Notice how both report the firmware is located in the SD Card and the notes notify the user to remove these files from the root of the SD Card in order to download the latest firmware.

Lastly, the notes you see above are only presented when the user has the wifi module enabled. Otherwise, the notes are left empty for non-wifi users.