![]() |
|
![]() |
#1 |
Administrator
Регистрация: 12.04.2010
Адрес: Москва
Сообщений: 9,618
Вес репутации: 9824 ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() |
![]()
Сначала требуется установить драйвер и подключить Arduino Nano в OpenWrt
Устанавливаем ser2net opkg update opkg install ser2net В файле /etc/ser2net.conf Добавим следующую строку 1001:raw:0:/dev/ttyUSB0:57600 NONE 1STOPBIT 8DATABITS XONXOFF LOCAL -RTSCTS В нашем случае тип связи с портом будет RAW. Таймаут - 0. Скорость необходимая устройству - 57600. Четность не проверять - None. Стоп бит один - 1STOPBIT. Биты данных 8-ми битные - 8DATABITS. XONXOFF выключено. Аппаратное управление потоком выключено. После внесения необходимых изменений, сохраняем фаил настроек и запускаем демона ser2net Придется запускать демона каждый раз после перезагрузки или добавить его в автозагрузку Теперь нужно утановить клиента на Вашем PC Я воспользовался рекомендацией andr128 и установил Tibbo Скачать Tibbo В настройках Tibbo укажите номер виртуального Serial порта. У меня был свободным 9 порт, по этому я его указал. Также не забудьте указать BoudRare 57600 И на последок укажите локальный IP адрес роутера и порт. У меня 192.168.1.20 и 1001 Теперь в ArduinoIDE укажите Ваш виртуальный Serial Port и можете заливать код в контроллер Arduino Nano удаленно Также указывая в своих программах Виртуальный Serial Port, можно удаленно в сети запускать программы написанные для работы с Ардуино Будут вопросы , спрашивайте не стесняйтесь, а то я наверно как всегда что то забыл написать ![]() |
![]() |
![]() |
![]() |
#2 |
Administrator
Регистрация: 12.04.2010
Адрес: Москва
Сообщений: 9,618
Вес репутации: 9824 ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() |
![]()
Обнаружен баг
Прошить можно только 1 раз после ребута роутера, после прошивки связь с Arduino есть, но сигнал DTR упорно не хочет появляться. Это приводит к тому что не передается управление bootloader, не происходит софтовый сброс контроллера. Получается прошить можно, только предварительно перед этим сделав ребут. |
![]() |
![]() |
![]() |
#3 | |
Member
Регистрация: 28.09.2012
Сообщений: 52
Вес репутации: 0 ![]() |
![]() Цитата:
По окончанию заливки порт не закрывается, отсда и все дальнейшие проблемы. Можно перезапустить ser2net ![]() |
|
![]() |
![]() |
![]() |
#4 |
Administrator
Регистрация: 12.04.2010
Адрес: Москва
Сообщений: 9,618
Вес репутации: 9824 ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() |
![]()
ser2net перезапускал, не помогает.
|
![]() |
![]() |
![]() |
#5 |
Senior Member
Регистрация: 16.09.2012
Адрес: Irkutsk
Сообщений: 555
Вес репутации: 1605 ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() |
![]()
Собрал пакетик с программкой suart (аналог ser2net) для нашего роутера. Информация взята отсюда
В работе с arduino не пробовал, может будет лучше чем ser2net ![]() установка: 1. распаковать. 2. скопировать в /tmp 3. opkg install /tmp/suart_1-1_ar71xx.ipk искать в папке /bin. Код:
root@OpenWrt:~# suart -? Suart is tool that allow you to tunnel a local serial connection over a network Usage: suart [-s<serial_port>] [-p<socket_addr>] [-b<baudrate>] [-d] [-?] -s<serial_port> Set serial port, default is /dev/ttyS0 -p<socket_addr> Set socket address, default is 3000 -b<baudrate> Set serial port baudrate (9600/19200/38400/57600/115200), default is 115200 -d Show debug info - transferred data -? Show this help page Example: suart -s/dev/ttyS1 -p3005 -b9600 -d Последний раз редактировалось andr128; 28.10.2012 в 18:10. |
![]() |
![]() |
![]() |
#6 | |
Administrator
Регистрация: 12.04.2010
Адрес: Москва
Сообщений: 9,618
Вес репутации: 9824 ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() |
![]()
Есть еще вариант удаленной прошивки Arduino без использования клиента
Для этого нужно Проверить установленные ранее пакеты kmod-usb-core kmod-usb-ohci kmod-usb-serial kmod-usb-serial-ftdi kmod-usb2 Установить avrdude opkg update opkg install avrdude Получить *.hex На клавиатуре нажимаем и Shift, а в Arduino IDE нажать кнопку компилировать После поной компиляции в папке со скетчем, появится папка applet и в ней Вы найдете нужный нам файлик *.cpp.hex Теперь проверяем. Через FTP закачайте файлик Blink.cpp.hex в роутер И выполните команду avrdude -p m328p -P /dev/ttyUSB0 -c stk500v1 -b 57600 -C /etc/avrdude.conf -U flash:w:/root/Blink.cpp.hex Процесс прошивки будет выглядеть вот так Цитата:
|
|
![]() |
![]() |
![]() |
#7 |
Senior Member
Регистрация: 06.11.2012
Сообщений: 153
Вес репутации: 0 ![]() |
![]()
не получается залить новый скетч через ser2net.
настраивал как тут показано.. Arduino IDE пишет Done uploading, но ниже есть какаято красная строчка: avrdude: stk500_getsync(): not in sync: resp=0x00 Tibbo Monitor dj время аплоада показывает какуюто активность.. 12/04/12 22:27:47 - COM9 (INFO): VSP opened, transport=TCP(TDI), routing=client, remote=192.168.1.6:1001, connect=immediately, OTF=disabled 12/04/12 22:27:47 - COM9 (INFO): Device closed 12/04/12 22:27:47 - COM9 (INFO): VSP opened, transport=TCP(TDI), routing=client, remote=192.168.1.6:1001, connect=immediately, OTF=disabled 12/04/12 22:27:47 - COM9 (INFO): Established TCP connection with 192.168.1.6:1001 12/04/12 22:27:47 - COM9 (INFO): TCP connection with 192.168.1.6:1001 closed 12/04/12 22:27:47 - COM9 (INFO): Established TCP connection with 192.168.1.6:1001 12/04/12 22:27:52 - COM9 (INFO): Device closed 12/04/12 22:27:52 - COM9 (INFO): VSP opened, transport=TCP(TDI), routing=client, remote=192.168.1.6:1001, connect=immediately, OTF=disabled 12/04/12 22:27:52 - COM9 (INFO): Established TCP connection with 192.168.1.6:1001 12/04/12 22:28:05 - COM9 (INFO): TCP connection with 192.168.1.6:1001 closed 12/04/12 22:28:05 - COM9 (INFO): Established TCP connection with 192.168.1.6:1001 12/04/12 22:28:10 - COM9 (INFO): Device closed |
![]() |
![]() |
![]() |
#8 |
Senior Member
Регистрация: 16.09.2012
Адрес: Irkutsk
Сообщений: 555
Вес репутации: 1605 ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() |
![]()
У меня на меге тоже не получается.
|
![]() |
![]() |
![]() |
#9 |
Administrator
Регистрация: 12.04.2010
Адрес: Москва
Сообщений: 9,618
Вес репутации: 9824 ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() |
![]()
А с avrdude прошить не пробовали?
|
![]() |
![]() |
![]() |
#10 | |
Senior Member
Регистрация: 06.11.2012
Сообщений: 153
Вес репутации: 0 ![]() |
![]()
кажется я понял в чем проблема
нужно порт открывать на 115200 в Arduino IDE все programmer's настроены на такую скорость судя по конфам.. после этого изменения мне удалось прошить Arduino Uno rev3 кстати вот еще способ расшарить порт с помощью утилиты socat (надо поставить отдельно): Цитата:
еще точно заметил что мешает прошивке, если открыт порт: screen /dev/ttyACM0 9600 или cat /dev/ttyACM0 хотя если чесно до сих пор непонятно что это - баг или фича этот autoreset на Arduino - у кого-то он проявляется, у кого-то нет.. ктото режет дорожку ктото паяяет резистор, а ктото даже кондер ставит.. а у когото даже спец джампер есть для этого.. не понятно зачем такое сделано.. Последний раз редактировалось d00m; 05.12.2012 в 20:56. |
|
![]() |
![]() |
![]() |
Здесь присутствуют: 2 (пользователей: 0 , гостей: 2) | |
|
|