ST7
The st7 firmware, developed and maintained by Lemote, is controlled and upgraded using Pmon, so before performing any task you should enter there.
Howto
Check version
Under the Pmon prompt type:
PMON> rdiic 80 0
After running this command, you will see something like this:
slave_addr 0x80, index_addr 0x0 slave_addr : 0x80, index_addr : 0x0, value 0x15
The first nibble of the “value” field is the major version, the second nibble is the minor field. In the above example, the returned 0×15 corresponds to version 1.5 of the firmware (the first nibble being 1, the second nibble being 5).
Check with is controlling the charge
Check register 5:
- If equals to 0xae: OS controls the charge
- If equals to 0×00: ST7 firmware controls the charge
Upgrade the firmware
Method 1: using the network
- Set up a TFTP server on your machine/network (use google to find any Open source one that works under windows or Synaptic for Linux)
- Configure it to use a default directory that is not the root of your machine
- Copy the latest ST7 firmware (BIN file) to that directory
- For convenience rename the file name to something short such as s7.bin
- Enter Pmon by repeatedly pressing the <DEL> key at boot time (when the G image appears)
- Set the ST7 burning flag to '1' by typing the following command :
wriic 80 6 1
- Press the reset button located under the Gdium using a needle (not the mic hole)
- Enter the Pmon again
- Assign an routable IP address to the Gdium by typing:
ifaddr rtl0 IP_Address
- Update the firmware by fetching the file on the TFTP server and typing:
load -r -k tftp://IP_Address/s7.bin
- Done!
(no confirmation is issued that operation run well)
Method 2: using local storage
- The operation can also be performed from a USB key such as the Gkey
- Copy the latest ST7 firmware (BIN file) to USB key
- For convenience rename the file name to something short such as s7.bin
- Enter Pmon by repeatedly pressing the <DEL> key at boot time (when the G image appears)
- Set the ST7 burning flag to '1' by typing the following command :
wriic 80 6 1
- Press the reset button located under the Gdium using a needle (not the mic hole)
- Enter the Pmon again
- Update the firmware by reading the file from the USB key.
- The location can be different media, so for example if you copied the firmware image on /path/pmon.bin in the first ext2/3 partition of your Gkey it would be:
load -r -k /dev/fs/ext2@usbg0/path/s7.bin
load -r -k /dev/fat/disk@usbg0/path/s7.bin
load -r -k /dev/fat/disk@usb0/path/s7.bin
- Done!
(no confirmation is issued that operation run well)
Burning flag
The burning flag will be off automatically after completing the software update procedure. It is however strongly recommended to perform a hardware reset/reboot so the whole chip gets re-initialized.
It is not possible to extract the burning flag value directly however:
- When register 0 is equal to the ST7 firmware version number: that means the burning flag is not on
- A different value (most likely 0×00, but can vary), it means the burning flag is on
Versions
| Hexa | Human | Binary | Comment |
|---|---|---|---|
| 0×15 | v1.5 | st7foxf1_1.5_s1.bin | Last, and shipped out with the units. |