![]() |
![]() |
#111 |
Member
Регистрация: 25.10.2013
Сообщений: 80
Вес репутации: 0 ![]() |
![]()
Думал, может, в скорости дело (у меня 9600 на serial), попробовал так - не помогло:
stty -F /dev/ttyUSB0 raw speed 9600 && echo t > /dev/ttyUSB0 Аллилуя!! попробовал stty -F /dev/ttyUSB0 raw speed 9600 -hupcl затем echo t > /dev/ttyUSB0 Работает!!! Спасибо огромное!! |
![]() |
![]() |
![]() |
#112 |
Member
Регистрация: 25.10.2013
Сообщений: 80
Вес репутации: 0 ![]() |
![]()
Спасибо, уважаемый админ, особое - за столь оперативную реакцию!
Остается один вопрос - для понимания: почему в arduino v.7 это все работает без таких танцев с бубном? |
![]() |
![]() |
![]() |
#113 |
Administrator
Регистрация: 12.04.2010
Адрес: Москва
Сообщений: 9,618
Вес репутации: 9824 ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() |
![]()
Не знаю, я Arduino Mega и Uno ни разу не подключал к роутеру
Скорее всего потому, что мосты USB-UART разные, соответственно и драйвера различные К тому же у Arduino Mega и Uno мост программный на контроллере AtmegaU |
![]() |
![]() |
![]() |
#114 |
Member
Регистрация: 25.10.2013
Сообщений: 80
Вес репутации: 0 ![]() |
![]()
Про Mega и Uno я тоже не в курсе, пробовал лишь Nano v3 и v4 (один на FTDI, второй на Prolific).
|
![]() |
![]() |
![]() |
#115 |
Junior Member
Регистрация: 29.01.2014
Сообщений: 2
Вес репутации: 0 ![]() |
![]()
пробую пример на uno r3.
kmod-usb-acm -> /dev/ttyACM0 но echo 1>>/dev/ttyACM0 отправляет в софт ресет. ![]() stty -F /dev/ttyACM0 raw speed 57600 -hupcl не помогает. куда копать? |
![]() |
![]() |
![]() |
#116 |
Senior Member
Регистрация: 25.11.2013
Сообщений: 116
Вес репутации: 0 ![]() |
![]()
А если так
echo 1 > /dev/ttyACM0 |
![]() |
![]() |
![]() |
#117 |
Junior Member
Регистрация: 29.01.2014
Сообщений: 2
Вес репутации: 0 ![]() |
![]() |
![]() |
![]() |
![]() |
#118 |
Member
Регистрация: 25.10.2013
Сообщений: 80
Вес репутации: 0 ![]() |
![]()
Подскажите, знающие люди еще вот что.
Столкнулся в процессе тестирования связи Arduino Nano и MR3020, куда копать даже не знаю.. Есть MR3020, руками инициализирован порт stty -F /dev/ttyUSB0 raw speed 9600 -hupcl запущен web-сервер uhttpd -p 10.10.10.10:8088 -h /www написан простой shell-скрипт, который отправляет символ "t" в /dev/ttyUSB0 (на Arduino) и выдает в составе странички с автообновлением через каждые 5 секунд текущее время на arduino - простой скетч, читающий из Serial и переключающий L13 по приходу "t" 1. на домашнем компьютере все работает на удивление стабильно - страница, обновляется, светодиод переключается 2. на работе (замечу - тот же MR3020 и та же ардуина) все работает меньше минуты и зависает - даже при попытке отправить руками из консоли символ в /dev/ttyUSB0 оттупливает и ничего не происходит, помогает лишь передергивание провода USB с ардуиной Из отличий двух ситуаций: - на работе нет сети (в смысле, MR3020 настроен, чтобы получать сеть по WiFi, а на работе сеть проводами) - на рабочем компе не установлена Arduino IDE (но она и не используется - скетч залит давно) Что не так? Я читал о страшные истории о системной ошибке в MR3020 (воздействие радиотракта вафли на USB) и уже начал смотреть в сторону перезаливки прошивки https://github.com/SLboat/Openwrt_12...1_RESET_PATCH/ (патч для r36088, а у меня другой билд) и накатывания патча, но.. дома-то и без него все работает - на том же самом железе! UPD: будете смеяться (лично я - уже и горько), но отключение (не смена SSID, а именно отключение) Wi-Fi на шлюзе (к которому коннектится MR3020) привело к тому, что симптомы повторились! Буду перезаливаться.. Последний раз редактировалось borey; 30.01.2014 в 01:40. |
![]() |
![]() |
![]() |
#119 |
Member
Регистрация: 25.10.2013
Сообщений: 80
Вес репутации: 0 ![]() |
![]()
Перепрошил билдом OpenWRT r36088, накатил патч от SLboat - проблема устранена!
Дергал Wi-Fi - никаких сбоев, данные в ардуино бегут, тот ногой дергает ![]() В общем, рекомендую. Вдруг кому понадобится сей опыт. |
![]() |
![]() |
![]() |
#120 |
Member
Регистрация: 25.10.2013
Сообщений: 80
Вес репутации: 0 ![]() |
![]()
Вот еще.. Подскажите, поделитесь опытом.
Есть задача: По cron обращаться с MR3020 на сервер (собирать и передавать данные, например, с локальных датчиков температуры и формировать в строку для wget - это я на shell уже написал), получая обратно команды, например, на дерганье ногами ардуиной в виде строки. При приеме команды MR3020 проверяет, если пришло "пусто" или OK - ничего не отправлять в ардуино, иначе - все, что пришло отправлять - дальше пусть ардуино разбирает. Вопрос такой - на чем лучше писать (Lua, shell), чтоб дополнительно ничего не ставить (PHP не влезет - MR3020 без флешки)? С прицелом на будущее - вероятно, чуть позже ардуино тоже будет что-то в сериал отдавать.. Как это читать (просто читать из /dev/ttyUSB0?) и на чем лучше писать, чтоб производить перед отправкой на сервер простейшую перепаковку (комбинирование данных из ардуино с прочей инфой - например, размером свободного места в MR3020 или еще чем)? Вопрос задаю потому, что хочу уйти от разбора строк средствами sed - я хоть и разбирал в свое время регулярные выражения POSIX (и после Perl работал с preg_match в PHP), но как глянул на sed, чуть не поsedел )) Заранее спс Последний раз редактировалось borey; 30.01.2014 в 10:51. |
![]() |
![]() |
![]() |
Здесь присутствуют: 8 (пользователей: 0 , гостей: 8) | |
|
|