Para facilitar la programación de dispositivos externos, Makecode cuenta con la posibilidad de cargar extensiones que permiten incorporar nuevos bloques y categorías al menú.
Generalmente desarrolladas por los fabricantes, estas extensiones permiten programar un dispositivo externo o una colección de ellos incluidos en un pack.
Si se quiere cargar una Extensión en Makecode, se debe pulsar sobre Avanzado del menú de categorías y luego en + Extensiones. Tras esto aparecerá el buscador de Extensiones con un listado de las más habituales y la posibilidad de importar una que tengamos en el ordenador..
Si se dispone de una archivo *.mkcdo o *.hex se debe pulsar sobre Importar Archivo tras lo que aparecerá un cuadro de diálogo con el que poder abrir el fichero e incorporar la Extensión al listado de bloques y categorías.
Lo más habitual es usar el buscador. Como primera opción se puede introducir el nombre dispositivo o fabricante del dispositivo a usar y tras pulsar sobre la lupa, saldrá el listado de Extensiones disponibles. Para conocer más datos de la extensión se puede pulsar sobre Aprende más.
Una vez seleccionada la Extensión a incorporar, aparecerá una nueva categoría con los bloques necesarios para programar el dispositivo.
La otra opción es usar una Extensión facilitada por el fabricante. Lo habitual es que esta se encuentre alojada en https://github.com/. Se debe introducir la dirección facilitada y tras accionar la lupa debe aparecer la Extensión a cargar.
Una vez cargada la extensión ya solo quedará usar los bloques incorporados para crear el programa.
Aunque normalmente son facilitadas por los fabricantes, algunos usuarios desarrollan Extensiones que facilitan las programación de dispositivos externos. Habitualmente estas Extensiones se ofrecen como un enlace de la página Github.
Se trata de un dispositivo usado para medir temperatura. Su funcionamiento se basa en un termistor, un semiconductor que puede variar su resistencia eléctrica en función de la temperatura. Dispone de un rango amplio de medición de -55ºC a +125ºC y una precisión superior a ±0.5°C en el rango –10°C de +85°C. Se comercializa en dos formatos, integrado y como sonda sumergible.
El modelo integrado se usa para medir temperatura ambiente.
La sonda sumergible se emplea para medir la temperatura en líquidos o en ambientes húmedos.
https://github.com/elecfreaks/pxt-ds18b20
https://robotopia.es/componentes/145-sensor-de-temperatura-sumergible.html
https://robotopia.es/componentes/89-sensor-digital-de-temperatura-ds18b20.html
https://www.luisllamas.es/temperatura-liquidos-arduino-ds18b20/
Se trata de un dispositivo que puede medir la temperatura y humedad relativa del aire. Utiliza un sensor capacitivo de humedad y un termistor para medir la temperatura. Muestra los datos mediante una señal digital, carece de salida analógica. Hay que tener en cuenta la una limitación: se debe esperar 2 segundos para obtener datos nuevos.
https://github.com/tinkertanker/pxt-iot-environment-kit
Para otros módulos DHT11 y DHT22
https://github.com/alankrantas/pxt-dht11_dht22
https://makecode.microbit.org/pkg/alankrantas/pxt-dht11_dht22
https://robotopia.es/componentes/32-sensor-de-temperatura-y-humedad.html
https://www.luisllamas.es/arduino-dht11-dht22/
Este visualizador es un componente que se utiliza para la representación de caracteres (normalmente números) en algunos dispositivos electrónicos. Internamente están constituidos por una serie de leds con forma de 8. En algunos modelos aparece un octavo segmento que permite mostrar un punto decimal. Para representar los dígitos del 0 al 9 se deben iluminar los segmentos adecuados.
https://github.com/makecode-extensions/tm1637
https://makecode.microbit.org/pkg/makecode-extensions/tm1637
https://robotopia.es/microbit/13-display-digital.html
Un OLED (Organic light-emitting diode) es un tipo de LED en el que la capa emisiva está formada por un compuesto orgánico que emite luz en respuesta a la electricidad.
La Octopus:bit dispone de un puerto i2C donde, entre otras cosas, se puede conectar un display OLED.
La pantalla incorpora un controlador SDD1306 y es de un tamaño muy reducido de 25mm x 14mm. Es monocroma y tiene una resolución de 128x64 píxel.
https://github.com/tinkertanker/pxt-oled-ssd1306
https://makecode.microbit.org/pkg/tinkertanker/pxt-oled-ssd1306
https://robotopia.es/componentes/88-pantalla-oled-i2c.html
Una pantalla LCD ((Liquid Crystal Display /pantalla de cristal líquido) es un módulo de pantalla electrónica usada en una amplia gama de aplicaciones. Los LCD son económicos, fácilmente programables y no tienen limitación de mostrar caracteres especiales e incluso personalizados, animaciones , etc.
Una pantalla LCD de 16x2 significa que puede mostrar 16 caracteres por línea y hay 2 líneas de este tipo. En esta pantalla LCD cada carácter se muestra en una matriz de 5x7 pixeles.
https://github.com/makecode-extensions/i2clcd1602
https://makecode.microbit.org/pkg/makecode-extensions/i2clcd1602
Es un dispositivo optoelectrónico capaz de medir la radiación electromagnética infrarroja. Todos los cuerpos emiten cierta cantidad de radiación IR, pero ésta es invisible al ojo humano al situarse su rango por debajo de la luz visible. Uno de los usos que se le puede aplicar es el de receptor de IR.
Un mando a distancia mediante IR es un dispositivo que emplea un LED infrarrojo para enviar una señal al receptor. Su uso está muy difundido a nivel doméstico, muchos electrodomésticos cuentan con mando y receptor mediante infrarrojos.
https://github.com/tinkertanker/pxt-ir-receiver
https://makecode.microbit.org/pkg/tinkertanker/pxt-ir-receiver
https://robotopia.es/componentes/30-receptor-de-infrarrojos.html
https://robotopia.es/componentes/29-mando-control-remoto.html
La tecnología desarrollada por Neopixel permite programar gran cantidad de LEDs RGB usando un sólo cable de datos. Esto simplifica la instalación y por este motivo cada LED debe incorporar un pequeño microcontrolador.
Para poder controlar cada uno de los LEDs se debe instalar la extensión desarrollada por AdaFruit. Esta extensión es una de las que aparece por defecto en la ventana de carga de Extensiones, y se llama AdaFruit NeoPixel driver.
https://github.com/microsoft/pxt-neopixel
https://makecode.microbit.org/pkg/microsoft/pxt-neopixel
https://robotopia.es/componentes/165-tira-de-leds.html
Esta placa de conexiones funciona como un control remoto. Cuenta con un joystick, 4 botones programables, buzzer y micro motor de vibración.
También cuenta con 7 puertos donde soldar pines y aumentar las posibilidades de conexión.
https://github.com/tinkertanker/pxt-joystickbit
https://makecode.microbit.org/pkg/tinkertanker/pxt-joystickbit
https://robotopia.es/componentes/158-joystickbit.html
Para aumentar las posibilidades del panel LED que incorpora la micro:bit, la compañia Elecfreaks dispone, en su catalogo de productos para la micro:bit, de una matriz de 8x16 LEDs.
De igual forma que el panel LED que incorpora la micro:bit, este panel permite mostrar números, letras e iconos.
https://github.com/elecfreaks/pxt-Matrix-8x16
https://robotopia.es/componentes/136-matriz-de-leds-para-microbit.html
Para facilitar el uso de los dispositivos externos incluidos en un pack, los fabricantes suelen ofrecer un enlace que permite descargar la extensión que incorpora los bloques necesarios para programar los sensores y actuadores incluidos.
Se trata de un kit que usando la micro:bit, permite desarrollar proyectos STEAM. Incluye una placa de expansión (alligator clip expansion board) que permite conectar los sensores y actuadores incluidos mediante el uso de pinzas de cocodrilo.
https://github.com/lzty634158/Croco-Kit
https://robotopia.es/kits-educativos/185-cocodrilo-kit.html
El kit IoT de Elecfreaks para micro:bit está pensado para facilitar el envío de datos a la nube y su posterior análisis. Entre los componentes incluidos está la placa IoT:BIT que cuenta con un puerto donde conectar la micro:bit; un módulo ESP8266 para conectarse a redes WiFi; pines GVS para conectar diferentes sensores y un circuito RTC (Real Time Clock).
https://github.com/tinkertanker/pxt-iot-environment-kit
https://robotopia.es/kits-educativos/138-iot-kit.html
El Kit Casa Domótica incluye una selección de sensores y componentes de uso habitual en el hogar. Puedes representar distintas estancias y controlarlas usando tu tarjeta micro:bit.
https://github.com/tinkertanker/pxt-smarthome
https://robotopia.es/kits-educativos/114-casa-domotica-para-microbit.html
Se trata de una placa de conexiones que cuenta con pines para ocho servos, dos para motores de corriente continua, ocho pines para conectar otros sensores o actuadores, puerto i2C, tres tomas de corriente de 5V, cuatro LEDs RGB y buzzer.
Además viene montada sobre una viga de Lego, lo que la convierte en una placa ideal para combinar construcciones de Lego con electrónica de Elecfreaks. Se debe prestar atención en la instalación de la micro:bit ya que se puede insertar de forma errónea y no funciona.
https://github.com/elecfreaks/pxt-wukong
https://makecode.microbit.org/pkg/elecfreaks/pxt-wukong
https://robotopia.es/componentes/174-wukong-placa-lego-compatible.html
Con este kit podrás transformar tu tarjeta micro:bit en un cochecito inteligente y programarlo con Makecode. Robit Smart Car te permite realizar todas las funciones básicas actuales del mBot de Makeblock con interesantes ventajas añadidas. Incluye cuatro puertos para poder conectar sensores de Makecode.
https://github.com/tinkertanker/pxt-robit
https://makecode.microbit.org/pkg/tinkertanker/pxt-robit
https://robotopia.es/kits-educativos/115-robit-smart-car.html
Elecfreaks dispone, en su catálogo de accesorios para micro:bit, de un kit que permite montar un vehículo inteligente de coste muy reducido.
El chasis del robot está compuesto por varias piezas de metacrilato ensambladas sin necesidad de tornillos, únicamente se usa un pasador metálico para asegurar el conjunto. La parte trasera cuenta con una hendidura donde situar un utensilio (lápiz, rotulador o bolígrafo) que permite dibujar sobre la superficie por la que se desplaza el robot.
Además de la placa de conexiones donde se conecta la micro:bit, cuenta con una placa de expansión situada en la cara inferior del vehículo. Ésta dispone de un par de LEDs y también permite atornillar otros módulos como el sigue-líneas y una placa con 8 LEDs.
El conjunto cuenta con dos servos que, conectados a la placa de conexiones, dotan de movimiento al robot. Para mejorar las prestaciones y sensibilidad a la hora de mover el conjunto los servos funcionan dentro de un rango de voltaje entre 3.0V y 5.5V.
Las ruedas del vehículo cuentan con un acabado en goma que mejoran el agarre y permiten movimientos más precisos.
https://github.com/tinkertanker/pxt-ringbitcar
https://makecode.microbit.org/pkg/tinkertanker/pxt-ringbitcar