Skip to main content

Bluetooth IV El programa en mBlock

Como ya hemos visto NO podemos usar EdhidnaML pues trabaja en vivo y el HC06 bloquea el cable USB

PASO 1 INSTALAMOS EL DISPOSITIVO ARDUINO IDE

Vamos a Dispositivos - Añadir - Arduino UNO (no vale el Echidna ni el Arduino nano)

2025-12-05 10_03_34-mBlock v5.4.3.png

PASO 2 INSTALAMOS LA EXTENSIÓN BLUETOOTH SERIAL

Hay muchas extensiones que trabajan el Bluetooth con Arduino (hay mucha basura) hemos elegido este pues es una extensión sencilla, en castellano y que envía como recibe por el Bluetooth

2025-12-05 10_15_18-Greenshot image editor.png

PASO 3 PROGRAMA

Con la extensión instalada y el dispositivo ya podemos empezar a programar

ENUNCIADO Vamos a realizar un programa que envíe y reciba datos desde la APP del móvil al Echidna

  • Si envío una R se enciende el Rojo
  • Si envío una A se enciende el Amarillo
  • Si envío una L que me diga el nivel de Luz que hay, 10 lecturas para ver cómo cambia

SOLUCIÓN

2025-12-05 10_17_34-mBlock v5.4.3.png
El programa lo puedes descargar aquí https://planet.mblock.cc/project/6844489

  1. Utilizamos los pines del Arduino (busca instrucciones azules Pin) el led rojo está en D13 y en naranja en el 12 de momento empezamos poniéndolos apagados
  2. PONEMOS LA VELOCIDAD DE BLUETOOTH A 9600 HAY QUE BAJARLO SINO NO FUNCIONA
    1. Y ponemos Rx que es D0 y Tx es D1 como hemos visto anteriormente
  3. El programa empieza con el clásico bucle y pregunta si se han recibido datos
  4. Si se han recibido datos pues entonces lo almacena en una variable interna llamada "Letra"
  5. Si Letra = R entonces se enciende el led Rojo
  6. Si Letra = A entonces se enciende el led Amarillo
  7. Si Letra = L entonces es que preguntamos qué nivel hay de Luz
  8. Entramos en un bucle de 10 veces tal y como dice el enunciado
  9. Escribe en la APP el valor de la luz medida en el sensor LDR que está en el A5
    1. OJO HAY QUE MAPEARLO (ya hemos visto qué significa esto) y la instrucción de mapear está en violeta en Datos

CUÁNTO HAY QUE MAPEARLO pues el LDR según www.echidna.es va desde 1 a 900 y Bluetooth solo lee un carácter en ASCII luego convertimos el valor de A5 (1-900) a un valor ASCII que si vemos la tabla, lo hacemos para los valores de los caracteres 48 (0) a 57 (9) y así nos da una lectura de la cantidad de luz entre 0 y 9

VALOR ASCII CARACTER
48 0
49 1
50 2
51 3
52 4
53 5
54 6
55 7
56 8
57 9

Resultado

Otras APPs

Hay otras apps como el Arduino Bluetooth Control  que permite poner flechas, control de voz... pero no permite envío de Echidna a APP

Incluso se podría hacer un coche teledirigido, el programa lo tienes en el repositorio: https://github.com/JavierQuintana/Echidna y el vídeo en el muro