Hi,
I'm attempting to perform an Actuator Diagnostics test on an LRA in open-loop mode. However, after initializing the DRV2605L, putting the chip into diagnostics mode and setting the go bit high. the go bit never clears and I am stuck polling for the completion of the test indefinitely.
This is how I have initialized the DRV2605L;
data[0] = 0x01; //data[0] = Address
data[1] = 0x00; //data[1] = byte
lra_write(lra, &data, 2);
data[0] = 0x1A;
data[1] = 0xB6;
lra_write(lra, &data, 2);
data[0] = 0x1D;
data[1] = 0x29;
lra_write(lra, &data, 2);
data[0] = 0x1C;
data[1] = 0x75;
lra_write(lra, &data, 2);
data[0] = 0x1B;
data[1] = 0x90;
lra_write(lra, &data, 2);
data[0] = 0x16;
data[1] = 0x3E;
lra_write(lra, &data, 2);
data[0] = 0x17;
data[1] = 0x9B;
lra_write(lra, &data, 2);
data[0] = 0x01;
data[1] = 0x05;
lra_write(lra, &data, 2);
data[0] = 0x02;
data[1] = 0x80;
lra_write(lra, &data, 2);
after a 125us wait diagnostics mode and go bit are set;
data[0] = 0x01;
data[1] = 0x06;
lra_write(lra, &data, 2);
data[0] = 0x0C;
data[1] = 0x01;
lra_write(lra, &data, 2);
Every 300us I poll the Go Bit. However, it never clears.
I've connected both a logic analyzer and an oscilloscope to the DRV2605L so I know my lra_write() function works correctly.
Am I initializing the DRV2605L incorrectly?
Thank you,
Tom