Firmware Upgrade
Under Construction!
In this document we will focus on the Firmware Upgrade.
Contents
About Firmware
IPLOG-GAMA firmware is divided to three parts.
Recovery image - This part is read only and used to possibility to restore the system in the event of a main firmware fatal error of parts Firmware Image 1 and 2.
Firmware Image 1 and 2 - This two parts contains the main firmware images. One is marked as "current", this firmare is running right now. When Firmware Upgrade starts the new Firmware Image is written to the second Image part which is not running. Due to this feature can not damage the firmware that works properly. After successful upload is marked the new one, the next startup will boot of it.
root@buildroot:~# metel-firmware-version
Shows the current version of Recovery and Firmware images.
root@buildroot:~# root@iplog:~# metel-firmware-version FIRMWARE ======== image: recovery version: 2.0.8811 FIRMWARE ======== image: image 1 (current) //"current" label informs about right now running firmware version: 12.0.8824 FIRMWARE ======== image: image 2 version: 12.0.8811
Source of New Firmware Image
1. Remote Data Storage
a) Windows
To copy files between IPLOG-GAMA(Linux) and Windows there is a need third-party tool. Is possible use for example WinSCP.
- Download, Install and Open the WinSCP.
Connection Configuration
Host name - IP address of IPLOG-GAMA, the default IP address is on the housing.
User name - Default user name is root and no password.
Connection Warning
For every new connection is there Warning message if you trust the remote device. Confirm by hit the YES or No and this new session will not be saved.
Upload firmware image file (.tar)
Select source file with new firmware image to upload to the IPLOG-GAMA and hit the F5 button to start upload. As a target location use for example /tmp/ folder.
WinSCP starts image uploading.
After successful upload close the WinSCP session.
b) Linux
SCP or secure copy allows secure transferring of files between a local host and a remote host or between two remote hosts.
Example:
root@iplog:~# scp root@192.168.6.61:/home/user/12.0.8958.tar /tmp/
Command scp copy file 12.0.8958.tar of /home/user/ folder on remote pc root(user)@192.168.6.61(ip address) to local folder /tmp/ on IPLOG-GAMA.
2. Local USB
For USB is not direct command how to copy files of USB to IPLOG-GAMA unit, therefore the USB must be "mounted" to some directory at the beginning.
Create a new folder(usb) to /mnt/ directory by command mkdir.
root@iplog:~# root@iplog:~# mkdir /mnt/usb/
Use the dmesg command which typically contains the messages produced by the device drivers.
root@iplog:~# dmesg
That prints the message buffer to screen. USB name is typically a sda1.
. . usb 1-2: new high-speed USB device number 3 using atmel-ehci usb 1-2: New USB device found, idVendor=090c, idProduct=1000 usb 1-2: New USB device strings: Mfr=1, Product=2, SerialNumber=3 usb 1-2: Product: USB DISK usb 1-2: Manufacturer: SMI Corporation usb 1-2: SerialNumber: AA04012700014703 usb-storage 1-2:1.0: USB Mass Storage device detected scsi host0: usb-storage 1-2:1.0 scsi 0:0:0:0: Direct-Access USB2.0 FlashDisk 1100 PQ: 0 ANSI: 0 CCS sd 0:0:0:0: [sda] 1974272 512-byte logical blocks: (1.01 GB/964 MiB) sd 0:0:0:0: [sda] Write Protect is off sd 0:0:0:0: [sda] Mode Sense: 43 00 00 00 sd 0:0:0:0: [sda] No Caching mode page found sd 0:0:0:0: [sda] Assuming drive cache: write through sda: sda1 sd 0:0:0:0: [sda] Attached SCSI removable disk . .
Mount the USB (sda1) to /mnt/usb directory
root@iplog:~# mount /dev/sda1 /mnt/usb/
Tip: Check the mnt/usb/ folder content by command root@iplog:~# ls /mnt/usb/
Run Firmware Upgrade
Basic command to run the firmware upgrade.
root@iplog:~# metel-firmware /new_firmware_image_destination
Runs the firmware upgrade of "Remote Data Storage" examples.
root@iplog:~# metel-firmware /tmp/12.0.8958.tar
Runs the firmware upgrade of "Mount the Local USB" example.
root@iplog:~# metel-firmware /mnt/usb/12.0.8958.tar
Example of process firmware upgrading.
FIRMWARE IMAGE ============== filename: /mnt/usb/12.0.8958.tar type: 2 execute: metel-firmware executing: /tmp/metel-firmware --skip-tar-script /mnt/usb/12.0.8958.tar FIRMWARE IMAGE ============== filename: /mnt/usb/12.0.8958.tar type: 2 execute: skip EEPROM ====== . . . . . PARTITION ========= total: 2 current: 3 partition 3: valid partition 4: invalid upgrade: 4 UPGRADE ======= partition 4 has been initialized firmware has been extracted writing dtb /tmp/iplog-g2_27042017_A0_io-uart_if-uarten.dtb writing dtb /tmp/iplog-g2_27042017_A0_io-none_if-none.dtb writing kernel /tmp/zImage writing rootfs /tmp/rootfs.ubi valid boot header to partition 4 has been added invalid boot header to partition 3 has been added === UPGRADE DONE ===
After firmware upgrade restart the device by command "reboot"
root@iplog:~# reboot
Check the successful firmware upgrade.
The new firmware was uploaded to not runnig firmware image possition and after device reboot used as current (running).
root@iplog:~# metel-firmware-version FIRMWARE ======== image: recovery version: 2.0.8811 FIRMWARE ======== image: image 1 version: 12.0.8824 FIRMWARE ======== image: image 2 (current) version: 12.0.8958.tar