ArduCopter Mega: порт на обычную Arduino (тестим)

Sir_Alex

Это что, я вот вчера хотел полетать. Запускаю коптер, даю газу… а он не взлетает, я еще газу - он не взлетает. Смотрю, а он дует не в ту сторону!
Долго не мог понять, как я умудрился неправильно настроить вращение моторов. Уже пошел перепаивать и обнаружил что я просто неправильно поставил все пропеллеры, хы хы. 😃

Sir_Alex
tusik:

Из первых замечаний: не работает PPM SUM. В 49 работает

Странно, там вроде ничего не менялось…

Кстати, скоро должны снова появится в продаже FreeIMU 0.3.5_MS с барометром MS5611 😃

Sir_Alex
Syberian:

это такой новый ОСД называется Black Vortex HUD или bvHUD

Мне Сергей говорил что делает свой OSD.
На чем сделали по итогу? AVR или ARM. Видео чем обрабатывается MAX7456 или просто SYNC ловите?

Syberian

что там за Сергей? 😃
единственно кого я знаю - это Алекс Иванов. Сделано на AVR, полностью графический, без макс

tusik
tusik:

не работает PPM SUM.

Опять сам дурак:) Не то раскоментил. Пока все на столе работает. Только что-то подтормаживает. Толи новый планер, толи прошивка…

Sir_Alex

😵

Syberian:

что там за Сергей?

ММммм… а CSG_EU разве не Сергеем зовут? видно я попутал…

tusik

Подлетел в квартире. Вроде нормально. Надо идти на улицу тестить

Syberian

Алекс, а зачем вам столько лишних библиотек? Причем, Wire, как обычно, отсутствует.
Реально в 49, к примеру, используется только 20 шт. Остальные созданы владельцами других веток, транков и тянутся с незапамятных времен. Почистить?
*начинаю тестить 2.1*

Еще соображение. Может быть, имеет смысл исключить температуру из формулы подсчета баровывсоты? А то зима, понимаешь, вытащил коптер из машины, показывает -6 град. и высоту 0. Через минуту показывает -15 и высота грохнулась сразу на 30 метров 😃 Для alt_hold это просто прелесть 😃

Sir_Alex
Syberian:

Причем, Wire, как обычно, отсутствует.

Wire больше не используется 😃

Syberian:

Алекс, а зачем вам столько лишних библиотек?

Мне они не мешают. Зачем их вырезать, вдруг завтра окажется, что они нужны? Или я завтра перестану поддерживать прошивку, придет новый человек, и будет ломать голову, зачем выкинули OpticFlow, а вдруг я его подключу?

Syberian:

Еще соображение. Может быть, имеет смысл исключить температуру из формулы подсчета баровывсоты? А то зима, понимаешь, вытащил коптер из машины, показывает -6 град. и высоту 0. Через минуту показывает -15 и высота грохнулась сразу на 30 метров Для alt_hold это просто прелесть

Если я правильно понимаю, то температура там как раз и используется для компенсации изменения давления от температуры. Ну или я бы ее для этого и использовал бы.

Тут на самом деле и ходить далеко не надо, у меня плата лежала на столе включенной, за час могло 17 метров набежать. Я думаю давление само по себе меняется в течении дня…

Syberian

Взято из архива. Не компилируется 😭 Еще и SPI просит. Библиотеки закопированы. Закоментил SPI - стало еще больше ероров. Я не жалуюсь, полез фиксить, только вот как tusik умудрился запустить?

