Обновление прошивки роутера RTUx68 до версии 3.x.x

Обновление прошивки роутера RTUx68 до версии 3.x.x

В версии прошивки 3.x.x для роутеров серии RTU была обновлена версия ОС OpenWRT до версии 21.02, а также обновлена версия ядра до 5.4. Обновленная версия ОС OpenWRT позволяет установить более новые версии пакетных программ, а также повысить безопасность операционной системы.

Важно! В связи с тем, что в прошивке обновляется версия OpenWRT и версия ядра, необходимо также обновить загрузчик роутера. Это возможно сделать только с помощью обновления через TFTP-сервер при подключении к роутеру по RS-232.

В дальнейшем речь будет идти именно об обновлении с использованием TFTP-сервера.


Обновление прошивки с помощью TFTP-сервера при подключении к роутеру по RS-232

Перед обновлением прошивки убедитесь, что устройство подключено к надежному источнику питания. Если в процессе обновления ОС произойдет отключение питания, система будет потеряна, и ее обновление будет возможно только из консоли загрузчика (через интерфейс RS-232). Также при отключении питания возможны повреждения ПЗУ.

1. Установка TFTP-сервера
Скачать и установить TFTP-сервер Вы можете по ссылке: http://tftpd32.jounin.net/tftpd32_download.html





Каких-либо предварительных настроек производить не нужно, все необходимые настройки будут произведены в дальнейшем по ходу действий.

2. Настройка сетевых интерфейсов на ПК
Роутер RTU968/1068 имеет, по умолчанию, IP-адрес 192.168.88.1 и при работе с TFTP-сервером обращается к IP-адресу 192.168.88.11. То есть необходимо осуществить настройку на сетевом интерфейсе ПК, к которому подключен роутер RTU968/1068 по Ethernet-кабелю.




3. Подключение роутера RTU968/1068
Работа со службой TFTP на роутере RTU968/1068 происходит в командой строке загрузчика (Как зайти в загрузчик U-Boot роутера),
поэтому необходимо подключить по RS-232 интерфейсу (Как подключиться к роутеру RTU?) роутер к ПК, а также подключить роутер к Ethernet-интерфейсу ПК (согласно п.2 выше).




4. Подготовка к обновлению прошивки через TFTP
Прошивка доступна по ссылке: https://github.com/teleofis/TELEOFIS-RTU968/tree/main/Firmware (необходима версия прошивки 3.X.X S)

Файл с загрузчиком необходимо распаковать в папку, которая будет использоваться TFTP-сервером (в примере ниже, файлы распакованы в папку с наименованием TFTP).





В программе TFTP-сервера необходимо указать интерфейс на ПК с IP-адресом 192.168.88.11. А также указать папку, в которой находится необходимая нам прошивка.


 


Проверка работы TFTP-сервера
ВАЖНО!!! Обязательно убедитесь в том, что нижеописанный шаг выполнился успешно.

Проверим работу TFTP сервера и что загрузчик видит файлы и способен их загружать:

Для этого необходимо подать команду

tftp root

Вы должны увидеть процесс загрузки файла...

Using FEC0 device
TFTP from server 192.168.88.50; our IP address is 192.168.88.1
Filename 'root'.
Load address: 0x42000000
Loading: *################################################################# 
          ################################################################# 
          ################################################################# 
          ################################################################# 
          ################################################################# 
          ################################################################# 
          ################################################################# 
          ################################################################# 
          ################################################################# 
          ################################################################# 
          ################################################################# 
          ################################################################# 
          ################################################################# 
          ################################################################# 
          ################################################################# 
          ################################################################# 
          ################################################################# 
          ################################################################# 
          ################################################################# 
          ################################################################# 
          ################################################################# 
          ################################################################# 
          ################################################################# 
          ################################################################# 
          #################################################################
          #############################################

          1.4 MiB/s

          done

          Bytes transferred = 24506368 (175f000 hex)
        

Если данный процесс прошел успешно и лог похож на пример выше, то можно переходить к следующему пункту.


5.1. Обновление прошивки через TFTP 

Для начала необходимо очистить всю память, обновить загрузчик и перезагрузиться. Для этого необходимо подать команду:

nand erase.chip; run update_nand_full


ВАЖНО!!! При выполнении данной команды необходимо быть уверенным, что питание на роутере стабильно и не отключать его, в противном случае есть шанс удаления загрузчика и восстановить роутер можно будет только отправив его к нам в сервисный центр!


=> nand erase.chip; run update_nand_full
NAND erase.chip: device 0 whole chip
Skipping bad block at  0x00020000
Skipping bad block at  0x00040000
Skipping bad block at  0x00060000
Skipping bad block at  0x01c00000
Skipping bad block at  0x01c20000
Skipping bad block at  0x01c40000
Skipping bad block at  0x01c60000
Erasing at 0xffe0000 -- 100% complete.
OK
Using FEC0 device
TFTP from server 192.168.88.11; our IP address is 192.168.88.1
Filename 'u-boot.nand'.
Load address: 0x42000000
Loading: T #################################################################
         #################################################################
         #################################################################
         ####################
         313.5 KiB/s
done
Bytes transferred = 3145728 (300000 hex)
Device 0: nand0, sector size 128 KiB
  Page size      2048 b
  OOB size         64 b
  Erase size   131072 b
NAND scrub: device 0 offset 0x0, size 0x300000
Erasing at 0x2e0000 -- 100% complete.
OK
NAND write:  540672 bytes written: OK
NAND write: device 0 offset 0x80000, size 0x280000
 2621440 bytes written: OK
        
Обязательно дождитесь успешной загрузки образа загрузчика! Не выключайте роутер и не перезагружайте его до окончания процесса! При необходимости, команду run update_nand_full нужно повторить до успешной загрузки образа через TFTP.

Далее подадим команду reset для перезагрузки роутера. Система перезапустит загрузчик и выдаст ошибку "ERROR: Can't get kernel image!"


5.2 Далее необходимо обновить систему и перезагрузиться. Для этого необходимо подать команду:
run update_system; reset

=> run update_system; reset
Using FEC0 device
TFTP from server 192.168.88.11; our IP address is 192.168.88.1
Filename 'root'.
Load address: 0x42000000
Loading: #################################################################
         #################################################################
        
После того как процесс будет завершен, роутер перезагрузится. На этом процесс обновления завершен!