¿Leer variables del código Arduino en PureData?

He estado tratando de encontrar formas de pasar una variable de mi código Arduino a PureData en tiempo real. He explorado PDuino y la biblioteca Firmata, pero las herramientas parecían un poco más para leer y controlar pines. Tal vez eché un vistazo a cómo obtener datos variables.

Si ha hecho algo como esto, ¿podría explicar brevemente el proceso que se utiliza aquí? No entiendo completamente las conexiones que se están haciendo o cómo Firmata está mediando las cosas. Si tiene una sugerencia para una biblioteca o un código simple, hágamelo saber.

¿Hay algún aspecto de ingeniería eléctrica en esta pregunta?
Esta pregunta parece estar fuera de tema porque se trata de programación. StackOverflow sería un mejor lugar para ello.

Respuestas (1)

No entiendo completamente las conexiones que se están haciendo o cómo Firmata está mediando las cosas.

Me parece que el boceto de Firmata convierte a tu arduino en un periférico tonto de tu PC.

Si tengo razón, cuando ejecuta Firmata, no tiene otro código ejecutándose en Arduino. Por lo tanto, no tiene ninguna variable en un boceto de Arduino al que necesite acceder.

La biblioteca de Firmata y el boceto de Firmata manejan las comunicaciones por usted. Solo interactúa con la biblioteca en su PC

Haces todo el procesamiento que quieres hacer en tu PC usando un lenguaje con una biblioteca Firmata.

pasar una variable de mi código Arduino a PureData en tiempo real

En este caso, está escribiendo dos programas, un boceto que se ejecuta en un Arduino y un programa PureData que se ejecuta en una PC. Desea que los dos programas se comuniquen en tiempo real.

Utilice un método de comunicación adecuado. Si su programa PureData se ejecuta en una PC y la PC está conectada al Arduino mediante un cable USB, puede usar comunicaciones en serie. El Arduino tiene una biblioteca en serie y espero que PureData tenga una forma de leer y escribir en los puertos COM.

La comunidad de PureData debería (¿y probablemente lo haga?) tener un foro de soporte con código de ejemplo para este tipo de tarea.