Todo sobre la Raspberry Pi Pico W

Hoy, 30 de junio de 2022, a las 8.00 AM hora del Reino Unido, Raspberry Pi ha lanzado el Pico W.

Aquí está todo (que sabemos) sobre la más reciente Raspberry Pi.

Contenido ocultar

Esta nueva variante del querido Pico tiene capacidades inalámbricas gracias al chip inalámbrico CYW43439.
Al igual que el Pico, en el corazón de cada Pico W es el RP2040, que es el primer chip de silicio de Raspberry Pi.

Por si fuera poco, Raspberry Pi también lanzó las variantes Pico H y Pico WH.

Nota: si usted está buscando para reservar una Raspberry Pi 4 / 4 GB o Pi 4 / 8 GB o Coral acelerador USB, y se encuentran dentro de la UE + Suiza, echa un vistazo a nuestra nueva característica PiCockpit, el Herramienta de reserva de Raspberry Pi - uno por cliente, y así estarás en una cola justa en lugar de tener que apresurarte cuando Pis esté disponible. Si un número suficiente de personas nos lo pide, es posible que también podamos reservar el Pico W.

Variantes de Raspberry Pi Pico

VariantePrecio ¿Cabezales?¿Inalámbrica?Liberación (M/AA)
Pico$4NoNo1/21
Pico H$5No6/22
Pico W$6No6/22
Pico WH$78/22

Pico H - $5 - Un Raspberry Pi Pico con cabezales pre-soldados

Pico W - $6 - Una Raspberry Pi Pico con conexión inalámbrica

Pico WH - $7 - Un Raspberry Pi Pico con cabezales inalámbricos y pre-soldados.

El Pico H y el Pico W salieron a la venta el 30 de junio de 2022, mientras que el Pico WH lo hará en agosto de 2022.

En este post, explicaremos las similitudes y diferencias entre el Pico W y el Pico. Por supuesto, también presentaremos algunos proyectos geniales de Pico W.

¿El Pico H es sólo un Pico tradicional con cabezales pre-soldados?

Raspberry Pi Pico vs Pico H. La principal diferencia son los cabezales de depuración SWD.

En esencia, sí.

Pero hay una ligera diferencia en los cabezales de depuración SWD y no hay castellación (agujeros semicirculares en el borde) en los pines.

Para utilizar el cabezal de depuración SWD en el Pico H, debe utilizar estos conectores: Conector JST 'SH' de 3 patillas y paso de 1,0 mm, ya sea del tipo BM03B-SRSS-TB (entrada superior) o SM03B-SRSS-TB (entrada lateral), o alternativas compatibles.

Las clavijas de tierra también son claramente cuadradas en el Pico H, en lugar de ser un agujero redondo normal.

¿Dónde puedo comprar un Pico W?

Recoge tu Pico W en nuestra tienda.

Contenido ocultar

Para una rápida visión general, vea este video.

Hardware

Interfaz inalámbrica Pico W (CYW43439)

El Infineon CYW43439 es compatible con la LAN inalámbrica IEEE 802.11 b/g/n y el Bluetooth 5.2. En el momento del lanzamiento, solo será compatible con la LAN inalámbrica.

A diferencia de la Raspberry Pi 4, la Pico W solo tiene Wi-Fi de banda única de 2,4 GHz. La Pi 4 tiene Wi-Fi de doble banda de 2,4/5 GHz, pero en cuanto al Bluetooth, la Pico W supera al buque insignia de la Raspberry Pi, que solo tiene Bluetooth 5.0. El CYW43439 soporta BLE y una única antena compartida entre Wi-Fi y Bluetooth.

Nota El Bluetooth aún no está disponible. Es probable que se añada en una futura actualización del firmware.

Si observas de cerca el Pico W, te darás cuenta de la antena de PCB en forma de triángulo, similar a la de la Raspberry Pi 4. La Raspberry Pi utiliza una antena integrada con licencia de ABRACON.

Antena de PCB
Antena de PCB

Esto significa que no se necesita una antena adicional. La interfaz inalámbrica se conecta mediante SPI al RP2040.

Según la hoja de datos oficial, el Infineon CYW43439 también tiene las siguientes características:

- WiFi 4 (802.11n), monobanda (2,4 GHz)
- WPA3
- SoftAP (hasta 4 clientes)

La hoja de datos oficial también sugiere que, para obtener el mejor rendimiento inalámbrico, hay que colocar la antena en el espacio libre.

Poner metal debajo o cerca de la antena puede reducir su rendimiento en ganancia y ancho de banda.

Sin embargo, añadir metal conectado a tierra a los lados de la antena puede mejorar el ancho de banda de la misma.

