Arduino перезагружается при подключении usb

Обновлено: 04.07.2024

Автоматическая перезагрузка Arduino при подключении терминала

  • Войдите или зарегистрируйтесь, чтобы получить возможность отправлять комментарии

Как отключить автоматическую перезагрузку Arduino при подключении терминала? При подключении Монитора порта Arduino UNO перезагружается. Надо бы как то вырубить.

  • Войдите или зарегистрируйтесь, чтобы получить возможность отправлять комментарии

Порезать дорожку. Но тогда будут проблемы с загрузкой скетчей через порт.

  • Войдите или зарегистрируйтесь, чтобы получить возможность отправлять комментарии

По другому никак? Нельзя программно как то это решить? Почему так происходит? Я же вроде никакого механического воздействия не произвожу. В программе отключаю Монитор порта, а потом подключаюсь к Монитору порта.

  • Войдите или зарегистрируйтесь, чтобы получить возможность отправлять комментарии

Это сделано аппаратно что бы можно было с компа перевести плату в режим загрузки (дернуть Reset).

  • Войдите или зарегистрируйтесь, чтобы получить возможность отправлять комментарии

Порезать дорожку. Но тогда будут проблемы с загрузкой скетчей через порт.

  • Войдите или зарегистрируйтесь, чтобы получить возможность отправлять комментарии

Надо тогда искать тот, что не формирует RTS сигнал .

  • Войдите или зарегистрируйтесь, чтобы получить возможность отправлять комментарии

Я даже пользуюсь для перезагрузки этой особенностью - достаточно в терминале изменить скорость куда нибудь и обратно и ардуинка перзагружена. И никуда тянуться не надо.

  • Войдите или зарегистрируйтесь, чтобы получить возможность отправлять комментарии

По другому никак? Нельзя программно как то это решить? Почему так происходит?

а оно вам мешает?

  • Войдите или зарегистрируйтесь, чтобы получить возможность отправлять комментарии

К примеру, Ардуино работает круглосуточно и выводится лог на терминал. )

  • Войдите или зарегистрируйтесь, чтобы получить возможность отправлять комментарии

mykaida аватар

Можно использовать программный серийный порт на других пинах. Тогда перезагружаться не будет. Но программу по ним не зальешь, а мониторить можно.

  • Войдите или зарегистрируйтесь, чтобы получить возможность отправлять комментарии

Мониторить можно, только зачем такие изгаления когда можно взять нормальный эмулятор терминала.

  • Войдите или зарегистрируйтесь, чтобы получить возможность отправлять комментарии

ЕвгенийП аватар

можно взять нормальный эмулятор терминала.

  • Войдите или зарегистрируйтесь, чтобы получить возможность отправлять комментарии

Только в 20141030 у меня что-то не работает скроллинг. В предыдущей 20130116 всё ОК.
Нет, предыдущая 20130820 - с тоже всё хорошо.

  • Войдите или зарегистрируйтесь, чтобы получить возможность отправлять комментарии

По другому никак? Нельзя программно как то это решить? Почему так происходит?

а оно вам мешает?

Если бы не мешало не спрашивал бы.

  • Войдите или зарегистрируйтесь, чтобы получить возможность отправлять комментарии

Можно использовать программный серийный порт на других пинах. Тогда перезагружаться не будет. Но программу по ним не зальешь, а мониторить можно.

Придется так и делать.

  • Войдите или зарегистрируйтесь, чтобы получить возможность отправлять комментарии

можно взять нормальный эмулятор терминала.

По моему это не зависит от терминала. Контроллер последовательного порта на самой Arduino UNO при подключении сам формирует сигнал или нет?

  • Войдите или зарегистрируйтесь, чтобы получить возможность отправлять комментарии

Нет. Он ничего не знает о подключении терминала. Внешний сигнал DTR дергает ресет. Вам уже предлагали резать дорожку до ресет. А в предложенном терминале есть кнопка посылать или нет DTR.

  • Войдите или зарегистрируйтесь, чтобы получить возможность отправлять комментарии

ЕвгенийП аватар

По моему это не зависит от терминала.

