Firmware upgrade is a critical process to keep the laser up to date with the latest features.
The process involves (1) activating a backup firmware (monitor mode) that has limited functionality, but keeps the laser alive. (2) Then sending the new firmware data to the module, which will erase the memory and overwrites it with the new firmware. (3) Then verifying a valid firmware has been loaded (CRC check) and then (4) activating the firmware (moving back from the monitor mode to regular mode).
It is recommended to do the firmware upgrade at the highest baudrate (115200 baud), to limit the time it takes. With a regular properly configured interface the update time is about 3 minutes. With unproperly configured interfaces (latency time settings) or slow interfaces (some dongles), the time can take up to 25 minutes.
As our different product families work differently, you need to make sure you use the correct firmware family. Loading the wrong firmware can result it bricking of the laser. For PPCL600 and PPCL500 units with the serial number starting with ‘CRTM’ , the firmware should have PPCL600 in the name. For PPCL700 and PPCL550 units with the serial number starting with ‘PP70’ the firmware should have PPCL700 in the name. For legacy PPCL100/PPCL200/PPCL300 and PPCL500/PPCL550 with serial number starting with ‘CRTN’ the firmware should have ‘ITLA’ in the name. The PPCL590 firmware will work on the PPCL590 and on PPCL700 units (serial number starting with PP70). The full operation of that firmware will depend on the hardware configuration (but will not brick the device).
When using the USB interface (FTDI chip), the standard setup is with a latency time of 16ms (and less importantly a buffer size of 4096 bytes). This makes sense for USB communications, where big blocks of data are transferred. But in the case of ITLA communication, 4 bytes are sent for each command. If the system then waits 16ms before it is transmitted 50kB of firmware takes (50,000 * 16ms) at least 10 minutes. Setting the latency time to 1ms, reduces the transfer time. So it is important to configure the USB interface properly (see Application note firmware upgrade v2)
Sometimes the firmware upgrade does not complete properly. Either due to a power interuption, wrong system configuration, software glitch in GUI or any other reason. In most cases the firmware will be in the monitor mode. We recommend to use the CLI (our most stable platform) to recover.
First, you want to make sure at which baudrate the laser is working. Sometimes after upgrade failure the laser is stuck at 115200 baudrate. Using our CLI, and COM port number x, use it.connect(x,9600). This should always connect as it opens up the COM port and does not yet talk to the laser. Then use a simple command like it.oop() or it.nop() to see it the laser responds. You may get a message of ‘no response packet’ to indicate that it is not working. Then try to connect at 115200 baudrate (it.connect(x,115200)) and then try the it.nop() command again. If the unit does not respond at either baud-rate you may want to contact Pure Photonics.
Second, at the correct baudrate, connect to the laser. Then set the baudrate to 115200 (it.baudrate(115200)) and then issue the upgrade command (it.upgrade(‘application’,’name and location of file’)).
Third, during the upgrade process the CLI does not respond (at least 3 minutes, but in case of configuration issues, up to 25 minutes).
Fourth, after completion the CLI will indicate that the device has successfully upgraded. After his the device will operate at baudrate 115200, but after power cycling it will go back to the 9600 baudrate.