Skip to content

OTA: Support WiFi setup and firmware update as one change #666

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Open
wants to merge 12 commits into
base: release_candidate
Choose a base branch
from

Conversation

LeeLeahy2
Copy link
Collaborator

Always display the update button and menu item, remove the requirement check for new firmware qualification. When the settings are written back to to the GNSS device the system is able to establish the connection to the remote access point using the newly specified WIFI SSID and password and then perform the OTA firmware update.

Note: Due to the WiFi restart the connection is broken between the browser and the GNSS device. As a result, the browser does not receive the status update message for the progress bar and reset.

Prior to this change the user would need to check for new firmware before performing the firmware update:

  1. Use a browser to connect to 192.168.4.1
  2. Click on the "WiFi Configuration" button
  3. Specify the WiFi SSID and Password
  4. Click on the "Save Configuration" button
  5. Reconnect the browser to 192.168.4.1
  6. Click on the "System Configuration" button
  7. Click on the "Check for New Firmware" button
  8. If new firmware is available, click on the "Update to vXX.YY" button

While it is possible to change the WiFi SSID and password and then hit the "Check for New Firmware" button the response gets lost because of the WiFi restart. When the browser is reconnected the "Update to vXX.YY" button is still disabled because the page got reloaded and the browser does not have the new firmware version. As such, the "Check for New Firmware" button needs to be pressed again to get the new firmware version and enable the "Update to vXX.YY" button.

LeeLeahy2 added 12 commits July 8, 2025 08:22
Remove the chicken and egg issue where WiFi needs to be running to be
the highest priority, but has not started yet because it is not enabled!

The new routine, networkInterfaceRunning, allows any interface to poll
the network and determine if the interface should be running.  This
routine provides the missing feedback between the network and the
interface layers to when the network layer wants to stop the interface
and a stop sequence does not exist.
…_DELAY

Move startup delay from WIFI_STATION_STATE_STARTING into
WIFI_STATION_STATE_RESTART_DELAY
Always display the update button and menu item, remove the requirement
check for new firmware qualification.  When the settings are written
back to to the GNSS device the system is able to establish the
connection to the remote access point using the newly specified WIFI
SSID and password and then perform the OTA firmware update.

Note: Due to the WiFi restart the connection is broken between the
browser and the GNSS device.  As a result, the browser does not receive
the status update message for the progress bar and reset.

Prior to this change the user would need to check for new firmware
before performing the firmware update:

1. Use a browser to connect to 192.168.4.1
2. Click on the "WiFi Configuration" button
3. Specify the WiFi SSID and Password
4. Click on the "Save Configuration" button
5. Reconnect the browser to 192.168.4.1
6. Click on the "System Configuration" button
7. Click on the "Check for New Firmware" button
8. If new firmware is available, click on the "Update to vXX.YY" button

While it is possible to change the WiFi SSID and password and then hit
the "Check for New Firmware" button the response gets lost because of
the WiFi restart.  When the browser is reconnected the "Update
to vXX.YY" button is still disabled because the page got reloaded and
the browser does not have the new firmware version.  As such, the "Check
for New Firmware" button needs to be pressed again to get the new
firmware version and enable the "Update to vXX.YY" button.
@nseidle nseidle changed the base branch from main to release_candidate July 8, 2025 19:46
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

1 participant