Хотите решить проблему - делайте как говорят. Хотите поспорить - без меня. Это не философская проблема, и спорить о том, что элементарно, за несколько минут, проверяется, я считаю глупым.

  • Войдите или зарегистрируйтесь, чтобы получить возможность отправлять комментарии

Если бы не мешало не спрашивал бы.

Поясните, чем мешает? - я ж тоже не просто так спрашиваю, уверен, что вы что-то неправильно делаете.

  • Войдите или зарегистрируйтесь, чтобы получить возможность отправлять комментарии

Пример общения с Ардуино без перезагрузки при подключении , на которой залит echo скетч ,на Python. на других языках соотвественно аналогично.

Каждый раз, когда я подключаю Arduino Uno к Mac через USB-порт, Mac перезапускается. Почему это происходит? Как Arduino может сделать такой сложный сброс машины? Это также происходит с моим MCU узла ESP12E.

3 ответа

Это почти наверняка проблема с драйверами устройств. Поскольку Arduinos, вероятно, немного отстают от иерархического порядка для вещей, которые заинтересованы Apple, они, вероятно, не тестируют столь широко, как (скажем) принтеры.

Как Arduino может сделать такой сложный перезагруженный компьютер?

Драйверы устройств будут работать с повышенными привилегиями, потому что им необходимо управлять, а устройствами , например, жесткими дисками, принтерами и т. д. Если у вас есть ошибка программирования (например, разыменование указателя NULL) это может привести к сбою всей операционной системы.

Доступна новая версия Arduino IDE (1.6.12), поддерживающая OSX Sierra! Пользователям OSX, обновляющимся до Сьерры, предлагается также обновить среду IDE, чтобы избежать сбоев при загрузке эскизов.

Это может или не поможет. Кажется, они предлагают, чтобы IDE выходил из строя, а не Mac, но его можно было бы попробовать.

Мне нужно использовать arduino nano, и мой Mac с mac os sierra перезагружается, когда я подключаю arduino

Похоже, что набор микросхем CH340, используемый в клоне , вызывает это у Arduinos.

Рекомендуемое исправление драйвера устройства находится в ch340g-ch34g- ch34x-Mac-OS-X-драйвер

У меня была такая же проблема, и выяснилось, что драйвер CH340 был виноват. С клон Arduino MEGA, прикрепленный к компьютеру, он запускает ядерную панику при запуске, а затем продолжает перезапуск снова и снова.

Когда клон отсоединен, компьютер начал нормально. Поэтому драйвер при попытке загрузки при запуске вызывал панику.

Я вернулся на веб-сайт и нашел «обновленный» драйвер, который решил проблему паники. Он запускается и работает нормально, НО -

  1. Каждая команда печати печатает дважды. Простой «Hello World» печатает дважды.

У меня нет решения для двойной печати. ​​

  1. Программа будет компилироваться, но никогда не загружается в клон. Когда я переключил USB-кабель с 6-футового на включенный 1-футовый синий, он работал.

My MacOS - High Sierra 10.13.4. Простое решение:

удалите старый драйвер, откройте терминал и выполните команду:

rm -rf /System/Library/Extensions/usbserial.kext

rm -rf /Library/Extensions/usbserial.kext

Разархивируйте CH341SER_MAC и установите CH34x_Install_V1.4.pkg, затем перезапустите MAC,

после перезагрузки входа в ваш MAC-адрес и открытия терминала, Подключите arduino к вашему Mac и посмотрите на свою серийную папку: ls /dev /

Не могу стартовать.

в системе определилась (раньше пользовался переходником на таком же чипе PL2303 ), появился 5 компорт.
по дефолту в него зашито мигание светодиода на 13 ноге.

не могу подобрать настройки платы и программатора в меню.

при попытке "зашить" выдает:

avrdude: stk500_recv(): programmer is not responding
avrdude: stk500_getsync() attempt 3 of 10: not in sync: resp=0x01

если не ошибаюсь, то загрузка доступна только неск секунд после включения.
Включаем плату, после этого запускаем загрузку скетча, до этого не забыть настроить правильный порт=5

JLCPCB, всего $2 за прототип печатной платы! Цвет - любой!

Это в глючных платах так, у меня на stm32 есть такая - нужно после компиляции тыкнуть "reset" на плате, может и на мегах такие есть, нормальная сама правильно ресетится.

