OR-WRT 0.60-Eng — различия между версиями

Материал из roboforum.ru Wiki
Перейти к: навигация, поиск
(Загрузки)
(Другие предупреждения)
Строка 123: Строка 123:
 
* Скрипты Webface написаны на awk и ash, их неудобно поддерживать, Следует мигрировать на Lua
 
* Скрипты Webface написаны на awk и ash, их неудобно поддерживать, Следует мигрировать на Lua
 
* Webface содержит явную недоделку - когда заходишь на страничку настройки, то она показывает не текущие значения из конфигов роутера, а ее собственные дефолты
 
* Webface содержит явную недоделку - когда заходишь на страничку настройки, то она показывает не текущие значения из конфигов роутера, а ее собственные дефолты
=Другие предупреждения=
+
=Other warnings=
* Не выключайте HTTP и HTTPS одновременно. Иначе перенастройка роутера станет возможной только по SSH.
+
* Don't switch off HTTP and HTTPS at the same time. In this case router configuring will be available only through SSH.
* Не забывайте про защиту. Очень хочется показать эту вещь в интернете, но надо понимать, что за вами могут наблюдать через камеру, а ездящий робот может даже нанести материальный ущерб либо даже травму. Учтите, что в Интернете “кулхацкеров” гораздо больше, чем ваших друзей.
+
* Don't forget about security risks. You must remember, that somebody may spy on you through webcam, and mobile robot can damage some furniture or even cause some injuries.
 +
 
 
= Downloads =
 
= Downloads =
 
[[File:Or-wifi-dir320-0.54.tar.gz]]
 
[[File:Or-wifi-dir320-0.54.tar.gz]]

Версия 15:36, 12 декабря 2011


About

Project description

This is subproject of project Open Robotics, targeted to creation of accessible platforms for hobby robotics (and not only). This subproject target - a ready-to-use firmware for the wifi-routers, allowing conveniently and without manual adjustments and reprogramming to use it in hobby robotics as WiFi-adapter for UART and some USB devices (only UVC-webcams and some USB-UART adapters are supported now). Firmware is based on the OpenWRT, author - elmot (elijah.mot [at] gmail.com).

URL to forum about this project

License

You can use the project for non-commercial purposes only for free of charge. Concerning commercial usage address to the author.

WARNING

You use the materials presented here, at own risk. We notify that opening a router for accessing the uart-console pinout and replacing its firmware, you can lost a warranty on the device, and you can damage the device. The author of firmware, Open-robotics.ru and OpenWRT.org don't carry any responsibility for direct or indirect consequences of usage of materials of the given project.

Supported equipment

Routers

  • WiFi routers:
    • D-Link DIR-320 (non NRU!),
    • ASUS wl500gP (checked by ddcharacter)
    • May be any other routers, based on SoC Broadcom BCM47xx/53xx (non-checked yet)
    • You can try modify firmware by you own for other routers with USB-port and compatible with [OpenWRT.org]

USB-Webcams