¿Se puede convertir el Pico W en un punto de acceso WiFi?

Sí, porque su Infineon CYW43439 soporta SoftAP (hasta 4 clientes).

Hardware de procesamiento

A excepción de la interfaz inalámbrica, el hardware es casi idéntico al del Pico original.

  • Microcontrolador RP2040 con 2MB de memoria flash
  • Interfaces inalámbricas integradas de banda única de 2,4 GHz (802.11n)
  • Puerto micro USB B para alimentación y datos (y para reprogramar la flash)
  • Placa de circuito impreso de 40 pines de 21mmx51mm estilo 'DIP' de 1mm de grosor con pines de agujero pasante de 0,1″ también con almenas en los bordes.
  • Expone 26 E/S multifunción de 3,3 V de propósito general (GPIO)
  • 23 GPIO son sólo digitales, tres de ellos con capacidad ADC
  • Puede montarse en superficie como un módulo
  • Puerto de depuración de cables en serie (SWD) de 3 pines de ARM
  • Arquitectura de alimentación sencilla pero muy flexible
  • Varias opciones para alimentar fácilmente la unidad desde un micro USB, suministros externos o baterías
  • Doble núcleo Cortex M0+ hasta 133MHz
  • El PLL en el chip permite variar la frecuencia del núcleo
  • SRAM de alto rendimiento de 264kByte multibanco
  • Flash externa Quad-SPI con eXecute In Place (XIP) y caché de 16kBytes en el chip
  • Tejido de barras cruzadas de alto rendimiento
  • USB1.1 integrado (dispositivo o host)
  • 30 E/S multifunción de propósito general (cuatro pueden utilizarse para ADC)
  • 1,8-3,3V Tensión de E/S
  • Convertidor analógico-digital (ADC) de 12 bits y 500 kHz
  • Varios periféricos digitales
  • 2 × UART, 2 × I2C, 2 × SPI, 16 × canales PWM
  • 1 × temporizador con 4 alarmas, 1 × reloj en tiempo real
  • 2 × bloques de E/S programables (PIO), 8 máquinas de estado en total

El pinout externo es casi idéntico al de la Raspberry Pi Pico.

Pico W Pinout
Pico W Pinout

La única diferencia es con el LED y los pines de depuración SWD.

El LED integrado se controla a través del pin WL_GPIO0 del chip Infineon 43439. En el Pico, el LED estaba conectado al pin GPIO 25.

Además, los pines de depuración SWD fueron movidos hacia el centro de la placa, para crear espacio para la antena del PCB. Puede encontrarlos entre el RP2040 y el CYW43439 y el orden de izquierda a derecha sigue siendo SWCLK, GND, SWDIO.

Software

Dado que el Pico W se basa en el chip RP2040, se puede programar igual que el Pico. Eso significa que puedes programarlo en C/C++ y MicroPython y que el código escrito para el Pico (que no utiliza el LED integrado) debería funcionar en el Pico W.

Raspberry Pi proporciona un 'Conexión a Internet con Raspberry Pi Pico W' para C/C++ y MicroPython. Para facilitar su comienzo con el Pico W, también hemos reunido algunos proyectos de ejemplo.

C/C++ y el Pico-SDK

Hay un actualización del Pico-SDK para activar las capacidades inalámbricas de su Pico W. La configuración y el uso son exactamente los mismos que con el Pico. Ver nuestro video para empezar con el Pico W y C/C++.

El actualizado Pico-SDK también contiene algunos ejemplos de uso inalámbrico.

MicroPython y Thonny

La forma más conveniente de utilizar MicroPython con el Pico W es utilizar el IDE Thonny. Raspberry Pi lanzó una nuevo puerto MicroPython para el Pico W.

Nota MicroPython es específico de la placa. Por lo tanto, hay diferentes (e incompatibles) versiones de MicroPython para el Pico y el Pico W. Asegúrese de utilizar siempre la versión correcta para su placa.

Dicho esto, la forma de programar el Pico W es exactamente la misma, por lo que si has utilizado el Pico con MicroPython antes, debería ser una brisa.

Pico H y Pico WH

Como se ha mencionado, Raspberry Pi también ha lanzado el Pico H y el Pico WH. La 'H' añadida al nombre significa que viene con cabeceras pre-soldadas. El Pico H es como nuestro Pico Comfort, pero para los pines de depuración SWD, Raspberry Pi utiliza un cabezal de depuración JTAG horizontal. El Pico WH probablemente utilizará las mismas dos filas de cabezales 1×20 y algún cabezal vertical para los pines de depuración.

Cómo empezar con la Raspberry Pi Pico W

