# Jugando con la maqueta y Makecode

# LED AMARILLO

Vamos a hacer este sencillo proyecto, es tan sencillo que no hace falta las extensiones anteriores.

[https://makecode.microbit.org/S51000-47523-37650-37264](https://makecode.microbit.org/S51000-47523-37650-37264)

<div id="bkmrk--2" style="position: relative; height: calc(300px + 5em); width: 100%; overflow: hidden;"><iframe allowfullscreen="allowfullscreen" frameborder="0" sandbox="allow-scripts allow-same-origin" src="https://makecode.microbit.org/---codeembed#pub:_200cXuR5aXsA" style="position: absolute; top: 0; left: 0; width: 100%; height: 100%;"></iframe>

</div><iframe height="760" src="https://www.youtube.com/embed/fjCu82BzQE4" style="border: 0; width: 428px; height: 760px;" title="4 de noviembre de 2025" width="428"></iframe>

##### <span style="color: rgb(22,145,121);">**RETOS**</span>

<p class="callout success">RETO1: Haz que brille de forma gradual y luego baje y así sucesivamente, si no lo sabes mira:  
[https://docs.keyestudio.com/projects/KS4027-KS4028/en/latest/makecode.html#project-2-breathing-led](https://docs.keyestudio.com/projects/KS4027-KS4028/en/latest/makecode.html#project-2-breathing-led)</p>

<p class="callout success">RETO2: Haz que cuando sea de noche, se encienda la luz  
Es decir el llamado Interruptor Crepuscular  
Pista:  
- El sensor de luz lo tienes en la propia placa de microbit por aquí tienes una pista: [https://libros.catedu.es/books/microbit/page/sensor-luminosidad-y-sonido](https://libros.catedu.es/books/microbit/page/sensor-luminosidad-y-sonido)</p>

# Extensiones

##### <span style="color: rgb(22, 145, 121);">**OPCIÓN A PONER LA EXTENSIÓN QUE NECESITEMOS EN CADA MOMENTO**</span>

Si vas a utilizar alguno de estos elementos, necesitas instalar la extensión correspondiente

- DHT11
- I2C\_LCD1602
- Neopixel

Para instalarlas. En Makecode [https://makecode.microbit.org/#editor](https://makecode.microbit.org/#editor) vamos a **Extensions**

[![2025-11-04 13&#95;46&#95;36-Configuración.png](https://libros.catedu.es/uploads/images/gallery/2025-11/scaled-1680-/2025-11-04-13-46-36-configuracion.png)](https://libros.catedu.es/uploads/images/gallery/2025-11/2025-11-04-13-46-36-configuracion.png)

Para DHT11

[![2025-11-04 20&#95;10&#95;42-Greenshot.png](https://libros.catedu.es/uploads/images/gallery/2025-11/scaled-1680-/2025-11-04-20-10-42-greenshot.png)](https://libros.catedu.es/uploads/images/gallery/2025-11/2025-11-04-20-10-42-greenshot.png)

Para el LCD display

[![2025-11-04 18&#95;30&#95;55-Greenshot.png](https://libros.catedu.es/uploads/images/gallery/2025-11/scaled-1680-/2025-11-04-18-30-55-greenshot.png)](https://libros.catedu.es/uploads/images/gallery/2025-11/2025-11-04-18-30-55-greenshot.png)

Para Neopixel

[![2025-11-06 22&#95;44&#95;42-&#95;C&#95;&#95;Users&#95;HP&#95;Dropbox&#95;preguntassmarthomemircrobit.txt - Notepad++.png](https://libros.catedu.es/uploads/images/gallery/2025-11/scaled-1680-/2025-11-06-22-44-42-c-users-hp-dropbox-preguntassmarthomemircrobit-txt-notepad.png)](https://libros.catedu.es/uploads/images/gallery/2025-11/2025-11-06-22-44-42-c-users-hp-dropbox-preguntassmarthomemircrobit-txt-notepad.png)

##### <span style="color: rgb(22, 145, 121);">**OPCIÓN B : PONER LAS EXTENSIONES TODAS DE GOLPE**</span>

En Makecode [https://makecode.microbit.org/#editor](https://makecode.microbit.org/#editor) vamos a **Extensions**

[![2025-11-04 13&#95;46&#95;36-Configuración.png](https://libros.catedu.es/uploads/images/gallery/2025-11/scaled-1680-/2025-11-04-13-46-36-configuracion.png)](https://libros.catedu.es/uploads/images/gallery/2025-11/2025-11-04-13-46-36-configuracion.png)

Y pegamos la siguiente URL [https://github.com/keyestudio2019/ks\_IoT](https://github.com/keyestudio2019/ks_IoT)

[![2025-11-04 13&#95;47&#95;32-Configuración.png](https://libros.catedu.es/uploads/images/gallery/2025-11/scaled-1680-/2025-11-04-13-47-32-configuracion.png)](https://libros.catedu.es/uploads/images/gallery/2025-11/2025-11-04-13-47-32-configuracion.png)

Al pulsar Intro o dar a la lupa, aparece una extensión que instalaremos

[![2025-11-04 13&#95;49&#95;03-Configuración.png](https://libros.catedu.es/uploads/images/gallery/2025-11/scaled-1680-/2025-11-04-13-49-03-configuracion.png)](https://libros.catedu.es/uploads/images/gallery/2025-11/2025-11-04-13-49-03-configuracion.png)

al instalarlo se instalan tres extensiones

- DHT11
- I2C\_LCD1602
- Neopixel

[![2025-11-04 13&#95;51&#95;03-Configuración.png](https://libros.catedu.es/uploads/images/gallery/2025-11/scaled-1680-/2025-11-04-13-51-03-configuracion.png)](https://libros.catedu.es/uploads/images/gallery/2025-11/2025-11-04-13-51-03-configuracion.png)

# NEOPIXEL

Hay que tener instalada la extensión correspondiente

[![2025-11-06 22&#95;44&#95;42-&#95;C&#95;&#95;Users&#95;HP&#95;Dropbox&#95;preguntassmarthomemircrobit.txt - Notepad++.png](https://libros.catedu.es/uploads/images/gallery/2025-11/scaled-1680-/2025-11-06-22-44-42-c-users-hp-dropbox-preguntassmarthomemircrobit-txt-notepad.png)](https://libros.catedu.es/uploads/images/gallery/2025-11/2025-11-06-22-44-42-c-users-hp-dropbox-preguntassmarthomemircrobit-txt-notepad.png)

Vamos a jugar ahora con esta extensión. Al iniciar, configuramos los 4 leds en pin 14 y le asignamos un color aleatorio. En el bucle, van rotando:

<p class="callout success">Si pulsas al siguiente enlace, no hace falta instalar las extensiones, ya lo pone</p>

[https://makecode.microbit.org/S80703-67256-64383-19034](https://makecode.microbit.org/S80703-67256-64383-19034)

<div id="bkmrk--1" style="position: relative; height: 0; padding-bottom: 70%; overflow: hidden;"><iframe frameborder="0" sandbox="allow-popups allow-forms allow-scripts allow-same-origin" src="https://makecode.microbit.org/#pub:S80703-67256-64383-19034" style="position: absolute; top: 0; left: 0; width: 100%; height: 100%;"></iframe>

</div><iframe allow="accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture; web-share" allowfullscreen="allowfullscreen" frameborder="0" height="874" src="https://www.youtube.com/embed/21oiIYtJrU4" title="SMART HOME MICROBIT NEOPIXEL" width="492"></iframe>

<p class="callout success">RETO: Que realice una secuencia de colores  
Ver [https://docs.keyestudio.com/projects/KS4027-KS4028/en/latest/makecode.html#project-3-6812-2x2-full-color-rgb](https://docs.keyestudio.com/projects/KS4027-KS4028/en/latest/makecode.html#project-3-6812-2x2-full-color-rgb)</p>

<p class="callout info">El NEOPIXEL SE QUEDA ENCENDIDO 😡😠😤  
¿Molesta? pues es normal, se queda el sensor activado  
La única manera de apagarlo es ejecutar  
[![2026-01-14 17&#95;08&#95;41-.png](https://libros.catedu.es/uploads/images/gallery/2026-01/scaled-1680-/2026-01-14-17-08-41.png)](https://libros.catedu.es/uploads/images/gallery/2026-01/2026-01-14-17-08-41.png)  
</p>

# PIR SENSOR MOVIMIENTO

Un bucle para determinar si hay movimiento o no

La instrucción PIN lo encontramos en avanzados:

[![2025-11-04 14&#95;26&#95;13-Configuración.png](https://libros.catedu.es/uploads/images/gallery/2025-11/scaled-1680-/2025-11-04-14-26-13-configuracion.png)](https://libros.catedu.es/uploads/images/gallery/2025-11/2025-11-04-14-26-13-configuracion.png)

[https://makecode.microbit.org/S50667-88978-39987-85757](https://makecode.microbit.org/S50667-88978-39987-85757)

<div id="bkmrk--1" style="position: relative; height: 0; padding-bottom: 70%; overflow: hidden;"><iframe frameborder="0" sandbox="allow-popups allow-forms allow-scripts allow-same-origin" src="https://makecode.microbit.org/#pub:S50667-88978-39987-85757" style="position: absolute; top: 0; left: 0; width: 100%; height: 100%;"></iframe>

</div><iframe allow="accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture; web-share" allowfullscreen="allowfullscreen" frameborder="0" height="874" src="https://www.youtube.com/embed/9ik_2DTfUcY" title="SENSOR PIR SMART HOME MICROBIT" width="492"></iframe>

##### <span style="color: rgb(22, 145, 121);">**RETOS**</span>

<p class="callout success">RETO1: que muestre lo que detecta por el puerto USB   
ver [https://docs.keyestudio.com/projects/KS4027-KS4028/en/latest/makecode.html#project-4-pir-motion-sensor](https://docs.keyestudio.com/projects/KS4027-KS4028/en/latest/makecode.html#project-4-pir-motion-sensor)</p>

<p class="callout success">RETO2 que si detecta movimiento se encienda el led amarillo  
ver [https://docs.keyestudio.com/projects/KS4027-KS4028/en/latest/makecode.html#project-5-induction-lamp](https://docs.keyestudio.com/projects/KS4027-KS4028/en/latest/makecode.html#project-5-induction-lamp)</p>

<p class="callout success">RETO3 que si detecte que suene una alarma Pista: aquí tienes cómo hacer sonidos [https://libros.catedu.es/books/microbit/page/una-pequena-melodia](https://libros.catedu.es/books/microbit/page/una-pequena-melodia)</p>

# LCD DISPLAY

##### <span style="color: rgb(22, 145, 121);">**Extensión**</span>

Para manejar el display, se necesita la extensión I2CLCD1602 (si has instalado las extensiones, [https://libros.catedu.es/books/smart-home-para-microbit/page/instalando-la-extension-smart-home-para-microbit](https://libros.catedu.es/books/smart-home-para-microbit/page/extensiones) ya la tienes)

[![2025-11-04 18&#95;30&#95;55-Greenshot.png](https://libros.catedu.es/uploads/images/gallery/2025-11/scaled-1680-/2025-11-04-18-30-55-greenshot.png)](https://libros.catedu.es/uploads/images/gallery/2025-11/2025-11-04-18-30-55-greenshot.png)

Vamos a hacer el programa anterior, pero que lo visualice el display

<p class="callout success">{{@13580#bkmrk-si-pulsas-al-siguien}}</p>

En la extensión de la placa micro:bit el LCD **está en la dirección 039** por lo tanto tenemos que indicarlo al iniciar. En caso contrario no funciona, pues no sabría a qué dirección enviarlo.

##### <span style="color: rgb(22, 145, 121);">**Regular el contraste**</span>

Cuenda ejecutes el programa, gradúa el potenciómetro de atrás para ver los caracteres con el contraste adecuado

![](https://libros.catedu.es/uploads/images/gallery/2022-02/embedded-image-chxedokw.png)

![](https://libros.catedu.es/uploads/images/gallery/2022-02/embedded-image-jylopgrt.png)


##### <span style="color: rgb(22, 145, 121);">**Programa**</span>

Vamos a realizar un programa que si detecta una persona salude, en caso contrario que visualice que está en reposo

##### <span style="color: rgb(22, 145, 121);">**Solución**</span>

[https://makecode.microbit.org/S74903-63787-58066-67229](https://makecode.microbit.org/S74903-63787-58066-67229)

<div id="bkmrk--1" style="position: relative; height: 0; padding-bottom: 70%; overflow: hidden;"><iframe frameborder="0" sandbox="allow-popups allow-forms allow-scripts allow-same-origin" src="https://makecode.microbit.org/#pub:S74903-63787-58066-67229" style="position: absolute; top: 0; left: 0; width: 100%; height: 100%;"></iframe>

</div><iframe allow="accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture; web-share" allowfullscreen="allowfullscreen" frameborder="0" height="715" src="https://www.youtube.com/embed/ezip6pK6l6o" title="DISPLAY LCD SMART HOME MICROBIT" width="402"></iframe>

##### <span style="color: rgb(22, 145, 121);">**RETOS**</span>

<p class="callout success">**RETO1**: Visualizar por el LCD un contador de medio segundo  
Solución [https://docs.keyestudio.com/projects/KS4027-KS4028/en/latest/makecode.html#project-9-1602-lcd](https://docs.keyestudio.com/projects/KS4027-KS4028/en/latest/makecode.html#project-9-1602-lcd)</p>

<p class="callout success">**RETO2**: ¿Y si las maquetas se comunicaran entre sí y lo muestran por la pantalla del Display? Hacer un programa que si detecta presencia, envíe un mensaje tipo radio a los vecinos diciendo que han entrado  
Pista: Para la comunicación por radio aquí tienes cómo hacerlo : [https://libros.catedu.es/books/microbit/page/radio](https://libros.catedu.es/books/microbit/page/radio)</p>

# PUERTA

Vamos a realizar un programa que simplemente vaya girando de 10 en 10 grados la puerta desde su valor mínimo 0º hasta el máximo 180º

[https://makecode.microbit.org/S17729-92579-26017-84671](https://makecode.microbit.org/S17729-92579-26017-84671)

<div id="bkmrk-" style="position: relative; height: 0; padding-bottom: 70%; overflow: hidden;"><iframe frameborder="0" sandbox="allow-popups allow-forms allow-scripts allow-same-origin" src="https://makecode.microbit.org/#pub:S17729-92579-26017-84671" style="position: absolute; top: 0; left: 0; width: 100%; height: 100%;"></iframe>

a mal? ¿no tiene libertad de movimientos?   
Porque no le has puesto un pilar. Mira [https://libros.catedu.es/books/smart-home-para-microbit/page/un-pilar](https://libros.catedu.es/books/smart-home-para-microbit/page/un-pilar)</div><p class="callout danger">Ante un atasco, suelen estropearse los servos, el consejo es no forzarlos a 0º y 180º, sino a 10º mínimo y 170º máximo. Si se han atascado, [su sustitución es barata](https://www.turibot.es/mini-servo-para-rc).</p>

<iframe allow="accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture; web-share" allowfullscreen="allowfullscreen" frameborder="0" height="874" src="https://www.youtube.com/embed/4cBnEJH24Mw" title="SMART HOME PUERTA GIRATORIA" width="492"></iframe>

<p class="callout success">RETO Realizar el mismo programa pero que sea 0 - 45 - 90 - 135 - 180  
Solución https://docs.keyestudio.com/projects/KS4027-KS4028/en/latest/makecode.html#project-6-adjust-angles-of-servo</p>

# VENTANA

Hacemos igual pero con la ventana

<p class="callout warning">{{@13586#bkmrk-recuerda-que-el-serv}}</p>

[https://makecode.microbit.org/#pub:S70583-40692-95307-16024](https://makecode.microbit.org/#pub:S70583-40692-95307-16024)

<div id="bkmrk-" style="position: relative; height: 0; padding-bottom: 70%; overflow: hidden;"><iframe frameborder="0" sandbox="allow-popups allow-forms allow-scripts allow-same-origin" src="https://makecode.microbit.org/#pub:S70583-40692-95307-16024" style="position: absolute; top: 0; left: 0; width: 100%; height: 100%;"></iframe>

</div><p class="callout warning">{{@13584#bkmrk-ante-un-atasco%2C-suel}}</p>

<iframe allow="accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture; web-share" allowfullscreen="allowfullscreen" frameborder="0" height="715" src="https://www.youtube.com/embed/iAh4dGQ7wls" title="SMART HOME MICROBIT VENTANA" width="402"></iframe>

# LLUVIA CIERRO LA VENTANA

##### <span style="color: rgb(22, 145, 121);">**Enunciado**</span>

Vamos ahora a hacer un programa que si el sensor detecta lluvia, que cierre la ventana

##### <span style="color: rgb(22, 145, 121);">**Definir un UMBRAL**</span>

Aquí la cuestión es **¿Cuál es nuestro umbral para determinar lo que es lluvia y lo que no es?** pues el sensor es **analógico** no como los anteriores

En este programa definimos un umbral de 500, más de ese valor vamos a pedir que cierre la ventana

El display LCD visualiza los datos de lluvia para poder ver qué ocurre

##### <span style="color: rgb(22, 145, 121);">**Programa**</span>

<p class="callout warning">**Recuerda** que el servo de la ventana, como es tipo cremallera: Los límites de tu ventana pueden ser distintos a los mostrados, si fuerzas al máximo: 0º cerrado y 180º abierto, seguramente tropezarás con la pared lateral o con la rueda dentada **con el peligro de quemar el servo**. Recomendamos empezar **40º** cerrado y **140º** abierto e ir ampliando si no se llega a cerrar o abrir</p>

[https://makecode.microbit.org/S48168-34893-12799-18989](https://makecode.microbit.org/S48168-34893-12799-18989)

<div id="bkmrk-" style="position: relative; height: 0; padding-bottom: 70%; overflow: hidden;"><iframe frameborder="0" sandbox="allow-popups allow-forms allow-scripts allow-same-origin" src="https://makecode.microbit.org/#pub:S48168-34893-12799-18989" style="position: absolute; top: 0; left: 0; width: 100%; height: 100%;"></iframe>

</div><iframe allow="accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture; web-share" allowfullscreen="allowfullscreen" frameborder="0" height="715" src="https://www.youtube.com/embed/WJgKYG4VryI" title="ALARMA LLUVIA MICROBIT SMART HOME" width="402"></iframe>

<p class="callout success">RETO Que emita un sonido de alarma y que se visualice por el led amarillo  
Si no sabes mira [https://docs.keyestudio.com/projects/KS4027-KS4028/en/latest/makecode.html#project-11-rains-alarm](https://docs.keyestudio.com/projects/KS4027-KS4028/en/latest/makecode.html#project-11-rains-alarm)</p>

# SONIDO ABRE CIERRA VENTANA

##### <span style="color: rgb(22, 145, 121);">**Enunciado**</span>

Vamos a realizar un programa que ante un sonido fuerte, abra o cierra la ventana

##### <span style="color: rgb(22, 145, 121);">**Solución**</span>

Utilizaremos el sensor de SONIDO DE LA MICROBIT que recuerda que sólo detecta niveles altos, no interpreta sonidos, sólo intensidades.

Para ello hay que crear una variable ABIERTO que "recuerde el estado" pues es distinto comportamiento si esta cerrada la ventana o si esta abierta

[![2026-10-19 19&#95;06&#95;06-WhatsApp.png](https://libros.catedu.es/uploads/images/gallery/2026-10/scaled-1680-/2026-10-19-19-06-06-whatsapp.png)](https://libros.catedu.es/uploads/images/gallery/2026-10/2026-10-19-19-06-06-whatsapp.png)

[https://makecode.microbit.org/S30632-27194-13847-61862](https://makecode.microbit.org/S30632-27194-13847-61862)

<div id="bkmrk--1" style="position: relative; height: 0; padding-bottom: 70%; overflow: hidden;"><iframe frameborder="0" sandbox="allow-popups allow-forms allow-scripts allow-same-origin" src="https://makecode.microbit.org/#pub:S30632-27194-13847-61862" style="position: absolute; top: 0; left: 0; width: 100%; height: 100%;"></iframe>

</div><p class="callout warning">**Ojo, no alucines**: La micro:bit no entiende "*abre*" y "*cierra*" sólo detecta niveles de sonido. Vamos que si gritas "*Pescado fresco*" también lo hace.</p>

<iframe allow="accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture; web-share" allowfullscreen="allowfullscreen" frameborder="0" height="752" src="https://www.youtube.com/embed/jUl8kL9wu8I" title="19 de octubre de 2026" width="1337"></iframe>

# DHT11

Vamos a ver en esta página:

- [La instalación en Makecode de la Extensión DHT11](https://libros.catedu.es/books/smart-home-para-microbit/page/dht11#bkmrk-extensi%C3%B3n-dht11)
- [Programa lectura de valores temperatura y humedad DHT11 al display LCD con Makecode](https://libros.catedu.es/books/smart-home-para-microbit/page/dht11#bkmrk-programa-lectura-de-)
- [Programa lectura de valores temperatura y humedad DHT11 al puerto serie con Makecode](https://libros.catedu.es/books/smart-home-para-microbit/page/dht11#bkmrk-programa-lectura-de--1)
- [Programa lectura de valores temperatura y humedad DHT11 al display LCD con Microblocks](https://libros.catedu.es/books/smart-home-para-microbit/page/dht11#bkmrk-programa-lectura-de--2)

##### <span style="color: rgb(22, 145, 121);">**Extensión DHT11**</span>

Para manipular DHT11 con makecode tenemos que tener la extensión correcta: Busca DHT11 en extensiones...

[![2025-11-04 20&#95;10&#95;42-Greenshot.png](https://libros.catedu.es/uploads/images/gallery/2025-11/scaled-1680-/2025-11-04-20-10-42-greenshot.png)](https://libros.catedu.es/uploads/images/gallery/2025-11/2025-11-04-20-10-42-greenshot.png)

Instala una extensión con estas instrucciones:

[![2025-11-04 20&#95;12&#95;12-Greenshot.png](https://libros.catedu.es/uploads/images/gallery/2025-11/scaled-1680-/2025-11-04-20-12-12-greenshot.png)](https://libros.catedu.es/uploads/images/gallery/2025-11/2025-11-04-20-12-12-greenshot.png)

Tal y como dice su [página](https://makecode.microbit.org/pkg/alankrantas/pxt-dht11_dht22) sirve tanto para DHT11 como DHT22, el DHT22 es blanco, es un poco más caro pero más preciso (tacaños !!!)

##### <span style="color: rgb(22, 145, 121);">**Programa lectura de valores temperatura y humedad DHT11 al display LCD con Makecode**</span>

<p class="callout success">{{@13580#bkmrk-si-pulsas-al-siguien}}</p>

Realizamos este programa [https://makecode.microbit.org/S12731-23834-73453-08192](https://makecode.microbit.org/S12731-23834-73453-08192)

<div id="bkmrk--2" style="position: relative; height: 0; padding-bottom: 70%; overflow: hidden;"><iframe frameborder="0" sandbox="allow-popups allow-forms allow-scripts allow-same-origin" src="https://makecode.microbit.org/#pub:S12731-23834-73453-08192" style="position: absolute; top: 0; left: 0; width: 100%; height: 100%;"></iframe>

</div><p class="callout warning">Como puedes ver da muchas veces el error Checksum -999  
**RETO**: 🧠🧠🧠Cambia el programa para que cuando detecte esos valores de Checsum, simplemente el display no lo muestre, que siga mostrando el valor correcto anterior.  
La solución la tienes [aquí](https://makecode.microbit.org/S27506-07819-36764-28054)</p>

<p class="callout info">¿Qué no sabes qué es Checksum? eso es porque no te has leído bien la página de [sensores](https://libros.catedu.es/books/smart-home-para-microbit/page/sensores)</p>

<iframe allow="accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture; web-share" allowfullscreen="allowfullscreen" frameborder="0" height="874" src="https://www.youtube.com/embed/pOqYMrUQJ0Y" title="SMART HOME MICROBIT DHT11 A DISPLAY LCD" width="492"></iframe>

##### <span style="color: rgb(22, 145, 121);">**Programa lectura de valores temperatura y humedad DHT11 al puerto serie con Makecode**</span>

A pesar de que en la página oficial propone un [programa](https://docs.keyestudio.com/projects/KS4027-KS4028/en/latest/makecode.html#project-14-dht11-temperature-and-humidity-sensor) que también da error checksum, vamos a realizar esta [modificación](https://makecode.microbit.org/S97652-21896-32364-29553) que no da ese error:

<p class="callout success">**AGRADECIMIENTOS a CARMEN GARROTE** mentora digital del [CP Angel Sanz Briz Teruel](https://formacionteruel.es/) autora de esta modificación:</p>

<div id="bkmrk--4" style="position: relative; height: 0; padding-bottom: 70%; overflow: hidden;"><iframe frameborder="0" sandbox="allow-popups allow-forms allow-scripts allow-same-origin" src="https://makecode.microbit.org/#pub:S97652-21896-32364-29553" style="position: absolute; top: 0; left: 0; width: 100%; height: 100%;"></iframe>

</div>Debajo del dibujo de la Micfrobit tienes el botón para ver el puerto serie:

[![2026-03-21 19&#95;37&#95;17-Bandeja de entrada - jjquintana@educa.aragon.es - Outlook.png](https://libros.catedu.es/uploads/images/gallery/2026-03/scaled-1680-/2026-03-21-19-37-17-bandeja-de-entrada-jjquintana-at-educa-aragon-es-outlook.png)](https://libros.catedu.es/uploads/images/gallery/2026-03/2026-03-21-19-37-17-bandeja-de-entrada-jjquintana-at-educa-aragon-es-outlook.png)  
El resultado :

[![DHT11 puerto serie2.png](https://libros.catedu.es/uploads/images/gallery/2026-03/scaled-1680-/dht11-puerto-serie2.png)](https://libros.catedu.es/uploads/images/gallery/2026-03/dht11-puerto-serie2.png)

##### <span style="color: rgb(22, 145, 121);">**Programa lectura de valores temperatura y humedad DHT11 al display LCD con Microblocks**</span>

CROBLOCKS que es un programa local que se descarga en [https://microblocks.fun/](https://microblocks.fun/)   
Se instala los drivers que por cierto son del mismo fabricante keyestudio :[![2025-11-08 09&#95;48&#95;20-MicroBlocks.png](https://libros.catedu.es/uploads/images/gallery/2025-11/scaled-1680-/2025-11-08-09-48-20-microblocks.png)](https://libros.catedu.es/uploads/images/gallery/2025-11/2025-11-08-09-48-20-microblocks.png)  
Se ha añadido la librería Temperatura y Humedad DHT11.    
Realizamos el siguiente programa y lo grabamos en la microbit:

[![2025-11-08 18&#95;02&#95;06-MicroBlocks.png](https://libros.catedu.es/uploads/images/gallery/2025-11/scaled-1680-/2025-11-08-18-02-06-microblocks.png)](https://libros.catedu.es/uploads/images/gallery/2025-11/2025-11-08-18-02-06-microblocks.png)

¡¡ FUNCIONA PERFECTAMENTE !!! en ningún momento salta -999[![2025-11-08 10&#95;09&#95;49-MicroBlocks.png](https://libros.catedu.es/uploads/images/gallery/2025-11/scaled-1680-/2025-11-08-10-09-49-microblocks.png)](https://libros.catedu.es/uploads/images/gallery/2025-11/2025-11-08-10-09-49-microblocks.png)

Enlace al programa

[DH11MICROBLOCKS.ubp](https://libros.catedu.es/attachments/243)

  
<iframe allow="accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture; web-share" allowfullscreen="allowfullscreen" frameborder="0" height="715" src="https://www.youtube.com/embed/bBE3ydou878" title="DHT11 SMART HOME MICROBIT MICROBLOCKS" width="402"></iframe>

# MOTOR

El motor tiene un sencillo funcionamiento:

<table border="1" id="bkmrk-pin12-pin13-motor-0-" style="border-collapse: collapse; width: 100.002%;"><colgroup><col style="width: 33.3333%;"></col><col style="width: 33.3333%;"></col><col style="width: 33.3333%;"></col></colgroup><thead><tr><td>PIN12</td><td>PIN13</td><td>MOTOR</td></tr></thead><tbody><tr><td>0</td><td>0</td><td>PARADO</td></tr><tr><td>0</td><td>1</td><td>ROTACIÓN SENTIDO RELOJ</td></tr><tr><td>1</td><td>0</td><td>ROTACIÓN SENTIDO ANTIRELOJ</td></tr><tr><td>1</td><td>1</td><td>PARADO</td></tr></tbody></table>

[https://makecode.microbit.org/S96383-79923-07943-79319](https://makecode.microbit.org/S96383-79923-07943-79319)

<div id="bkmrk-" style="position: relative; height: 0; padding-bottom: 70%; overflow: hidden;"><iframe frameborder="0" sandbox="allow-popups allow-forms allow-scripts allow-same-origin" src="https://makecode.microbit.org/#pub:S96383-79923-07943-79319" style="position: absolute; top: 0; left: 0; width: 100%; height: 100%;"></iframe>

</div><iframe allow="accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture; web-share" allowfullscreen="allowfullscreen" frameborder="0" height="715" src="https://www.youtube.com/embed/dU3NgjkN5fg" title="SMART HOME MOTOR" width="402"></iframe>

<p class="callout success">RETO Lo mismo que anteriormente pero sin bucle  
SOLUCIÓN [https://docs.keyestudio.com/projects/KS4027-KS4028/en/latest/makecode.html#project-7-130-motor](https://docs.keyestudio.com/projects/KS4027-KS4028/en/latest/makecode.html#project-7-130-motor)</p>

# GAS

El sensor MQ-2 es sensible a gas de combustible, incluso alcohol. Vamos a realizar un circuito que si detecta alguno de estos gases, funcione el ventilador.

<p class="callout danger">Es un sensor que internamente lleva una resistencia que al calor, hace que los sensores detecten gases inflamables. Si te tocas el sensor, verás que esta **caliente**.</p>

<p class="callout warning">Este sensor, como todos los de este tipo, van al revés pull down, es decir cuando detectan se lee un 0 y cuando no detecta, se lee un 1</p>

[https://makecode.microbit.org/S89674-59327-62723-53770](https://makecode.microbit.org/S89674-59327-62723-53770)

<div id="bkmrk-" style="position: relative; height: 0; padding-bottom: 70%; overflow: hidden;"><iframe frameborder="0" sandbox="allow-popups allow-forms allow-scripts allow-same-origin" src="https://makecode.microbit.org/#pub:S89674-59327-62723-53770" style="position: absolute; top: 0; left: 0; width: 100%; height: 100%;"></iframe>

</div>acercamos una botella de alcohol y funciona !!!

<iframe allow="accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture; web-share" allowfullscreen="allowfullscreen" frameborder="0" height="715" src="https://www.youtube.com/embed/hSX2yizTSH4" title="DETECTOR GAS SMART HOME MICROBIT" width="402"></iframe>

Aunque también es sensible al butano, como podemos ver en el tutorial de Aularagon SMART HOME ESP32 [https://libros.catedu.es/books/smart-home-esp32/page/project-82-dangerous-gas-alarm](https://libros.catedu.es/books/smart-home-esp32/page/project-82-dangerous-gas-alarm)

<iframe allow="accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture; web-share" allowfullscreen="allowfullscreen" frameborder="0" height="875" src="https://www.youtube.com/embed/UMf1K0L-ZPs" title="Project 8.2 Dangerous Gas Alarm" width="493"></iframe>

<p class="callout success">RETO: Que cuando detecte el gas, que suene una alarma y el led amarillo parpadee  
SOLUCIÓN [https://docs.keyestudio.com/projects/KS4027-KS4028/en/latest/makecode.html#project-12-analog-gas-mq-2-sensor](https://docs.keyestudio.com/projects/KS4027-KS4028/en/latest/makecode.html#project-12-analog-gas-mq-2-sensor)</p>

# Tengo dos microbits: Control por radio

¡¡ Genial !! puedes manejar la maqueta A DISTANCIA !!!

##### <span style="color: rgb(22, 145, 121);">**En la micro:bit suelta**</span>

- Fijar en el inicio el grupo 1 de radio que tiene que ser el mismo que la maqueta (en clase, es recomendable que cada maqueta tenga un grupo distinto o sino será un caos, el número puede ser desde 1 hasta 255)
- Si pulso A envío "derecha"
- Si pulso B envió "izquierda"
- Si pulso A+B envío "para"

[https://makecode.microbit.org/S40111-22646-40846-61771](https://makecode.microbit.org/S40111-22646-40846-61771)

<div id="bkmrk-" style="position: relative; height: 0; padding-bottom: 70%; overflow: hidden;"><iframe frameborder="0" sandbox="allow-popups allow-forms allow-scripts allow-same-origin" src="https://makecode.microbit.org/#pub:S40111-22646-40846-61771" style="position: absolute; top: 0; left: 0; width: 100%; height: 100%;"></iframe>

</div>#### <span style="color: rgb(22, 145, 121);">**En la micro:bit de la maqueta**</span>

- Si recibo "derecha" muevo el motor según las agujas del reloj
- Si recibo "izquierda" pues al revés
- Si recibo "para" paro el motor

[https://makecode.microbit.org/S27664-70538-16282-38533](https://makecode.microbit.org/S27664-70538-16282-38533)

<div id="bkmrk--1" style="position: relative; height: 0; padding-bottom: 70%; overflow: hidden;"><iframe frameborder="0" sandbox="allow-popups allow-forms allow-scripts allow-same-origin" src="https://makecode.microbit.org/#pub:S27664-70538-16282-38533" style="position: absolute; top: 0; left: 0; width: 100%; height: 100%;"></iframe>

</div>##### <span style="color: rgb(22, 145, 121);">**Resultado**</span>

[https://youtube.com/shorts/knOdlS92bqQ?si=9j3-KjqU\_MDlsN8E](https://youtube.com/shorts/knOdlS92bqQ?si=9j3-KjqU_MDlsN8E)

<iframe allow="accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture; web-share" allowfullscreen="allowfullscreen" frameborder="0" height="815" src="https://www.youtube.com/embed/knOdlS92bqQ" title="24 de septiembre de 2026" width="458"></iframe>