cancel
Showing results for 
Search instead for 
Did you mean: 

powerStep01 Constantly tripping Overcurrent.

Kurtnelle
Associate III

My powerStep01 is constantly triggering the Overcurrent alarm whenever I give a movement command, even if there is no stepper connected. What could possibly be causing this? Previously I was getting a similar effect on the L6470 chip. When I turned off the overcurrent shutdown feature the chip fried and apparently took out GPIO25 of the Raspberry Pi that was command it. In both cases, the motors never moved.

1 ACCEPTED SOLUTION

Accepted Solutions

Yes, looking at the status register I only see that the device has detected an UVLO and and UVLO on the ADC (both bits = 0). Also OCD is active low, so OCD =1 means no overcurrent detected. UVLO and UVLO_ADC are the ones that keep the red LED on.

An UVLO_ADC is detected because the X-NUCLEO-IHM03A1 by default does not have any component mounted on the ADC pin, so the voltage on it is around zero. In my board I've already some components on ADC, I forgot to specify it 😅 .

I see two possibilities:

  1. If you don't need the ADC in your application (it is not mandatory to run a motor), you can just disable the related alarm using bit4 in Reg. 0x17 (ALARM_EN).
  2. If you need ADC, just mount a proper couple of resistor on R27 and R28: UVLO threshold is max. 1.35V, the voltage on ADC pin must not exceed 3.3V.

The other bit UVLO is referred to Vs: at the start up there is always a detection because the voltage supply is ramping-up

All these bits are latched, meaning that even if the UVLO condition is gone, the bits stay in the error condition until a "GetStatus�? command is sent.

I expect that if 18V are applied on Vs and you send a "GetStatus�? , the UVLO bit becomes 1 (error released).

View solution in original post

16 REPLIES 16
Dario CUCCHI
Senior II

Hi @Kurtnelle​ ,

a common cause for this issue could be the configuration of the device.

Can you share the content of the registers, used to program the POWERSTEP01 ?

And which evaluation board are you using ? Is it an ST eval board or a custom board ?

I am using the ST eval board ( the IHM03A1). I'll have to write a function to generate a textual dump of the registers, however, should the driver even experience an overcurrent event even if no motor is connected? Would fluctuations on the power rails (VDD and VS) trigger a false positive?

The overcurrent detection is based on the measurement of the drain-source voltage of the embedded power MOSFETs. Wrong settings of the gate drivers (gate current, tcc, blanking and deadtime) or overcurrent thresholds too low can trigger spurious overcurrent. For example, if the commutation of the OUT pin is too slow, a Vds higher than expected is detected: overcurrent is triggered even if it is not a real overcurrent.

VS or VDD fluctuation, within the operative range should not trigger a false positive, and I don't expect big fluctuation on VS if no motor is connected to the driver.

Before writing a script, I can suggest a quick check. try to use the following configuration:

Reg 0x13 (OCD_TH) = 0x06

Reg 0x18 (GATECFG1) = 0xA6

Reg 0x19 (GATECFG1) = 0x20

Do not connect the motor and try to send a movement command. Is the overcurrent issue still present ?

Yes, the overcurrent issue is still present with the settings as provided. The VS voltage is 18V btw.

Ok.

Before changing some other registers, I would focus on the hardware first, just to be sure that everything is working fine.

Did you do some modifications to the evaluation board (add or remove components and so on…) ?

About the device pins, once the board is supplied and the device is programmed, you can check:

- Current consumption of the Vs pin

- voltage value of VCC

- voltage value of VCCREG, VREG and VDDIO. Are you supplying these pins with an external 3.3V ?

- voltage value of VBOOT

- with the power bridge in high impedance, you can measure the outputs (OUTA1, A2, B1, B2) and check if for some reason there is a low impedance path between them and GND or VS.

These tests should identify whether the hardware is ok or there is something wrong.

Another question: is the overcurrent the only alarm present ? Can you check the STATUS register ? 

0693W000008yw4cQAA.jpgI'm going to measure those voltages (somehow) and get back to you. Also, should the motor phase lights be on even when there is no motor connected?

Voltages

  • I don't have the means to determine the current consumption of Vs
  • Voltage value of VCC : 7.45V
  • VCCREG, VREG, VDDIO : 3.2V
  • VBOOT: 25.3V
  • OUTA1,2 B1,2 all all registering 2.4V in HiZ

Only the Overcurrent Alarm is present (well and StepLoss A and B, since there is no motor)

The motor phase LEDs are connected to the OUT pins, so they turn on and off if a voltage is applied on them, regardless the motor is connected or not.

In your specific case the bridges are in high impedance, but there are few volts (2.4V) due to leakage current of the OUT pins.

The LEDs turns on, but the light is not so bright as in the case the device is driving the motor and Vs is applied on the OUT pins.

All the voltages you measured are ok, so the eval board seems to work fine.

To solve the issue we need to focus on the configuration and on the start-up sequence.

What I can do is to replicate your setup with IHM03, test a working configuration and then provide to you a detailed sequence that you can try on your board.

But I need some time for the setup so I will come back to you in the next week.

Meanwhile, have a nice week end !

Kurtnelle
Associate III

I've purchased a NUCLEO-F401RE off Amazon so that I can keep up with those tests. When we figure out what the problem is, I'm sure I'll be kicking myself.