Cheerson CX-20 клон квадрокоптера DJI Phantom

MFer
MFer:

Не, 13ю ногу правильно замкнул. Склоняюсь к варианту с бутлодером. Завтра буду шить, все вроде нашел, подпаяюсь завтра и юсбасп через аврдуд прошьюсь… седня устал ))

итак, бутлоадер с DFU прошил успешно.
пины для USBAsp подключал так:
i68.tinypic.com/258zevk.png

получилось в итоге так:

Программа, упрощающая работу с Avrdude, драйвера USBAsp, прошивка с DFU бутлодером, а также “родная” прошивка с моей атмеги - лежат тут.

До этого момента все шло обнадеживающе ))

А теперь вывод - прошивка со sbus у меня не заработала - после ее заливки контроллер вообще не определяется компом…
откатился на слитую предусмотрительно родную - все ок.

как-то так…

возможно это из-за того что у меня ATMega16U2 вместо 32U2, видел в нете фотки контроллеров чирика с 32-ым чипом… возможно на нем заработает…

drdupery
MFer:

возможно это из-за того что у меня ATMega16U2 вместо 32U2

подозреваю, что причина именно в этом, что нужна 32U2

An_private

Хм. Любопытно. Вроде нашёл исходники:
github.com/ArduPilot/ardupilot/issues/1645
Надо будет почитать - может надо собрать версию под 16U2 отдельно. В коде стоят и 16U2 и 32U2, так что код должен работать на любом. Но, возможно, надо компилировать со своими ключами.

Да, так и есть - код собирается под конкретный процессор. Опция под 16U2 есть, так что должен собраться на нём, но это надо делать отдельно. Сейчас попробую.

Кто может проверить? В приложении два hex файла - один dfu bootloader, второй основной код. Скомпилировано под 16U2, но пока без s-bus - просто проверить, что всё компилируется правильно.

tmp_16u2.zip

An_private

Так, добавил еще скомпилированную версию под s-bus - если прокатит, то хорошо 😃

tmp_16u2.zip

MFer

Попробую обязательно, но уже завтра )

An_private

Так, немного неправильно скомпайлил, вроде сейчас s-bus правильно собран.
ps: по крайней мере надеюсь на это 😃

tmp_16u2.zip

darkcats
An_private:

Да, кстати, автор s-bus прошивки присутствует на форуме 😃
rcopen.com/forum/f90/topic132831/6266

ну че, а чем они в коде, ключами отличаются и все? по функционалу то как? зачем то ведь ставят 32 вместо 16

drdupery
darkcats:

по функционалу то как? зачем то ведь ставят 32 вместо 16

32U2 - 32 kBytes flash памяти, 1KB EEPROM, 1KB SRAM
16U2 - 16 kBytes flash памяти, 512B EEPROM, 512-Byte SRAM
остальной функционал одинаковый

если прошивка больше 16 килобайт, то в версию 16U2 не влезет
также если нужно прошивке в своей работе больше оперативной памяти, то также работать не будет

darkcats
drdupery:

32U2 - 32 kBytes flash памяти, 1KB EEPROM, 1KB SRAM
16U2 - 16 kBytes flash памяти, 512B EEPROM, 512-Byte SRAM
остальной функционал одинаковый

если прошивка больше 16 килобайт, то в версию 16U2 не влезет
также если нужно прошивке в своей работе больше оперативной памяти, то также работать не будет

ну а тут то, ничего? прокатит? хватает? а может тупо ее перепаять?

An_private
drdupery:

если прошивка больше 16 килобайт

5 512 байт. Сколько оперативки надо - а фиг его знает - вроде при компиляции ошибок не было.

drdupery
An_private:

5 512 байт. Сколько оперативки надо - а фиг его знает - вроде при компиляции ошибок не было.

вот поэтому китайцы и впаяли чип 16U2, берегут каждый цент 😃

darkcats
drdupery:

вот поэтому китайцы и впаяли чип 16U2, берегут каждый цент 😃

а кто говорил что были версии с 32 чипом?

drdupery
darkcats:

а кто говорил что были версии с 32 чипом?

у нас в cx-20 клон apm схема один в один практически, а в apm выше же были фотки стоит именно 32U2

darkcats
drdupery:

у нас в cx-20 клон apm

но все же КЛОН! были или нет именно чирики я 32 схемой?

drdupery
darkcats:

но все же КЛОН! были или нет именно чирики я 32 схемой?

а какая разница, на что это влияет?

darkcats
drdupery:

а какая разница, на что это влияет?

на сто процентную работоспособность…

drdupery
darkcats:

на сто процентную работоспособность…

отличия по программной памяти и оперативной, программной хватает
остаётся только вопрос по оперативной, но 512 байт по идее очень даже не мало
т.е. вероятность работоспособности я бы сказал очень высока и тем более, что при компиляции ошибок не было, а компилятор проверяет и использование оперативной памяти также

An_private

--------- Target Information ---------
AVR Model: atmega16u2
Board: USER
Clock: 16000000Hz CPU, 16000000Hz Master
--------------------------------------

Size after:
AVR Memory Usage
----------------
Device: atmega16u2

Program: 5512 bytes (33.6% Full)
(.text + .data + .bootloader)

Data: 510 bytes (99.6% Full)
(.data + .bss + .noinit)

darkcats
An_private:

Вот здесь на фото хорошо виден 32u2

надо свой вскрыть…

drdupery
An_private:

Data: 510 bytes (99.6% Full)

на пределе, возможны нюансы, нужно пробовать
куда ж они столько памяти сожрали 😃
но s-bus для cx-20 это хорошая тема для тех, кто сменил штатную аппаратуру

An_private
drdupery:

куда ж они столько памяти сожрали

Буфера под USB. Судя по тому, что в makefile штатно есть опции и для 16u2 и для 32u2 - всё должно работать и там и там.

drdupery
An_private:

всё должно работать и там и там.

я тоже так считаю, а на чём там затык в данный момент, ничего у MFer не заработало?

а он 32U2 влил в 16U2, думаю, что если зальёт 16U2 в 16U2, то всё будет ok
можно скомпилить 32U2 и посмотреть сколько байт используется и если > 512, то вот он и ответ

An_private

--------- Target Information ---------
AVR Model: atmega32u2
Board: USER
Clock: 16000000Hz CPU, 16000000Hz Master
--------------------------------------

Size after:
AVR Memory Usage
----------------
Device: atmega32u2

Program: 5512 bytes (16.8% Full)
(.text + .data + .bootloader)

Data: 510 bytes (49.8% Full)
(.data + .bss + .noinit)