BitBloq: Programar Arduino de forma visual

Os comentaba ayer que de los muchos entornos de programación que he visto para Arduino uno que me había gustado mucho para los legos era BitBloq, de BQ.

Bien, no voy a contar todo porque para eso ya está DIWO y el soporte de BQ. Contaré lo que BQ no os va a contar pero que es precisamente lo que hace tan genial su entorno.

Lo primero a tener en cuenta es que BitBloq sólo funciona con Chrome. Lo segundo es que necesitamos instalar Web2Board, que en esencia es el programa que realmente compilará nuestros proyectos y los enviará a nuestro Arduino.

Lo segundo a tener en cuenta es que no todos los Arduinos son compatibles, en principio todas las placas clones de Arduino UNO funcionarán sin problemas. Oficialmente están soportadas tres placas: bq ZUM, Freaduino UNO y Arduino UNO.

BitBloq - Selección de placa
BitBloq – Selección de placa

Lo más importante es que nuestra placa sea compatible con Arduino UNO y tenga un ATmega 328, y lo realmente importante es esto último, el modelo de microcontrolador. Como os comenté es posible utilizar BitBloq con un Arduino Nano, pero del Nano hay dos versiones, una con el ATmega 168 y otra con el 328… así que tenerlo presente.

Si nuestra placa no es una bq ZUM no hay problema, seleccionamos una de las otras dos. ¿Cualquiera?, si, la única diferencia entre seleccionar la Freaduino UNO o la Arduino UNO es la apariencia… como el mismo entorno nos guía visualmente en la conexión de los componentes pues lo recomendable es utilizar la más parecida.

BitBloq - Conexión de componentes
BitBloq – Conexión de componentes

La programación se hace en un entorno derivado de Scratch, lo que es una idea genial, y aunque está llevada a cabo con mucha elegancia una vez más no es una idea original, aunque no le quita mérito.

BitBloq - Programación
BitBloq – Programación

Para mi es muy importante que se pueda ver el código generado, hace que resulte más sencillo aprender a manejarse directamente con el código en lugar de con los bloques tipo Scratch. Simplemente llegará un momento en que será más fácil programar en código que mediante los entornos gráficos…

BitBloq - Vista de código
BitBloq – Vista de código

Bueno, esto sería todo lo que tengo que decir de BitBloq sino fuera porque aunque es compatible con Arduino Nano (ATmega 328) no lo es directamente por un pequeño detalle: la velocidad del puerto serie.

Nuestros queridos Arduinos se programan con un puerto serie, es un puerto USB que el ordenador ve como uno de los más que venerables puertos series. ¿Por qué?, pues muy sencillo para comunicar dos dispositivos mediante puerto serie sólo se necesitan tres “hilos”:

  • GND: Masa, tierra, 0V.
  • TX: Envío de datos
  • RX: Recepción de datos

Y sólo hay que ponerse de acuerdo en la velocidad a la que vamos a hablar… y aquí está el “problema”. Tanto el Arduino UNO como sus clones Freaduino UNO, Funduino UNO y otros se comunican a 115200 baudios (bits por segundo para entendernos, pero es una respuesta simple). Sin embargo el Nano se comunica a 57600 baudios. Si conectamos un Nano y a BitBloq le decimos que es un Freaduino UNO o un Arduino UNO, a la hora de subir nuestro programa a la placa el Web2Board intentará comunicarse a 115200 baudios, pero el Nano escucha a 57600 y no entenderá ni papa.

La solución pasa por modificar un archivo de Web2Board llamado boards.txt, que es dónde están registrados los distintos modelos de placas Arduino y sus velocidades de comunicación. Se trata de una copia del archivo original contenido en el IDE oficial, por lo que vienen las placas soportadas por el IDE oficial con sus denominaciones oficiales. Lo que hay que hacer es abrir el fichero boards.txt (“c:\Program Files (x86)\Web2board\src\res\boards.txt” o “c:\Program Files\Web2board\src\res\boards.txt”) y cambiar la siguiente línea:

uno.upload.speed=115200

Por

uno.upload.speed=57600

De esta manera el Web2Board se comunicará con las placas compatibles con Arduino UNO a 57600 baudios y nuestro Nano ya será capaz de entenderse con el BitBloq. La pega es que si tienes una placa Arduino UNO o compatible (como mi Funduino) pues o eliges con cual de las dos trabajarás con BitBloq o tendrás que cambiar el archivo boards.txt según la placa con la que se vaya a trabajar.

Siempre puedes dar un salto hacia adelante y aprender a programar directamente en código y utilizar el IDE oficial, que dicho sea de paso es la opción con la que me he quedado yo, ya que siendo programador era la opción más lógica.

Leave a Reply

Your email address will not be published. Required fields are marked *