Using TPL5111 timer for door sensor

I’m using TPL5111 because its very low power, and it keeps uC and all other components in off state. I want to trigger DRVn High, every time door opens/closed.

In any state device will also send door status on each timer event that will trigger DRVn.

According to TPL5111 datasheet I can trigger DRVn by sending a 20ms pulse on DELAY pin, but problem is that in case of door open switch stays continuously in ON state unless door is closed, and this will keep everything in ON state that will cause battery drain.

I want to know if there is any low cost solution (IC) that can fit in scenario or if there is some method i can change ON signal to a 20/30ms pulse.

Hello sairfan1,

If the intention is to have a pulse that will make DRVn HIGH, would you not be able to use the EN/ONE_SHOT pin? If I am understanding the datasheet correctly, once EN/ONE_SHOT is HIGH, the TPL51111 would work as a timer and would assert DRVn one time for the programmed time interval. It appears that the selectable timing intervals can be from 100ms to 7200s.

TPL5111 is working as timer and EN pin is set to High, it triggers on set interval.

Problem is that when door is opened/closed I could not trigger DRVn on event. as per datasheet only way is that I send 20/30ms pulse on DELAY pin, that will activate DRVn. But if DELAY pin stays High, DONE signal from uC will be ignored.

That means if door is open we get High signal on DELAY pin, it drive DRVn. But because door is still, it will keep DELAY pin high and TPL5111 will ignore DONE signal from uC.

The only solution here is that if I could change HIGH state from reed switch to a 20ms pulse to DELAY pin.

Hi sairfan1 ,

Are you trying to turn on DRVn both on the opening and again on the closing of the door, or just on the opening of it?

If only opening, then a “one-shot” (a.k.a. monostable multivibrator) circuit will give the desired result. This can be achieved with a 555 timer configured for one-shot mode or a 74LVC1G123. They will give an output pulse of a set time based on an RC time constant and then remain off until retriggered on the input. It will ignore the steady-state of the input and only retrigger after the input is reset.