Firmware Upgrade

From IPLOG
Revision as of 10:16, 10 January 2019 by Z013 (talk | contribs)
Jump to: navigation, search

Under Construction!

In this document we will focus on the Firmware Upgrade.

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.

WinSCPConnection.png


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.

WinSCPConnectionWarning.png


Upload firmware image file (.tar)

Select source file to upload to the IPLOG-GAMA and hit the F5 button to start upload. As a target location use for example /tmp/ folder.

WinSCPUploadFile.png


WinSCP starts image uploading.

WinSCPCopiing.png


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


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