Heewing Ranger VTOL - need help calibrating ESC

Hey guys, I have been playing with this setup for some time now. I had all motors calibrated and working at one point, but I am at a loss here trying to get it calibrated again. I have attached my param file below.
Currently running CRSF
Mission Planner: build 1.3.81
Arduplane 4.4.4

I believe I have the safety switch setting turned off, went t through the calibration as per documentation: ESC calibration — Plane documentation

I can get the tail motor to calibrate, but cannot get the tilt motors to cal properly. Is this user error or hardware issue? Likely the former.

Also, is there a way to add expo in certain flight modes and not others?

Would love some help. Thanks guys, cheers


Ranger 4.4.4 unable to calibrate ESC.param (25.7 KB)

Hey Wes, if you use dshot on those motors then they do not need calibrating

THANK YOU, so much for responding! You are the first in days. Thank you.

So I have never changed esc protocol to DShot before. Do you have a link/video of how to do this?

Second, this there anything in the code I would need to change to be able to use the new DShot protocol?

Thanks sir




Those ESCs are BLHeli_S so dshot should work fine

Pardon my naivety, I want to make sure I understand correctly. So after reading, Dshot is the underlying protocol in BLHeli, correct?

I then downloaded/run the BLHelisuite.

As per documentation above, I would need to change:

Q_M_PWM_TYPE "DShot600”


SERVO_BLH_MASK to “motor channels”

Then move to:
Disconnect the ground station (but leave the USB cable connected)

Start the ESC configuration software and connect to the autopilot’s COM port by selecting “BLHeli32 Bootloader (Betaflight/Cleanflight)” from the interfaces menu. Press “Connect” and “Read Setup”. You should be able to upgrade and configure all connected ESCs

Do I need to change/address:


Thanks guys

You should only need to change


Thanks , I’ll check after work and report back.

Do you think this is a reason as to why I am unable to calibrate the ESCs? Do I currently have “mixed esc protocols” happening in my params?

Like you said, once pass through is happening, I will not need to calibrate, is this correct?

Correct. With Dshot there is no need to perform ESC calibratoin.

You probably don’t have mixed protocols. More likely your still just sending PWM. When you connect to MP look at the messages box and you should see something that will say what the outputs are (RCOut). DShot ESCs — Plane documentation

From the wiki:

This is great. Thank you. I’ll take a look

@Allister, @andyp1per , here is a short video clip of what startup sequence. I was able to get that Q_M_PWM changed to “6”. Only thing that I cannot get started is my forward motors. Im close. Let me know your input. Thank you both so much



1 Like

You have a mix of protocols going on there. I see that you have Dshot600 and One shot, and PWM. Make sure that all the motors are on Dshot. So when the RCOut message comes up it should indicate whatever channels are related to the motors are Dshot.

You might have to organize the output groups.


The PWM is in 4 groups:

    PWM 1 and 2 in group1
    PWM 3 and 4 in group2
    PWM 5 and 6 in group3
    PWM 7-9 in group4

You can’t mix Dshot (motors) and PWM (servos) in the same group. So you could put all the motors on channels 7,8,9 and then the servos on the other channels. This would keep the motors on group 4 and that would be the only one on Dshot. Or you can mix it up for example: motors on channels 1,2 and 5, and servos on channel 3,4,7,8,9. If you do that you can’t use channel 6 for a servo.

I’ve never used the Heewing controller but there’s a note in the page not to use Dshot on 3&4 (group 2) so leave that group for servos.

I see that now. So I have Group 1 with M1-M2, this looks correct.

Group 2 is PWM which are servo outputs, this should be correct.

Group 3 is only comprised of M4 in slot 5 on the FC, slot 6 is not used, but its OneS.

Slots 7-8 on FC should be PWM as well, not OneS.

It looks like Group 3 has channels 5-9 as OneS and my “Throttle” channel is being used in slot 9. Per documentation: “All outputs support dshot although M3-4 are not recommended for this purpose as they share resources with I2C.” Hmmm

How do I go about changing what is included in groups (if I can) as well as the protocol for that specific group?

Wes have you seen the videos that Painless360 did on the HeeWing? There are some specific setup issues you have to be careful of with the HeeWing flight controller.

Yes, I had. Near the end of the most recent video, he gives a side-by-side screenshot of the servo outputs from what it was, to what it should be now. When you look down in the description of the outputs, it differs from what is in the video. I very well could have overlooked something. I will make sure and go back to watch the video. Could you add any clarity to this?

Certainly not criticizing anything, just want to make sure my understanding is correct

It looks to me like didn’t clean up the settings in the screen shot of the “New Outputs”. So it looks correct, but confusing.

Motors are on 1,2 (group 1) and 5 (group 3). Servos are on 3,4 (group 2) and 7,8 (group 4). Not sure what channel 9 is all about (but also group 4).

Gotcha. I see that. Is this how it shiukd be in order to match the outputs in the description?

So I have everything set to how it shows currently. But, is there a way to change what’s in a group and that groups protocol?

Am I off here?

Would the Throttle input (PWM) not allow M1-M2 to spin if the are DShot?

If the ESCs are not programmed with Bluejay, would this be a reason they do not work?


Which video are referring to? I know he had his most recent release: https://www.youtube.com/watch?v=150TXEDqJW4

or a previous video?

Thanks Andy

This is how it should look:

Great! Ill take a look. Many thanks.

OK, this is where I get a little confused. I read through the documentation you sent. With the current setup/params I have now, do you suggest a change to either: Ranger-4.4-HEEWING-4020-Tuned or Ranger-4.4_HEEWING-8040-bdshot-tuned ?

with the ESCs I have currently running DShot, is this different than bdshot?

Per the picture you have on there, outputs would be the same as what I currently have, except I noticed Position #9 is disabled. Is this needed with bdshot?

Firmware for all ESCs need to updated to Bluejay, correct?

I am unsure what to make of this:

  • 7-8 ↔ 1-2
  • 9 → 5
  • 5-6 → 3-4
  • 3 → 9 or 6 (servo power)

How can my throttle (Position #9 in outputs) be controlling throttle response only for M4 (currently OneS), but not the other motors? How do I change ALL motors to Dshot?