/Fortune-Cookie-Simulator

Fortune cookie simulator made with Nodejs, websockets, Arduino and Edubasica Shield

Primary LanguageJavaScriptApache License 2.0Apache-2.0

⚠️ This repository is not longer maintained ⚠️

Fortune Cookie Simulator

Un simulador de las míticas galletas de la fortuna que nos muestra un mensaje de la fortuna en el LCD o en el navegador. Gracias a WebSockets WebSockets. Por supuesto se puede disparar la apertura de una galleta desde el navegador o desde nuestro propio Arduino.

Este script esta diseñado para ser usado con eduBasica Shield, pero también se puede hacer sin el.. sin necesidad de retocar el código en ningun momento.

Descripción:

tablet

Programado en Javascript, se apoya en Nodejs y la librería Johnny-five. Se puede acceder a nuestra aplicación desde cualquier dispositivo que este conectado a nuestra red local (compartiendo el mismo wifi o conexión). Solo es necesario introducir la url (IP + puerto) de nuestro Raspberry Pi en el navegador. Por ejemplo:

~~~
192.168.1.66:1000
~~~

Los resultados y acciones se sincronizan automaticamente entre nuestro navegador y el LCD. Así que no importa desde donde lo accionemos o realicemos la lectura

Créditos

Configuracion y opciones avanzadas:

El script esta listo para ejecutarse, pero existen opciones addicionales:

  • Se puede cambiar el puerto del servidor

     var wsPort = 3000; // 3000, 1000, 8080 ... son los más usados.
    
  • Cualquier ordenador, tablet o smartphone conectado a la red local podra acceder al script a través del navegador. Solo necesitas introducir la IP de tu host o Raspberry Pi y el Purto (wsPort) en el navegador.

     192.168.1.66:1000 
    
  • Se incluye una función para depurar usando la consola de Nodejs, que se puede habilitar o deshabilitar.

     var debugMode = false; // o true
    
  • El entorno web (websockets) es opcional y se puede habilitar o deshabilitar con una variable.

     var wsMode = true; // o false
    
  • Existe un modo Geek que utiliza mensajes un poco más divertidos.

     var geekMode = false; // o true
    
  • El script utiliza una libreria con más de 350 mensajes predefinidos.

  • El script funciona con o sin eduBasica Shield.

Hardware necesario:

Con eduBasica Shield Conexiones

-LCD 20x4 con I2C Pantalla LCD Product 198

I2C Backpack Product i2c

Más información sobre Pantalla LCD en Adafruit.

Más información sobre I2C Backpack en Adafruit.

Para adaptar este script a otro dispositivo, consulta Johnny-five API.

Sin eduBasica Shield

Conexiones Nota: el LCD tiene que tener instalado I2C. En la imagen, no lo es, pero los cables estan conectados como si fuera I2C

-Placa Arduino UNO o similar**

  • Pulsador

  • Resistencia de 10k Ohms

-LCD 20x4 con I2C Pantalla LCD Product 198

I2C Backpack Product i2c

Más información sobre Pantalla LCD en Adafruit.

Más información sobre I2C Backpack en Adafruit.

Para adaptar este script a otro dispositivo, consulta Johnny-five API.

Pantalla de Bienvenida:

Este script ofrece una pantalla de bienvenida cuando termina de cargarse y confirma que esta listo para empezar a desvelar tu fortuna final

Instalación:

Es necesario contar con Nodejs y Npm en tu sistema.

Para este script es necesario instalar WebSockets:

sudo npm install -g socket.io

Para este script es necesario instalar Johnny-Five:

sudo npm install -g johnny-five

Ejecutar el Script:

Desde la carpeta donde esta fortuneCookies.js

node fortuneCookies