В версии прошивки 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 root
Вы должны увидеть процесс загрузки файла...
=> 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) Обновление прошивки через TFTP


5.1 Для начала необходимо очистить всю память, обновить загрузчик загрузчик и перезагрузиться. Для этого необходимо подать команду:
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 kernetl 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: #################################################################

#################################################################


После того, как процесс будет завершен, роутер перезагрузится. На этом процесс обновления завершен!



Сопутствующие статьи:

Как подключиться к роутеру RTU?

Как загружать и скачивать файлы в роутерах серии RTU?

Как зайти в загрузчик U-Boot роутера


Дополнительная информация:

Wiki на GITHUB

Страница роутера на сайте Teleofis

Контроллеры на платформе роутера RTU