En general, hay muchas formas de usar node.js con una plataforma, como esta para RPi . Hay muchos más similares si solo los busca .
Otra interesante es ArduGate , que permite que las páginas web se comuniquen con el arduino a través de JS (aunque probablemente no sea exactamente lo que quería, ya que no se compila ni carga en el arduino)
Aunque realmente no veo qué hay de malo en usar un idioma diferente. Yo mismo escribo principalmente en JS, pero me encuentro perfectamente cómodo programando un Arduino en C ++ (también permite C y Java, y si pones un poco de trabajo, bastantes lenguajes más ). Recuerde, no necesitamos nada sofisticado para programar un robot, simplemente normalif
s, for
s, while
s, switch
es y ocasionalmenteclass
. Aprenda la sintaxis, y ya está listo para empezar :) Lo único es que C / C ++ / Java están fuertemente tipados (aunque si está utilizando el RPi, python está tipeado débilmente pero exigente en un millón de formas más), entonces Es posible que sienta un poco de frustración al principio cuando tenga que especificar tipos para todo. Una ventaja de usar los idiomas nativos es que es mucho más fácil encontrar API y código de ejemplo en la red. Por ejemplo, aparte de ArduGate (que lo tiene incorporado y probablemente no es lo que quería), no puedo encontrar ninguna forma de acceder a la EEPROM, una tarea común. Entonces, a menos que desee apegarse a programas simples, es mejor usar los idiomas nativos.
node.js
tampoco es javascript. Es una biblioteca C que interpreta las llamadas AJAX como un mini servidor y se utiliza para solicitudes de gran volumen, por ejemplo, en eBay. No necesita actualizar una página en un elemento que está finalizando porque JavaScript sincroniza el precio y el tiempo de la oferta mediante el nodo .js respuesta extremadamente rápida al tiempo que reduce la sobrecarga de tráfico) node.js es bueno para arduino porque lo esC
c
e interactuar con él utilizando node.js, que inherentemente usa JavaScript ajax para la solicitud, pero también puede usar solicitudes del servidor u otro código inteligente que no esté relacionado con JavaScript de todos modos.