reset LIS302DL accelerometer with Arduino (AVR) reset pin?

Any advice on resetting the lis302dl? There are time when I’m using it with my arduino that I reset the arduino and afterwards it cannot communicate w/ the lis302dl. I have to powercycle the lis302dl.

I suspect a communication was happening between the arduino and lis302dl over i2c and was interrupted which left the lis302dl in a state waiting for the arduino to complete the communication…but it never will.

So I’m wondering what would be a good way to reset the lis302dl leveraging the reset pin on the arduino. The arduino is 5v and I have the LIS302DL running on a 3.3v bus.

Any ideas?

What immediately comes to mind is using a reed relay to cycle the power on the lis302dl. Tie the reset line to the coil in the relay, but just make sure you have enough current available to energize the coil.

A slightly more complicated setup would be to use an I/O pin in conjunction with a transistor or mosfet to cycle power on the lis302 at the beginning of your program.

If what you’re looking for is a software only solution, I’m not very familiar with that module. It might be possible to set up an end transmission handshake at the beginning of your program. It might be enough to reset the module’s communication state.