Bolt ESC Calibration

Discussions about quadcopters/multi-rotors
Post Reply
thefred
Beginner
Posts: 6
Joined: Thu Jan 16, 2020 11:23 am

Bolt ESC Calibration

Post by thefred »

Hi All,

I've been trying to use a crazyflie Bolt with a 4 in 1 ESC (it has BLHeli) and I am having an issue with recalibrations.

Each time I turn on the quad, I go to an unknown calibration state. :(

Since my ESC goes over the recommended maximum current the Bolt can handle, I am connecting it directly to the battery and only using the signal pins from the "jst" connectors; I assume the Bolt has a way of turning the power to the ESCs on and off, but in my case I can't use those.

What should I do? I think that if I use DSHOT I can avoid this, but I think this is not supported yet (see https://github.com/bitcraze/crazyflie-f ... issues/539 and viewtopic.php?f=9&t=4133&p=18767&hilit=dshot#p18755). So how do I solve this?

If it is as simple as changing some BLHeli stuff (so that it does not recalibrate each time it powers on), then how do I proceed?


I suppose I can use a USB dongle (like this https://uk.banggood.com/Racerstar-USB-L ... 77455.html with only the signal and ground and power the ESC with a battery?
(ESC is 2S and I will not turn on with 5V)

Or can I use the Crazyflie radio interface somehow for comms with BLHeli?
tobias
Bitcraze
Posts: 2339
Joined: Mon Jan 28, 2013 7:17 pm
Location: Sweden

Re: Bolt ESC Calibration

Post by tobias »

Have you investigated why this calibration state happens? Does it take to long until the ESC get the motor signal or does it maybe not like the motor signal? Are you running 400Hz PWM (standard setting) or OneShot125?

It would have been nice with a BLHeli pass though interface, which should be possible, but someone has to do it...
haron
Beginner
Posts: 4
Joined: Sun Jun 30, 2019 3:47 am

Re: Bolt ESC Calibration

Post by haron »

Hi,

Any news on this matter?

We've been experiencing two phenomena upon power up:
1. Following the successful power up sequence ("STAB: ready to fly") the motors play the regular tune but then a single motor (not clear if it is always the same one) would continue to play the tune periodically. Then when throttling up the specific motor sometimes refuses to spin. A system reset solves the matter. (Statistics: 1 out of 50).
2. The ESC(s) immediately entered the calibration mode (not clear if it was one ESC or all of them), we had to recalibrate them of course. (Statistics: 1 out of 200).

Our configuration:
1. 400Hz PWM
2. HAKRC HK10AX4 BLHeli_S 10A 1-2S 4 in 1 ESC Dshot600

Kind Regards,
Haron
tobias
Bitcraze
Posts: 2339
Joined: Mon Jan 28, 2013 7:17 pm
Location: Sweden

Re: Bolt ESC Calibration

Post by tobias »

Maybe this is because the motor signals are not switched on (0V output) until the sensors has calibrated. Thus the ESCs might timeout...

Can you try to add the motorSetRatio lines to motors.c (after isInit = true)

Code: Select all

//Initialization. Will set all motors ratio to 0%
void motorsInit(const MotorPerifDef** motorMapSelect)
{
 ...

  // Start the timers
  for (i = 0; i < NBR_OF_MOTORS; i++)
  {
    TIM_Cmd(motorMap[i]->tim, ENABLE);
  }

  isInit = true;

  // Output zero power
  motorsSetRatio(MOTOR_M1, 0);
  motorsSetRatio(MOTOR_M2, 0);
  motorsSetRatio(MOTOR_M3, 0);
  motorsSetRatio(MOTOR_M4, 0);
}
haron
Beginner
Posts: 4
Joined: Sun Jun 30, 2019 3:47 am

Re: Bolt ESC Calibration

Post by haron »

Sure thing, we will add this to our code and report back with the results.
This might take a while until recurrence (if at all).

Regarding issue #2, for now we have cancelled the entrance into ESC calibration mode due to high throttle using the BLHeliSuite (unchecked the "program by TX" option). And yes, as you mentioned in your May 27th post, it would be very nice to have a BLHeli passthrough interface. Is this in your roadmap for future releases?
tobias
Bitcraze
Posts: 2339
Joined: Mon Jan 28, 2013 7:17 pm
Location: Sweden

Re: Bolt ESC Calibration

Post by tobias »

We don't have anything planned and I can't yet say if it is possible to do at all but I'll put in an issue on github to investigate it.
Post Reply