Прошивка Dshot для ESC

Сергей_Уж

update to T7

  • the FC FW now sends each Dshot signal twice, to ensure that the right signal can be read no matter of current spikes (thanks borisb for that idea )
  • the ESC uses now the full range of Dshot so 0-2000 (-24 as it starts the motor at 2,4%)

the GUI stays at T41 … there has nothing changed
i have tested it on some setups without any problems for now… but please, still be careful

Прошивка полетника теперь шлет ( повторяет ) каждый сигнал дважды, для уверенности что сигнал будет прочтен правильно даже несмотря на помехи ( идея Бориса )
ESC теперь использует полный диапазон значений от 0 - 2000 ( -24, пуск мотора происходит при величине 2,4% )
В графическом интерфейсе T41 ничего не поменялось. Автор протестировал несколько своих коптеров без единой проблемы, но все равно нужно быть осторожными.
Самой стабильной оказалась сборка T41 как показали тесты пользователей, поэтому автор вернулся снова к ней доработав и улучшив. Сама сборка
update to T7 находится на первой странице их форума
www.rcgroups.com/forums/showthread.php?t=2756129

Конфиги на которых автор тестировал прошивку
i took for testing:

my worst case copter:

  • some bad ZMR H quad clone
  • F40 (old ones 2204 2300kv)
  • DAL 5x4x3 probs
  • bad, loose wiring but sig GND connected

others:

  • krieger 5"

  • emax RS2205 2300KV

  • 5x4x3 HQ

  • good wiring (very less signal desyncs)

  • custom 4" X CF frame

  • emax RS2205 2600KV

  • 4x4x3 HQ

  • good wiring

custom 5" X CF frame

  • cobra 2204 2300KV
  • 5x4x4 HQ
  • very good wiring (prototype)
lokanaft

Чёт непонятно, тоже срывы у него там? И это на киссах с датчиком тока, который глушит плюс и не даёт проседать земле…

Сергей_Уж
lokanaft:

Чёт непонятно, тоже срывы у него там? И это на киссах с датчиком тока, который глушит плюс и не даёт проседать земле…

Было очень много ошибок в сигнале ( signal errors ) из за скачков тока , ошибка возникает из за the signal errors are still there on a bad wiring. Учимся хорошо паять…Но вот эта двойная посылка сигнала делает эту ошибку практически незаметной ( they are just almost not noticable… ). Борис пишет что избыточность это ключ к решению( это про повторы )Но , все равно проблем хватает, один пишет что уже с новой прошивкой на втором аке моторы в воздухе остановились.
Читаю как роман 😃 Хотелось бы что бы получилось и идея не сдохла…

lokanaft

Контакт он либо есть, либо его нет. Скорее под плохим он подразумевает отсутствие земли.

Сергей_Уж
lokanaft:

Контакт он либо есть, либо его нет. Скорее под плохим он подразумевает отсутствие земли.

Ну да, это две существующие неисправности в электронике, других нет “Контачит там где не нужно или не контачит там где нужно” 😃 И да когда плохая земля…

Mugz
Сергей_Уж:

И да когда плохая земля…

Вот кстати меня интересует этот вопрос. Стоит ли контур земли замыкать везде?

Н унапример земля от камеры идет на осд от осд до втх от втх до аккума, в это же время от аккума идет на бэк 5в от бэка на пк от пк идет только рх тх. Стоит ли мне землю от осд соеденить с полётником?

lokanaft

Если помех на видео нет, значит всё нормально.

Mugz
lokanaft:

Если помех на видео нет, значит всё нормально.

Помех нет. Но вот на входе питания сгорел коннектор отвечающий за землю.

Сергей_Уж

Testing out DShot 600 T7

Обновили
KISSFC-1.03-RC30-8-Dshot-T71
KISS24A_Dshot_T72_w_o_debug
Устранили ошибку остановки моторов
Update to FC T71 and ESC T72

on the FC there was a possible int overrun problem fixed which could be the reason for a motor stop

on the ESC’s the failure beep codes are more clear (if the ESC stops for a reason that is not disarm) also the debug version now counts all Dshot failures in the mah (consumption) output. to be more easy to see on the TX

Mugz

Выложили DShot для BLHeli_S

Dshot150 and Dshot300 are supported (as well as pwm, OS125, OS42 and MS).
Dshot600 is not supported, for two reasons. Most BLHeli_S ESCs have an input filter that is too slow. And the MCU is not fast enough (interrupt handling) to detect Dshot600.

Dshot150 и Dshot300 поддерживается (так же как pwm, OS125, OS42 и MS)
Dshot600 не поддерживается по двум причинам. Большинство BLHeli_S регуляторов имеют входной фильтр, который очень медленный. И MCU не достаточно быстрые (управление прерыванием???) для определения Dshot600

DuDlik
Mugz:

Dshot150 и Dshot300 поддерживается (так же как pwm, OS125, OS42 и MS)
Dshot600 не поддерживается по двум причинам. Большинство BLHeli_S регуляторов имеют входной фильтр, который очень медленный. И MCU не достаточно быстрые (управление прерыванием???) для определения Dshot600

