Обсуждение и перепрошивка регуляторов (ESC) прошивками SimonK/BLHeli

arb

Дшот интересен тем, что не надо калибровать. Ну и нужен ПК, чтобы его поддерживал.

kaos

я имел ввиду bidirectional dshot, rpm filter и jesc blheli

arb

Хорошо. Можно сказать по другому (хотя Вы мало дали исходной инфы и приходится больше гадать зачем Вам это).
Если у Вас рег с Блхели32, то у Вас уже все есть. Сам протокол дшот уже все это как бы имеет (он был создан с запасом).
Проблема была в ПК, там не было всех функций. А т.к. этой функции в ПК сразу не было, то ее и ввели отдельно. Повторю, в реге она уже была. Бдшот - это всего лишь обратная связь. Позволяет получить данные с рега: обороты мотора, напряжение, ток. Надо Вам это или нет решать Вам.
По мне пока это больше игрушка (пустая возможность, т.к. чтобы анализировать нужен лог и знания, в воздухе это делать крайне сложно). Данную функцию хорошо использовать для диагностики исправности (степени горелости) самого рега, ну и мотора заодно. Но для этого требуется написать тестовую часть. А что-то сомнения берут, что до этого у кого-то дойдут мозги. Это как иметь, к примеру, микроскоп, а знаний как им пользоваться нет. Поэтому все на что хватает мозгов это поставить его на полку для красоты и говорить, что он у меня есть.

Железяка
kaos:

Скажите честно, bdshot на blhelis - стоит заморачиваться?

Если только ради самой заморочки и спортивного интереса. Если все летает как вам хочется то зачем что то менять. В погоне за излишнем, можно потерять необходимое. Но это хобби и … ну любопытно же.

kaos

Все таки не удержался, купил лицухи на jflight, прошил-настроил. Теперь жду погоды))

7 days later
Multisoft

Подскажите.
Имеется USBASP V2.0 и регуляторы XXD 30A с banggood’a
Подпаял проводочки:

Выбираю прошивку TGY в kkMulticopterFlashTool, начинаю шить, ошибка:


Flash the firmware from repository.

H:\KKMF\lib\avrdude\windows\avrdude.exe -C H:\KKMF\lib\avrdude\windows\avrdude.conf -p m8 -P usb -c usbasp -e -U lfuse:r:H:\KKMF\tmp\/lfuse.hex:r -U hfuse:r:H:\KKMF\tmp\/hfuse.hex:r

avrdude.exe: warning: cannot set sck period. please check for usbasp firmware update.
avrdude.exe: AVR device initialized and ready to accept instructions

Reading | ################################################## | 100% 0.01s

avrdude.exe: Device signature = 0x1e9307
avrdude.exe: erasing chip
avrdude.exe: warning: cannot set sck period. please check for usbasp firmware update.
avrdude.exe: reading lfuse memory:

Reading | ################################################## | 100% 0.00s

avrdude.exe: writing output file "H:\KKMF\tmp\/lfuse.hex"
avrdude.exe: reading hfuse memory:

Reading | ################################################## | 100% 0.00s

avrdude.exe: writing output file "H:\KKMF\tmp\/hfuse.hex"

avrdude.exe done.  Thank you.


H:\KKMF\lib\avrdude\windows\avrdude.exe -C H:\KKMF\lib\avrdude\windows\avrdude.conf -p m8 -P usb -c usbasp -e -U lfuse:w:4:m -U hfuse:w:154:m

avrdude.exe: warning: cannot set sck period. please check for usbasp firmware update.
avrdude.exe: AVR device initialized and ready to accept instructions

Reading | ################################################## | 100% 0.00s

avrdude.exe: Device signature = 0x1e9307
avrdude.exe: erasing chip
avrdude.exe: warning: cannot set sck period. please check for usbasp firmware update.
avrdude.exe: reading input file "4"
avrdude.exe: writing lfuse (1 bytes):

Writing | ################################################## | 100% 0.00s

avrdude.exe: 1 bytes of lfuse written
avrdude.exe: verifying lfuse memory against 4:
avrdude.exe: load data lfuse data from input file 4:
avrdude.exe: input file 4 contains 1 bytes
avrdude.exe: reading on-chip lfuse data:

Reading | ################################################## | 100% 0.00s

avrdude.exe: verifying ...
avrdude.exe: 1 bytes of lfuse verified
avrdude.exe: reading input file "154"
avrdude.exe: writing hfuse (1 bytes):

Writing | ################################################## | 100% 0.00s

avrdude.exe: 1 bytes of hfuse written
avrdude.exe: verifying hfuse memory against 154:
avrdude.exe: load data hfuse data from input file 154:
avrdude.exe: input file 154 contains 1 bytes
avrdude.exe: reading on-chip hfuse data:

Reading | ################################################## | 100% 0.00s

avrdude.exe: verifying ...
avrdude.exe: 1 bytes of hfuse verified

avrdude.exe done.  Thank you.

The downloaded zip file containing the choosen hex was damaged, try again. If that doesn't work restart the application.
If the problem still occures, write a bug report.
Error during writing flash.

