I'm working with an art project that is using Mesh Potato MP02 / Dragino DT01 devices. One of the challenges we are currently facing is figuring out how to do something external to the Potato depending on ringing or call state. Currently I need only to blink some lights when the phone is ringing or enable the lighting during a call. While I am familiar with the device and have alsp spent some time reading thru the public code, it is not obvious to me what might be the easiest approach to the problem all things considered.
I'm curious if others have opinion on how changing GPIO state during ring or call may be solved? Some current thoughts are:
1. Create a new board that can detect phone calls/ringing based on the tip and ring signals and use that as the source. The advantage of this is no modifications to the potato hardware or software.
2. Interface with the SI chip somehow and have that application/script poll for state change. We're not fluent enough in linux yet for this to be clear. Can I interface with the kernel module from userland?
3. Write something for Asterisk, maybe a module, since presumably it knows how to interface with the daughter board. That could potentially call out to a script outside of Asterisk to toggle an unused GPIO pin. This seems like the most fragile of the 3 options.
Are there unused GPIO available on the MP02?
Has anyone attempted this or similar and have thoughts on what might be the best route?