ArduCopter Mega: порт на обычную Arduino (тестим)
2.7 R2 почему то не компилируется на атмегу 1280
(
c:/users/алексей/desktop/квадр/arduino-1.0.1/hardware/tools/avr/bin/…/lib/gcc/avr/4.3.2/…/…/…/…/avr/bin/ld.exe: ArduCopter.cpp.elf section .text will not fit in region text
c:/users/алексей/desktop/квадр/arduino-1.0.1/hardware/tools/avr/bin/…/lib/gcc/avr/4.3.2/…/…/…/…/avr/bin/ld.exe: region text overflowed by 6532 bytes)
, а если выбрать атмегу 2560 то занимает примерно 140 килобайт.
2.6 последняя версия замечательно помещается на 1280… как запихнуть 2.7 в атмегу 1280?
у меня троттл на rc3, сейчас значение там 1000
Это выходы на моторы. Поэтому 990 надо ставить на первых четырех каналах
Алексей (Sir Alex), а i2c GPS все еще не поддерживается?
Это выходы на моторы. Поэтому 990 надо ставить на первых четырех каналах
меняю на rc3 - и именно это значение идет на все 4 выходных канала.
Алексей (Sir Alex), а i2c GPS все еще не поддерживается?
неа… у меня такого GPS нету… так что я не напишу драйвер, ждите пока кто нибудь не переделает.
Всем доброго времени суток!
Вот пробую настроить подвес на 2.7 r3. И столкнулся с такой проблемой. Когда ставишь реверс например на roll, то по началу все работает ок, а через некоторое время инвертируется и pitch. И наоборот также. А иногда вообще pitch и roll сами собой меняются местами, те шатаешь аппарат в одной плоскости, а подвес компенсирует отклонение в другой, хотя пару минут назад все было нормально. В общем полный неадекват.
Кто нибудь настраивал подвес на этой прошивке? Есть идеи что не так?
Кто нибудь настраивал подвес на этой прошивке? Есть идеи что не так?
ИМХО, поддержка 3х осевого подвеса в оригинальном ArduCopter пока в стадии бета версии… это видимо последствия… судя по логу изменений, сейчас идет его доработка.
объясните, пожалуйста, значение параметра I. крутил сегодня от 0,05 до 0,16 - изменений не увидел. Р на одном уровне было - 2,0, D тоже не менял. все в стаб моде
почему может версия 2.7R3 при загрузке в Blackvortex выдавать ошибк
Такая же проблема
Как решить ?
Такая же проблема Как решить ?
Я думаю проблема в бутлоадере. В BV была партия с непонятны зашитым бутлоадером (похоже от меги 1280). Решение - перешить на бут от 2560, для этого нужен ISP программатор. Но своим программатором USBasp, мне не удалось залить только бутлоадер в BV. Пришлось слить с обычной ардуинки полный дам, вместе с прошивкой MPNG и и бутом - только после этого все нормально прошилось.
Я думаю проблема в бутлоадере. В BV была партия с непонятны зашитым бутлоадером (похоже от меги 1280). Решение - перешить на бут от 2560, для этого нужен ISP программатор. Но своим программатором USBasp, мне не удалось залить только бутлоадер в BV. Пришлось слить с обычной ардуинки полный дам, вместе с прошивкой MPNG и и бутом - только после этого все нормально прошилось.
А как же fuses? Они тоже могут влиять. Я шил бутлоадер avrdude (тот, что идет в комплекте с ардуиной) в командной строке. Напрямую ардуиной не получалось. Насколько я знаю, он поддерживает практически все программаторы, в том числе и USBAsp. Я пользовал AVRISP v2.
Сам AVRDude находится в папке “<папка arduino>\hardware\tools\avr\bin\”. В эту папку надо скопировать “avrdude.conf” из папки “<папка arduino>\hardware\tools\avr\etc\” и файл “stk500boot_v2_mega2560.hex” из папки “<папка arduino>\hardware\arduino\bootloaders\stk500v2\”.
Запускаем командную строку и переходим в папку “<папка arduino>\hardware\tools\avr\bin\”.
Сперва надо установить fuses (если у вас другой программатор, то надо поменять “avrisp” на соответствующее значение и указать правильный ком порт, например, COM4):
avrdude -P <comport> -b 115200 -c avrisp -p m2560 -v -e -U efuse:w:0xFD:m -U hfuse:w:0xD8:m -U lfuse:w:0xFF:m
Далее заливаем сам бутлоадер (аналогично задаем ком порт и корректный программатор):
avrdude -P <comport> -b 115200 -c avrisp -p m2560 -v -e -U flash:w:stk500boot_v2_mega2560.hex -U lock:w:0x0F:m
Пришлось слить с обычной ардуинки полный дам…
Скиньте слитый hex.
Попробовал с stk500boot_v2_mega2560.hex загрузка даже не начинается.
Не заливается прошивка даже если попытаться выбрав с помощью программатора (в ардуино 1,0,1)
Не понятно почему прошивка 2,6_R6 заливается без проблем?
Не понятно почему прошивка 2,6_R6 заливается без проблем?
Посмотрите, какого размера получается прошивка, когда вы ее заливаете (я просто уже не помню сколько было для 2.6). 2.7 - прилично распухла, поэтому бутлоадер не знает как такой размер заливать в проц.
А как же fuses?
Конечо, фьюзы и все остальное по мануалу. Пользовал то же avrdude, но хоть ты убейся чисто бут не хотел зашиваться и прошивка завершалась ошибкой верификации. Пока я не попробовал слить полный дамп со своей ардуинки и залить его - о чудо, все зашло с первого раза 😃
Скиньте слитый hex.
Скину как доберусь до плат…
Бутлоадер вроде бы знает размер флеши . Разница в объеме прошивок 2.6_R6 и 2.7_R3 ~20kb свободно более 100 кбайт.
Попробуйте еще что нить раскомментить в 2.6, например OSD и LED_SEQUENCER, когда размер флеша перевалит за 130k он перестанет заливаться…
Кстати, похожая проблема возникла у владельцев официальной APM1 1280… те то же лихорадочно пытаются уменьшить код или заменить чип на 2560 😃 Благо в случае BV - вопрос решается перешивкой…
когда размер флеша перевалит за 130k он перестанет заливаться…
Печально 😦
Делать-то что теперь ???
Можно ли в софте Ардуино скомпилировать 2.7_R3 в файл и залить его сторонним программатором ?
Делать-то что теперь ???
Прошивать новый бутлоадер с помощью внешнего программатора типа USBasp или AVRisp…
Действительно загрузчик расположен в середине флеши и видимо именно это не дает расположить прошивку более ~120…130 кб.
Как переместить загрузчик в конец флеши?
Программатор USBasp, софт Khazama AVR Programmer “понимает” HEX расположенный в<папка arduino>\hardware\arduino\bootloaders и корректно его заливает.
Софт eXtreme Burner - AVR этот же HEX не “понимает” в буфере одни FF.
C помощью редактора от UPA USB переместил загрузчик в конец флеши ,изменив адрес загрузчика в первой строке, но Khazama AVR Programmer не “понимает” созданного HEX файла ,eXtreme Burner - AVR этот же HEX “видит” вроде заливает в контроль, но контроль молчит 😦
Действительно загрузчик расположен в середине флеши и видимо именно это не дает расположить прошивку более ~120…130 кб. Как переместить загрузчик в конец флеши?
Вот полный дамп BlackVortex’a вместе с MPNG 2.7.1
www.siralex.info/files/BlackVortex_MPNG2.7.1.zip
Не забудьте только фьюзы правильно выставить:
efuse = 0xFD
hfuse = 0xD8
lfuse = 0xFF
Удачи! 😃
Вот полный дамп BlackVortex’a вместе с MPNG 2.7.1
Чем сливал ?
Khazama AVR Programmer не “понимает” этот HEX.
eXtreme Burner - AVR этот же HEX “понимает”, вроде даже заливает, но контроль молчит 😦