Неспешно допиливаю систему управления на Ардуине для дачи, сама система на даче, я дома. Хотелось бы научиться загружать скрипты в Ардуину через Интернет. Сущестуют железные конверторы RS232 в Etehernet - ОЧЕНЬ ДОРОГО. Существуют софтверные конверторы - но это нужно компьютер на даче держать, и около 100 USD заплатить жаба душит, а единственный бесплатный - работает только под Ubuntu, что тоже не вызывает энтузиазма. Пока что держу на даче комп, и программирую Ардуину на нем, через Remote Desktop, но работает это раздражающе медленно. Какие нибудь идеи подкинете, как до удалённой Ардуины достучаться?
Конечно растёт, даже два: в самой Ардуине GPRS-Shield, через который она управляется и докладывает о состоянии, и поставленный туда для отладки-доработки компьютер с модемом от мегафона.
Откуда в GPRS-Shield взялся Ethernet? Вы Ethernet c Интернетом не перепутали? Или у Вас шилд какой-то особенный?
Ну хорошо, да, в шилде Интернет. А в компе, всё-таки, Ethernet - на Зиксель Кинетик, в котором уже модем с интернетом. И зиксель там живёт, на него видеокамеры заведены по вайфаю.
Вы хотите пробросить serial через интернет. Но для этого на конце должен стоять некий преобразователь, который из пакетов, пришедших из интернета, выделит нужные данные и перенаправит их в serial. Т.е. в любом случае потребуется некий вычислитель, который будет этим заниматься. Можно оставить на даче комп, но управлять не посредством Remote Desktop, а сделать проброс COM-порта с него на виртуальный COM-порт на домашней машине. Кажется, Remote Admin или кто-то из его аналогов умеел это делать.
Либо на базе Arduino с Ethernet-портом можно попробовать сделать интернет-программатор самостоятельно. Передавать на него файл прошивки, проверять корректность передачи, затем командой запускать процесс перепрограммирования целевого девайса.
Взять какой-нибудь eeepc с линухом на борту, на него поставить ino и avrdude и через ssh заливать готовые скетчи. А на рабочей машине написать скриптик для заливки скетча на удаленный комп, назвать его "avrdude" и подсунуть вместо оригинальной avrdude. После чего работать локально в Arduino IDE как ни в чем не бывало.
Тоже пытаюсь найти решение, правда у меня есть - вот такая штука http://www.belkin.com/networkusbhub/ Но пока безрезультатно, ардуины вижу в сети на даче, но сделать с ними ничего не могу. Может подскажите чёнить?
Вот это тема, пожалуй. Осталось разобраться, куда Arduino IDE кладет скомпилированные образы, и какие ключики должны быть у avrdude
Это можно сделать тем же способом. Подменить avrdude своей программой (скриптом), который будет куда-нибудь в текстовый файл журналировать параметры, с которыми был вызван и потом передавать управление настоящей avrdude.
Кажется, в этом Белкине прошиты некоторые стандартные профили устройств, профиля на Ардуину он не знает. Я удивлён, простая задача - прокинуть COM-порт (USB), превращается в марлезонский балет.... Причем MS Windows это умеет - для виртуальных машин, и для Remote Desktop - но только в другую. сторону, "из дома на дачу", а мне это не надо.
Кстати, под никсами, например, можно с помощью sshfs и просто прокинуть всю файловую систему, включая /dev, и поставить симлинк типа /dev/ttyUSB10 -> /mnt/remote/dev/ttyUSB0. Еще меньше возни. С виндами, к сожалению, так просто не выйдет...