UNSOLVED servo resets board

  • Hello. I have a dual hotend printhead, 1 of the hotends is moved using a servo in order to lift it up.
    I was using the duet3+octoprint and decided to switch to DWC. I had a hardtime configuring everything again, for some reason DWC seems to no accept my previous config.g file and some minor modifications were need for getting everything working again.
    Now Im facing the last problem: the servo.
    I have 3.1.1 version DWC seems to be also updated.
    The problem arises when I issue a T1 command, the servo moves to the correct position, but immediately the board resets (this gcode is just a moving secuence to test tool change reliability):

    11/21/2020, 7:47:42 PM M32 "0:/gcodes/tool_changetest.gcode"
    File 0:/gcodes/tool_changetest.gcode selected for printing
    11/21/2020, 7:49:07 PM Warning: Lost connection to Duet (Board is not available (no header))
    11/21/2020, 7:49:07 PM Connection to Duet established
    11/21/2020, 7:49:07 PM Warning: Controller has been reset

    I have been reading this:
    When a servo stops moving, it can pump a large amount of energy into the +5v rail due to regenerative braking. If unchecked, this may increase the voltage of the +5V rail above the safe limit. So when using servos with them it is advisable to add your own 220uF capacitor between the +5V and ground servo wires. This applies whether the servo is connected directly to the Duet or to an attached DueX expansion board or expansion breakout board. If using a large servo then we suggest you power it from a separate 5V power supply.

    Could this be the reason?

    My config.g

  • check M122 it has some hints to the reason for the reset - but yes, if the servo is large enough or moving enough mass then it could explain the issue.

    if you have an alternative 5v supply you could also try powering the servo from that if adding the capacitor is deemed more difficult. (ground and 5v to the ext supply, ground and signal to the duet)

  • administrators

    What happens if you run the tool change process with the servo disconnected? Does the board still reset?

    On Duet 3, when using internal 5V power, the components on the board are protected from damage when the external 5V rail overshoot because of a servo or similar device, but as a side effect the internal 5V regulator will shut off while the overshoot persists. I think that is causing the reset.

  • @bearer The servo es an m92, it is really small, only 3.1 kg of torque. Im using all that torque actually so "the mass" could be something.
    If I issue a M122, report is normal but I guess it is because the board resets immediately after the movements so there is nothing to report after the reboot.

  • @dc42 Hi. I ran the tool change with the servo disconnected: The board did not reset.

  • administrators

    @Tinchus said in servo resets board:

    @dc42 Hi. I ran the tool change with the servo disconnected: The board did not reset.

    OK, in that case a capacitor between the servo 5V and ground pins should solve it.

  • @dc42 I have connected a capacitor: 220uF 25V
    Still the same problem. Should I do something else?

  • @dc42 any other ideas about this?

  • administrators

    Either use a larger capacitor, or connect a Schottky rectifier diode (e.g. 1N5818) between the +5V output from the Duet and +5V to the servo and capacitor.

Log in to reply