Los mejores proyectos inalámbricos para Raspberry Pi Pico: Bluetooth, WiFi, LoRa

A la Raspberry Pi Pico le faltó conectividad inalámbrica, pero claro, por su reducido precio no podíamos exigirle tanto. Sin embargo, hay múltiples opciones para controlarla más allá de conectarla por cable al ordenador. En este blog vamos a recopilar los proyectos más sencillos para programar y controlar la Pico tanto desde tu smartphone mediante cable, Bluetooth o WiFi.

Raspberry Pico WiFi proyectos

Si quieres saber más sobre Pico, ya te hablamos previamente sobre esta económica placa de doble núcleo en nuestro blog:

Todas las novedades sobre la nueva Raspberry Pi Pico y el económico SoC RP2040

Sin más, vamos a ver los diversos proyectos para Raspberry Pi Pico que hemos seleccionado.

Encender un LED con Raspberry Pi Pico desde tu móvil

El ejemplo más simple en la electrónica suele ser encender un LED. Hacer parpadear un LED, como el archiconocido “Blink” en Arduino, es como el “Hola Mundo” de los microcontroladores. Vamos a ver como de igual modo, lo puedes encender fácilmente, pero desde tu móvil o tablet.

2

 En este sencillo proyecto, enviaremos comandos a través del enlace Wi-Fi desde un teléfono móvil para controlar un LED (el LED se puede reemplazar con un relé, por ejemplo, para controlar otro dispositivo) conectado a la Raspberry Pi. Pico. Los comandos deben terminar con un retorno (CR / LF o 'nueva línea'). Los comandos válidos incluyen:

LON Enciende el LED
LOFF Apaga el LED

El objetivo de este sencillo proyecto es mostrar el uso de la conectividad Wi-Fi en la Raspberry Pi Pico.

Como ya sabemos, la Raspberry Pi Pico no tiene un módulo Wi-Fi incorporado y, como tal, no se puede conectar a una red Wi-Fi sin conectarlo a un módulo Wi-Fi externo. Quizás la forma más fácil y económica de proporcionar capacidad Wi-Fi al Pico es mediante el uso de una placa de procesador ESP-01.

 esp8266

Módulo WiFi ESP8266 ESP-1 - Referencia W0003

Se basa en el chip del procesador ESP8266, y tiene un coste bastante económico. El ESP-01 tiene las siguientes características:

  • Voltaje de funcionamiento: +3,3 V
  • Interfaz: uso de comandos AT simples a través del puerto serie / UART
  • Pila de protocolo TCP/IP integrado
  • 802.11 b/g/n
  • No se requieren componentes externos
  • Los pines del ESP-01 no son compatibles con la placa de pruebas estándar, por lo que se requiere un adaptador si la placa se va a conectar a una placa de pruebas

Diagrama de circuito: La siguiente figura muestra el diagrama de circuito del proyecto. Los pines UART 0 TX y RX de Raspberry Pi Pico se utilizan para comunicarse con el ESP-01. Necesitarás una resistencia de 470Ohm

4

 

En cuanto al código, dentro de la rutina de configuración, la velocidad de comunicación en serie se establece en 115200, que es la velocidad en baudios predeterminada para ESP-01, y el LED se configura como una salida y se apaga. Se llama a la función “ConnectToWiFi” para conectarse al router Wi-Fi local. Los comandos de modo AT se utilizan para configurar el ESP-01 para que se conecte al enrutador Wi-Fi. El programa Python para controlar un ESP-01 como módulo Wi-Fi es el siguiente:

El resto del programa se ejecuta en un bucle sin fin formado mediante una instrucción “while”. Dentro de este bucle, se reciben datos del teléfono móvil inteligente y el LED se controla en consecuencia. Los comandos LON y LOFF encienden y apagan el LED, respectivamente. Los paquetes de datos se reciben desde el teléfono inteligente mediante la función readline. La función buscar busca una subcadena en una cadena y devuelve un valor distinto de cero si se encuentra la subcadena. La función de búsqueda se utiliza porque los datos recibidos del dispositivo móvil están en el siguiente formato: + ID0, n: datos (por ejemplo, + ID0,3: LON) donde 0 es el ID del enlace y n es el número de caracteres recibidos. Usando la función encontrar podemos buscar fácilmente las cadenas LON o LOFF en el paquete de datos recibido.

La función “ConnectToWiFi” envía los siguientes comandos al ESP-01 para conectarse a la red Wi-Fi:

Tenga en cuenta que se utilizan pequeños retrasos después de cada comando. El comando AT + CWJAP requiere un retraso mayor. El programa se puede modificar fácilmente para eliminar los retrasos y comprobar las respuestas del ESP-01. De esta forma, tan pronto como se reciba la respuesta correcta, el programa puede continuar. Es posible que deba restablecer el hardware del ESP-01 apagándolo y volviéndolo a encender antes de ejecutar el programa.

Probando el programa

El programa se puede probar fácilmente usando el programa PacketSender (ver la figura inferior) en la PC o usando un teléfono inteligente después de instalar una aplicación UDP.

programa

Debe instalar una aplicación de servidor UDP en su teléfono móvil Android antes de comenzar la prueba con el teléfono inteligente. Hay muchas aplicaciones UDP disponibles gratuitamente en Play Store. El que está instalado y utilizado en este proyecto se llama UDP / TCP Widget de KJM, como se muestra a continuación.

7

 

Los pasos para probar el programa son los siguientes.

 

  • Montar y conectar el circuito.
  • Descarga el programa en tu Raspberry Pi Pico.
  • Inicie la aplicación UDP / TCP Widget en su teléfono móvil.
  • Haga clic en el símbolo del engranaje y configure el Protocolo en UDP, la dirección IP en la dirección IP de su Raspberry Pi Pico (192.168.1.160 en el Pico del autor) y configure el Puerto en 5000 como se muestra en la imagen inferior.

