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.

DRV8434S: DRV8434S TRQ_DAC register interfacing

Part Number: DRV8434S

I am seeing the same value of TRQ_DAC when reading CTRL REGISTER 1 (addr 0x3) despite writing a new TRQ_DAC value to the register. I will need your help in resolving this issue.

I need to update the TRQ_DAC setting while the motor drivers are enabled. Since the TRQ_DAC read value is always fixed, I am unsure that the effective motor current is being changed.  Please advise on how I can resolve this issue while still using SPI communication.  I am not planning to use the VREF pin (yet) to set the current trip level.. 

Here is some additional background:

- I am driving a bipolar hybrid stepper motor using the DRV8434S with an external MCU using SPI and STEP/DIR input. 

- I am able to setup the motor using SPI and operate the motor.

- I am writing a TRQ_DAC value of 75% to the CTRL REGISTER 1 shortly after enabling SPI communications. 

- After setup of registers I start running the motor.  The motor runs without any issues.

- I write a new TRQ_DAC value of 50% to the 0x3 register, this while the motor is actively being operated with an external STEP/DIR input mode.

- The status byte returned after the 0x3 register write operation does not indicate any error. The data byte in the register is always indicating TRQ_DAC=75%.

  • Further information:  the 75% TRQ_DAC value is being returned in register 0x3 in all subsequent register reads. I read one motor phase current using a current probe and there is no change to the max I level when new TRQ_DAC values are written to register 0x3.  Please clarify what to expect, what constraints exist to changing TRQ_DAC  

  • Hello,

    Can you please try to write and read from other registers and ensure that SPI communication is at least functional?  I have no explanation for why register 0x03 would not update, so expecting a global SPI communication problem.

    Regards,

    Ryan

  • Ryan, thank for sharing your insights.  I have determined the reason the DRV8434S registers were unchanged in  SPI read is that the LOCK field was set in CTRL 4 register.  This field was set when I initialized all registers at startup.  The issue is resolved now y setting the default to UNLOCK..  

    There were no SPI communication errors but the process of investigating SPI reads on other registers led me to this resolution.

    Best wishes.