ArduCopter Mega: порт на обычную Arduino (тестим)
Наверное, придется перешивать симонком
Это самое правильное решение, так как перешитые намного быстрей отрабатывают команды и как следствие повышается стабильность коптера.
Попробую внести свои 5коп в эту проблему, так как именно с таким сценарием и сам сейчас бьюсь.
Atmega2560 имеет 256K флеша и загрузчик (бутлоадер) начинается с адреса 0x3e000. Т.е. в самом конце. USBasp только с верии прошивки 2011-05-28 (www.fischl.de/usbasp/) стал поддерживать заливку флеша, больше чем 128K. Причем эта прошивка подходит только для USBasp на чипах ATmega8, ATmega88.
Если у вас USBasp на чипе ATmegа48 (как и у меня) - то прошивать Atmega2560 - бесполезное занятие.Есть несколько вариантов:
- проверьте/обновите версию прошивки на USBasp (если он у вас на чипе ATmega8/88)
- достать более продвинутый програматор. Например AVRisp MKII. Я так и сделал.
- есть хитрые решения с иcпользованием ArduinoUNO как програматора для 2560, типа вот таких:
www.gammon.com.au/forum/?id=11635 - прошивка бутлоадера
http://www.gammon.com.au/forum/?id=11638 - прошивка произвольных hex
Мне удавалось залить загрузчик с помощью этих решений.
Вот это кстати очень интересно… Надо будет глянуть, на какой меге у меня USBAsp.
Например AVRisp MKII.
У меня есть. Вот такой: www.kosmodrom.com.ua/el.php?name=XMEGA-FP Держит и ATMega, и ATXMega.
Вот только проблема, он ну никак не хочет работать с avrdude. Со студией - не вопрос (пробовал, все видит). А вот с дудкой - никак. Уже когда-то лазил по всему инету, когда свою Turnigy 9X перепрошивал (для чего его и покупал), и usb-lib ставил, и чего только не делал… Никак. Похоже просто не совместимость.
А 100$ за оригинальный фирменный программатор как-то таки многовато… Я конечно могу себе это позволить, но все же.
Если конечно подскажете что не такое дорогое, но быстро работающее и все прошивающее (в Украине) - то буду благодарен 😃
Как я понял атмегу вам перепаять удалось, а вот бутлоадер не записался.
Сообщение avrdude: stk500v2_ReceiveMessage(): timeout означает, что avrdude не дождался ответа от платы.
Для заливки загрузчика специальный программатор не обязателен. Если есть плата Arduino, только не Nano на ней нет выводов с конвертера FT232RL, можно воспользоваться статьей robocraft.ru/blog/arduino/552.html.
Оказалось даже не так… Бутлоадер у меня нормально прошился.
Вот вчера долго курил, думал приблизительно так:
- Если при “чистой” микросхеме или с неправильной прошивкой светодиод “А” вообще не мигает, значит не идет цикл, который его включает/выключает.
- Раз после перепрошивки бутлоадера светодиод начинает мигать, значит на микроконтроллере программа какая-то выполняется, которая его включает/выключает.
- Раз после подачи сигнала с Arduino светодиод начинает как-то реагировать - то тем более что-то в микроконтроллере слушает порт, и пытается реагировать. Значит с бутлоадером все ок.
После этого у меня возникло 2ве версии:
а) банальный контакт с 2й или 3й (не помню) ножки отмеги, которая TXD0, что ардуина просто не видит ответа, он не приходит, да и светодиод TX возле FT232R никак не реагирует.
б) что-то с FT232R
После этого прозвонив контакты тестером, убедился, что с контактами все ок. С лапки ATMega до порта S0/FTDI контакт есть. Значит вариант а) не правильный.
Накопал дома от MinimOSD FTDI-ку, распаял переходник с S0/FTDI на штырьки переходник.
Подключил все это к компу, врубил Arduino IDE, и о чудо!!! Оно перепрошилось!!! В Mission Planner все видится, работает!!!
Так что большое спасибо всем за советы, очень благодарен 😃)
А вот теперь думаю: толи забить на usb в криусе, все равно у меня отдельная FTDI есть, толи попробовать перепаять ту мелкую F232R на плате. Как думаете, реально обычным паяльником 30вт (есть еще 40вт и 100вт), или лучше не стоит?
P.S. А вот после прошивки из ардуины скетчем уже повторно оно не прошивается почему-то. Только сделать еще раз “загрузить бутлоадер” через программатор, а потом обычным способом - тогда все нормально проходит. Не совсем понял, почему так.
Кто ни будь пробовал пользоваться таким:
www.kosmodrom.com.ua/razrabotka/avr_isp_3_2.php
под Win7 с avrdude?
P.S. А вот после прошивки из ардуины скетчем уже повторно оно не прошивается почему-то. Только сделать еще раз “загрузить бутлоадер” через программатор, а потом обычным способом - тогда все нормально проходит. Не совсем понял, почему так.
Думаю, дело в fuses… Скетч стирает бутлоадер.
Думаю, дело в fuses… Скетч стирает бутлоадер.
Гммм… Ну фузы прописаны в boards.txt в ардуине. Поидее я так понимаю что они должны быть правильные, 1000 раз проверенные… Но радует то, что мега рабочая и плата (за исключением ftdi) тоже 😃
Калибранул компас, с прошивкой MegapirateNG 2.8 R3 калибровка акселя/горизонта заработало только в Mission Planner 1.3.0, калибранул аксель.
Перепрошил с поддержкой GPS (перевести ublox в режим бинарного протокола сходу не вышло, поэтому оставил 9600/NMEA), подключил свой CN-06 GPS, вышел с ноутом на улицу, проверил - 3D Fix сработал, все ок.
На летуна еще не цеплял, работу с двигателями не проверял (но там я думаю разве что непропай может какой быть, поправимо).
И все это в сумме таки радует! Еще чуть допроверяю все и тогда если все будет ОК - в воздух 😃
Как думаете, реально обычным паяльником 30вт (есть еще 40вт и 100вт), или лучше не стоит?
Лучше не стоит, такую микросхему надо горячим воздухом паять.
Лучше не стоит, такую микросхему надо горячим воздухом паять.
Понятно, значит без паяльной станции и фена никак…
Вот думаю… Раз уж увлекся таким хобби - чи прикупить себе паяльную станцию с зарплаты? Хотя не так часто надо с другой стороны… И даже если покупать то фиг его знает какую…
И даже если покупать то фиг его знает какую…
В принципе, без особой разницы. У меня китайская Lukey-702.
Понятно, значит без паяльной станции и фена никак…
Вот думаю… Раз уж увлекся таким хобби - чи прикупить себе паяльную станцию с зарплаты? Хотя не так часто надо с другой стороны… И даже если покупать то фиг его знает какую…
такаяже ситуация, прикупил Lukey-702, к паяльнику еще там пару насадочек удобных и для смд деталек жало, + еще удобно задувать ею термоусадки:) места вроде не много занимает, зато теперь старые куяльники уже не трогаю:) брал на советский, вниз вдоль стройки спускаться в сторону шевченко
там в одонм помещении gsmserver.com.ua и masteram.com.ua
PS: сори за небольшой оффтоп
Наконец-то заставил свой коптер взлететь. Теперь есть новая проблема - если он в воздухе, хотя бы в 10 см от земли - висит стабильно. А вот собственно взлет требует большой компенсации, иначе норовит перевернуться.
Подскажите, кому-нибудь удалось поженить Crius AIO V2 + MegapirateNG + Bluetooth + Mission Planner . Два дня безуспешно пытаюсь это сделать. Пробовал и на Serial 0 и на Serial 3 , все баудрейты перепробовал, не помогает. “Fail Connect” Компьютер блутусину видит четко. Заливаю обратно Мультивий - все работает. Если удалось кому , поделитесь какой порт, скорость, версия MegapirateNG ?
Подскажите, кому-нибудь удалось поженить Crius AIO V2 + MegapirateNG + Bluetooth + Mission Planner . Два дня безуспешно пытаюсь это сделать. Пробовал и на Serial 0 и на Serial 3 , все баудрейты перепробовал, не помогает. “Fail Connect” Компьютер блутусину видит четко. Заливаю обратно Мультивий - все работает. Если удалось кому , поделитесь какой порт, скорость, версия MegapirateNG ?
Повесил на FTDI, завелось с пол пинка, скорость 115
Повесил на FTDI, завелось с пол пинка, скорость 115
Какой Мегапират? Версия Mission Planner?
По этой схеме как раз и делал. Не хочет работать. Не знаю , что еще попробовать. Может COM порт поменять , у меня COM15 ? Еще заметил, когда жму “Connect” в Mission Planner то долго думает около минуты, потом пытается что-то получить-передать по мавлинку, потом “Fail Connect” @ляха муха!
Посоветовали повесить на Serial 3 - не помогло.
Какой Мегапират? Версия Mission Planner?
По этой схеме как раз и делал. Не хочет работать. Не знаю , что еще попробовать. Может COM порт поменять , у меня COM15 ? Еще заметил, когда жму “Connect” в Mission Planner то долго думает около минуты, потом пытается что-то получить-передать по мавлинку, потом “Fail Connect” @ляха муха!
Посоветовали повесить на Serial 3 - не помогло.
У меня блютуз работал только на 9600 стабильно. Забил и жду 3dr radio.
Если есть у вас переходник FTDI, то сделайте вот что:
- ком-порт блютуза подключите к FTDI (крест-накрест, т.е. RX->TX, TX->RX).
- воткните это в комп.
- подключитесь с этого же компа (так проще) по блютуз к этому же блютузу. Получится, что у вас 2ва ком-порта в системе подключены друг к другу. Что посылаете на один - должно прийти на другой.
- скачайте программу PuTTY, откройте 2ва экземпляра этой программы, в ней в подключении выбираете “Serial” и вводите имя ком-порта. Подключаетесь. Так же и во 2м окне для 2го ком порта.
- Расположите удобно на экране, что бы видеть оба окна PuTTY, что печатаете в одном окне - должно появляться в другом. Если не появляется - то что-то с подключением или модулями, или софтом или еще чем. Если вместо символов (для верности, что бы избежать проблем с кодировками - использовать английский!) приходит какой-то мусор, то значит скорость на которой вы пытаетесь работать по bluetooth слишком большая. Занижайте скорость.
Таким образом можно проверить свой модуль блютуза, настройки софта и скорость которую он держит. А потом уже просто выставить это в прошивке Мегапирата и все ок.
P.S. Обратите внимание - в самой программе PuTTY при подключении тоже выставляется скорость подключения!
P.P.S. При тесте если скорость слишком превышает рабочую - то из 10-20 символов посланных потоком на один порт на 2м может появиться только 1н символ, при чем “левый”. Это нормально (не с софтом или еще чем проблема), просто скорость надо понизить.
Какой Мегапират? Версия Mission Planner?
По этой схеме как раз и делал. Не хочет работать. Не знаю , что еще попробовать. Может COM порт поменять , у меня COM15 ? Еще заметил, когда жму “Connect” в Mission Planner то долго думает около минуты, потом пытается что-то получить-передать по мавлинку, потом “Fail Connect” @ляха муха!
Посоветовали повесить на Serial 3 - не помогло.
Сейчас на работе, посмотреть не могу. Пират вроде R300, планнер последний. Важно, что бы сам блутуз был настроен на 115200 Baud Rates.
Спасибо Сергей! Переходник есть, PuTTY скачал. Проделал все как вы написали. Все , что печатаю в одном окне - мгновенно появляется в другом и наоборот. Без ошибок, скорость 115200. Значит не в блутусе дело, он работает нормально. Что в общем не удивительно т.к. с Мультивием пара работала безупречно. Что теперь делать, ума не приложу? Может дефайн какой-то нужно сделать, кроме скорости в Мегапирате?
У меня Mission Planner как то туго, тупо работает. Даже со шнурком жмешь Коннект и ждешь минуту. Изменить COM порт жмешь, еще ждешь минуту. Тормоза какие то. Это нормально? У вас так же?
Если питание идет не от аккума, то на FTDI порту не будет питания для БТ, в остальном должно работать нормально, попробуйте rx/tx местами поменять. У меня работает без проблем.
У меня блютуз работал только на 9600 стабильно. Забил и жду 3dr radio.
Очень странно. У меня несколько разных модулей JY-MCU (типа таких) работали со всеми контроллерами, от Multiwii до Ардупирата, Ардукоптера, Autoquad и YS-X4, ни разу с коннектом проблем не было.
Может с десктопной частью в Bluetooth что-то?
У меня также этот BT-модуль работает без проблем на любой скорости и 57k и 115k
Если питание идет не от аккума, то на FTDI порту не будет питания для БТ
Питание есть.
попробуйте rx/tx местами поменять
Пробовал. Не помогло.
Спасибо Сергей! Переходник есть, PuTTY скачал. Проделал все как вы написали. Все , что печатаю в одном окне - мгновенно появляется в другом и наоборот. Без ошибок, скорость 115200. Значит не в блутусе дело, он работает нормально. Что в общем не удивительно т.к. с Мультивием пара работала безупречно. Что теперь делать, ума не приложу? Может дефайн какой-то нужно сделать, кроме скорости в Мегапирате?
У меня Mission Planner как то туго, тупо работает. Даже со шнурком жмешь Коннект и ждешь минуту. Изменить COM порт жмешь, еще ждешь минуту. Тормоза какие то. Это нормально? У вас так же?
Вот это настораживает. А вообще смотря сколько в системе com портов есть. Я замечал, что чем больше их есть - тем больше тормоза при таких операциях. Он похоже просто при клике на списке ком-портов проверяет каждый, существует ли, отсюда и тормоза. Но что бы минуту…
На счет питания - солидарен, оно должно идти НЕ от регулятора, а от отдельного UBEC, подключенного на отдельный разъем к AIOP - если он 1й версии, как у меня был, то мне пришлось впаять 2ва штырька, ибо там вместо разъема было 2ва отверстия нераспаянных.
У меня AIOP вот отсюда (как и блютуз):
dx.com/…/crius-all-in-one-pro-v1-0-multiwii-megapi…
Там видно, на картинке в левом верхнем углу платы есть 2ва нераспаянных контакта возле пина 33.
Просто у AIOP есть заморочка: питание, поданное от регулятора скорости (ESC), питает только плату, а периферию (блютуз, gps) подключенную к плате не питает. Что бы периферия питалась через плату - питание нужно подавать через отдельный UBEC на эти специальные контакты.
Это описано в инструкции к AIOP.
Блютуз у меня вот такой:
dx.com/…/rius-mwc-multiwii-bluetooth-parameter-deb…
Только там ошибка в названии, не RIUS, а CRIUS.
P.S. Если запитаете от отдельного UBEC - не забудьте перемычку убрать, а то еще спалите ненароком… (это тоже можно подробно глянуть в инструкции)
P.P.S. У вас AIOP какой версии? Какая плата?