Firmware update¶
The radio firmware in TiMo can be updated. This can be performed via SPI from a host processor in a fixture, or over the air (for receivers and FX in receiver mode) or via the DMX/RDM interface.
For details about updates, please contact support.
DMX interface¶
The preferred way to update firmware in TiMo is via the DMX interface and the CRXM Upgrade cable. This requires the DMX interface to be accessible from outside the fixture.
See the link switch section for information on how to set TiMo into firmware update mode.
Use the CRMX Update utility to update the firmware.
Over-the-air (OTA)¶
TiMo FX and TiMo RX can be updated over-the-air by utilizing a special software tool that can be obtainted from LumenRadio together with the CRXM Upgrade cable.
SPI¶
Definitions¶
FW_BLOCK_CMD_1 = 0x8E
(size = 254 bytes)FW_BLOCK_CMD_2 = 0x8F
(size = 18 bytes)CCI_CHUNK_SIZE = 272
CCI_HEADER_SIZE = 4
The SPI driver can only handle 255 bytes, giving the CCI chunck has to be send as two parts, FW_BLOCK_CMD_1 and FW_BLOCK_CMD_2.
Procedure¶
- Set the SPI bus speed to at most 2 MHz.
- Put the TiMo in
UPDATE_MODE
. Do this by writing0x40
to theCONFIG
register (0x00
). - Wait at least 0.5s as the module will reboot after setting the update bit. The status LED will now be blinking slowly.
- Read the
STATUS
register (0x01
) and make sure bit 7 is high. - Open the .cci firmware file and skip the first 4 bytes.
- Read 254 bytes from the firmware file and write them to the module using the SPI command
FW_BLOCK_CMD_1
. - Read the next 18 bytes, write to the module using the SPI command
FW_BLOCK_CMD_2
. - The first block of data (254+18) is the header information of the firmware file. After each 16 blocks of data (after the header block), the module will write received firmware data to its memory, so you will have to wait until it's done before sending the next blocks (at least 100ms, recommended 500ms).
- If not End-of-File: Go to step 6
- If End-of-File: Wait for the chip to finish update, at least 1 second.
- Read the
STATUS
register to make sure the module has exit the update mode. This will signify that the module has received all the firmware bytes and has verified it to be valid. The status LED should now be blinking quickly if the radio is on, or not blink at all. - Read the
VERSION
register to confirm you have flashed the selected firmware.