Probad el programa Sleep as a android.
Detecta tus ciclos del sueño mediante los sensores de movimiento del telefono y tambien puede detectar los sonidos,vibra o emite sonidos si detecta ronquidos para evitarlos y tambien graba si hablas durante los sueños. Puedes poner musica tranquila, que se para cuando el telefono detecta que estas dormido.
Ademas esta bastante bien para programarlo para despertar en un momento de sueño ligero y asi parece que has dormido mucho mejor.
Puedes programarlo para que te despierte entre ciertos irtevalos de tiempo,por ejemplo de 8 a 8 y media,y que lo haga si detecta esos momentos de sueño ligero.Puedes monitorizar todas las horas de sueño o programarlo mejor para que arranque cierto tiempo antes de despertar para ahorrar bateria.
Tambien tiene otra opcion para ejecutar una operacion matematica en el momento que suena la alarma del despertador, para asegurarse que te despiertas o mediante el reconocimiento de una pegatina de un codigo IQR situado donde tu quieras para que te levantes, sino la alarma no se detiene.
Pero entre sus opciones hay una muy interesante "lucid dreaming" para los sueños lucidos, detecta cuando estas en momentos de sueño profundo y puede emitir el audio que introduzcas.
https://play.google.com/store/apps/details?id=com.urbandroid.sleep&hl=es