D:\mydocs\arduino\arduino-0022\libraries\APM_RC\APM_RC.cpp:211: error: definition of implicitly-declared 'APM_RC_Class::APM_RC_Class()'
D:\mydocs\arduino\arduino-0022\libraries\APM_RC\APM_RC.cpp:217: error: prototype for 'void APM_RC_Class::Init()' does not match any in class 'APM_RC_Class'
D:\mydocs\arduino\arduino-0022\libraries\APM_RC\/APM_RC.h:51: error: candidate is: virtual void APM_RC_Class::Init(Arduino_Mega_ISR_Registry*)
D:\mydocs\arduino\arduino-0022\libraries\APM_RC\APM_RC.cpp:409: error: no 'void APM_RC_Class::Force_Out0_Out1()' member function declared in class 'APM_RC_Class'
D:\mydocs\arduino\arduino-0022\libraries\APM_RC\APM_RC.cpp:415: error: no 'void APM_RC_Class::Force_Out2_Out3()' member function declared in class 'APM_RC_Class'
D:\mydocs\arduino\arduino-0022\libraries\APM_RC\APM_RC.cpp:421: error: no 'void APM_RC_Class::Force_Out6_Out7()' member function declared in class 'APM_RC_Class'
D:\mydocs\arduino\arduino-0022\libraries\APM_RC\APM_RC.cpp:430: error: no 'bool APM_RC_Class::setHIL(int16_t*)' member function declared in class 'APM_RC_Class'
D:\mydocs\arduino\arduino-0022\libraries\APM_RC\APM_RC.cpp: In member function 'virtual void APM_RC_Class::clearOverride()':
D:\mydocs\arduino\arduino-0022\libraries\APM_RC\APM_RC.cpp:456: error: '_HIL_override' was not declared in this scope
D:\mydocs\arduino\arduino-0022\libraries\APM_RC\APM_RC.cpp: At global scope:
D:\mydocs\arduino\arduino-0022\libraries\APM_RC\APM_RC.cpp:462: error: cannot declare variable 'APM_RC' to be of abstract type 'APM_RC_Class'
D:\mydocs\arduino\arduino-0022\libraries\APM_RC\/APM_RC.h:47: note:   because the following virtual functions are pure within 'APM_RC_Class':
D:\mydocs\arduino\arduino-0022\libraries\APM_RC\/APM_RC.h:51: note: 	virtual void APM_RC_Class::Init(Arduino_Mega_ISR_Registry*)
D:\mydocs\arduino\arduino-0022\libraries\APM_RC\APM_RC.cpp:360: note: 	virtual void APM_RC_Class::OutputCh(uint8_t, uint16_t)
D:\mydocs\arduino\arduino-0022\libraries\APM_RC\APM_RC.cpp:387: note: 	virtual uint16_t APM_RC_Class::InputCh(uint8_t)
D:\mydocs\arduino\arduino-0022\libraries\APM_RC\APM_RC.cpp:402: note: 	virtual uint8_t APM_RC_Class::GetState()
D:\mydocs\arduino\arduino-0022\libraries\APM_RC\APM_RC.cpp:453: note: 	virtual void APM_RC_Class::clearOverride()
D:\mydocs\arduino\arduino-0022\libraries\APM_RC\/APM_RC.h:56: note: 	virtual void APM_RC_Class::Force_Out()
D:\mydocs\arduino\arduino-0022\libraries\APM_RC\/APM_RC.h:57: note: 	virtual void APM_RC_Class::SetFastOutputChannels(uint32_t)

Дополнение: релакс не поможет, т.к. под 1280 тоже не компилится.

tusik

Без проблем все скомпилилось

SovGVD

у меня кстатии косяк с компиление был после обновления arduino ide и компилятора - так и не удалось в итоге в archlinux собрать - ругается на всё что только можно

Sir_Alex

Удали старые либы 😉
APM_RC.cpp уже не существует
Кстати, люди с rcgroups уже летали на этой прошивке. Говорят неплохо летает, правда пиды надо чуток подкручивать.

Syberian

Ну пипец… Скомпилилось. имхо, если уж включать ВСЕ библиотеки, то почему бы не добавить SPI? А то и не знаешь, что именно грохнуть, а что оставить в библиотеках. Не все же люди запускают проект from scratch.

tusik

Вечером пойду забирать ребенка из школы и попробую подлетнуть

Sir_Alex
Syberian:

Ну пипец… Скомпилилось. имхо, если уж включать ВСЕ библиотеки, то почему бы не добавить SPI? А то и не знаешь, что именно грохнуть, а что оставить в библиотеках. Не все же люди запускают проект from scratch.

Вообще то, в release_notes написано, что надо удалить старые библиотеки и скопировать заново ( и так было всегда!). SPI это стандартная либа Arduino, нафига ее добавлять?

Syberian
Sir_Alex:

что надо удалить старые библиотеки и скопировать заново ( и так было всегда!). SPI это стандартная либа Arduino

Чтобы меньше работы end-user делал. Это ведь несложно.

Syberian

===
жпс на вортексе не детектится, пишет disabled, хотя выбрал именно свою плату. Перебрал все типы ЖПС из дефайна (уже явно указывал жпс_протокол) - не детектится. Сейчас попробую свою старую либу, которая работает аки танк и всегда.
Кстати, тест-функция ЖПС в кли закоменчена 😃

Из нового пока понравилась функция “тройной энтер” : типа прощай CLI-свитч!!!

Блин, не пойму, где косяк. Засунул библиотеку от 2.0.49 - НЕ работает. Примеры поюзал - то же самое.
Целиком грохнул все библиотеки и перенес из 49-й папки: детектед! (49-ка). В чем дело? подозреваю fastserial новый. больше оно ничего не использует.

===
еще добавка: пример из ap_gps не работает ни там ни там.

Syberian

===
опять добавка. Перепробовал все, что можно. Ничего не работает с GPS, кроме MPP и MPNG 49. И кеш, и скорости, и тип крутил. Может, у меня GPS-ка е…тая? Мну расстроено, бросаю 2.1 до выяснения 😦

Sir_Alex
Syberian:

опять добавка. Перепробовал все, что можно. Ничего не работает с GPS, кроме MPP и MPNG 49. И кеш, и скорости, и тип крутил. Может, у меня GPS-ка е…тая? Мну расстроено, бросаю 2.1 до выяснения

Ничего не могу подсказать по GPS, у меня его нет в принципе, но там вроде ничего не менялось. FastSerial то же не менялся…

tusik

Мой ГПС от Г-ОСД определился, правда в квартире спутники не ловит