А Betaflight еще нету же с поддержкой Dshot

Mugz
DuDlik:

А Betaflight еще нету же с поддержкой Dshot

Видимо для тех кто летает KISS FC + BLHELI_S

SergejK

Думаю зря они погнались за большим разрешением. 500, максимум 1000 шагов газа было бы за глаза. И позволило бы с меньшими ограничениями и проблемами портировать на большее количество железа. Толку то от высокой точности и скорости, если изза этого часть пакетов вообще не будет доходить. Кроме того 32КГц это уже больше, чем частота силовых импульсов подаваемых регулем непосредстсвенно на мотор, что лишает ее на мой взгляд вообще какого либо смысла.

lokanaft

Это всяко лучше, чем мало пакетов с низкой точностью с такими же потерями)

Я смотрю там в этой теме кондёров уже хоть отсыпай, то есть никакая помехоустойчивость не пришла.

arb
SergejK:

Думаю зря они погнались за большим разрешением. 500, максимум 1000 шагов газа было бы за глаза.

1000 шагов это 10 бит (10 импульсов), 2000 шагов - 11 бит. Как раз здесь большой разницы нет.

SergejK:

Толку то от высокой … скорости, если из-за этого часть пакетов вообще не будет доходить.

Вся проблема именно здесь. Для достижения высокой скорости приходится уменьшать ширину импульса, а это погрешность измерения 1 и 0. Когда на грани, ошибок не избежать.
Тут как раз бы остановились бы на самом принципе. Сделали бы 150, ну максимум 300. Так нет же, надо выжать все через край загубив саму идею.
Следующим просто введут цифровой протокол по 2 проводам (плюс земля) и прощай старые реги.

Mugz
arb:

Следующим просто введут цифровой протокол по 2 проводам (плюс земля) и прощай старые реги

Я за бидирекшионал

SergejK
lokanaft:

Это всяко лучше, чем мало пакетов с низкой точностью с такими же потерями

Это не два возможных варианта. Уменьшая битрейт за счет меньшей точности и частоты получается более высокая надежность передачи.

arb:

1000 шагов это 10 бит (10 импульсов), 2000 шагов - 11 бит. Как раз здесь большой разницы нет.

На мой взгляд 500 шагов было бы за глаза и уши. А это уже почти 20% разницы в ширине импульса и, что немаловажно - меньшее количество самих импульсов при передаче. Плюс ограничившись разумной частотой можно было бы иметь меньше гем**роя в разработке, отладке и портированию на имеющееся железо.

arb

Ну 500 это уже шаг назад от МШ. А ведь идея была создать что-то круче.
20% это 9 бит вместо 11. Зато в 4 раза менее точно.

Mugz

Братюня там во всю экспериментирует с Dshot1200. А это уже огого!

Сергей_Уж

Большое обновление
Felix
www.rcgroups.com/forums/showpost.php?p=35924094&po…
Update, and clean up from previous updates

T10 близко к тому как это должно быть (the T10 ESC FW has no functional changes to T91 just the settings and beep is new).
the working GUI for the KISS FC T10 FW is still the attached T8 GUI

what do we have ATM (28.10.2016)

KISS24A ESC’s (FW T10):

  • PWM, Oneshot125, Oneshot42 and Dshot autodetect
  • Dshot bitrate autodetect (100-1200khz)
  • version T91 was tested succesfully (before we had some motor stops) (T10 is similar from the Dshot reading side)
  • it now also accepts some settings and answers requests over Dshot:
    request area is 1-47
    the kiss24A uses 1-13 from it
    1-5: beep (1= low freq. 5 = high freq.)
    6: ESC info request (FW Version and SN sent over the tlm wire)
    7: rotate in one direction
    8: rotate in the other direction
    9: 3d mode off
    10: 3d mode on (3d mode dont workes with Dshot ATM)
    11: ESC settings request (saved settings over the TLM wire) (planed but not there yet)
    12: save Settings

if a setting or request value is sent, the motor must be standing still and the telemetry bit must also be 1.
critical things like rotation direction change, 3d mode on/off and save and reset, must be sent 10x in a row.

KISSFC (T10)

  • does Dshot150, Dshot300 and Dshot600 for the first four motor outputs
  • the ESC version reading workes now with Dshot(T10)
  • the FC can make the ESC’s beep (will be used for buzzer/ beacon in future) now it just beeps _- _-- after gyro is calibrated

betaflight also is working on the support for more targets
and also BLheli has first test versions ready (Dshot150 and Dshot300 as far as i know)

overall does all of this needs much more testing to find problems that might remain. at this point i want to thank all testers for risking their quads just to help developing this faster

but still, be very carefull when using these test versions… this thread exists because things ar enot save for now… only use it if you like to try new things and know that it might damage your stuff…

По ходу мне задавали вопросы по фейлсейфу ( Феликс):
failsave is 0.5seconds … so after 0.5seconds without a new valid signal it disarmes

Babay
Mugz:

Я за бидирекшионал

Кисс не зря так и сделали. Видимо к этому и придут.