miércoles, 10 de mayo de 2023

Si perdemos la curiosidad, ¿qué nos queda?".

 “Pienso que si perdemos la curiosidad no hay nada; no hay reflexión y, por tanto, no hay conocimiento y no hay ninguna posibilidad de saber, de llegar al final de algo. Sin curiosidad, directamente no estás vivo.

-Luis Eduardo Aute-

"La vejez empieza cuando se pierde la curiosidad"
-Saramago-

“Yo no podría, a ninguna edad, ser feliz estando sentada junto a la chimenea y simplemente mirar. La vida fue propuesta para ser vivida. La curiosidad debe mantenerse viva. Uno no debe nunca, por ninguna razón, volverle la espalda a la vida.”
-E. Roosevelt-

“Por suerte, la naturaleza me ha dotado de una curiosidad irracional hasta para las cosas más nimias. Eso me salva. La curiosidad es lo único que me mantiene a flote. Todo lo demás me hunde.”

-Pedro Almodóvar-

Hace ya un par de meses me recomendaron un podcast, "Gabinete de Curiosidades" de Nuria Pérez, a lo largo de sus 32 episodios Nuria nos invita a reflexionar sobre temas relacionados con el arte, la literatura, la música, el cine, la historia, el medioambiente, la política y los derechos humanos. Sus protagonistas pertenecen a diversas épocas y se encuentran en distintos continentes, pero todos en cada episodio tienen algo que los une. La magia de este podcast está en la sensibilidad con que Nuria nos sumerge en cada episodio y en su capacidad para remover.

Y es que si hay algo que de verdad me mueve en mi día a día es la curiosidad y las ganas de aprender, conocer, esperimentar...La curiosidad nace a la vez que nosotros de una manera innata y la mantenemos a lo largo de toda nuestra vida. 
En el momento en el que sentimos que no hay nada que nos conmueva a seguir conociendo... Houston tenemos un problema.

Los que tenemos niños, sobre todo cuando son más pequeños, vemos como les posee unas ganas de conocer extremas. Eso les mueve a preguntarlo todo, a quererlo todo y a tocar todo lo que esté delante...Los adultos estamos obligados a fomentar que esa curiosidad continúe y se desarrolle de forma positiva e intelectual.

El podcast me ha recordado que tenemos que aprender a mantener constante esa curiosidad: es lo que me hace sentir jóven. Es por ello por lo que he buscado en la red vías de cómo fomentar la curiosidad:

Aprende algo nuevo diariamente. 
Para empezar podemos comenzar desde lo básico y recordar cuando eramos pequeños; traed a vuestra mente todas esas dudas que os surjan por más básicas que sean, por ejemplo: ¿cómo nos llega la electricidad, cómo se genera, quién la almacena?, ¿por qué las botellas son cilindricas y se almacenan en cajas cuadradas?, ¿quién narices era William Seward Burroughs?...
Hoy en día encontramos muchas opciones para aprender nuevas habilidades en la red. ¿Por qué no aprovechar todas las herramientas que tienes a la mano? Desde aprender un nuevo idioma hasta un lenguaje de programación o herramientas de edición, las opciones son infinitas.

No dejes de preguntar
Cuestiona todo. Por lo regular tendemos a dar las cosas por hecho, sin ni siquiera meditar sobre la información o cuestionar un poco.
El hecho de comenzar a cuestionar la información que recibimos nos llevará a comenzar a profundizar en los temas que nos interesan y conocer más sobre aquellos de los que no tenías ni idea. Además, este entusiasmo por aprender puede abrirnos puertas a nuevas oportunidades en muchos campos.

Olvídate de los prejuicios
Tener una mente abierta es uno de los principales aspectos para desarrollar la curiosidad y aprender muchas cosas nuevas. Salir de nuestra zona de confort es fundamental para eliminar los prejuicios y dejarte llevar por el conocimiento y la curiosidad. 

Pierde el miedo a equivocarte
La curiosidad nos puede llevar por muchos caminos y esto significa que, probablemente en algunos, rompamos paradigmas y encuentremos que estabamos equivocados. Benditas equivocaciones.

Espero que estas líneas hayan conseguido llegar al niño que lleváis dentro, y por favor no dejéis de remover, porque si perdemos la curiosidad, ¿qué nos queda?".




 


lunes, 19 de septiembre de 2022

Controlar Robot Roomba 650 sin WIFI con modulo WIFI ESP8266-01 y Alexa (Amazon app)

Despues de ver las funcionalidades de los modulos ESP8266 y similares, encontre en internet muchas librerias y usos para su aplicacion en nuestra vida cotidiana.
Una que me intereso era como iniciar el Roomba por WIFI con un comando de voz rápido, o incluso programar una rutina desde la app de Alexa. 

La implementación requiere:

  • Lo principal un iRobot Roomba sin WIFI (mi vieja 650)
  • Un modulo ESP8266, yo use el ESP-01
  • Programador ESP82600
  • Conversor para el modulo ESP01 (M1584EN o mini 560)
  • Cables arduino
  • Soldador y estaño

Irobot publico el codigo de sus roomba, por lo que se puede enviar comandos a Roomba a través de su puerto serie. 
Este es un conector mini DIN de 7 pines, "iRobot Roomba® Open Interface".

Para instalarlo os dejo un resumen de ifixit que es muy completo:


Ahora hay que fijarse en el siguiente esquema:


Construya el hardware de acuerdo con el dibujo a continuación.



En mi caso solde al conector de la roomba por la parte de atras de la placa los cables, para no meterlos por arriba del puerto PS/2, luego escondi el modulo detras en un hueco que hay al lado.



Tambien hay que configurar el voltaje de salida en el módulo estabilizador de voltaje MP1584EN usando el potenciómetro marcado con una flecha, la salida al modulo ESP-01 debe ser 3,3v. Para evitar esto podemos sustituir este modulo deon el modulo mini560 con una salida predeterminada de 3,3v. Mas voltaje y quemaremos el ESP-01.





Por supuesto, el ESP8266 debe programarse antes. Hay que abrir el programa Arduino en el PC, cargar el siguiente código y luego subirlo al ESP-01 con el programador conectado. (el programador tiene que estar puenteado)

/**************************************/
//  https://myhomethings.eu           //
//  Generic ESP8266 module            //
//  Flash size: 1M (no SPIFFS)        //
/**************************************/

#include <ESP8266WiFi.h>
#include <ESP8266WebServer.h>
#include <WiFiUdp.h>
#include "Switch.h"
#include "UpnpBroadcastResponder.h"

const char* ssid = "SSID";
const char* password = "Password";
const char* RoombaFriendlyName = "iRobot Roomba";

Switch *switchRoomba = NULL;
UpnpBroadcastResponder upnpBroadcastResponder;

void setup_wifi() 
{
  WiFi.begin(ssid, password);
  while (WiFi.status() != WL_CONNECTED) 
  {
    delay(500);
  }
}

bool switchRoombaOn()
{
  Serial.write(128);  // start command
  delay(50);
  Serial.write(131);  // safe mod
  delay(50);
  Serial.write(135);  // clean
  return true;
}

bool switchRoombaOff()
{
  Serial.write(128);  // start command
  delay(50);
  Serial.write(131);  // safe mod
  delay(50);
  Serial.write(143);  // dock
  return false;
}

void setup()
{
  Serial.begin(115200);
  setup_wifi();
  
  upnpBroadcastResponder.beginUdpMulticast();
  switchRoomba = new Switch(RoombaFriendlyName, 80, switchRoombaOn, switchRoombaOff);
  upnpBroadcastResponder.addDevice(*switchRoomba);
}

void loop()
{
  upnpBroadcastResponder.serverLoop();
  switchRoomba -> serverLoop();
}
Debemos cargar las librerias correspondientes en la carpeta del arduino: 
#include <ESP8266WiFi.h> #include <ESP8266WebServer.h> #include <WiFiUdp.h> #include "Switch.h"
#include "UpnpBroadcastResponder.h"
y sustituir esta cadena por el nombre de la red WIFI a la que se conectara, y la contraseña.
const char* ssid = "SSID"; const char* password = "Password";

Una vez que se ha montado el ESP-01 en la placa y bien programado, se monta todo en el orden inverso al desmontaje.


Con esto, el hardware estára listo.

Ahora basta con abrir la aplicación Amazon Alexa en su teléfono y agregar un nuevo dispositivo.

Dentro de la aplicación Amazon Alexa podemos crear rutinas y automatizar el proceso.

A partir de ahora, también puedes controlar la roomba con tu voz usando Amazon Echo / Echo Dot

"Alexa, enciende Roomba"

Hay un bug con la roomba 650 que hace que si no esta en la base se pone en modo reposo, en ese modo es imposible activarla...

Aquí os dejo las librerías y el código para arduino.



El codigo y la idea son propiedad de https://myhomethings.eu