в системе определилась (раньше пользовался переходником на таком же чипе PL2303 ), появился 5 компорт.

А через тот самый переходник именно эта плата шьется ?

Сборка печатных плат от $30 + БЕСПЛАТНАЯ доставка по всему миру + трафарет

ничего нового не получилось.

распаял ICSP разъем, подоткнул к программатору. прочиталось.
в данных есть что то сначала и в самом конце.

вот так нана видится в системе, и в самой оболочке:

может в нем нет загрузчика, и поэтому он не может зашиться через оболочку?
и старый вопрос - что выбрать в платах и в программаторе оболочки?

update
удалось прошить из оболочки через файл-выгрузить через программатор, подцепив платку к клону USBasp.

также попробовал залить бутлодер, тем же способом. залилось с дефолтным мигающим светодиодом.
это конечно тоже выход, но как то через ж. пу

а не должна сама arduino видится в системе как некое USB устройство?

Приглашаем всех желающих 25/11/2021 г. принять участие в вебинаре, посвященном антеннам Molex. Готовые к использованию антенны Molex являются компактными, высокопроизводительными и доступны в различных форм-факторах для всех стандартных антенных протоколов и частот. На вебинаре будет проведен обзор готовых решений и перспектив развития продуктовой линейки. Разработчики смогут получить рекомендации по выбору антенны, работе с документацией и поддержкой, заказу образцов.

в системе определилась (раньше пользовался переходником на таком же чипе PL2303 ), появился 5 компорт.

Там должна стоять другая микросхема - FTDI FT232RL, посмотрите внимательней. Какие драйвера устанавливали?

если не ошибаюсь, то загрузка доступна только неск секунд после включения.

Ошибаетесь, загрузка доступна в любой момент. Микросхема UART-моста дёргает reset микроконтроллера по команде.

вот так нана видится в системе, и в самой оболочке:

Хм, судя по названию устройства в диспетчере устройств, драйвера Вы установили таки для микросхемы PL2303. На плате точно она стоит?
FTDI FT232RL должна определяться как "USB Serial Port (COM5)"

может в нем нет загрузчика, и поэтому он не может зашиться через оболочку?

Если там нет загрузчика - его можно зашить через программатор или другую ардуину. Это надо сделать только один раз. После этого должна заработать загрузка скетчей через USB.

и старый вопрос - что выбрать в платах и в программаторе оболочки?

В оболочке выбирается следующее:
1. Сервис -> Плата -> Arduino Nano /w ATmega328 (обязательный параметр для загрузки через USB или прошивки через программатор)
2. Сервис -> Последовательный порт -> COM5 (обязательный параметр для загрузки через USB)
3. Сервис -> Программатор -> USBasp (или Arduino as ISP)(обязательный параметр для прошивки через программатор или другую ардуину с предварительно загруженным скетчем ArduinoISP, который есть в примерах)

update
удалось прошить из оболочки через файл-выгрузить через программатор, подцепив платку к клону USBasp.
также попробовал залить бутлодер, тем же способом. залилось с дефолтным мигающим светодиодом.

Т.е. после того, как Вы в настройках выбрали правильную плату и залили бутлоадер, дефолтный светодиод начал мигать с частотой 1 сек? Значит бутлоадер залился удачно и работает.
UPD: Тут ещё мысль появилась - возможно на плате где-то непропай микросхемы UART моста?
UPD2: При попытке загрузить скетч через USB ардуина перезагружается? Определяется по светодиоду.
Если ничего не происходит, можно попробовать вручную жать кнопку Reset на ардуине после того, как IDE скомпилит прошивку и начнёт загружать её в плату.

а не должна сама arduino видится в системе как некое USB устройство?
Нет, не должна. В Arduino Nano (ATmega328) нет аппаратной поддержки USB и она работает через USB-UART мост. Считайте, что она работает через тот же переходник, только он уже распаян на плате.

