Raspberry and pixhawk shutdown problem

Hi @Furkan,

The Pixhawk should be powered directly, not via its USB connection to the Raspberry Pi. We recommend using a 5V 6A Supply connected to the 5V and GND pins of the Raspberry Pi, and to the 5V and GND rails of the Pixhawk. There’s an example connection setup in our Connection Diagram, but note that only one 5V 6A supply is needed (the diagram shows one at each board just to display the connections clearly).

More generally, 8 thrusters can draw a significant amount of current, especially if used at the same time. If your 5V regulator is powered from the same supply as the thrusters then large bursts of thrust can cause the supply voltage to drop enough that the 5V output can’t be maintained, which causes the Raspberry Pi to lose power and restart. To avoid there are a few different options:

  • Limit thrust by
    • avoiding applying too large controls via the joystick,
    • limiting max joystick gain (doesn’t apply to stabilisation),
    • creating a custom frame with all the numbers scaled down (applies everywhere, but more effort to do and to change), or
    • possibly setting a meaningful value for MOT_BAT_CURR_MAX (I’m not sure if this requires ESCs with current-sensing, so have asked internally and will get back to you see next comment for details), or with the development firmware (currently 4.2.0) it seems like it should be possible to set BATT_WATT_MAX
    • Setting SERVOn_MIN and SERVOn_MAX closer to 1500 for all your thruster outputs (n=1-8) Doesn’t apply to motors, apparently - see next point:
    • Setting RC3_MIN* and RC3_MAX in current firmware, or MOT_PWM_MIN and MOT_PWM_MAX in ArduSub >= 4.1 (the MOT_... parameters exist in current firmware but there’s a bug which means they’re not used)
  • Use a battery/power supply with a higher output capacity
  • Have smoothing circuitry between your main power supply and your 5V regulator
  • Isolate your thruster vs 5V electronics power supplies

*Note: apparently RC3_TRIM also needs to be set or it complains that it’s below the minimum - it seemed to work for me to just set it to the same as RC3_MIN.


Quick video for setting the RC3_* parameters in QGC:

2 Likes