How to upgrade infrafon firmware on my CC1 device

** NEW Update method**

You can now update the infrafon firmware to the latest version directly from the ‘FOTA web page’ of the device, no need to use a PC.

The device still needs to be able to connect to a local wifi AP using the config in the FOTA web page.
To access this page:

  • boot the device into FOTA mode (reset with magnet, LED should be BLUE and epaper will tell you its in FOTA mode)
  • connect a web browser to http://192.168.4.1 (PC, tablet, phone)
  • ensure the wifi credentials are correct, edit and SAVE if not
  • next to the information about the firmware versions, click the ‘Update’ button next to the ‘Infrafon DV application’ version.

The device will reboot, update from the infrafon servers, and restart. The epaper screen will show progress. This process can take up to 6 minutes (for a full update).

Old update method : python on a PC

To update the firmware requires use of a PC which can connect to the wifi AP of the device. Any Windows10 or later, Linux desktop or Mac OS machine should be capable of this.
The PC should have python 3.10+ installed to run at the command line.

Firmware updates for the main Infrafon code are delivered as a zip. The latest firmware build is available here. Unzip the archive, and at the command line go to the cc1_fw directory, where there is the ‘upload.py’ script, and the firmware files in the ‘built’ directory.

The device needs to be in the update mode (FOTA mode). This can be entered by reseting the device (magnet reset when on charge), and waiting for the LED to be solid BLUE. This mode only lasts for 60s if no update action is run… See the post ‘CC1 startup states’ for full details on these modes.

Once the device enters update mode, connect your PC to the wifi AP of the device (the name is infrafon-<last 4 digits of device id>. Then:

> python upload.py

The script will connect to the device, tell it is being updated, and upload all the firmware files (from the ./built directory). Once complete it will reset the device, which will restart running the new version.

To validate the version, on startup (after about 30s) the device displays a splash screen which shows the versions of the infrafon firmware and of the core pycom firmware.