8

  • Haga clic en el elemento del menú MENSAJE y seleccione Texto (UTF-8) como Format, e ingrese el comando LON para encender el LED. Seleccione LF \ n como Terminator y haga clic en el símbolo Aceptar (símbolo de verificación), como se muestra en la imagen inferior.

9

  • Ahora, haga clic en el botón ENVIAR (imagen inferior ) para enviar el comando a la Raspberry Pi Pico. Debería ver el mensaje Paquete enviado en la parte superior de la pantalla de su Android temporalmente.

 10

Tenga en cuenta que la dirección IP del ESP-01 se puede obtener escaneando todos los dispositivos en el enrutador Wi-Fi local. Por ejemplo, la aplicación de Android llamada Who Uses My WiFi - Network Scanner de Phuongpn se puede utilizar para ver las direcciones IP de todos los dispositivos conectados a su enrutador. El ESP-01 aparece como se muestra en la Figura 10 (IP: 192.168.1.160), con el nombre “Espressif”.

11

 

Raspberry Pi Pico control por Bluetooth con módulo HC-05

Otra forma habitual de poder manejar los circuitos inalámbricamente es mediante conexión Bluetooth. 

En este ejemplo presentamos una guía rápida para la interfaz del módulo bluetooth HC-05 (o versión HC-06) con la placa Raspberry pi pico RP2040. Al usar este ejemplo, podrás controlar dispositivos que usan teléfonos móviles a través de un terminal serie donde la velocidad en baudios predeterminada utilizada será de 9600.

El módulo Bluetooth HC-05 es uno de las mejores opciones para los proyectos en los que necesites comunicaciones inalámbrica. El módulo transceptor (transmisión/recepción) permite conexiones inalámbricas bluetooth como maestro o esclavo, funciona de forma transparente como si realizáramos una conexión serie RS-232 TTL con cable.

 

Hc-05

Módulo Bluetooth HC-05 HC05 para Arduino 3.3-6V con pines - Referencia W0004

El montaje es muy simple, y sobre una Protoboard es el siguiente:

El montaje de Hc-05

 

En cuanto al código, copia y pega el siguiente:

from machine import Pin, UART

import utime

led = Pin(25, Pin.OUT)

led(0)

uart = UART(1, baudrate=9600,

                    bits=8, parity=None, stop=1)

print(uart)

while True:

    #uart.write('h')

    command= uart.read(1)

    command= command.decode("utf-8")

    print(command)

    if command=='a':  #Turn Led on

        led(1)

    elif command=='b':   #Turn Led off

        led(0)

Sin dejar de lado la comunicación por bluetooth gracias al módulo HC-05, podemos ver otro ejemplo de uso, pero esta vez para el movimiento de dos servomotores. Este videotutorial nos ha parecido super interesante, sobre todo por la aplicación de control de los motores tan visual.

https://www.youtube.com/watch?v=VxHEhbVFUuY

Controlar la Raspberry Pi Pico con tu móvil por cable

Si necesitas prescindir de programar y usar la Pico con un ordenador, pero no es necesario que sea de forma inalámbrica, igual el siguiente ejemplo te sorprende. Mediante el correspondiente adaptador, puedes conectar por USB la Pico al USB de tu Smartphone. ¿Quieres saber cómo? Mira el siguiente tutorial:

Comunicación de la Raspberry Pi Pico con la aplicación de Android a través del cable USB [C / Java]

En el te enseña como crear tu propia aplicación para tu móvil Android en Java y los programas para la Raspberry Pi Pico. 

De igual forma puedes ver un proyecto similar en el siguiente video:

https://www.youtube.com/watch?v=vrXL-BLjC1I

Hogar automatizado mediante Raspberry Pi Pico por Bluetooth

Con esta potente placa de doble núcleo, ¿por qué no hacer tu propio sistema Smart Home?. Pues si te interesa, es muy simple. La automatización del hogar DIY es una excelente manera de aprender cómo funciona la tecnología inteligente para el hogar y también puede ahorrarle algo de dinero. Este tutorial de Nikunj Panchal cubre todos los aspectos de la creación de una configuración de iluminación Bluetooth con Raspberry Pi Pico, incluida una forma fácil de crear una aplicación móvil para controlarla.

 14

Este tutorial utiliza relés para controlar los dispositivos de voltaje de la red, así que asegúrese de tomar las precauciones de seguridad adecuadas ya que la tensión de la red puede provocar graves lesiones. Dicho esto, una vez que sepa cómo usar los relés de manera segura, ¡puede usarlos para controlar casi cualquier cosa!

Una forma ideal de manejar relés es gracias a los Shields creados específicamente para ello, como puede ser el siguiente:

Raspberry Pi Pico Reley Board

 Raspberry Pi Pico Relay Board - Placa Relé - Referencia RA126

Este completo video tutorial puedes verlo aquí, donde te explican paso a paso todo para montar este sistema de alumbrado inalámbrico con Pico:

https://www.youtube.com/watch?v=3kU3_b78JpA&feature=emb_imp_woyt

Fuentes:

https://www.elektormagazine.com/articles/raspberry-pi-pico-essentials-1

https://www.theelectronics.co.in/2021/03/hc-05-bluetooth-module-raspberry-pi-pico.html

https://www.makeuseof.com/raspberry-pi-pico-projects/

https://forbot.pl/forum/topic/19927-komunikacja-raspberry-pi-pico-z-aplikacja-na-androida-poprzez-przewod-usb-cjava/

Share