Leer llamada entrante movil

Ya he acabado el programa, realizado las pruebas y funciona perfectamente.
Al final compre el modem gsm y estoy a la espera de que me llegue, pero he realizado las pruebas con el serial monitor para formar las tramas que se recibirían del modem y funciona perfectamente.
El programa lee el valor del numero que esta llamando y si coincide con la lista de 5 números pregrabados, cuelga la llamada y acciona un led durante 1 seg.
Para realizar la lista en la agenda de 5 números, primero lo hice poniéndolo en el programa del micro pero, como ya sabeis, al final uno quiere mas y mas, asi que al final modifiqué el programa para que enviando un mensaje con un texto definido pudieras seleccionar en que memoria quieres grabarlo, asi si quiero modificar la agenda no tengo que desmontar nada, ni ir con el pc al sitio donde esta montado el sistema, simplemente enviando un SMS podriamos grabar el numero. Tengo que decir que logicamente los numeros los grabo en la Eeprom para evitar que si se va la tension estos se borren. El programa a quedado asi:

FUNCIONAMIENTO:
Al recibir una llamada se compara el numero de movil que esta llamando con una lista de 5 numeros predefinidos:

  • Si coincide con algún numero de la lista, cuelgo la llamada y enciendo led durante 1 segundo.
  • Si no coincide cuelgo para dejar el sistema libre para otra llamada pero no activo el led.

Para modificar la lista:
Envio un SMS con el texto "0", el sistema contesta con un mensaje en el que nos escribe la lista de los 5 números memorizados
Ejemplo del mensaje:
Envio "0" al número del modem XXXXXXXXX

El modem contesta:
La lista de numeros es:
Memoria 1: XXXXXXXXX
Memoria 2: XXXXXXXXX
Memoria 3: XXXXXXXXX
Memoria 4: XXXXXXXXX
Memoria 5: XXXXXXXXX
Centro de mensajes: XXXXXXXXX

Si envío un SMS con el texto "1 123456789" el modem grabará el numero 123456789 en la posicion de memoria 1, para grabar en otro numero de memoria simplemente es cambiar el primer numero por el numero de la memoria que queramos. Si ponemos un valor que sea >5 o <0 devolvería un mensaje de error.

Ejemplo del mensaje:
Envío "1 123456789" al numero del modem XXXXXXXXX

El modem contesta:
El numero 123456789 ha sido grabado en la posición de memoria 1 con exito!!

Ejemplo del mensaje erroneo:
Envío "6 123456789" al numero del modem XXXXXXXXX

El modem contesta:
La posición de memoria indicada no existe

Si quiero borrar algun numero bastara con hacer lo mismo que para grabar un numero pero poniendo como numero de telefono el "000000000"
Ejemplo del mensaje:
Envío "1 000000000" al numero del modem XXXXXXXXX

El modem contesta:
El numero 000000000 ha sido grabado en la posición de memoria 1 con exito!!

Perdón por el tostonazo que he soltado pero quería explicar bien el funcionamiento :wink:

Cuando reciba el modem y lo tenga todo montado, colgaré un video.

Aunque finalmente la llamada no es leida por bluetooth como era la idea principal, esto me sirve, ya que el hacerlo por bluetooth era para darle funcion a un movil viejo que tenia y no comprar ningun modem, pero lo importante es que el proyecto funciona y realiza su funcion, quería aprovechar para dar las gracias a los que me disteis el empujoncito.