All UVC-webcams (consider this list — [http://www.ideasonboard.org/uvc/]).

We recomment MJPEG-webcams, but YUV-webcams can be used too (but with increaced latency of video-streaming).

USB-UART interfaces

  • Silicon Labs CP210x, including OR-USB-UART-v1
  • Pololu Orangutan SVP-1284 (with some patching, see below)
  • Others weren't checked, most likely will be supported..

Firmware installing

D-Link DIR-320

  1. установить tftp клиента (есть в поставке win 7, но не установлен по умолчанию).
  2. Настроить на компьютере IP-адрес 192.168.0.2
  3. подключить компьютер к любому порту LAN на роутере.
  4. приготовить (можно в .bat-файле) команду tftp 192.168.0.1 PUT <имя trx файла>
  5. включить роутер
  6. подождать ровно 2 секунды и запустить приготовленную команду. Лампа LAN должна часто-часто моргать несколько секунд, после чего команда должна успешно завершиться и показать что-то вроде (цифры могут отличаться):
    • Start Flashing ****
    • Успешная передача: 3592480 байт за 11 сs, 281134 байт/с
  7. Ждать около 5 минут. Когда прошивка загрузится и не сможет подключиться к wifi (так как вряд ли Ваша сеть называется “OpenWrt” и имеет пароль “1”), должен загореться синий светодиод сбоку на роутере и помаргивать каждые 10 секунд.

Настройка прошивки

  • ssh 192.168.0.1 по кабелю в любой порт роутера или ssh <wifi ip>, если wifi поднялся. Login root, password 123
  • http://192.168.0.1 по кабелю либо http://<wifi IP> по wifi, если wifi поднялся. Login admin, password oradmin. На первой странице внизу ссылка на админку.

Подключение к домашней WiFi-сети

Предполагается, что роутер подлючается к домашней сети wifi как клиент со статическим IP.

  • Выберите подходящий IP. Он должен быть в диапазоне IP сети, не быть занять, и быть вне диапазона адресов, раздаваемых DHCP сервером.
  • Зайдите на web интерфейс прошивки, в админке есть соответсвующая страница. Там вы можете поставить:
    • защита WPA-PSK/WPA2-PSK,NONE
    • имя сети SSID
    • пароль
    • static IP
    • netmask
    • default GW
    • dns

В качестве проверки работоспособности сети прошивка раз в 10 секунд однократно пингует адрес default gateway. В случае неудачного ping зажигается голубой светодиод на следующие 10 секунд. Так что он может иногда загораться при работающем IP в случае выпадения пакета (такое бывает).

Настройка веб-камеры

На странице настройки камеры вы можете выбрать:

  • разрешение
  • fps
  • номер камеры(возможно подключение нескольких камер через USB-hub)
  • YUV или MJPEG режимы

Использование прошивки на ПК

Получение видеопотока или отдельных кадров

Проброска UART-а

Встроенный UART

Доступен двумя способами

  • сервис ser2net транслирует обмен на TCP порт 2000
  • запись в порт доступна по протоколу http URL /cgi-bin/serial.cgi , метод POST, значение параметра SERIAL_DATA будет записано в порт

CP210x (OR-USB-UART)

в файл /etc/config/ser2net.conf надо добавить строку:

3001:raw:600:/dev/ttyUSB0:115200 NONE 1STOPBIT 8DATABITS -XONXOFF -LOCAL -RTSCTS

После перезагрузки UART порт доступен на TCP порту 3001

Pololu Orangutan SVP-1284

На оборудовании tenik удалось связать роутер с систмой Pololu Orangutan:

в файл /etc/rc.local для перезапуска драйвера были добавлены строки:

rmmod usbserial
insmod usbserial vendor=0x1ffb product=0x0087

в файл /etc/config/ser2net.conf добавлены строки:

3001:raw:600:/dev/ttyUSB0:115200 NONE 1STOPBIT 8DATABITS -XONXOFF -LOCAL -RTSCTS
3002:raw:600:/dev/ttyUSB1:115200 NONE 1STOPBIT 8DATABITS -XONXOFF -LOCAL -RTSCTS
3003:raw:600:/dev/ttyUSB2:115200 NONE 1STOPBIT 8DATABITS -XONXOFF -LOCAL -RTSCTS

После перезагрузки 3 UART порта Pololu доступны на TCP портах 3001, 3002, 3003

Внесение изменений в прошивку

Для внесения серьезных изменений в прошивку штудируем документацию OpenWRT

Загрузка своих страниц для управления роботом

Текущие страницы доступны для сливания через админку робота. Для заливки новых страниц я использую команду:

pscp.exe -r -pw 123 -scp www/* root@192.168.0.1:/www

pscp входит в комплект программ Putty.

Не заливайте файлы из каталогов /cgi-bin/* На них скорее всего слетят unix-права и прошивка перестанет работать.

Нерешенные проблемы

  • Задержка видео. При использовании 160*120 30 fps она минимальная, но есть.
  • Нет удобного способа менять пароль, только через SSH консоль (команда passwd).
  • Защита. Робота с такой прошивкой надо держать на защищенном протоколе. Сейчас видео идет по http порт 8080 вообще открыто, web-face и управление - либо http либо https, либо с паролем, либо без. Самый правильный способ - https+пароль. Но https в данной конфигурации жутко тормозит.
  • Скрипты Webface написаны на awk и ash, их неудобно поддерживать, Следует мигрировать на Lua
  • Webface содержит явную недоделку - когда заходишь на страничку настройки, то она показывает не текущие значения из конфигов роутера, а ее собственные дефолты

Other warnings

  • Don't switch off HTTP and HTTPS at the same time. In this case router configuring will be available only through SSH.
  • Don't forget about security risks. You must remember, that somebody may spy on you through webcam, and mobile robot can damage some furniture or even cause some injuries.

Downloads

Файл:Or-wifi-dir320-0.54.tar.gz

What inside?

  • Ready-to-use firmware in .trx-format.
  • Kernel and addons for standard ImageBuilder from OpenWRT backfire 10.03.01-RC6, used to build firmware.
  • make.sh file, used to build and pack firmware.

Links