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
Так вот вопрос - почему только после танцев с бубном ардуино и планшет(андроид) начинают видеть друг друга? Процедура которую описал выше срабатывает каждый раз, а связь между ними ломается при отключение ардуино/андроид или при отключении вместе. Связь пропадает, если их тупо отключить от питания, но не отсоединять.
Вариант в котором надо повторять такую процедуру каждый раз неприемлем.
Комментарии для минусов внутри.
Голова горит у меня, так что тек мое.
Скажите, а не подключали к Ардуино usb мышку с кнопкой для изменения разрешения, как работать с такой мышкой?
Http: //www.amazon.com/Optimus-Dynamic-Android-Prep ...
Проблема с этим быть портативный проект является то, что телефон будет пытаться зарядить себя, используя USB щит, который, очевидно, истощает батарею. Я пытался найти способы, чтобы отключить USB зарядка на телефоне, но безуспешно. Видимо, это было сделано на укорененных устройствах раньше, но укоренение методы для Optimus Dynamic больше не будет работать, и я подозреваю, что укоренение устройства может мешать микромостиковой в любом случае.
• Я использовал версию микромостикового связанную в этой теме:
вот здесь почитай. пишут, что напряжение питания нужно повышать. http://forum.arduino.cc/index.php?topic=107628.0
и с задержкой поиграй, может в настройках adk не хватает времени для инициализации (на другом форуме видел) http://mitchtech.net/android-arduino-usb-host-simple-digital...