Android + Arduino - дружба не удалась. Помощь будет полезна

В догонку к этому посту: http://pikabu.ru/story/pomoshch_po_android_usb_otg_4992692


Сказано-сделано, купил Arduino Uno, USB Host Shield 2.0 и тут начались танцы с бубном.

Оказывается, даже в гуголском демо для ардуино ошибок дохрена и чуть больше.

Сперва начинает звать WProgram.h, который оказалось, что уже давно переименован на Arduino.h, потом еще 5-6 библиотек полетело, в конечном итоге я тупо забил на примере от гугла, нашел другой пример, скомпилировал, запустил свой апп на андроиде, поставил отправлять 3 при правильном результате в апп-е и о чудо, на принте ардуино пришла троечка. Все замечательно, настроили что троечка, подача напряжения 5В на 15 сек, все зашибись, радости полные штаны. Подключил электронику, пробую - все работает.

Даже не верилось, что все так легко. И конечно оно не так легко.


Выключил планшет, выключил ардуино, отсоединил ардуино от планшета. Включил планшет, включил ардуино, втыкаю провод в USB планшета и привет. Нет никого. Планшет и Ардино не видят друг друга. Опять выключаю все, подключил - глухо. Перезагрузил ардино с кнопки - нет. И так полтора часа, уже почти был уверен что USB Host Shield полетел и о чудо они подключились.


Опытным путем установил когда они подключаются:

Подключаем питание к Ардуино, подключаем ардуино к компьютеру, подключаем к планшету, перезагружаем ардуино кнопкой, вытаскиваем USB с планшета, перезагружаем кнопкой Ардуино, подключаем к планшету, видим Connected as media device на планшете, перезагружаем опять ардуино с кнопки и видим Connected as media device, Debugging mode, Connected as Accessories - ура, все работает. Если отсоединить провод от планшета - всю процедуру заново.


Все что вижу на Ардуино когда зависает: OSCOKIRQ failed to assert

Тоже самое происходит если пользовать другой Андроид дивайс, пробовал на Нексусе 4 и Леново К1

Андроид планшета - 4.2.1


Так вот вопрос - почему только после танцев с бубном ардуино и планшет(андроид) начинают видеть друг друга? Процедура которую описал выше срабатывает каждый раз, а связь между ними ломается при отключение ардуино/андроид или при отключении вместе. Связь пропадает, если их тупо отключить от питания, но не отсоединять.


Вариант в котором надо повторять такую процедуру каждый раз неприемлем.


Комментарии для минусов внутри.

Голова горит у меня, так что тек мое.

Arduino & Pi

1.4K постов20.6K подписчиков

Добавить пост

Правила сообщества

В нашем сообществе запрещается:

• Добавлять посты не относящиеся к тематике сообщества, либо не несущие какой-либо полезной нагрузки (флуд)

• Задавать очевидные вопросы в виде постов, не воспользовавшись перед этим поиском

• Выкладывать код прямо в посте - используйте для этого сервисы ideone.com, gist.github.com или схожие ресурсы (pastebin запрещен)

• Рассуждать на темы политики

• Нарушать установленные правила Пикабу