Calificación:
  • 0 voto(s) - 0 Media
  • 1
  • 2
  • 3
  • 4
  • 5
Ayuda con jquery y json para interface web arduino
#1
Buenas, a ver si alguien me puede echar un cable con esto, es del abc de javascript, pero yo soy nulo programando, soy más de hardware Guiño

Estoy haciendo una interface en html5 para el arduino, y ya puedo cambiar el modo de los pines, activarlos y desactivarlos en digital, o setearlos en analógico por REST. Ahora toca poder leerlos, y el arduino me los devuelve sin problema, en un json tal que así:

Código:
{"value":{"D9":"250","D11":"250","D10":"250"},"response":"get"}

Indica que el pin 9,11,y 10 están a 255.

El html de pruebas es este:

Código:
<title>Test JSON query @rduino </title>
</head>
<body>
    <div id="placeholder"></div>
    <script src="http://code.jquery.com/jquery-1.7.1.min.js"></script>
    <script>
  $.getJSON('/data/get/', function(data) {
        var output="<ul>";
        for (var i in data.value) {
            output+="<li>" + data.value[i] + "</li>";
        }

        output+="</ul>";
        document.getElementById("placeholder").innerHTML=output;
  });
    </script>
</body>
</html>

este es el dichoso trozo que se me atraganta:

Código:
for (var i in data.value) {
            output+="<li>" + data.value[i] + "</li>";

Y funciona ok y me devuelve los valores en una tabla, pero solo los valores, así
  • 255
    255
    255

El problema es que no se cual es cual, y no consigo traerme el Dx de la cadena json. Mientras no pueda hacer esto, no me puedo plantear crear las variables para poder usar bien marcadores, gráficas etc...

Alguien que controle jquery o json que me eche un cable? Se que es bastante fácil, pero llevo varios días atrapado en este punto.

Una fotillo de como está ahora:

resim

Alguien que se anime a echar una mano? La interface en cuanto la tenga terminada la liberaré para que la reaproveche el que quiera. Los botones los voy a cambiar por unos knobs o sliders bonitos, ahora uso ajax para atacar por rest al arduino sin recargar la página.

Tiene tambén un apartado para ver la webcam conectada al arduino, por lo que puede ser una buena maqueta para hacer interfaces para robots o domótica y vigilancia.


Salu2
Citar
#2
hola:
yo no se mucho de JavaScript, pero diría que te falta pedirle las claves.
su recibes un diccionario/hashmap/array asociativo, tienes que iterarlo con la clave y el valor. solo estás poniendo el valor.


usease, algo como

for ( var índice in arrayDeTurno ) output += "li" + índice + ":" + arrayDeTurno[índice] + "li" ;

y cierras la lista.

espero que perdones el desastre y los acentos, porque estoy con el móvil Sonrisa, es solo un boceto.. ya me dirás si se entiende.

Sent from my Galaxy Nexus using Forum Fiend v1.0.1.
Citar
#3
y por cierto, muy guapa la interfaz.
verte liberando ya el proyecto en github, jejeje que hay mas gente pensando en hacer cosas parecidas....
me gusta la aproximación API.

Sent from my Galaxy Nexus using Forum Fiend v1.0.1.
Citar
#4
Si, seguramente lo cuelgue en github, tengo que echarle un ojo a ver como van los comits y demás.... Guiño

Por la noche cuando tenga un momento le pego un repaso a ver si saco algo en claro.


Salu2
Citar
#5
si señor, era exactamente lo que se me estaba escapando...

Código:
for (var i in data.value) {
            output+="<li>" + [i] + " " +data.value[i] + "</li>";

Y ya me pinta esto el html Guiño
  • D9 125
    D11 50
    D10 175

Ahora solo necesito crear la variable para poder leerla por los gauges o medidores. ahora mismo la estaba seteando en el onclick de los botones que mandan el comando a la "api", pero tenía 2 fallos, al abrir la web no recuperaba los valores, estaban a 0 hasta que enviabas el primer comando, y cuando estan seteados si actualizabas la página volvian a 0. Ahora en breves ya podré usarlos para leer por ajax las medidas de los pines

Gracias fiera!
Citar
#6
biketrial981:
Alguien que se anime a echar una mano? La interface en cuanto la tenga terminada la liberaré para que la reaproveche el que quiera. Los botones los voy a cambiar por unos knobs o sliders bonitos, ahora uso ajax para atacar por rest al arduino sin recargar la página.

Tiene tambén un apartado para ver la webcam conectada al arduino, por lo que puede ser una buena maqueta para hacer interfaces para robots o domótica y vigilancia.


Buena pinta.... :aplauso: Esperando tambien por esa liberacion Mola
Citar
#7
En breves lo acabo, me paro un poco la actualización de mi impresora 3D a una I3.

En una o dos semanitas espero tenerla finalizada Guiño


Salu2
Citar
#8
mola! ánimo con ello.

no tengas miedo de ponerlo en github aunque no este terminado, así podemos ir leyendo, comentando, ayudando, esas cosas del OpenSource Sonrisa Guiño

Sent from my Galaxy Nexus using Forum Fiend v1.0.1.
Citar