Навигационные модули позволяют существенно сократить время разработки оборудования. На вебинаре 17 ноября вы сможете познакомиться с новыми семействами Teseo-LIV3x, Teseo-VIC3x и Teseo-LIV4F. Вы узнаете, насколько просто добавить функцию определения местоположения с повышенной точностью благодаря использованию двухдиапазонного приемника и функции навигации по сигналам от MEMS-датчиков. Поработаем в программе Teseo Suite и рассмотрим результаты полевого тестирования.

Там должна стоять другая микросхема - FTDI FT232RL, посмотрите внимательней. Какие драйвера устанавливали?
ну не я же ее паял завтра достану микроскоп - точно посмотрю, что именно стоит.
как и говорил, драйвера сами нашлись в системе, видимо от старого конвертора. скриншот я привел. могу посмотреть PVI/ usb устройства завтра.
После этого должна заработать загрузка скетчей через USB.
в ней что то было. светодиод мигал сразу. как уже писал, прошли внешним программатором из оболочке бутлодер - тоже мигает, но ничего не поменялось..

вот мои настройки текущие:

что на ваш взгляд, нужно поменять?
UPD2: При попытке загрузить скетч через USB ардуина перезагружается? Определяется по светодиоду.

нет. видно очень, очень слабо, помигивает светодиод TX при попытке загрузить.

завтра, допишу уточнения по чипу.

спасибо вам, что вы тратите на это, свое время.

update.
посмотрел, что распаяно на платке - PL2303TA. скачал проставил новые (2013) года драйвера.
после этого checkChipVersion_v1006 - правильно определяет чип! (раньше ругалась)

но для ардуины в лучшую сторону это никак не изменило, ошибки те же

вероятно проблема аналогичная описанной здесь:

прозвонил плату, похоже, что 2 нога PL2303TA через кондер (наверняка 0.1) сидит на ресете., что в общем воспроизводит референсную плату на FTDI FT232RL (правда там еще и перемычка стоит).


С нано проблем быть не должно, а к мини нужно такую фигню.

некромания .. спустя 3 года.

дело было в странном бутлоадере в этой платке.

/home/.arduino15/packages/arduino/hardware/avr/1.6.17: diff boards.txt.old boards.txt
< nano.menu.cpu.atmega328.upload.speed=57600
> nano.menu.cpu.atmega328.upload.speed=115200
< nano.menu.cpu.atmega328.bootloader.file=atmega/ATmegaBOOT_168_atmega328.hex
> nano.menu.cpu.atmega328.bootloader.file=optiboot/optiboot_atmega328.hex

поправил указанный конфиг и наступило счастье.

Часовой пояс: UTC + 3 часа

Кто сейчас на форуме


Используется в GSM заводилке, всё чётко работает без перезагрузок долгое время, но как только посылаю команду завести авто, машина заводится, проходит примерно 5-10 секунд и глушится из-за перезагрузки ардуино.


Вариантов 2 — помехи по питанию (просадка) и помехи по сигнальным линиям (длинные провода).
Питание легко починить — запитывай дуину через диод и большой конденсатор после диода.
с проводами веселее — отключи всё и заводи руками — сбросится? (для тестирования можно какой ни будь тестовый скетч сделать). Если нет — подключай провода по одному и тестируй…

Но для начала я бы убедился что проблема именно в дуине. 5сек — это очень похоже на отсутствие метки иммо. (если оно конечно у тебя есть). Попробуй завести с вставленным ключом в замке


Все банальные проблемы отсечены, знаю что такое иммо как работает и есть ли он. Кандером весил питание, не помогало, плюсом внутри программ есть счетчик времени работы, его показания обнуляются когда происходит перезагруз, следовательно глушится из-за того что перезагружается ардуино. Провода внутри максимально укоротил.


чудес не бывает. Запитайте дуину от батарейки — этим на 100% отсечется вариант с питанием. Дальше — если в аппаратной реализации уверены — ищите в программной. Если провести запуск без реального запуска авто (отключить реле стартера — если есть контроль запуска — запустить двигатель до запуска ключом и подключить контроль после запуска) — перегружается? Т.е. — выяснить — это внешняя среда перегружает дуину или какой то код гдето переходит не туда?
Ну и вариант — а не может быть что перезагруз — это не причина остановки мотора а следствие? Т.е. мотор глохнет, а потом, из-за этого перегружается дуина?

Читайте также: