This thread has been locked.

If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.

DRV8425: Generating Hi-Z control signals

Part Number: DRV8425
Other Parts Discussed in Thread: TCAL6416, PCA9557

Tool/software:

Dear all

I am hoping to implement DRV8425 in a design where we wish to have digital control over what stepping mode is used with the M0/M1 pins.

I don't expect to need any of the modes which require a 330k pull to ground. However, I would like to be able to switch between modes that specity Hi-Z on that input.

My question then is, how best to generate the control signals for this? Our design will have many such motor drivers and ideally I want to control them all over an I2C bus. So far I have made wide use of parts like PCA9506 (a digital IO expander with 40 outputs controlled via I2C), however its outputs only run to high/low - there isn't a Hi-Z option.

What I am hoping I might do is use the PCA9506 (or similar chip) and to create a high-Z signal to the DRV by setting up the given pin as a digital input, which then is theoretically Hi-Z. The question is then, is it Hi-Z enough? My attempt at answering this has been to look at the output pull-up current specified on DRV8425 datasheet (10uA) and compare this against the leakage curren ton PCA9506 (1uA), which seems favourable. However, 1uA against 10uA baseline is a +/-10% variation which is also the maximum tolerance the DRV8425 specifies in hits Hi-Z output, so I was concerned this may not be sufficiently high impedance... 

I looked at various other IO expander chips (e.g. TCAL6416, PCA9557) but it was unclear to me if these would solve it since they also had input leakage currents on the order of 1uA.

Many thanks for any advice.

  • Hi,

    What I am hoping I might do is use the PCA9506 (or similar chip) and to create a high-Z signal to the DRV by setting up the given pin as a digital input, which then is theoretically Hi-Z. The question is then, is it Hi-Z enough?

    This is how we do in the DRV8425EVM. The MSP430 MCU used in this EVM to control the driver has GPIO pins that support output and input but does not have an output Hi-Z mode. So we use the pin in input mode to simulate the Hi-Z. The specification on the MSP430 input port is Hi-Z enough to support this. If the IO expander input mode behaves similarly it should work. Thank you.

    Regards, Murugavel

  • Thanks Murugavel
    Is there any way to check this/confirm from data sheet it it will be stable if run in such a way? As above I think It will work but if we make lots of these devices and one of them is marginally out of tolerance (i.e. the Digital IO expander is taking 2uA rather than 1uA in input mode), I do not want this to then mean our stepper motors are randomly rotating at a different speed (obviously a problem). 
    For example looking at the MSP430 datasheet it specifies "High Impedance Leakage Current" for DIgital Inputs as magnitude 20nA (though I am not sure this is the correcct specification to look at), hence it is much less than the 1uA on the TI/other Digital IO chips I mention above...

    Is there any other way you recommend going about this design to ensure it behaves as expected?

    For example, we could set things up with some analog/digital switch with <<1uA leakage current that interfaces with the DRV inputs but this seems messy.

  • Hi,

    As long as the specified voltage on the pin is compliant with the specifications in the datasheet it will be stable. See below.

    Regards, Murugavel