It's easy to use the WIZ5500 breakout with CircuitPython, and the Adafruit_CircuitPython_Wiznet5k module. This module allows you to easily write Python code to use the WIZ5500 for ethernet access.
This breakout is for use with microcontrollers, not with single-board computers running Blinka.
CircuitPython Microcontroller Wiring
First wire up the breakout to your board exactly as follows. The following is the breakout wired to a Feather RP2040 using a solderless breadboard:
-
Board 3V to breakout VIN (red wire)
-
Board GND to breakout GND (black wire)
-
Board SCK to breakout SCK (yellow wire)
- Board MO to breakout MOSI (blue wire)
- Board MI to breakout MISO (green wire)
- Board D10 to breakout CS (orange wire)
CircuitPython Usage
To use with CircuitPython, you need to first install the Adafruit_CircuitPython_Wiznet5k library, and its dependencies, into the lib folder on your CIRCUITPY drive. Then you need to update code.py with the example script.
Thankfully, we can do this in one go. In the example below, click the Download Project Bundle button below to download the necessary libraries and the code.py file in a zip file. Extract the contents of the zip file, and copy the entire lib folder and the code.py file to your CIRCUITPY drive.
Your CIRCUITPY/lib folder should contain the following folders and files:
- adafruit_bus_device/
- adafruit_wiznet5k/
- adafruit_connection_manager.mpy
- adafruit_requests.mpy
- adafruit_ticks.mpy

Example Code
Once everything is saved to the CIRCUITPY drive, connect to the serial console to see the data printed out!
# SPDX-FileCopyrightText: 2021 ladyada for Adafruit Industries # SPDX-License-Identifier: MIT import adafruit_connection_manager import adafruit_requests import board import busio import digitalio from adafruit_wiznet5k.adafruit_wiznet5k import WIZNET5K print("Wiz5100 Breakout WebClient Test") TEXT_URL = "http://wifitest.adafruit.com/testwifi/index.html" cs = digitalio.DigitalInOut(board.D10) spi_bus = busio.SPI(board.SCK, MOSI=board.MOSI, MISO=board.MISO) # Initialize ethernet interface with DHCP eth = WIZNET5K(spi_bus, cs) # Initialize a requests session pool = adafruit_connection_manager.get_radio_socketpool(eth) ssl_context = adafruit_connection_manager.get_radio_ssl_context(eth) requests = adafruit_requests.Session(pool, ssl_context) print("Chip Version:", eth.chip) print("MAC Address:", [hex(i) for i in eth.mac_address]) print("My IP address is:", eth.pretty_ip(eth.ip_address)) print("IP lookup adafruit.com: %s" % eth.pretty_ip(eth.get_host_by_name("adafruit.com"))) # eth._debug = True print("Fetching text from", TEXT_URL) r = requests.get(TEXT_URL) print("-" * 40) print(r.text) print("-" * 40) r.close() print("Done!")
First, the WIZ5500 breakout is instantiated over SPI. Then, a network connection is established over ethernet. You'll see the chip version, MAC address, IP address and text from the Adafruit WiFi test print out to the serial console.
Page last edited June 11, 2025
Text editor powered by tinymce.