Куда копать?

gorbln
Multisoft:

Куда копать?

Эммм… А почему сначала фьюзы, а потом прошивка? Может, конечно, это не критично ни разу, но всё-таки

Multisoft
gorbln:

Эммм… А почему сначала фьюзы, а потом прошивка? Может, конечно, это не критично ни разу, но всё-таки

В общем такая ситуёвина произошла.
Подключил USBasp к полетнику, запустил kkMulticopterFlashTool выбрал прошивку, нажал залить прошивку.
Вначале происходит стирание прошивки в полётнике, (причём как я понимаю, программа должна считать фьюзы с полётника) затем должна залиться новая прошивка, но она не залилась, должны прописаться фьюзы обратно в полётник, так как в самой прошивке их нет.
В итоге регуль не работает, пошёл к другу, у него куча программаторов, подключили через программатор регуль, нажали считать прошивку, а там пусто т.к. kkMulticopterFlashTool стёрла её.
Далее в папке с программой есть папка tmp, в ней файлик firmwares.xml, в котором есть ссылки и зеркала на все прошивки, открываем его блокнотом, ищем прошивку в моём случае это: TGY 2015-04-09 находим ссылку tgy-2015-04-19.zip внутри архива несколько прошивок. Нам нужна: tgy_8mhz.hex, а вот теперь место где мы накосячили…
Нужно было программатором считать фьюзы, а мы сразу залили прошивку и фьюзы поменялись, тем самым заблокировав ATMEL’ку, дальнейшие действия искать панельку и выпаивать ATMEL’ку либо купить новую за 95р и прошить… Вот в раздумьях уже))

Flash the firmware from repository.

H:\KKMF\lib\avrdude\windows\avrdude.exe -C H:\KKMF\lib\avrdude\windows\avrdude.conf -p m8 -P usb -c usbasp -e -U lfuse:r:H:\KKMF\tmp\/lfuse.hex:r -U hfuse:r:H:\KKMF\tmp\/hfuse.hex:r

avrdude.exe: error: programm enable: target doesn't answer. 1
avrdude.exe: initialization failed, rc=-1
             Double check connections and try again, or use -F to override
             this check.


avrdude.exe done.  Thank you.

Error during reading of high fuse.
Flashing of firmware aborted.

PS. Кстати на всякий случай обновил USBasp прошивкой последней аж 2011 года, но толку нет… Ибо не хочет через него всё равно шить.

Подключил второй регуль c мотором к USBasp, воткнул в USB пищит, считал фьюзы:

Cформированная командная строка:
avrdude.exe -p m8 -c usbasp -P usb -U flash:r:"H:\KKMF\AVRdude-v3.3\fuse.hex":i


avrdude.exe: AVR device initialized and ready to accept instructions

Reading | ################################################## | 100% 0.00s

avrdude.exe: Device signature = 0x1e9307
avrdude.exe: reading flash memory:

Reading | ################################################## | 100% 3.86s

avrdude.exe: writing output file "H:\KKMF\AVRdude-v3.3\fuse.hex"

avrdude.exe: safemode: Fuses OK (E:FF, H:9F, L:04)

avrdude.exe done.  Thank you.

Считал EEPROM с регуля:

:20000000FFFFFFFFFFFFFFFFFF04670763FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF27
:20002000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFE0
:20004000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFC0
:20006000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFA0
:20008000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF80
:2000A000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF60
:2000C000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF40
:2000E000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF20
:20010000FFFFFFFFFFFFFFFFFF5554FFFFFFFFFF0800000000010000FF0000FFFFFFFFFF41
:20012000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFDF
:20014000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFBF
:20016000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF9F
:20018000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF7F
:2001A000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF5F
:2001C000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF3F
:2001E000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF1F
:00000001FF
gorbln
Multisoft:

error: programm enable: target doesn’t answer.

Ну, это туши свет. Такой камень (видимо, с заблокированным RESET pin) можно оживить только высоковольтным параллельным программатором. Или Fuse doctor что ли оно называется, забыл уже. Короче, проще новый купить.

Babay

Хотел заменить на полетнике EFM8BB10 на EFM8BB21, но столкнулся с проблемой. Не могу прошить новые чипы через C2-протокол. Старые, уже использованные, прошиваются на ура, а абсолютно новые из 20 штук только 1 получилось прошить. Чем только не пробовал прошивать. Даже через заводской бутлоадер пробовал залить прошивку по рекомендациям с fishpepper.de. Если рассматривать вариант с ардуиной, то сначала в нее заливал прошивку 4way для D2-D3-выходов, соединял D2-C2D, D3-C2CK, на чип подавал 3.3В. И все, BLHeliSuite не видит чипа, если он новый. Старый - без проблем. Может есть какая хитрость с первичной прошивкой чипа? Типа какую-либо ногу куда нить подтянуть или резистор где поставить, чтобы завести C2-протокол? Три дня интернет копал - не помогло. Ну не могут же 19 чипов из 20 быть дохлыми. Наверняка сам где-то туплю. Выручайте!

