Bi-directional dshot - testers wanted

Do you have the bin file?

Yes, sent it to you.

You are getting 100% errors on the ESCs so no RPM information. Since someone else has got it to work on this board I am either thinking BLHeli32 version or ESCs. Are you able to use vanilla 32.7?

I don’t know. I’ll make up a cable so I can use another FC flashed with Betaflight so I can talk to this one and see what’s possible.

Sorry, I’ll test the later version when I can

That’s what Dev is all about :grinning: I appreciate the help.

@andyp1per I see strange behavior with MatekH743 and Blheli32 ESC (HAKRC-35A-BLheli-32):

  • With ‘MatekH743-bdshot’ FW if I set DShot150 or DShot300 motors doesn’t spin when I arm, sometimes if I reboot and / or power OFF - ON they spin (after arming) but I don’t find a logical scheme. With DShot600 motors always spin after arming.
  • With ‘MatekH743’ FW I have no problems: DShot150, DShot300 and DShot600 always OK.

I just tested this. I have been running on Dshot1200. Seems to be OK with the bdshot FW and Dshot150 with my ESC (Aikon AK32PINV2 with 32.7). Lot of variables here…

1 Like

Strange. But perhaps this gives me some data to go on. I had similar issues on the Beast H7 but no way to get a trace to see what was going on the wire. I’ll see if I can reproduce this behaviour.

Hi @andyp1per Could I ask a favor? Include the IMU Temp comp in your BDshot build for the Kakute F7-Mini? I’m experimenting with that with the Matek H743 and it’s looking good. That one BDshot isn’t working but on this FC it is.

:smiley: the default KakuteF7Mini build includes BDShot so you can just download one from the firmware server

Cool, I didn’t realize that. Thanks!!

Now I realize it looks like this is feature limited out of 1Mb boards. Well, at least I learned BDshot is a normal build :slight_smile:

No - most boards you have to select the -bdshot build in order to get bdshot. My patch to do this was recently merged so you can now find them on the firmware server, e.g. https://firmware.ardupilot.org/Copter/latest/MatekH743-bdshot

I have spent some time testing the Matek board with BLHeli32 and BLHeli_s with 32.7 - all works fine as far as I can tell. There is no later version than 32.7 and that works fine for me. One thing to note - you must turn off SERVO_BLH_DEBUG. Neither pass-through nor bdshot will work properly if you have this on - both are very timing sensitive and turning on debug interferes with this.

1 Like

Yes, got that.

Passthru doesn’t work for me with a Matek H743-Mini and the Aikon 4in 1 I have. Flash to Betaflight and it does. I just did this again to check out some new ESC features and back to Arducopter now. No go there. But it’s configured and flying so no worries.

Ah that’s a shame. I would probably have to get both of those to diagnose further, it’s almost certainly timing related. What dshot speed are you using? I only tried Dshot600.

Hi @andyp1per is it OK to use bidir Dshot with Dshot600?

As I said above With MatekH743-bdshot and and my Blheli32 ESC (HAKRC-35A-BLheli-32) if I set DShot150 or DShot300 motors doesn’t spin an arming (almost never).

I found a scheme, I don’t know if could be of help, anyway:
if I boot with DShot300 doesn’t work, if I boot with Dshot600 then arm / disarm, set DShot300 and reboot it works.

I do all my testing with dshot600 so should be fine. I’ll have another go with the Matek with Dshot150 to see if I can spot anything.

In the interests of transparency I should point out that I am doing my testing with https://github.com/ArduPilot/ardupilot/pull/15984 as without it I get an immediate watchdog on this board if I try and calibrate accels. Might be worth trying as with that patch you get much more predictable dshot output.

OK Thanks, I will try that PR. Is it better to apply the PR to actual master or use your small-copter-4.1 branch (i see now that it include that PR)?

They are almost identical, so doesn’t really matter

1200 now but I started at 300 and worked up as I had no previous application beyond 300. I did take the opportunity to update the ESC firmware to 32.7.4 and enabled variable PWM. Nothing noticeable of course but it flies.