Esta sección destacará trucos y patrones simples que le ayudarán a comenzar con su Raspberry Pi Pico W.

Pinout de Raspberry Pi Pico W

Pinout de Raspberry Pi Pico W (imagen de la hoja de datos oficial)

Flashear el MicroPython UF2

Una tarea de configuración fundamental que tendrá que hacer es flashear el MicroPython UF2 en su Pico W.

Primero, descargue el archivo UF2 hecho específicamente para la Raspberry Pi Pico W aquí. Alternativamente, puedes encontrar las construcciones nocturnas aquí.

Tenga en cuenta que no puede utilizar el UF2 de la Raspberry Pi Pico original.

Mantenga pulsado el botón BOOTSEL, luego conecte su USB en la Raspberry Pi Pico W.
Mantenga pulsado el botón BOOTSEL, luego conecte su USB en la Raspberry Pi Pico W.

Para cargar el archivo UF2, tendrás que mantener pulsado el botón BOOTSEL y luego conectar el USB.

Verá un nuevo volumen llamado RPI-RP2 en su explorador de archivos.

Copie el archivo UF2 en esa unidad.

Se desconectará automáticamente cuando se cargue.

Ya está. Su Raspberry Pi Pico W está ahora lista para aceptar código MicroPython.

En el siguiente paso...

Instalación de Thonny IDE

Thonny dirigiendo nuestro proyecto para principiantes (ver abajo)

La forma más fácil de ejecutar el código MicroPython y acceder a un shell en la Raspberry Pi Pico W es utilizar el IDE Thonny.

Thonny viene por defecto en el sistema operativo Raspberry Pi. Sin embargo, es posible que desee instalarlo en su ordenador principal para su comodidad.

Así es como: vaya a https://thonny.org/ y podrá encontrar las últimas versiones en la página principal.

Es probable que le aparezca una ventana emergente pidiéndole que se actualice. Hazlo.

La actualización funcionó bien cuando ejecuté Thonny en mi Raspberry Pi OS, sin embargo, en Windows, hubo este error diciendo "SSL: CERTIFICATE_VERIFY_FAILED".

