During Reboot, motors spinning for a sec and drone flips

During a reset or reboot, the drone briefly activates its motors unintentionally, causing it to lift off or jerk violently for a second. This is extremely dangerous. The issue appears to be that when ArduPilot is temporarily inactive, the servo outputs go to their default state, allowing current to pass through and unintentionally spinning the motors until the flight controller regains control.

Is this using ArduCopter firmware version 4.6.3 ?

It’s using arducopter v4.4.4 right now, I also tried arducopter 4.6, the same issue persists. I couldn’t trace the cause.

Are you using PWM ESCs? What FC and ESC hardware are you using?

It sounds like it may be another equivalent case of servo movement on boot. Though IMHO ESCs should be better at rejecting spurious commands when not spinning.

Yeah it’s a PWM ESC running with BL_HeliS v16.7. I have jhemcu em40 4 in 1 and ready to sky 30A 4in1 esc and both has this issue.

we notice this issue only during reboot and also not frequent. Sometimes it’s normal and sometimes it occurs

since your using BlheliS you should enable Dshot

Can’t we avoid this issue with PWM ESCs?
I would like to know the cause of this issue.

What FC are you using?

  1. Switch to DShot or preferably BDShot. It offers much better performance as you can use accurate notch filters.
  2. The issue comes from pin states in bootloader and initialization phases.

@geofrancis log won’t really help because it doesn’t log pin states during boot and initialization.

2 Likes

whether changing the bootloader will help?
Or any previous version bootloaders doesn’t create these issues available?

Try updating the bootloader. You probably have an old one.

You need to specify what flight controller you are using, and how the ESCs are connected.
Even provide a photo of the wiring.
Set LOG_DISARMED,1 and use the MissionPlanner motor test to activate each motor in turn.
Collect the .bin log file and upload it to a filesharing site and provide the link here.
Then set LOG_DISARMED,0

The log file gives us all the parameters and just about everything needed to diagnose this.

This is very bad I would start over with better hardware and do a complete rewire. You should also check you GPS.

1 Like

Yeah, I used to do chip erase from STM32 cube programmer and then upload firmware with bl in .hex format.

How GPS is related to this issue?

To what Flight Controller? For the 4th time.

MatekH743. But, I saw the similar issue with Speedybee v4 and kakuteh7 mini

Actually, why do you want to use PWM if you have BLHeli_S? Just curious. As far as anyone can tell you, PWM is not ideal and you may experience problems during flight. Atleast use Oneshot125. Since you have good FCs, why not do dshot, or preferably, bdshot after you flash the ESCs with Bluejay? With the telemtry, you can also do notch filter to filter out motor vibrations to the IMU

2 Likes

Yeah, our initial testing was with pwm inputs so we continued in the traditional way. I have updated the hardware to bdshot now. I need to test it and tune it. But, I was curious to know the cause the issue I am facing right now and the best solution to solve the issue.

Hi @Jayachandar, check this out:

PWM Output Behaviour when Disarmed¶

The PWM value output to the servos and motors while the vehicle is disarmed can be configured in one of two ways:

  • if MOT_SAFE_DISARM is 0 (the default) the trim value for each channel will be output (i.e RC1_TRIM will be output on channel 1, RC3_TRIM will be output on channel 3).

  • if MOT_SAFE_DISARM is 1 no PWM pulses will be sent while disarmed. Note that some ESCs beep to complain that they are powered on without a control signal

Maybe this was the issue?