Как работать в Arduino IDE с двумя контроллероми одновременно?
- Войдите на сайт для отправки комментариев
Втр, 04/08/2015 - 09:44
Пытаюсь отладить взаимодействие двух Arduino между собой.
Для каждого открыл свою сессию IDE со своим скетчем.
Пытаюсь сконфигурировать один на COM3, другой - на COM4. Но при изменении номера ком-порта в одной сессии синхронно меняется ком-порт в другой.
Как добиться, чтобы в каждой сессии IDE ком-порт устанавливался индивидуально. Т.е. как настроить один скетч на работу с COM3, а другой - с COM4?
Я использую несколько IDE из разных каталогов. Вообще - 1.6.0 и 1.6.2, но думаю пойдут и одной версии.
Может это поможет, сам не пробовал. Версия от 1.5.0 и выше.
https://github.com/arduino/Arduino/blob/ide-1.5.x/build/shared/manpage.adoc
Собственно - попробовать использовать параметры при запуске среды ArduinoIDE.
Без этого одна и таже Arduino.exe использует один и тот же preferences.txt, что приводит к описанному в первом сообщении эффекту.
Спасибо, Gippopotam. Одна и та же версия работает (1.6.5).
Правда, копировать пришлось полностью все содержимое папки, включая даже примеры. Кривое решение. Но, хорошо, есть хоть такое.
Может это поможет, сам не пробовал. Версия от 1.5.0 и выше.
https://github.com/arduino/Arduino/blob/ide-1.5.x/build/shared/manpage.adoc
Собственно - попробовать использовать параметры при запуске среды ArduinoIDE.
Без этого одна и таже Arduino.exe использует один и тот же preferences.txt, что приводит к описанному в первом сообщении эффекту.
Спасибо.
По логике, если предусмотрели синхронное изменение ком-порта во всех открытых IDE, то параметр --port привести к нужному результату не сможет - если у вротой сессии явно указать порт, то он сменится и у первой сессии. Если же порт указать в первой сессии, то у второй он установится таким же, а при попытке смены изменен будет и в первой. Вероятно, сможет помочь --preferences, но что-то экспериментировать после того, как добился работоспособности другими средствами, желания пока нет.
Может это поможет, сам не пробовал. Версия от 1.5.0 и выше.
https://github.com/arduino/Arduino/blob/ide-1.5.x/build/shared/manpage.adoc
Собственно - попробовать использовать параметры при запуске среды ArduinoIDE.
Без этого одна и таже Arduino.exe использует один и тот же preferences.txt, что приводит к описанному в первом сообщении эффекту.
Спасибо.
По логике, если предусмотрели синхронное изменение ком-порта во всех открытых IDE, то параметр --port привести к нужному результату не сможет - если у вротой сессии явно указать порт, то он сменится и у первой сессии. Если же порт указать в первой сессии, то у второй он установится таким же, а при попытке смены изменен будет и в первой. Вероятно, сможет помочь --preferences, но что-то экспериментировать после того, как добился работоспособности другими средствами, желания пока нет.
По-логике, нужно каждой при старте указать свой порт и всё. Но проверять у меня тоже нет желания и времени.
А на счет --preferences-file должно бы помочь (каждой среде свой файл настроек и никаких коллизий):
Read and store preferences from the specified filename instead of the default one.
А на счет --preferences-file должно бы помочь (каждой среде свой файл настроек и никаких коллизий):
Проверил, работает.
Одну копию среды запускаем стандартно, а для запуска второй создаем ярлык, изменяем его свойства, указав в строке запуска D:\arduino-1.6.5-r2\arduino.exe --preferences-file preferences1.txt, предварительно скопировав файл c:\Users\Имя_учетной_записи\AppData\Roaming\Arduino15\preferences.txt в каталог среды, переименовав его в preferences1.txt. Все изменения настроек сделанные во второй копии сохранятся.
andriano, просто запустите arduino.exe два раза. У меня так работает. Версия 1.0.х на win7.
из одной папки так не работает.
Когда-то работало. пруф, картинки: http://arduino.ru/forum/proekty/sdelal-obnovlenie-programmy-v-mk-cherez-...
Первое сообщение в теме читали?
Всё читал. У меня работает именно то, что нужно andriano. К компьютеру подключены две платы Arduino, запущены две штуки Arduino IDE, каждая работает со своей платой и со своим ком-портом. Если у кого-то не работает, не спорю.
ок. убедительно.
Убедительно, пока не посмотришь на номер версии на скриншоте. Если уж экспериментировать, нужно брать одну и ту же версию и ставить её ра.. тьфу, в разные условия и проверять. А так очень многое изменилось с версии 1.0.1 до 1.6.5. можно сказать прошла целая вечность.
Вот, 1.0.6 не шибко старая. Мой метод работает.
Ок, начиная с версии 1.5.x изменилась логика, среда теперь обновляет данные с номером порта при входе в меню, где можно выбрать порт. Потому, 1.0.1 и 1.0.6 - по барабану, это меньше 1.5.x. Ладно, если никто не видит разницы, мне пофиг, мне это всё не нужно, кому нужно, проверит и подтвердит или опровергнет.
Версия 1.6.5-r2 - самая свежая для ос windows. Два раза запустил arduino.exe из одной папки, соединил с разными платами nano. Всё работает одновременно, в том числе монитор порта и команда "вгрузить".
А мы тут голову ломаем.... 1.7.6 тоже работает с двумя разными портами, по крайней мере даёт их независимо менять
Вот тебе бабушка и Юрьев день..
Ну тогда осталось понять в какой ОС это все проверялось
kisoft, windows 7 домашняя базовая 64 бит, сервис пак 1.
Ардуино ide не устанавливаю (зачем?), скачиваю с arduino.cc по ссылке "zip file for non admin install", распаковываю, запускаю.
Основной юзер в ос без админских прав, конечно.
Если открывать второе оно ide с помощь его же меню File, получится как у вас. Чтобы получилось как у меня нужно именно два раза запустить экзешник.
Подниму тему - на IDE 1.8.5 я без проблем редактировал одновременно два скетча для двух разных плат, причем шил тоже без проблем обе - одно окно помнило, что оно Mega и COM4, второе что ProMini и COM5.
Перешел на 1.8.8 со сносом старой и установкой новой версии. И халява закончилась.
Сейчас если я в одном окне меняю тип платы или COM порт - во втором он синхронно меняется.
Кто-нит знает, как решить без создания полной второй копии программы? В 1.8.5-то все само корректно работало. :(
Есть важно - Win 7-64. Заранее спасибо!
P.S. Я просто отлаживаю приемник с передатчиком, одновременно оно удобнее. А так приходится постоянно переключать параметры.
Чечако, arduino [--verify|--upload] [--board package:arch:board[:parameters]] [--port portname] [--pref name=value] [-v|--verbose] [--preserve-temp-files] [FILE.ino]
https://github.com/arduino/Arduino/blob/master/build/shared/manpage.adoc
https://stackoverflow.com/questions/4196267/can-someone-tell-me-how-to-r...
Чечако, arduino [--verify|--upload] [--board package:arch:board[:parameters]] [--port portname] [--pref name=value] [-v|--verbose] [--preserve-temp-files] [FILE.ino]
https://github.com/arduino/Arduino/blob/master/build/shared/manpage.adoc
https://stackoverflow.com/questions/4196267/can-someone-tell-me-how-to-r...
Как вариант, но на 1.8.5-то почему работало без костылей? :)
А я честно установил две копии IDE.
И даже раскрасил их по-разному - чтобы не путаться при отладке, где какая.
А я честно установил две копии IDE.
И даже раскрасил их по-разному - чтобы не путаться при отладке, где какая.
Установили с инсталлятора, или просто разархивировали в две разные папки?
Лучше скачать в архиве без инсталлятора и разархивировать в разные папки, после чего сделать из них портабельные версии.
Лучше скачать в архиве без инсталлятора и разархивировать в разные папки, после чего сделать из них портабельные версии.
Пользуюсь только одной копией ide, как правило этого достаточно.
Среда разработки eclipse, так уж исторически сложилось, прикипел с годами, кода всякого навалом.
Все настройки в эклипсе, ардуину-иде запускаю только чтоб настойки подсмотреть для конкретного проекта.
П.С. В эклипсе плагин ардуино НЕ использую, собираю/загружаю только мэйком.
Что то мне подсказывает, что platformIO можно открыть два разных проекта и указать им разные камни/порты. Не пробовал, но, думаю, прокатит. К тому же он более интересен. Хотя он достаточно нудный, как по мне. Но, jedem das Seine
Подниму тему. Выяснилось, что можно выбирать разные настройки и работать с двумя(или больше) контроллерами одновременно :) Оказалось все просто - нужно запустить IDE столько раз, сколько у Вас плат (не через Файл->новый, а именно заново запускать arduino.exe), и в каждой настроить плату персонально.
Я использую в каждом проекте такой CMD файл:
set wrk=D:\arduino16\work\drv12c
D:\arduino16\arduino.exe --preferences-file %wrk%\preferences.txt %wrk%\drv12c.ino
соответственно путь и имя проекта поставить свои.
Arduino 1.6.5
кстати, чтобы не путались временные файлы, в preferences.txt прописать:
build.path=D:\arduino16\work\drv12c\build
drv12c - имя скетча