Puede solucionarlo descargando este certificado (https://letsencrypt.org/certs/lets-encrypt-r3.der), luego haga clic con el botón derecho del ratón en el archivo descargado e "Instale el certificado" y ya no encontrará este error.

Asegúrese de haber elegido "MicroPython (Raspberry Pi Pico)" en la esquina inferior derecha.

Carga de archivos en su Raspberry Pi Pico W

Cargue los archivos en su Raspberry Pi Pico W haciendo clic en Subir a /

Así es como puedes cargar tus archivos de MicroPython en la Raspberry Pi Pico W con Thonny.

Conecta tu Raspberry Pi Pico W.

En Thonny, vaya a Ver > Archivos.

Verás dos secciones. Los archivos en su ordenador en la parte superior y los archivos en la Raspberry Pi Pico W.

Haga clic con el botón derecho del ratón en los archivos que desea cargar y seleccione Subir a /

Parpadeo del LED de la placa

Una diferencia fundamental entre la Raspberry Pi Pico original y la Pico W es la forma de hacer parpadear el LED de la placa.

En el pasado, se controlaba el LED mediante este código:

led = machine.Pin(25, machine.Pin.OUT)

Sin embargo, en la Raspberry Pi Pico W, se utilizaría "LED" en lugar de 25.

led = machine.Pin('LED', machine.Pin.OUT)

Por lo tanto, para hacer parpadear el LED de la placa, escribirás este código:

importar máquina
importar tiempo

led = machine.Pin('LED', machine.Pin.OUT)

mientras (True):
    led.on()
    time.sleep(.2)
    led.off()
    time.sleep(.2)
   

Guarda esto como main.py y se ejecutará automáticamente cuando se alimente el Pico W.

Conectarse al WiFi

A continuación se muestra un código simplificado que le permitirá

  • Conéctate al WiFi
  • Tiempo de espera de 10 segundos
  • Imprime "Esperando conexión" mientras se conecta a la red definida en las variables ssid y pw
  • Enciende el LED de la placa cuando se conecta con éxito
importar red
importar tiempo

wlan = network.WLAN(network.STA_IF)
wlan.active(True)

ssid = "inserte-su-SSID-aquí"
pw = "inserte-su-pw-aquí"

wlan.connect(ssid, pw)

def ilumina_onboard_led():
    led = machine.Pin('LED', machine.Pin.OUT)
    led.on();

timeout = 10
while timeout > 0:
    si wlan.status() >= 3:
        light_onboard_led()
        romper
    timeout -= 1
    print('Esperando conexión...')
    time.sleep(1)
   
wlan_status = wlan.status()

En un proyecto del mundo real, sería preferible crear un archivo separado (por ejemplo, secretos.py) y guardar el ssid y pw allí, y luego importarlo en el archivo principal.

Tampoco hay mucha retroalimentación con este código ni manejo de errores. Si tienes éxito, obtienes un LED encendido. Si no lo tiene, no recibe ninguna respuesta.

Por lo tanto, aquí hay una forma más elegante de conectarse a una red.

El siguiente código ajusta las diferencias regionales en el rp2.country("DE"). Cámbialo por tu país, por ejemplo "GB", "US", etc.

Cuando te conectes con éxito a una red WiFi, verás tres parpadeos del LED de la placa al conectarse con éxito. Cualquier otro número de parpadeos significará otra cosa, según el siguiente número de parpadeos:

# Manejar el error de conexión
# Significado de los errores
# 0 Enlace caído
# 1 Enlace unido
# 2 Enlace NoIp
# 3 Enlace arriba

main.py

importar rp2
importar red
importar ubinascii
importar máquina
import urequests como requests
importar tiempo
from secretos import secretos
import socket

# Establece el país para evitar posibles errores
rp2.country('DE')

wlan = network.WLAN(network.STA_IF)
wlan.active(True)
# Si necesitas desactivar el modo de ahorro de energía
# wlan.config(pm = 0xa11140)

# Ver la dirección MAC en el chip inalámbrico OTP
mac = ubinascii.hexlify(network.WLAN().config('mac'),':').decode()
print('mac = ' + mac)

# Otras cosas a consultar
# print(wlan.config('channel'))
# print(wlan.config('essid'))
# print(wlan.config('txpower'))

# Cargar los datos de inicio de sesión desde un archivo diferente por razones de seguridad
ssid = secrets['ssid']
pw = secrets['pw']

wlan.connect(ssid, pw)

# Esperar la conexión con 10 segundos de tiempo de espera
tiempo de espera = 10
while timeout > 0:
    si wlan.status() = 3:
        break
    timeout -= 1
    print('Esperando conexión...')
    time.sleep(1)

# Definir la función de parpadeo del LED de la placa para indicar los códigos de error
def blink_onboard_led(num_blinks):
    led = machine.Pin('LED', machine.Pin.OUT)
    for i in range(num_blinks):
        led.on()
        time.sleep(.2)
        led.off()
        time.sleep(.2)
    
# Manejar el error de conexión
# Significado del error
# 0 Enlace caído
# 1 Enlace unido
# 2 Enlace NoIp
# 3 Enlace arriba
# -1 Fallo de enlace
# -2 Enlace NoNet
# -3 Enlace BadAuth

wlan_status = wlan.status()
blink_onboard_led(wlan_status)

si wlan_status != 3
    raise RuntimeError('Fallo en la conexión Wi-Fi')
si no
    print('Conectado')
    status = wlan.ifconfig()
    print('ip = ' + status[0])

secretos.py

secretos = {
    'ssid': 'your-ssid',
    'pw': 'your-pw',
    }

Servir una página web en la IP local

Para servir una página web usando el Raspberry Pi Pico W, necesitarás tres archivos.

  • main.py - el grueso del código (que se ejecuta automáticamente en el Pico W)
  • secretos.py - que contiene ssid y pw
  • index.html - que contiene la página web que se servirá

main.py se conectará a su red WiFi, definida en secretos.py. A continuación, se abrirá un socket que escuchará cualquier conexión a la Raspberry Pi Pico W.

Si alguien se conecta, entregará la página web, llamada index.html.

Este es el código para main.py y index.html. secretos.py puede tomarse del ejemplo anterior.

main.py

importar rp2
importar red
importar ubinascii
importar máquina
import urequests como requests
importar tiempo
from secretos import secretos
importar socket

# Establece el país para evitar posibles errores
rp2.country('DE')

wlan = network.WLAN(network.STA_IF)
wlan.active(True)

# Ver la dirección MAC en el chip inalámbrico OTP
mac = ubinascii.hexlify(network.WLAN().config('mac'),':').decode()
print('mac = ' + mac)

# Cargar los datos de acceso desde un archivo diferente por razones de seguridad
ssid = secrets['ssid']
pw = secrets['pw']

wlan.connect(ssid, pw)

# Esperar la conexión con 10 segundos de tiempo de espera
tiempo de espera = 10
while timeout > 0:
    si wlan.status() = 3:
        break
    timeout -= 1
    print('Esperando conexión...')
    time.sleep(1)

# Definir la función de parpadeo del LED de la placa para indicar los códigos de error
def blink_onboard_led(num_blinks):
    led = machine.Pin('LED', machine.Pin.OUT)
    for i in range(num_blinks):
        led.on()
        time.sleep(.2)
        led.off()
        time.sleep(.2)

wlan_status = wlan.status()
blink_onboard_led(wlan_status)

si wlan_status != 3
    raise RuntimeError('Fallo en la conexión Wi-Fi')
si no
    print('Conectado')
    status = wlan.ifconfig()
    print('ip = ' + status[0])
    
# Función para cargar en la página html
def get_html(nombre_de_hulm):
    con open(nombre_de_hulm, 'r') como archivo:
        html = file.read()
        
    devuelve html

Servidor HTTP # con socket
addr = socket.getaddrinfo('0.0.0.0', 80)[0][-1]

s = socket.socket()
s.bind(addr)
s.listen(1)

print('Escuchando en', dirección)

# Escuchar las conexiones
mientras sea cierto
    try:
        cl, addr = s.accept()
        print('Cliente conectado desde', addr)
        response = get_html('index.html')
        cl.send('HTTP/1.0 200 OK\nContent-type: text/html\n\r\n')
        cl.send(response)
        cl.close()
        
    excepto OSError como e:
        cl.close()
        print('Conexión cerrada')

index.html

<!DOCTYPE html>
<html>
    <head>
        <title>Pico W</title>
    </head>
    <body>
        <h1>Pico W</h1>
    
    </body>
</html>

Difusión de una red WiFi (punto de acceso SoftAP)

Estoy escribiendo esto a mediados de julio de 2022, así que las cosas están cambiando rápidamente.

Si no has flasheado tu Raspberry Pi Pico W con la última MicroPython UF2, entonces hazlo ahora ya que los ingenieros de Raspberry Pi están actualizándola mientras hablamos. Consigue la última versión aquí.

La última versión nocturna, publicada el 15 de julio, contiene varias actualizaciones. Por un lado, permite asegurar la red WiFi con una contraseña (antes no funcionaba).

Hay algunos errores. Por ejemplo, no pude cambiar el nombre del SSID deteniendo y ejecutando el script en Thonny. Tuve que hacer un reinicio más duro tirando del USB del Pico W.

La parte crucial para configurar un punto de acceso es este segmento de aquí:

importar red
máquina de importación

ssid = ''
contraseña = ''

ap = network.WLAN(network.AP_IF)
ap.config(essid=ssid, password=contraseña)
ap.active(True)

while ap.active() == False:
  pass

print('Conexión exitosa')
print(ap.ifconfig())
Punto de acceso emitido por la Raspberry Pico W. Si no puedes ver tu AP como lo nombraste, intenta desconectar el enchufe USB y volver a alimentar la Pico W.

Aquí está un resumen completo del jefe de documentación de Raspberry Pi, Alasdair Allenlo que convierte a su Pico W en un punto de acceso con SSID MicroPython-AP, contraseña 123456789.

Cuando te conectes a él, enviará una página web con "Hola desde Pico W"

importar socket
importar red
importar máquina

ssid = 'MicroPython-AP'
contraseña = '123456789'

led = machine.Pin("LED",machine.Pin.OUT)

ap = network.WLAN(network.AP_IF)
ap.config(essid=ssid, password=contraseña)
ap.active(True)

while ap.active() == False:
  pass

print('Conexión exitosa')
print(ap.ifconfig())

html = """<!DOCTYPE html>
<html>
    <head> <title>Pico W</title> </head>
    <body> <h1>Pico W</h1>
        <p>Hola de Pico W.</p>
    </body>
</html>
"""

addr = socket.getaddrinfo('0.0.0.0', 80)[0][-1]
s = socket.socket()
s.bind(addr)
s.listen(1)

print('listening on', addr)
led.off()

# Escuchar las conexiones
mientras que True
    try:
        cl, addr = s.accept()
        print('cliente conectado desde', addr)
        request = cl.recv(1024)
        led.on()
        print(request)

        cl.send('HTTP/1.0 200 OK\nContent-type: text/html\r\n\n')
        cl.send(html)
        cl.close()
        led.off()

    excepto OSError como e:
        cl.close()
        print('conexión cerrada')

Tutoriales para principiantes de Raspberry Pi Pico W

Hemos recopilado unos cuantos tutoriales para principiantes que te ayudarán a conocer la Raspberry Pi Pico W.

Controla el LED integrado de Pico W con un servidor web

Raspberry Pi Pico W control de LED a bordo con servidor web

Este es el tutorial más básico que le ayudará a entender cómo conectar su Raspberry Pi Pico W a WiFi, lanzar un servidor web y controlar el LED a bordo con el servidor web.

Se servirá una página web con un botón de "encendido/apagado" que se puede utilizar para controlar el LED de la placa.

Este tutorial es la base de muchos otros proyectos que requieren control remoto a través de WiFi.

PULSE AQUÍ: Controla el LED integrado de Pico W con un servicio webr

Transmisión de datos de sensores a través de un servidor web en la Raspberry Pi Pico W

Tutorial de la Raspberry Pi Pico W para la transmisión de datos de los sensores

Usando el acelerómetro ADXL343, este tutorial le mostrará cómo actualizar dinámicamente las lecturas en una página web que es servida por su Raspberry Pi Pico W.

La página web se actualiza cada segundo cuando un cliente visita la dirección IP del Pico W. También hay una función de dados web digitales que se activa cuando se toca el ADXL343.

Aprenderás a utilizar las librerías, a configurar el WiFi, a servir una página web y a mostrar los valores del sensor en la página web.

PULSE AQUÍ: Transmisión de datos de sensores por WiFi con Raspberry Pi Pico W

Tutorial sobre el timbre Wi-Fi de Raspberry Pi Pico W (solicitudes HTTP e IFTTT)

Raspberry Pi Pico W proyecta timbre y notificación WiFi

Este tutorial le enseñará cómo utilizar la Raspberry Pi Pico W para disparar una solicitud HTTP.

Utilizaremos un botón para simular un timbre. Al pulsarlo, el botón hará que el Pico W se dirija al punto final de IFTTT, que a su vez activará una notificación por correo electrónico o una notificación de la aplicación.

PULSE AQUÍ: Tutorial sobre el timbre Wi-Fi de Raspberry Pi Pico W (solicitudes HTTP e IFTTT)

Estación meteorológica remota Raspberry Pi Pico W (alimentación solar y SoftAP)

Estación meteorológica Raspberry Pi Pico W softap

En este tutorial, aprende a emitir un punto de acceso SoftAP que transmite los datos de la estación meteorológica de forma inalámbrica y lo alimenta con energía solar.

PULSE AQUÍ: Estación meteorológica remota Raspberry Pi Pico W (alimentación solar y SoftAP)

Proyectos Pico W

Con la Raspberry Pi Pico W puedes hacer todo lo que puedes hacer con la Pico. Pero puedes mejorarlo añadiendo control o salida inalámbrica.

La mayoría de los proyectos requieren algún tipo de hardware adicional, por lo que le tenemos cubierto con nuestro Kits Pico.

Burgerbot: actualizado desde un Pico normal

Kevin McAleer construyó un Burgerbot con el Pico normal y cuando salió el Pico W, aprovechó la oportunidad para actualizarlo.

En su vídeo de YouTube, cubre cómo utiliza el Pico W, Node-Red y actualiza su código para conectar el Pico W al Burgerbot a través de MQTT.

Kevin eligió Node-Red para construir un tablero y programar sus mensajes MQTT porque facilita el proceso.

pico w robot kevin mcaleer burgerbot
El Burgerbot de Kevin McAleer (captura de pantalla de YouTube).

aleatoriedad de la imagen del gatito de e-paper

Placekitten es un sitio web que aloja simpáticas imágenes de gatos para que los diseñadores web las utilicen como marcadores de posición.

Lo que hizo Phil Howard fue conseguir que el Pico W hiciera un ping al sitio web de Placekitten y cargara una foto aleatoria de un gato en su pantalla de tinta electrónica.

Captura de pantalla de Placekitten, donde puedes obtener fotos de gatos enviando una URL.

Pimoroni fabrica el Pico Inky Pack que es una pantalla de tinta electrónica de 2,9″ que encaja perfectamente con un Pico W (con los cabezales soldados).

Una vez conectado al WiFi, Phil hizo un ping a una URL para obtener una imagen que se mostrara en la pantalla de tinta electrónica. El Pico Inky tiene una pantalla de 296x128px, lo que significa que si se utiliza la url http://placekitten.com/296/128obtendrá una imagen que encaja perfectamente en la pantalla.

Haz que tus plantas te envíen mensajes de texto

Cuando tus amigos tengan sed, te enviarán un mensaje para preguntarte si quieres ir a tomar algo.

¿Por qué no conseguir la misma experiencia con sus plantas de interior?

Sandeep Mistry ha hecho exactamente eso con la Raspberry Pi Pico W, el Pimoroni Grow Kit y la API Twilio SMS.

Fundamentalmente, la planta le dirá cuándo necesita agua. El sensor emite una señal de pulso digital con una frecuencia entre 1 Hz y 30 Hz. Si está seco, tendrá una frecuencia alta, y esto hace que el Pico W haga un ping a la API de Twilio SMS para enviar un mensaje.

Consulte la guía completa aquí.

Raspberry Pi Pico W vs Espressif ESP32

El Raspberry Pi Pico W es un cambio de juego.

Cuando comparamos el Raspberry Pi Pico con el ESP32, elegimos el PICO-KIT porque tenía el factor de forma más similar al Pico.

La gran ventaja del ESP32 sobre el Pico W es el WiFi y el Bluetooth.

Pero eso ya no es así. El Pico W tiene ahora WiFi y, aunque el chip WLAN puede hacer Bluetooth, a principios de julio, todavía no está habilitado.

Por lo tanto, si necesita la capacidad de Bluetooth ahora, entonces usted hará mejor con el ESP32.

Dicho esto, el ESP32 tiene otras ventajas como la variación de las frecuencias de la CPU, incluyendo dos velocidades más rápidas frente al Pico W.

El ESP32 lleva mucho más tiempo en el mercado, lo que hace que haya muchos más proyectos construidos con él. Su documentación, experimentación y complementos están muy por delante de la gama Raspberry Pi Pico.

Raspberry Pi Pico WEspressif ESP32-PICO-KIT
Frecuencia de la CPU133MHz80/160/240MHz
MicrocontroladorRP2040Xtensa LX6
Núcleos22
Memoria flash2MB4MB
RAM264KB520KB
GPIO26 (utilizable por el usuario)36
¿Tiene USB?microUSBmicroUSB
¿WiFi y/o BT?Sí, ambos, BT no está habilitado en el lanzamientoSí, ambos
Tensión1,8 - 5,5V o 5V USB3,3V (mediante pines) o 5V mediante USB o 5V-12V (mediante regulador de tensión)
Tamaño51x21mm52x20mm
IdiomasMicroPython / CMicroPython / C

Opiniones de la comunidad sobre Pico W vs ESP32

Iniciamos un hilo de conversación en el foro de Raspberry Pi sobre este mismo tema, y aquí hay algunas reflexiones estupendas de la comunidad:

Escrutinio del usuario del foro de Raspberry Pi dijo que el ESP32 tiene más poder de procesamiento con la variante de 160MHz, citando 1639 pistones/segundo contra 1243 en el Pico W. El de 240MHz es aún más rápido.

También enumeró las siguientes razones por las que el ESP32 triunfaría sobre el Pico W.

  • temporizadores de hardware
  • realmente bonito ADC, con sintonía de rango y lectura directa de voltaje
  • DAC de 2 canales
  • tacto capacitivo
  • Sensor magnético de efecto Hall (agita un imán hacia él, y puede decirte que estás agitando un imán hacia él)
  • Canales RMT para un PWM bastante inteligente

Por otro lado, el usuario scotty101 dice lo siguiente sobre las ventajas del Pico W:

  • Entorno de desarrollo
  • Apoyo a Raspberry Pi y sus objetivos educativos
  • Prevalencia y tamaño de la comunidad.
  • Facilidad para poner un nuevo binario en el Pico

"Me gusta el ESP32 pero odio tener que descargar la esptool cada vez que reinicio un proyecto abandonado. Tengo tan poco tiempo que MicroPython en el Pico me resulta rápido y fácil de poner en marcha", dijo scotty101.

Finalmente, cleverca22 dio una visión equilibrada de lo que vio en ambas juntas. Más allá de los argumentos expuestos, he aquí los puntos adicionales:

La Raspberry Pi Pico W tiene IO programable (PIO).

cleverca22 dice que cree que la plataforma ESP tiene una unidad especial de gestión de la memoria entre el XIP y la flash, por lo que se pueden almacenar varias aplicaciones a la vez y esto permite hacer rollbacks.

Además, la plataforma ESP controla el WiFi y el Bluetooth directamente desde la CPU, lo que permite realizar acciones de RF no estándar, mientras que la del Pico W probablemente se gestione mediante una mancha de código cerrado, por lo que sólo permite realizar acciones de RF aprobadas.

Pico W vs Zero 2 W

Puede que estés poniendo los ojos en blanco porque crees que estamos comparando manzanas con naranjas.

Pero, ¿lo somos realmente?

Hablemos de la diferencia fundamental. La Raspberry Pi Pico W es un microcontrolador mientras que la Raspberry Pi Zero 2 W es un microordenador.

En pocas palabras, la Raspberry Pi Pico W está diseñada para ejecutar una sola cosa. La Zero 2 W está pensada para ser más dinámica: puede ejecutar múltiples tareas, diferentes sistemas operativos y puedes programarla en varios idiomas.

Aquí hay una tabla que explica las diferencias:

¿Puede...Microcontrolador (por ejemplo, Raspberry Pi Pico W)Microordenador (por ejemplo, Raspberry Pi Zero 2 W)
¿Manejar un servidor?No
¿Parpadea un LED?Mucho más rápido de principio a finMucho más lento; muchos más procesos por los que pasar
¿Programa de reinicio automático en caso de fallo de alimentación?No por defecto
Jugar a los videojuegosNo sin mucho esfuerzo
¿Funciona con batería?Sí, es muy probable que dure más tiempo en promedioSí, no dura tanto en promedio
¿Gestión del calor?No es necesario normalmenteDisipadores, ventiladores, carcasas térmicas
¿Costes?BajaMayor
¿Tamaño?Más pequeñoMás grande

El WiFi ya no es la ventaja de la Pi Zero W

Ahora bien, una de las cosas que realmente atrajo a algunos usuarios a la serie Pi Zero es la conexión inalámbrica integrada.

En el pasado, había que comprar un accesorio para dotar a la Pico original de capacidad inalámbrica. Fue más o menos el punto que empujó a la gente a utilizar la Zero como sustituto para sus proyectos.

Dicho esto, ahora que la Pico W tiene conexión inalámbrica, la ventaja que tenía la Zero W ya no existe.

El Bluetooth sigue siendo una ventaja de la Pi Zero W... por ahora

En el momento del lanzamiento, el Pico W tiene un chip Bluetooth en él, pero no ha sido habilitado.

Raspberry Pi ha dicho que lo habilitará en el futuro. Cuando sea eso.

Así que, por ahora, si necesitas Bluetooth, la Pi Zero W es la mejor opción.

Escasez de Raspberry Pi Zero 2 W = ventaja de Pico W

Otro elemento que da a la Pico W tal ventaja sobre la Zero 2 W es su disponibilidad.

En las dos primeras semanas de su lanzamiento, las existencias aún estaban disponibles en muchas tiendas, incluida la nuestra. Esto ciertamente no refleja la situación de la Pi Zero 2, que está programado para un bajo suministro durante el resto de 2022.

Por supuesto, si tienes una cuenta PiCockpit, los usuarios de la UE/Suiza también puede utilizar nuestra Herramienta de Reserva para reservar su próxima Raspberry Pi.

¿Cómo decidir?

Esta es la lógica que utilizo para decidir cuál utilizar:

EscenarioQué conseguir
Soy mejor en un lenguaje que no sea C/PythonCero
Tengo energía "ilimitada" (es decir, caso de uso no solar o de batería)Cero
Necesito guardar datos (como registros de temperatura)Cero
Necesito usar una cámaraCero
Quiero una salida de GUI/vídeoCero
Necesito WiFiO bien
Necesito BluetoothCero (a partir de julio de 2022)
Necesito la configuración más compactaPico W
Necesito un reinicio rápido en caso de accidente o fallo de alimentaciónPico W
No quiero configurar un sistema operativoPico W
Quiero la opción más barataPico W

Bajo el microscopio

Peter Mount ha filmado este vídeo del Pico W...

¿Cómo se burló Raspberry Pi del lanzamiento del Pico W?

Según Raspberry Pi, nadie recibió el teaser que era una vaca con gráficos de Raspberry Pi por todas partes.

Teaser de Raspberry Pi para el Pico W

Dijeron: "Todavía no podemos creer que ninguno de ustedes haya captado el muy abstracto teaser que dejamos caer en Twitter la noche anterior al lanzamiento de Pico W. Es una vaca. ¿Lo pilláis?"

La vaca Raspberry Pi reorganizada es Raspberry Pico W.

Supongo que ahora que el gato está fuera de la bolsa, hablar de ello es bastante moot.

Más información

Tenemos una enciclopedia de información para la Raspberry Pi Pico normal que te ayudarán a empezar con la Raspberry Pi Pico W. Aquí es donde puedes empezar a aprender sobre la Raspberry Pi Pico.

PULSE AQUÍ: Todo lo que necesitas saber sobre la Raspberry Pi Pico

También hay documentación general y específica disponible directamente desde Raspberry Pi:

2 Comentarios

  1. Pico User el julio 15, 2022 a las 11:12 am

    Los conectores de depuración Pico H para el lado de los cables/alambres son en realidad
    SHR-03V-S (sin brida) o SHR-03V-S-B (con brida).

    https://www.jst.co.uk/downloads/series/eSH_(21-03-24).pdf
    https://shop.pimoroni.com/products/pimoroni-pico-debug-cable
    https://kabel-me.eu/details/48010

Deja un comentario