
Emanuel Salazar
PreguntaHola a tod@s
Re-instale Node.js con los complementos y volvi a insalar Johnny-five en la misma carpeta donde cree el archivo leds.js, segui el paso a paso para subir el programa de StandardFirmata al arduino, pero al correr el programada con node leds.js me arroja el siguiente error:
Por favor si alguien sabe como resolverlo, quedo atento.

Edith Elizabeth Narváez Higuera
Exacto. Pero me los fue pidiendo en cadena. Desde la primera vez que intenté correr mi código, falló. Reparaba y volvía a fallar por otra razón. Y así me fué mandado errores diferentes, uno tras el otro hasta que dejo de fallar. Yo fuí haciendo lo que me iba pidiendo. Leyendo a detalle el mensaje de error. El orden fue este:
Primero me arrojaba la leyenda:
Error: Cannot find module ‘serialport’ SOLUCIÓN: npm install serialport Seguía sin funcionar y ahora me arrojaba la leyenda:
Error: Cannot find module ‘firmata’ SOLUCIÓN: npm install firmata Seguía sin funcionar y ahora me arrojaba la leyenda:
Error: Could not locate the bindings file SOLUCIÓN1: Instalar 13 veces el archivo bindings.node que dice que no encuentra (en las rutas que dice). Seguía sin funcionar mi código y ahora me arrojaba la leyenda:
Error: NODE_MODULE_VERSION 72. This version of Node.js requires NODE_MODULE_VERSION 83. Please try re-compiling or re-installing the module (for instance, using npm rebuild or npm install). SOLUCIÓN: npm rebuild Corrí de nuevo el programa y ahora si funcionó!!!

Emanuel Salazar
Es decir @edith.narvaez que al momento en que tu ejecutas el npm install firmata y** npm install serialport ** es como si instalaras esos complementos en el Johnny-Five?

Edith Elizabeth Narváez Higuera
Si, claro! El Arduino siempre estuvo configurado a usar Standard Firmata... Creo que este mensaje se relaciona con el hecho de no encontrar desde el principio el puerto COM4. Pero es una hipótesis mía. No tengo una explicación para ello. Usando npm install firmata se solucionó.

Emanuel Salazar
@edith.narvaez ese error " Error: Cannot find module ‘firmata’ " te sale en la consola?, subiste el StandardFirmata al Arduino?

Emanuel Salazar
Gracias Rapidoso, muy completa la información

Edith Elizabeth Narváez Higuera
Hola Salazar. Yo tenía el error: Error: Cannot find module 'serialport' que se corrigió con: npm install serialport... Ahora tengo un nuevo problema: Error: Cannot find module 'firmata'

Ray Orlando Hernández Cartaya
Hola Pibardo, no sé si ya lo resolviste, pero si no, te explico.
Mira... En las primeras líneas del código de error te pone que puertos COM están compatibles. ("Availiable"). Para cada caso es diferente, por ejemplo, en la mía están los 3 y 4, en el tuyo veo que están los 1 y 3.
Bueno... Vamos a acceder al administrador de dispositivos, vas hasta abajo donde dice "Dispositivos Serie USB", lo abres y te debería salir un cuadro de diálogo. Dentro del cuadro de diálogo te vas a la sección "Configuración de puerto" y das click en "Configuraciones avanzadas".
Ahora, abajo en el cuadro de Configuraciones Avanzadas, sale un cuadro que dice: "Número de Puerto COM", y aquí vas a escoger el puerto que estaba "Availiable" en el código de error que te había salido". En mi caso como ya dije, escogí el 4 (porque me dejaba tanto usar como el 3 como el 4), pero en tu caso, puedes usar tanto el 1 como 3.
Normalmente cuando quieres cambiar de puerto, te va a decir que ese puerto ya está usado, si tus 2 opciones ya están usadas. PUES YA KE, úsalas, en mi caso no ha pasó nada, así que supongo que no importa que ya esté usado ese puerto.
Y LISTO... vuelve a la terminal, y si todo salió bien te debería funcionar pibe

Emanuel Salazar
Estuve investigando un poco y por si les es de ayuda la manera de decirle al programa que puerto del arduino debe ejecutar es así
var circuito = new jf.Board({port: "COM4"});

Emanuel Salazar
Creo que el error es por el puerto, ya que al ejecutar el programa esta conectando por el COM1 y no toma el COM3, saben como decirle al programa que conecte al COM3