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.

DRV8884: RREF Current Change

Part Number: DRV8884

I need to control the drive current to my motor in finer steps than can be achieved with just the TRQ control.  Not having a PWM signal available, I instead implemented a simple 4 bit DAC by using open collector outputs drive a series of resistors, with the summing node also connected to the Rref resistor (with no buffering).  This works, and gives me adequate control when combined with the TRQ control.  However, I am seeing a strange behavior that I cannot understand:  I set up the resistor network such that the lowest current setting (highest voltage) is about 1.2V, as recommended.  However, from a power-on reset the voltage at this node goes to about 1.5V.  Obviously, current flow into/out of the Rref pin will affect the voltage at this node, and I guessed that the SLEEP signal (which is asserted low by the system reset) turns off the current reference circuit.  Unfortunately, de-asserting SLEEP caused the voltage to increase to about 1.6V.  It appears that to get the circuit back to the design intent I have to set my DAC to produce a low voltage on the summing node.  After doing that, when I set it back to the high voltage (low motor drive current) level it is at the correct voltage of 1.2V.  This suggests that the current reference circuit in the DRV8884 needs some initialization.

Does this make any sense?  If so, what would the best initialization procedure be?  If not, what else could explain the strange behavior I am seeing?

Thanks,

Greg

  • Greg,

    "I guessed that the SLEEP signal (which is asserted low by the system reset) turns off the current reference circuit."

    Correct.

    " I set up the resistor network such that the lowest current setting (highest voltage) is about 1.2V, as recommended.  However, from a power-on reset the voltage at this node goes to about 1.5V"

    After power-on reset, is the DRV8884 in sleep mode or not? If the DRV8884 is not in sleep mode, the voltage is 1.5V or 1.2V? Will the 1.5V go back to 1.2V?

  • Wang,

    At power on (or system reset) SLEEP is asserted and remains asserted until the firmware initializes.  But, as I said in the original post, de-asserting SLEEP does not correct the reference voltage.  In fact, it makes it worse, going from 1.5V to 1.6V.  The action that restores the 1.2V reference is to temporarily set the DAC to a much lower voltage, then back to the maximum.  At that point the voltage is still affected by the SLEEP state, but changing between 1.2V and (maybe) 1.3V.

    My first thought was that there must be something wrong with my crude DAC circuit, but I cannot find anything wrong with it.  I guess it would be smart to remove the RREF resistor to separate the DAC from the DRV8884 to see how it behaves independent of the DRV8884.  I'll do that today and let you know what I find.

    Thanks,

    Greg

  • Greg,

    I would think for the initial calibration, we should not leave the RREF pin floating.

    " I guess it would be smart to remove the RREF resistor to separate the DAC from the DRV8884 to see how it behaves independent of the DRV8884."

    I agree.