Great! I have found that BDS300 is still a problem on the KakuteF7Mini at low rates, but fine at 1.6Khz, I have been unable to make it any better than this and its looks like for the most part this is working well for you.
[more char char]
@andyp1per I would like to test bdshot with another 3 inch copter with revo-mini.
I made a dir ârevo-mini-bdshotâ with a âhwdef.datâ:
include âŚ/revo-mini/hwdef.dat
undef PB0 PB1 PA3 PB4
PB0 TIM3_CH3 TIM3 PWM(1) GPIO(50)
PB1 TIM3_CH4 TIM3 PWM(2) GPIO(51) BIDIR
PA3 TIM2_CH4 TIM2 PWM(3) GPIO(52) BIDIR
Taken from omnibusf4pro-bdshot.
It build but if I set SERVO_BLH_BDMASK=15 I have only two motor working.
For sure I am doing something wrong.
Are you using my branch? What does the PB4 definition look like?
I am using master with your PR pr-matekh743-bdshot
from revo-mini hwdef.dat
Did anything not get a DMA channel in hwdef.h?
Sorry I am not able to answer, anyway here is the hwdef.h generated:
Moreover with the copter with MatekH743 Mini I see problems I didnât see in the test I did on 28 March (PR is changed in the meantime). Now DShot150 donât work and DShot300 sometimes start with 3 motors, 600 and 1200 OK.
The hwdef looks right. On your matek what SERVO_DSHOT_RATE do you have?
Are you powering up the FC and ESCs at the same time?
Tested 0, 1 and 2
Yes
To be more precise (ESC BLHeli32 with FW 32.8):
SCHED_LOOP_RATE = 800
SERVO_DSHOT_RATE = 0, 1, 2
MOT_PWM_TYPE = 4 always fail
MOT_PWM_TYPE = 5 rarely fail [Edit: when fail 3 motors works]
MOT_PWM_TYPE = 6 always OK
MOT_PWM_TYPE = 7 always OK
What happens with SERVO_DSHOT_RATE = 3?
Same problem, only with MOT_PWM_TYPE = 4
Urrgg, why is this stuff so fragile! It doesnât help that BLHeli32 is closed source so no way of inspecting what is going on.
So it would help if I could ask you to try some things to see if they help
OK ask w/o problems, but I think I will do other test tomorrow.
Actually NVM - I can reproduce the dshot150 problem. Very strange.
I have fixed the dshot150 problem - can you try again?
For now I tested only bdshot150, loop rate 800, servo rate 0, 1, 2, 3 on bench and it seems all OK.
Tomorrow I will do more test.
Now also revo-mini works with this hwdef:
Excellent! Please do a PR!
Thanks, I use a modified configuration for revo-mini that gives me two serial port and one ext I2C (not present on original) but RCIN is on a different pin on RC Input port.
This commit is for revo-mini with I2C:
And this is to have bdshot:
I have to verify that the second works also for the revo-mini on master before to do a PR or I can do a PR for a ânewâ revo-mini-i2c and another PR for revo-mini-bdshot + revo-mini-i2c-bdshot.
I donât know if Iâve made myself clear.