Firmware Microchip PIC32 DHCP option 66 (tftp)
Budget: $250 – $750 USD
We are using Microchip MPLAB X with a PIC32 compiler (MPLAB XC32) and the Harmony v3 library. HW includes power and voltage measurement, fan control, power off/on and led control (two). Step one is to boot and read option 66 data from a DHCP server. Option 66 defines a tftp server where two files need to checked.
1. Firmaware file with a filename including firmware version number in the filename.
<version format> ::= <name>-v<major.minor.change>.bin
The version in the filename and in the firmware itself need to match.
2. A configuration file with a filename including configuration version number in the filename.
<version format> ::= <name>-v<major.minor.change>.conf
The configuration file is in json format.
Functionality for power on would be:
1. Enter init state
2. Option 66 or not
3. Tftp server or not
4. Downgrade or upgrade firmware init on version number differences
5. If downgrade or upgrade, download, verify firmware version in file or fail, install and reboot if ok.
6. Reconfigure on version number differences, reconfigure, reboot if needed or continue start if not needed.
Project will be GitHub hostet.
1. Firmaware file with a filename including firmware version number in the filename.
<version format> ::= <name>-v<major.minor.change>.bin
The version in the filename and in the firmware itself need to match.
2. A configuration file with a filename including configuration version number in the filename.
<version format> ::= <name>-v<major.minor.change>.conf
The configuration file is in json format.
Functionality for power on would be:
1. Enter init state
2. Option 66 or not
3. Tftp server or not
4. Downgrade or upgrade firmware init on version number differences
5. If downgrade or upgrade, download, verify firmware version in file or fail, install and reboot if ok.
6. Reconfigure on version number differences, reconfigure, reboot if needed or continue start if not needed.
Project will be GitHub hostet.