Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

...

Please follow the below procedure in xconf server for placing new firmware for upgrade to specific device and model ( RPI in this case ) as a reference:

               → RPI will support only tftp protocol . No http protocol support is provided yet

Workflow

XConf Server :

1) Create Environment

Image Added

2) Create Model

Image Added

3) Create MAC list by entering the MAC address of Rpi board

Image Added

4) Create the Firmware Configuration by providing Firmware Description, File name as Image name to be downloaded from Xconf server, and version is the same image name without the extension (.rootfs.rpi-sdimg) and select Model(ex. RPI_BB) form the listed Models

Image Added

5) Create MAC rule by providing rule name, Build condition is eStbMac, choose the option IN_LIST and for next field, select the MAC list created for RPi board, verify that based on the MAC list selection, Firmware Config will be automatically displayed under Action section.

Image Added

6) Go to Download Location Round Robin Filter page and click on Edit. Provide Location and full http location as mentioned in the snapshot below. Select the option "Never use HTTP". Select the Rogue model from the models displayed in the section (ex. RPI, RPI_BB). Verify that Firmware versions are displayed based on the selected Rogue models.

Provide TFTP Server IP address in the IPv4 locations and provide 100 in the percentage field. If there are multiple TFTP servers then add them under IPv4 locations and distribute the percentage among them like total should be 100% and save this page.

Image Added

7. Verify that XConf Server configuration displays the Json response from the mentioned URL:

http://<Xconf Server IP:port no.>/xconf/swu/stb?eStbMac=<MAC address of Rpi board>

For ex. http://34.219.243.214:9092/xconf/swu/stb?eStbMac=B8:27:EB:F6:70:8C

Image Added

TFTP Server:

Configure tftp server and keep the image file and reapective md5 checksum file inside tftp folder. Example given below:

1.Verify the content of tftp file (use  vi /etc/xinetd.d/tftp command)

service tftp

{

protocol = udp

port = 69

socket_type = dgram

wait = yes

user = nobody

server = /usr/sbin/in.tftpd

server_args = -c -v -s /home/amrita/tftphome

disable = no

}

2. Verify the content of tftpd-hpa:

# /etc/default/tftpd-hpa

TFTP_USERNAME="tftp"
TFTP_DIRECTORY="/home/amrita/tftphome/"
TFTP_ADDRESS="0.0.0.0:69"
TFTP_OPTIONS="-s -c -1"

3. Verify the tftp folder location:

amrita@amrita-OptiPlex-9020:~/tftphome$ pwd

/home/amrita/tftphome

4. Verify that image file and its respective md5 checksum file is present in the tftp folder:

amrita@amrita-OptiPlex-9020:~/tftphome$ ls

rdkb-generic-broadband-image_default_20190812074412.rootfs.rpi-sdimg

rdkb-generic-broadband-image_default_20190812074412.txt

5. Start tftp server and xinetd:

sudo service tftpd-hpa restart

/etc/init.d/xinetd restart

RPi - Board :

  1. Flash the RDKB image supported for Firmware upgrade feature in the Rpi and verify the 2 partitions(ex. mmcblk0p1, mmcblk0p2) present under dev folder (use command ls /dev)
  2. Device auto-reboots and verify there are 2 more additional partitions are created (ex. mmcblk0p3, mmcblk0p4).
  3. Open /etc/include.properties file and verify the CLOUDURL parameter where XConf Server URL is configured
  4. Verify the image version ( cat /version.txt) displays the flashed image version
  5. Open /rdklogs/logs/swupdate.log to verify the communication from RPI board with XConf Server and the download status
  6. Verify the tftp download is happening by noticing the change of file size using below command:cd /extblock/tftpimage/imagedwnldls -lh  (use this command frequently to verify the file size change)
  7. Once image download completed, the Rpi board will auto reboot and come up with downloaded image
  8.  Verify the version of booted image which shows the downloaded image version

Conclusion

Please find the summary on firmware upgrade explained above

...