El ritmo de vida al que nos enfrentamos día a día, hacer bien nuestro trabajo, ya sea por ilusión y vocación, como por miedo a un despido, nos deja extenuados. Sin embargo, al llegar a casa, tenemos dos opciones, o seguimos trabajando, llevando a cabo labores que no se hacen por sí solas, o nos desplomamos en el sofá hasta que el sueño nos arrastre a la cama. En este caso, aplica aquello de: "Por A o por B, al final, la casa sin barrer". Menos mal que la tecnología está a nuestra disposición y los esperados y futuristas robots, fabricados por iRobot o LG, son asequibles para ayudarnos en determinadas tareas.
Ciertos modelos, incluso se pueden programar para que limpien algunos días a algunas horas, preferentemente cuando no estamos en casa, porque cuando se lían a trabajar, generan un ruido tal, que hace difícil la convivencia con humanos. Los afortunados de un trabajo con un horario regular lo tienen más o menos fácil, pero los que nos hemos decidido por una vida emprendedora, cuyos clientes son los que marcan la presencia en casa, no podemos dejar programada la Roomba con la garantía de no coincidir.
Dando autonomía a la aspiradora
Muchas veces he pensado: "Estos cacharros deberían saber cuándo hay alguien en casa para no molestar…", pero esto, los departamentos de I+D de los fabricantes aún no lo han tenido en cuenta. Deben pensar que es muy agradable escuchar la turbina de una aspiradora que se mueve sola mientras estrujas tu materia gris en un proyecto o hablas por teléfono con clientes.
Y esta fue una de las causas por las que se me metió en la cabeza que mi Roomba tendría que salir a funcionar cuando no hubiera nadie en casa. Leyendo un libro llamado "Hacking Roomba", dí con la solución. Resulta que los fabricantes de estos robots, pensaron en que alguien podría querer enviarle comandos a la aspiradora.
Para ello, hay que hacer (o comprar ya hecho) un dispositivo que consta de un modem bluetooth que permite enviar comandos AT por el conector MiniDIN. Mediante esta API, se puede controlar la roomba a todos los niveles: movimiento de ruedas, giros, monitorización de sensores anticaída, bumpers, estado de la batería,… e incluso hasta que memorice una melodía y la reproduzca después. Sin embargo, hay dos órdenes fundamentales: "Ponte a limpiar" y "Vuelve a tu base".
Para llevar a cabo mi misión, necesitaba únicamente una conexión bluetooth desde un ordenador que me permita darle las órdenes a la Roomba dependiendo de si hay alguien o no en casa. Y esta parte es la más complicada.
Nuestro teléfono móvil como "chivato" de dónde estamos
¿Cómo sabe "la casa" si está sola o no? Como aún no hemos llegado el año en el que todos los humanos tengamos un chip identificador incorporado bajo la piel, tendremos que aprovecharnos de las capacidades de un dispositivo que siempre llevemos encima, y que además identifique unívocamente a los habitantes de una casa: nuestro teléfono móvil. Al fin y al cabo, siempre llevamos el bluetooth encendido para que enlace directamente con el manos libres del coche, ¿verdad?
Con estos ingredientes, ya sabemos lo que hay que hacer. Un sencillo programa que monitorice nuestra presencia en casa, en base a la detección de la BD Address de nuestro móvil y, en base a si ha salido o no, y si el horario es soportable para nuestros vecinos, tome la decisión de mandar a la Roomba a limpiar. Pero imaginad que llegamos antes de la cuenta a casa y deseamos que la Roomba vuelva a su base. Nuestro programita deberá conocer el estado actual de la aspiradora (cargando/aspirando) y, en caso de detectar nuestra presencia, enviará la señal de "Vuelve a tu base" al robot con ruedas, para que cuanto antes, deje de martirizarnos con el ruido.
Cierto es que tener que llevar el interfaz bluetooth conectado permanentemente, al ser un añadido, puede hacer que la Roomba colisione con ciertos muebles. Para evitarlo hay dos opciones: O se protege el conector con toda una suerte de parachoques que lo eviten, o se integra dentro de la circuitería de la Roomba. Esta parte la detallé en un post de Security By Default, que titulé Hacking Roomba! Reloaded
Y este fue el comienzo de mi aventura por hacer mi casa un lugar más cómodo para vivir... Y desde ese día, ¡no he podido parar!
Ver 9 comentarios