This will be a wall of text, so just work through it slowly and methodically, especially the motor test stuff after all the easy changes.
1. Ensure your BLHELI settings in all the ESCs are good and ready
- Low RPM Power Protect = OFF
- Low Voltage Protection = OFF (rely on the flight controller battery settings)
- Temperature Protection = 90
- Motor Timing = Auto
- Sine Mode = ON (optional, many dont use this but I do)
2. Wiring changes and adjust params
Physically make the wiring changes like I mentioned before, changing to use the FMU outputs, and let me know if you have any doubts.
Then copy/paste these into a notepad text file and save as “enable_DSHOT.param”
Adjust the serial port number to suit your wiring, I’ve assumed serial port 4 as an example.
INS_HNTCH_MODE,3
INS_HNTCH_FREQ,40
INS_HNTCH_BW,20
INS_HNTCH_REF,1
INS_HNTCH_FM_RAT,1
INS_HNTCH_OPTS,2
MOT_PWM_TYPE,6
SERIAL4_BAUD,115
SERIAL4_PROTOCOL,16
SERVO_BLH_AUTO,1
SERVO_DSHOT_ESC,1
SERVO1_FUNCTION,0
SERVO2_FUNCTION,0
SERVO3_FUNCTION,0
SERVO4_FUNCTION,0
SERVO9_FUNCTION,33
SERVO10_FUNCTION,34
SERVO11_FUNCTION,35
SERVO12_FUNCTION,36
Now use the full parameter list to “load from file” and write all those adjusted params.
You will have to reboot the flight controller, then “Compare Params” or just load it again to see if all of them are set correctly.
3. Get the motor order correct
Use MissionPlanner motor test to verify the motor order - some will be wrong!
You can use the Setup / Mandatory / Servo Output screen to move the motor functions around.
You have to always reboot the flight controller after every time you change any of those servo functions for them to take effect.
Motor test diagram below
4. Get the motors spinning in the correct directions
You can use this parameter to reverse the spin of a particular motor
SERVO_BLH_RVMASK
It’s a bitmask with easy selection, you will be interested in Channel9 onwards.
NO soldering or even connecting to BLHELI Suite!
5. Check and set MOT_SPIN
While you are in the Motor Test section recheck and set MOT_SPIN_ARM and MOT_SPIN_MIN - they might be different with the new ESCs.
MOT_SPIN_ARM can be very low provided the startup is reliable - it’s useful to have a really low ARM speed so you can easily see if all the props are spinning in the correct direction every time you arm - and it looks very cool.
MOT_SPIN_MIN might still be up around 0.12
6. Testing
To see if everything is working as expected, in messages you should have something like:
RCOut: PWM:1-8 DS600:9-12 PWM:13-16
and in the Status tab there should be a whole lot of
esc1_curr
esc1_rpm
esc1_temp
esc1_volt
esc2_ // and so on
They should show actual data when you operate each motor with the motor test.
You can set a motor to run for a few seconds, then quickly swap over to the Data / Status tab and see the actual esc data.
More time spent in MissionPlanner motor test is less time spent picking up a flipped-over copter