Firmware Upgrade

From IPLOG
Jump to: navigation, search

In this document we will focus on Firmware Upgrade.

About Firmware

IPLOG-GAMA firmware is divided into three parts.

Recovery image - This part is a read only image and used to possibility restore the system in the event of a main firmware fatal error of parts Firmware Image 1 and 2.

Firmware Image 1 and 2 - These two parts contain the main firmware images. One is marked as "current", this firmare is running at the present time. When the Firmware Upgrade starts the new Firmware Image is written to the second Image part which is not running. Thanks to this feature, the firmware that works properly can not be damaged. After a successful upload, the new one will startup with the next reboot and market as "current".


WEB interface Upgrade

1. Open "Upgrade" page

Upgrade Main Page.png

Running - informs about right now running image (firmware version)
Recovery - version of recovery image
Image 1 - version of Image 1
Image 2 - version of Image 2


2. Upload new firmware

Press the "Choose File" button and enter the path to the new firmware file.

Upgrade File Uploading.png


3. Upgrade button

Upgrade button starts to be in Yellow, press it.

Upgrade button.png

By press yellow upgrade button the upgrading process starts.

Upgrade Running.png


4. Reboot

In the end the device will be rebooted. The upgrade process is done.

Upgrade Reboot.png



BASH Upgrade

root@iplog:~# metel-firmware-version

Shows the current version of Recovery and Firmware images.

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 a third-party tool. For example it is possible to use WinSCP.

  • Download, Install and Open the WinSCP.


Connection Configuration

Host name - The IP address of IPLOG-GAMA, the default IP address is on the housing.

User name - The default user name is root and without a password.

WinSCPConnection.png


Connection Warning

For every new connection there is a Warning message shown, if you trust this remote device, confirm by clicking the YES or NO and this new session will or will not be saved according to your choice.

WinSCPConnectionWarning.png


Upload Firmware Image File (.tar)

Select a source file with a new firmware image to upload to the IPLOG-GAMA and press the F5 button to start the upload. For a target location use for example /tmp/ folder.

WinSCPUploadFile.png


WinSCP Starts Image Uploading.

WinSCPCopiing.png


After a Successful Upload Close the WinSCP Session.


b) Linux

SCP or secure copy allows secure transferring of files between the local host and the 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 to remote pc root(user)@192.168.6.61(ip address) to local folder /tmp/ on IPLOG-GAMA.


2. Local USB

For USB there is not a direct command 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

This prints the message buffer to the screen. The 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


How to run the firmware upgrade of "Remote Data Storage" examples (Windows or Linux).

root@iplog:~# metel-firmware /tmp/12.0.8958.tar


How to run the firmware upgrade of "Mount the Local USB" example.

root@iplog:~# metel-firmware /mnt/usb/12.0.8958.tar


Example of the process of 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 the 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