Home Hardware Pico Wireless Pack

Pico Wireless Pack

by rp2040guy71

One of the features that is missing from the Raspberry Pi Pico is network functionality.

The Pico Wireless Pack from Pimoroni is one solution to the problem.

The Pico Wireless Pack attaches to the back of your Pico and uses an ESP32 chip to let your Pico connect to 2.4GHz wireless networks and transfer data. There’s a microSD card slot for if you want to store lots of data locally as well as a RGB LED (for status updates) and a button (useful for things like enabling/disabling Wi-Fi).

The ESP32 is an interesting choice for this, its a very powerful microcontroller but in this case we are only using the wi-fi functionality and as far as I’m aware the bluetooth functionality is not supported which is a pity.

There is custom micropython firmware that you can upload to your Raspberry Pi Pico and there are some examples, there are also C++ examples.

You can alternatively find other libraries for the ESP32 and SD card from Adafruit in Circuitpython

If you want to use the other pins on your Pico then you will need to use an expander option, there a few available which we will cover in a future article.

Features

  • ESP32-WROOM-32E module for wireless connectivity (connected via SPI) (datasheet)
  • 1 x tactile button
  • RGB LED
  • Micro-SD card slot*
  • Pre-soldered female headers for attaching your Raspberry Pi Pico
  • Fully assembled
  • No soldering required (as long as your Pico has header pins attached).
  • C++ and MicroPython libraries

Purchase

 

Code Examples

This code example scans for wireless networks and is available in the github repo

[codesyntax lang=”python”]

import picowireless
import time

picowireless.init()

picowireless.start_scan_networks()

while True:
    networks = picowireless.get_scan_networks()
    print("Found {} network(s)...".format(networks))
    for network in range(networks):
        ssid = picowireless.get_ssid_networks(network)
        print("{}: {}".format(network, ssid))
    print("\n")
    time.sleep(10)

[/codesyntax]

 

 

Links

C++ examples here
MicroPython examples here

Adafruit’s ESP32SPI and Adafruit_CircuitPython_SD libraries

You may also like

This website uses cookies to improve your experience. We'll assume you're ok with this, but you can opt-out if you wish. Accept Read More