Módulo WiFi TLG10UA03 de bajo coste para Arduino

Sin duda algo de lo que más se echaba en falta en Arduino era algún modulo que añadiera conectividad WiFi de forma barata. Porque si, si es cierto que hay shields muy completas o incluso un par oficiales, pero estas no bajan de los 30-70€ la unidad. O incluso el nuevo Arduino Yun presentado hace unos meses que además de WiFi también integra un Linux embebido, pero estamos en las mismas, todo eso es muy caro si lo que queremos montar es un proyecto sencillo y barato.

Por ello me sorprendió hace unos meses al enterarme de que había un modulo WiFi muy económico, y no solo eso si no que todas la comunicaciones se hacían de forma transparente al Arduino por lo que se simplifica mucho la programación y ahorramos mucha memoria al no necesitar ninguna librería.

(más…)

Leer más

«Super» cargador USB para coche

Hace años para poder disponer de un cargador en condiciones en el coche decidí montar uno de PSP de 2A, ya que por aquel entonces era lo mejor que supe encontrar. Sin embargo ahora ya se ha quedado corto pues con 2A cargas un móvil y poco más.

Ahora hay bastantes mas cargadores para elegir, de entre ellos yo me he decantado por un ORICO MPU-4S, que cuenta con 4 conectores USB que ofrecen 2.4A por puerto haciendo un total de 9.6A.

(más…)

Leer más

Lo que da de sí la clausula #define de C!

En Arduino la función sizeof() devuelve el número de bytes que ocupa una variable o array. También podemos usarla para saber el número de elementos que tiene un array, para ello se obtiene el tamaño en bytes del array y se divide por el tamaño que tiene el tipo de dato que estamos usando:

De este modo sizeof(array) devuelve 14 porque el array tiene 7 elementos y cada uno de ellos ocupa 2 bytes, ese 14 se divide después por sizeof(int), 2 bytes, y da como resultado 7 elementos.

Para que el código sea genérico y no haya que indicarle el tipo de dato, se puede usar el siguiente código:

El problema es que queda feo y muy largo si debemos de repetirlo muchas veces. Por ello otra solución mas ingeniosa seria crearnos una macro que contenga ese código.