Multisoft

Удалось мне прошить XXD 30A но только через AVRDUDE v3.3
Поехал на рынок купил микруху atmega8 за 88р цены разнятся до 300р =)
Феном сдул заблокированную, накатил новую.
Пытаюсь прошить не шьётся, вылезает ошибка 7b, полез икать нашёл))
Нужно в папке с программой добавить строки в файл programm.ini


[USBasp -B 3]
progisp=usbasp -B 3
portprog=usb
portenabled=0

[USBasp -B 1]
progisp=usbasp -B 1
portprog=usb
portenabled=0

Считываем прошивку с рабочего регулятора:
Запускаем AVRDUDE, выбираем во вкладке ATmega8
Нажимаем кнопку считать (проверяем, работает ли вообще свисток USBASP), если читается, продолжаем:
FLASH - нажимаем считать и сохраняем в файлик firmware.hex
EEPROM - нажимаем считать и сохраняем в файлик eeprom.hex
Переходим на вкладку Fuses, ставим точку на прямые, нажимаем считать и делаем скриншот.

Прошивка:
Подключаем ESC к USBASP и подключаем к компьютеру
Запускаем AVRDUDE, нажимаем вкладку Automatic programming, Настройки, выбираем USBasp -B 3
Возвращаемся на вкладку Program, нажимаем Стереть всё (если не получится и вылезает ошибка, попробуйте выбрать USBasp -B 1)
Скачиваем прошивку: tgy-2015-04-19.zip распаковываем, нам нужен от туда только tgy.hex файл прошивки.
Переходим в AVRDUDE, выбираем в FLASH, находим нашу прошивку tgy.hex и нажимаем Программирование
Выбираем в EEPROM, находим наш сохранённый eeprom.hex и нажимаем Программирование
Переходим на вкладку Fuses, нажимаем считать, открываем наш скриншот, выставляем как там в программе и нажимаем Программирование
Если мотор подключен к регулю, мотор должен издавать пиканье через определённые промежутки времени.
Отключаем от компа, проверяем на коптере, чтоб не спалить регуль лучше подключать через нагрузку, например лампочку.

Слева прошитый регулятор, справа нет.

25 days later
Golfsy

Добрый вечер. Сгорел один регуль на коптере, к сожалению производитель не известен т.к. наклеек давно нет и где покупал их тоже нет. Есть информация что они 25а - пик 35а, чип EFM8BB21 прошивка Q-H-15, размер где-то 24х11. Близкое по этим параметрам SPEDIX ES25 но у него прошивка C-H-15. Насколько это критично для одной связки регулей или забить т.к. ПК сам ими оперирует ( DShot ).Возможно ли по номеру прошивки найти инфу приблизительно в какие регули она заливалась и искать этого производителя. Спс.

rc468
Golfsy:

Насколько это критично для одной связки регулей

вообще не критично
лишь бы поддерживало DSHOT

Mef78
whoim:

Подскажите, вот на эти регули jesc встанет? Хочется rpm-фильтрацию. Опознаются как a-h-25.
Да, в мануале к jesc написано, что если посередке буква H, то поддерживают. Но вдруг есть нюанс )
Прошивка то платная…

Шьются, и под платный JESC с bidirectional DSHOT, и под бесплатный JazzMaverick

jeka101
Multisoft:

Нужно было программатором считать фьюзы, а мы сразу залили прошивку и фьюзы поменялись, тем самым заблокировав ATMEL’ку, дальнейшие действия искать панельку и выпаивать ATMEL’ку либо купить новую за 95р и прошить… Вот в раздумьях уже))

Я так тоже косячил. Когда подвес делал.
Но забавно то что во фьюзах я вообще не понимал в итоге заблочил 3 атмеги. В итоге когда почитал литературу и понял что сделал, собрал себе панельку и разблочил все атмеги. Забавные танцы с бубнами были…)

crand
Mef78:

под бесплатный JazzMaverick

Подскажите, пожалуйста, кто знает, чем отличаются прошивки RC1, RC2, RC3? Или не лезть на последнюю (16.8) версию и обойтись 16.79?

16 days later
Mef78
AlexKolik:

мне нужен реверсивный регулятор

2 любых провода на моторе поменять местами, мотор будет крутиться в другую сторону, вот и весь реверс.
Или вам нужен bidirectional режим ?

AlexKolik
Mef78:

2 любых провода на моторе поменять местами, мотор будет крутиться в другую сторону, вот и весь реверс.
Или вам нужен bidirectional режим ?

Да, bidirectional. Хочу с аппаратуры переключать направление вращения

rc468

Не попадались ли кому такие регуляторы?
HM15A-L BLheli REV11.2
Там прошивка BLHeli. Конфигуратор видит (через стек с Айнавом), что они есть, но конфигурацию из них прочесть не может. Сами они рабочие, но в сравнении с другими оказались менее эффективными. Может, есть смысл их прошить, чтобы хотя бы параметры можно было увидеть? Только вот не знаю, какую модель прошивки взять.