Myxa ESC stopped working flashing red and gives error on attempt of running motor identification

(Ali Tlisov) #1

One of ESC previously working started flashing red. I started Identification for it in hope it will help but get error as per screenshot.

I suspect this is one of ESCs which previously already showed red LED once and then started work normally. But not sure.

(Pavel Kirienko) #2

The error code 253 of the motor identification task means that the last hardware self test was unsuccessful. The most likely reason for that is an incorrect power on sequence: you should connect the battery power first, and then connect USB. Reversing this sequence leads to a false positive self-test error. In order to recover from that state, you can do either:

  • Disconnect the device from all power sources and all interfaces, then connect everything back, power first.
  • Using Kucher, switch to the tab Self-test, and run the self-test. If the self test is successful, Myxa will be ready to work immediately afterward.

For the benefit of posterity, here are the most relevant error codes that can be returned by the motor ID task:

InvalidParameters     = 255
InvalidSequence       = 254
HardwareTestFailed    = 253
SequenceNotApplicable = 252
HardwareFault         = 251
HardwareOverload      = 250
LVPSMalfunction       = 249
DCVoltageOutOfRange   = 248

(Pavel Kirienko) #3

Note that the power sequencing restriction is already removed in the firmware v0.2 (which is not yet released).

(Ali Tlisov) #4

Could you pls add description for fault codes not only for ID task.
For example what this error could mean:

(Pavel Kirienko) #5


    static constexpr Result::ExitCode ExitCodeHardwareFault                 = 1;
    static constexpr Result::ExitCode ExitCodeHardwareTestFailed            = 2;
    static constexpr Result::ExitCode ExitCodeObserverParametersInvalid     = 32;
    static constexpr Result::ExitCode ExitCodeMotorModelParametersInvalid   = 64;
    static constexpr Result::ExitCode ExitCodeSomeParametersInvalid         = 128;

In your case, the cause is still the same - the last hardware test was unsuccessful.