Firmware Updates

The firmware for the LTPP3 is updated either through the Web Interface or the serial console from an image hosted on a local TFTP server. Instructions for either method are detailed below, as is a complete firmware reinstallation method that should only be undertaken as a last resort.

Before you begin

Before conducting a firmware update, you'll need a computer with Internet access to download the firmware image, which can be found here — sort the directory by Last Modified file to find the latest version. There are two variants for each release: node (the base package) and agent (for use with AggreGate). The update files follow the naming convention of upd_TPS3-XXX.itb, where XXX is the variant (e.g., upd_TPS3-node.itb).

Ideally, this computer will also be on the same network as your device if conducting the update via the Web Interface, or physically adjacent to it if you choose to use the serial console.

If you don't have one already, you will need to set up a TFTP server on the network used by the device. There are several common, free TFTP server software packages available for most platforms, such as Open TFTP Server for Windows and UNIX-based systems. Once you've downloaded, installed, and configured your TFTP server, copy the firmware update file to the server's root folder.

Web Interface

The Web Interface provides the easiest way to conduct firmware updates on the LTPP3. Once logged in, click on Firmware in the left-hand menu. The Firmware page provides many options to configure and execute a firmware update.

The Mode switch determines whether the system is to conduct a firmware update. Think of this as primarily a safety switch: if you turn it off, the system will not update.

Update on Next Reboot instructs the system to conduct the firmware update the next time it boots up — this needs to be turned on for the update to occur.

The File option consists of three fields. In the first, a drop-down menu, select tftp. Enter the IP address of your TFTP server in the second field and the file name of the firmware image in the third field.

When you're ready to conduct the update, click on Apply to save your settings. As the system requires a reboot to perform the firmware update, you can initiate one from the Maintenance page in the left-hand menu. The device will reboot, connect to the TFTP server, download the firmware image, and conduct the upgrade.

Once the firmware update is complete — a process that will take several minutes — the system will reboot automatically.

Serial console

Updating the firmware via the serial console requires more work than through the Web Interface, but it provides real-time information on the update's progress. Once you've connected to your device and logged in, it's a relatively straightforward process that is completed with a few simple commands.

First, set the TFTP server's IP address through the command fw_setenv serverip XXX, replacing XXX with the target IP address. Next, you need to tell the system what file to look for through the command fw_setenv tps_upd_f XXX.itb, replacing XXX with the file name of the image you downloaded earlier.

Once that is done, restart the device — either through the command systemctl reboot or by pressing the reset button — while holding down the MD button (to start the bootloader update procedure) until the blue LEDs (LED2 through LED6) begin flashing to indicate that the update has started. The board's blue LEDs will continue to flash rapidly while the system downloads the update from the TFTP server, a process that could take several minutes. You'll see long lines of hashes in the console while the download is in progress — any breaks or different characters represent a potential transmission error.

After the download is complete, the system will begin to check and write to the various NAND partitions numbered one to nine. The blue LEDs will indicate which partition is being worked on by displaying its binary equivalent.

After completing the update process, which will take several minutes, the system will reboot automatically.

Firmware reinstallation

A complete reinstallation of the firmware can help if the device becomes inoperable because of empty or corrupted NAND flash. Due to the additional preparation and relative complexity — not to mention its irreversible nature (all files on the system will be erased) — this procedure should only be attempted as a last resort. This is a two-part process that replaces the system's bootloader and then reinstalls the firmware. If you only have a corrupted bootloader, you only need to replace it, not reinstall the firmware.

In addition to a TFTP server providing the firmware image, you will also need to download the bootloader — comprised of two files: u-boot-spl.bin and u-boot.img — which will be uploaded to the system.

With the system powered off, connect the serial and Ethernet cables as you would for a regular update. Launch your serial console software, start a session, and power on the device.

You'll see the system prompt for an XModem transfer in the serial console, with a C printing in the terminal with each request. If you do not receive the prompt, power off the device, jump CN4 (which forces the system into recovery mode), and power the board again.

Call XModem to upload u-boot-spl.bin from your computer. Once the transfer is complete, the device will immediately prompt for YModem. Call YModem to upload u-boot.img from your computer. After the transfer is complete, you'll see diagnostic information printed out before the system reboots.

If the board's NAND memory is empty or the firmware is corrupted, you will enter a command-line interface, with "TPP#" representing the shell.

You will need to request an IP address from your network's DHCP server with the command dhcp. However, if you would like to first specify the Ethernet adapter's MAC address instead of using the default random value, you can do that by entering setenv ethaddr XXX — replacing XXX with the desired MAC address — followed by saveenv to save the changes, and then calling dhcp.

Next, define the IP address for the TFTP server hosting the firmware image with the command setenv serverip XXX, replacing XXX with the actual IP address.

Now you can start the firmware reinstallation by running tps_upd tftp:XXX.itb, where XXX is the file name of the firmware image hosted on the TFTP server. This part of the update process is nearly identical to that of the serial console, with the principal difference being that after it is complete, you will be returned to the "TPP#" prompt.

Finally, reboot the device by entering reset.

Further considerations

A complete reinstallation — and sometimes even a plain update — of the system's firmware will result in the Ethernet adapter's configuration being reset. As such, you will need to manually configure the adapter's settings.

After a complete firmware reinstallation with an image that includes AggreGate, the system's first boot will take at least an additional 90 seconds to complete post-installation tasks. Do not interrupt the system during this process, or you might need to reinstall the firmware again. The next time the device is booted up, it will need about 30 seconds to get AggreGate functionality ready.