Raspberry Pi Pico W Library for Proteus: the web thermometer with the phone page and the laptop JSON

Raspberry Pi Pico W Library for Proteus: Wi-Fi Web Simulation

2.5K Views
40
700
60
25
60
PCBWay

Hello friends, I hope you all are doing great. Today, I am going to share the Raspberry Pi Pico W Library for Proteus. The Pico W is the Wi-Fi version of the Raspberry Pi Pico: the same 51 x 21 mm board and 40 castellated pins, the RP2040 microcontroller, and an Infineon CYW43439 chip under a metal can for Wi-Fi. With this library it runs your Pico W Arduino sketch in Proteus - written for the popular arduino-pico core: WiFi, WebServer, LEAmDNS, BOOTSEL, analogReadTemp() and LED_BUILTIN - with the LED, the BOOTSEL button and our serial monitor.

Updates

Raspberry Pi Pico W Library for Proteus

Latest version: V1.0 (October 2026, this tutorial)

Helping Tools

This is the twenty-seventh library of our Wi-Fi series and the first Raspberry Pi board in it; our earlier Raspberry Pi Pico Library for Proteus covers the Pico without Wi-Fi. Its demo is a Wi-Fi web thermometer: the RP2040's own temperature on a page at picow.local, the same data as JSON for our Laptop WiFi Monitor, LED buttons on our Mobile WiFi Monitor, and the BOOTSEL button used as a user button - the classic Pico W trick.

NOTICE: Proteus has no RP2040 and no CYW43439, so this is not a real RP2040: your sketch is compiled for a hidden ATmega2560 inside the board (16 MHz, 8 KB of RAM). The arduino-pico names, the LED, BOOTSEL and the Wi-Fi are our model, and the board runs Arduino sketches - MicroPython is not possible. The red PWR LED, the antenna colours, the PANEL pad and the panel are TEP additions. Your feedback is the fuel that keeps us going, so please tell us what you think in the comments below or in the Pico W board of our forum. And if our free libraries help you, you can buy us a coffee. So, let's get started with the Raspberry Pi Pico W Library for Proteus:

Raspberry Pi Pico W Library for Proteus: the web thermometer with the phone page and the laptop JSON
Figure: The Raspberry Pi Pico W Library for Proteus: the LED switched on from the phone (left); the laptop reads the same data as JSON (right).

What is Raspberry Pi Pico W?

The Pico W is a small, low-cost board from Raspberry Pi. Its RP2040 has two Arm Cortex-M0+ cores at 133 MHz, 264 KB of RAM and the programmable PIO blocks; 2 MB of flash sit beside it. The CYW43439 adds 2.4 GHz Wi-Fi (and Bluetooth on newer firmware). The board is 3.3 V, its pins are called GP0 to GP28, three of them (GP26 to GP28) are analog inputs, and its only button is BOOTSEL - held at power-up it opens the USB drive for a new firmware, and while a sketch runs it can be read as a user button. The LED is not on an RP2040 pin at all but on a pin of the CYW43439.

In the Arduino IDE the Pico W is programmed with Earle Philhower's arduino-pico core ("Raspberry Pi Pico/RP2040" in the Boards Manager). Its Wi-Fi API copies the ESP32's - WiFi, WebServer, HTTPClient - so ESP32 sketches move over easily. For the same API on an ESP32-S3 board, see our Arduino Nano ESP32 Library for Proteus.

The real Raspberry Pi Pico W and the Pico W in Proteus
Real Raspberry Pi Pico WThis library in Proteus
ProcessorRP2040, 2 x Cortex-M0+, 133 MHz, 264 KB RAMa hidden ATmega2560 at 16 MHz, 8 KB RAM
Wi-FiInfineon CYW43439our model: a router, DHCP, mDNS, TCP, UDP, NTP, an internet host
Sketch APIarduino-pico corethe same names from our board package TEP Boards for Proteus 1.13.0
PinsGP0 to GP22, GP26 to GP28, 3.3 Vthe same
AnalogGP26 to GP28, 10 bits by default0 to 1023 for 0 to 3.3 V
LEDon the CYW43439 (LED_BUILTIN = 64)LED_BUILTIN (32 here, a hidden pin)
BOOTSELreadable with BOOTSELthe same, on the board and in the monitor
TemperatureanalogReadTemp()about 27 C
int32 bits16 bits (use long for big numbers)
MicroPythonyesno - Arduino sketches only

How Your Pico W Sketch Runs in Proteus

Proteus 8 simulates many processors, but not the RP2040 and not the CYW43439. So, as for our other sketch boards, the Pico W in Proteus has a hidden ATmega2560 inside, and our board package for the Arduino IDE compiles your sketch for it. The package gives the sketch the arduino-pico names - GP numbers, BOOTSEL, analogReadTemp(), LEAmDNS.h - and the Wi-Fi libraries, which talk to our model in TEPNET.DLL. The model plays the CYW43439 and the board around the chip: the router, the sockets, the mDNS name, the LED and the button.

Know the price before you start: the sketch runs at 16 MHz with 8 KB of RAM, an int is 16 bits (32 on the RP2040 - use long above 32767), and the second core, PIO and Bluetooth are not there. For web pages, sockets, sensors and LEDs it is plenty, and the same sketch compiles for a real Pico W with the arduino-pico core.

Features of the Raspberry Pi Pico W Library for Proteus

  • The Pico W as it looks: the green board with micro-USB on the left, BOOTSEL, the LED, the RP2040, the flash chip, the CYW43439 can and the PCB antenna, and the 40 pins with their GP names.
  • The arduino-pico names: GP0 to GP28, A0 to A2, LED_BUILTIN, BOOTSEL, analogReadTemp(), Serial1 on GP0 / GP1, Wire on GP4 / GP5, SPI on GP16 to GP19.
  • Wi-Fi: WiFi, WiFiClient, WiFiServer, WiFiUDP, WebServer, HTTPClient and LEAmDNS - picow.local resolves on the TEP network.
  • BOOTSEL as a button: hold it on the board, or click BOOTSEL in the monitor's Board tab.
  • The LED (LED_BUILTIN), a red PWR LED and an antenna that changes colour with the traffic.
  • A built-in serial monitor on the USB (Serial) at 115200 baud with Monitor, Plotter and Board tabs.
  • Our pop-up panel: a phone with a browser, the router list and the cloud requests, the board, Wi-Fi and traffic cards, every pin live, a Test page, Settings and Help - with our TEP header, not a Windows title bar.
  • A compact package: about 2.21 MB with the board package for the Arduino IDE and our Laptop and Mobile WiFi Monitors, without the C++ source code of the models.

The Raspberry Pi Pico W in Proteus

Raspberry Pi Pico W in Proteus: the board with the RP2040, the CYW43439 and the 40 pins
Figure: The board as the library draws it: micro-USB, BOOTSEL, the PWR and LED, the RP2040, the flash chip, the PANEL pad, the CYW43439 can and the antenna; top VBUS to GP16 (pins 40 to 21), bottom GP0 to GP15 (pins 1 to 20).

Search PICO W in Pick Devices; the device RASPBERRY PI PICO W is in TEPPICOW.LIB (Microprocessor ICs, Raspberry Pi Boards). Click the micro-USB to open the serial monitor and the PANEL pad or the can to open the panel.

Raspberry Pi Pico W in Proteus before Run: the LEDs off
Figure: The board placed in a design, before Run: the LEDs off, the antenna copper gold.

Every State of the Pico W

We ran the board with the demo sketch and paused the simulation for each picture. The sketch keeps the LED off while it joins the router and lights it when the board is on Wi-Fi:

Raspberry Pi Pico W in Proteus joining the Wi-Fi: PWR lit, the LED off
Figure: Joining: PWR lit, the LED off, the antenna still gold.
Raspberry Pi Pico W in Proteus on Wi-Fi: the LED lit
Figure: On Wi-Fi: the LED lit, the antenna in the Wi-Fi colours; the small squares at the pins are the logic levels.

Download Raspberry Pi Pico W Library for Proteus

Click the button below to download Raspberry-Pi-Pico-W-Library-for-Proteus-v1.0.zip (about 2.21 MB, without the C++ source code of the models):

Raspberry Pi Pico W Library for Proteus V1.0
  • README.txt: the device, installation, the demos, the pins, the arduino-pico names, the properties, troubleshooting and the limits.
  • Proteus Library Files: TEPPICOW.LIB (the board), TEPLAPTOP.LIB and TEPMOBILE.LIB (our Laptop and Mobile WiFi Monitors).
  • Proteus Model Files: TEPNET.DLL (the board, the two monitors and the Wi-Fi network).
  • Proteus Simulation: the two demo projects, the HEX file and a copy of the DLL.
  • Arduino Code: the demo sketch and TEP Boards for Proteus 1.13.0, our board package for the Arduino IDE.

No Proteus yet? Read How to Download and Install Proteus 7 and 8. New to libraries? Follow How to Install a New Library in Proteus.

How to Install Raspberry Pi Pico W Library for Proteus

  1. Close Proteus and extract the whole zip file, for example to your Desktop.
  2. Copy the three files from Proteus Library Files into the LIBRARY folder of Proteus (usually C:\Program Files (x86)\Labcenter Electronics\Proteus 8 Professional\LIBRARY).
  3. Copy TEPNET.DLL from Proteus Model Files into the MODELS folder - replace an older copy (this one is the first that knows the Pico W, and it still runs every earlier board, the modules, the shields and the two monitors).
  4. Delete TEPPICOW.IDX, TEPLAPTOP.IDX and TEPMOBILE.IDX from the LIBRARY folder if they are there.
  5. Start Proteus, press P and search for PICO W.

The Board Package for the Arduino IDE

The demo has its HEX file, so you need the Arduino IDE only for your own sketches. Copy the folder Arduino Code\TEP Boards for Proteus\hardware into your sketchbook folder (normally Documents\Arduino), so that Documents\Arduino\hardware\tep\avr\boards.txt exists, and restart the IDE; the Arduino AVR Boards platform must be installed. Version 1.13.0 adds the Pico W and replaces 1.12.0. Choose Tools > Board > TEP Boards for Proteus > Raspberry Pi Pico W (TEP Proteus), write your sketch and use Sketch > Export Compiled Binary; double-click the board in Proteus and set its Program File to the HEX (see How to get the HEX file from Arduino). For a real Pico W you keep Earle Philhower's package - the sketch does not change.

Demo: A Pico W Web Thermometer

Open Pico-W-Web-Thermometer-with-Laptop-and-Mobile.pdsprj. In the middle is the Pico W (U1), on the left our phone (MOB1) and on the right our laptop (PC1). There are no wires: the three are on the TEP-WiFi network. The package also has Raspberry-Pi-Pico-W-Board.pdsprj, the board alone with the same sketch.

Raspberry Pi Pico W Proteus simulation: a web thermometer with the Laptop WiFi Monitor and the Mobile WiFi Monitor
Figure: The whole demo: the titles, MOB1 the Mobile WiFi Monitor, U1 the Pico W, PC1 the Laptop WiFi Monitor.

The two tools come from our Laptop WiFi Monitor Library for Proteus and Mobile WiFi Monitor Library for Proteus. Both find the board by its mDNS name: the laptop's home page is http://picow.local/json and the phone's is http://picow.local/:

Laptop WiFi Monitor in Proteus beside the Raspberry Pi Pico W
Figure: PC1 on the sheet.
Mobile WiFi Monitor in Proteus beside the Raspberry Pi Pico W
Figure: MOB1 on the sheet.

The Sketch: arduino-pico Style

The sketch includes the three libraries an arduino-pico web sketch uses - the same names as on the real board:

#include <WiFi.h>
#include <WebServer.h>
#include <LEAmDNS.h>

In setup() the LED is switched off first - it stays dark until the board is on Wi-Fi:

  pinMode(LED_BUILTIN, OUTPUT);
  digitalWrite(LED_BUILTIN, LOW);

Then it joins the router the usual way, printing a dot every half second:

  WiFi.mode(WIFI_STA);
  WiFi.begin(ssid, password);
  Serial.print("Connecting to TEP-WiFi");
  while (WiFi.status() != WL_CONNECTED) {
    delay(500);
    Serial.print(".");
  }
  Serial.println();
Raspberry Pi Pico W in Proteus joining the Wi-Fi in the demo
Figure: Joining in the demo: PWR lit, the LED off, the antenna gold.

Then it starts mDNS as picow and gives the web server its four pages - two of them as small lambdas:

  if (MDNS.begin("picow")) Serial.println("mDNS: http://picow.local/");
  server.on("/", sendPage);
  server.on("/json", sendJson);
  server.on("/led/on", []() { setLed(true, "page"); sendPage(); });
  server.on("/led/off", []() { setLed(false, "page"); sendPage(); });
  server.begin();

/ is the page for people, /json the data for programs, and /led/on and /led/off switch the LED and answer with the page again, so the phone shows the new state at once. Thanks to mDNS no one needs to know the IP address: the laptop and the phone ask for picow.local and the TEP network answers with the board's address, as a real router with mDNS does.

Press Run and watch the monitor (115200 baud):

Raspberry Pi Pico W serial monitor in Proteus: the join, mDNS and the RP2040 temperature
Figure: The board's monitor: joined TEP-WiFi, IP 192.168.1.101, mDNS http://picow.local/, the LED on, the RP2040 temperature.
Pico W Web Thermometer - The Engineering Projects
Connecting to TEP-WiFi.....
IP address: 192.168.1.101
mDNS: http://picow.local/
LED ON by start
RP2040 temperature 27.3 C
Raspberry Pi Pico W in Proteus on Wi-Fi: the LED lit
Figure: Ready: the LED lit, the antenna in the Wi-Fi colours.

The RP2040 Temperature

analogReadTemp() reads the RP2040's internal temperature sensor in degrees C. The sketch turns it into text with one decimal:

String temperature() {
  return String(analogReadTemp(), 1) + " C";
}

In Proteus the chip sits at about 27 C with a slow wobble of a few tenths - so the value changes a little from read to read, as on a real board.

The JSON for the Laptop

/json sends the same data in a form a program can read - the temperature, the LED, the BOOTSEL count and the uptime:

void sendJson() {
  String json = "{\"board\":\"Pico W\",\"temperature\":" + String(analogReadTemp(), 1) + ",\"led\":" + (ledOn ? "true" : "false") +
                ",\"bootsel\":" + presses + ",\"uptime\":" + (millis() / 1000) + "}";
  server.send(200, "application/json", json);
}

In the laptop, open the Browser and press Go:

Laptop WiFi Monitor browser in Proteus: the Pico W JSON at picow.local
Figure: The laptop on http://picow.local/json: HTTP 200.
{"board":"Pico W","temperature":27.5,"led":true,"bootsel":0,"uptime":5}

A JSON line like this is how a Pico W usually reports to a dashboard, a Python script or a home-automation server. The laptop shows the raw answer, so you can check every field before you write the program that reads it.

LED Buttons on the Phone

The main page shows the temperature, the LED and the BOOTSEL count, with three links. setLed() switches the LED and logs who did it:

void sendPage() {
  String html = F("<html><head><title>Pico W Thermometer</title></head><body><h1>Pico W Thermometer</h1><p>RP2040 temperature <b>");
  html += temperature();
  html += "</b></p><p>LED " + String(ledOn ? "ON" : "OFF") + " - BOOTSEL pressed " + presses + " times</p>";
  html += F("<p><a href=\"/led/on\">LED ON</a> <a href=\"/led/off\">LED OFF</a> <a href=\"/json\">JSON</a></p></body></html>");
  server.send(200, "text/html", html);
}
void setLed(bool on, const char *by) {
  ledOn = on;
  digitalWrite(LED_BUILTIN, on ? HIGH : LOW);
  Serial.printf("LED %s by %s\n", on ? "ON" : "OFF", by);
}

In the phone, open the Browser and press Go - http://picow.local/:

Mobile WiFi Monitor browser in Proteus: the Pico W thermometer page
Figure: The phone on http://picow.local/: the RP2040 temperature, the LED, the BOOTSEL count and the LED ON, LED OFF and JSON buttons.

BOOTSEL as a User Button

On a Pico W the BOOTSEL button can be read while a sketch runs - BOOTSEL is true while it is held. The sketch checks it every 20 ms (a simple debounce) and toggles the LED on each new press:

void checkBootsel() {
  if (millis() - lastCheck < 20) return;
  lastCheck = millis();
  bool pressed = BOOTSEL;
  if (pressed && !wasPressed) {
    presses++;
    Serial.printf("BOOTSEL pressed (%d)\n", presses);
    setLed(!ledOn, "BOOTSEL");
  }
  wasPressed = pressed;
}

Press BOOTSEL on the board with the mouse, or click BOOTSEL in the monitor's Board tab - a short press of 0.3 s of simulation. We used the Board tab:

Raspberry Pi Pico W serial monitor Board tab in Proteus: the RUN and BOOTSEL keys
Figure: The Board tab: RUN (reset) and BOOTSEL side by side; the LED off after the press.
Raspberry Pi Pico W in Proteus: BOOTSEL pressed, the LED off
Figure: BOOTSEL pressed: the sketch toggled the LED off.

Then we tapped LED ON on the phone:

Mobile WiFi Monitor in Proteus: LED ON tapped on the Pico W page
Figure: After LED ON: the page reports the LED on and BOOTSEL pressed 1 times.
Raspberry Pi Pico W in Proteus: the LED lit from the phone
Figure: The LED lit again, the antenna orange while the answer goes out.

The Serial Monitor Commands

The monitor takes TEMP, LED ON, LED OFF, STATUS and HELP:

void command(String cmd) {
  cmd.trim();
  cmd.toUpperCase();
  if (cmd == "TEMP") Serial.println("RP2040 temperature " + temperature());
  else if (cmd == "LED ON") setLed(true, "monitor");
  else if (cmd == "LED OFF") setLed(false, "monitor");
  else if (cmd == "STATUS") Serial.println(status());
  else Serial.println("Commands: TEMP, LED ON, LED OFF, STATUS, HELP");
}
String status() {
  return "Temperature " + temperature() + ", LED " + (ledOn ? "ON" : "OFF") + ", BOOTSEL pressed " + presses + " times, up " +
         (millis() / 1000) + " s";
}
Raspberry Pi Pico W serial monitor in Proteus: BOOTSEL, TEMP, STATUS and HELP
Figure: The monitor: the BOOTSEL press, LED ON from the page, then TEMP, STATUS and HELP typed here.
BOOTSEL pressed (1)
LED OFF by BOOTSEL
LED ON by page
TEMP
RP2040 temperature 27.8 C
STATUS
Temperature 27.8 C, LED ON, BOOTSEL pressed 1 times, up 12 s
HELP
Commands: TEMP, LED ON, LED OFF, STATUS, HELP

The laptop's JSON now counts the press:

Laptop WiFi Monitor in Proteus: the Pico W JSON after BOOTSEL
Figure: The JSON again: "bootsel":1.
{"board":"Pico W","temperature":27.5,"led":true,"bootsel":1,"uptime":16}

loop() serves the pages, keeps mDNS alive, reads BOOTSEL and the monitor - none of them waits for the others:

void loop() {
  server.handleClient();
  MDNS.update();
  checkBootsel();
  readMonitor();
}

And the whole demo after the run:

Raspberry Pi Pico W Proteus simulation running with the Laptop WiFi Monitor and the Mobile WiFi Monitor
Figure: The demo running: the phone with the thermometer page, U1 with the LED lit, the laptop with its JSON.

The Pico W Panel

The panel opens at Run, in the look of our TEP Serial Monitor Advance for Proteus - our own TEP header, no Windows title bar. Its Wi-Fi page has a small phone and three cards: BOARD, WI-FI and TRAFFIC. OPEN PICO PAGE opens the sketch's page on the panel's phone:

Raspberry Pi Pico W panel in Proteus: the thermometer page on the panel phone, the BOARD, WI-FI and TRAFFIC cards
Figure: The Wi-Fi page: RP2040 + CYW43439 with the sketch on the hidden ATmega2560, MAC 28:CD:C1:01:00:01, picow.local, joined in 2.18 s; the traffic: the phone's and the laptop's requests.

The Pins page shows every pin live:

Raspberry Pi Pico W panel in Proteus: the Pins page
Figure: The Pins page: GP0 to GP22, GP26 to GP28 and the LED.

The monitor's Board tab shows the PWR and LED, the RUN and BOOTSEL keys and every pin:

Raspberry Pi Pico W serial monitor Board tab in Proteus: the LEDs, RUN, BOOTSEL and the pins
Figure: The Board tab: PWR and LED (LED_BUILTIN), RUN (reset) and BOOTSEL, the digital pins and GP26 to GP28.

Pins of the Raspberry Pi Pico W

The Proteus pins of the Raspberry Pi Pico W
PinNumberWhat it does in the simulation
GP0 / GP10, 1Serial1 TX / RX (UART0), GPIO, interrupt
GP2 to GP222 to 22GPIO, interrupt, PWM
GP4 / GP54, 5also Wire SDA / SCL (I2C0)
GP16 to GP1916 to 19also SPI MISO / CS / SCK / MOSI (SPI0)
GP26 to GP2826 to 28 (A0 to A2)analogRead 0 to 1023 for 0 to 3.3 V; also GPIO
LEDLED_BUILTINthe LED (32 here, 64 in arduino-pico)
3V3, VBUS3.3 V logic supply, 5 V from USB
GND, AGND, RUNground; RUN is the reset
VSYS, 3V3_EN, VREFdrawn, not modelled

Serial is the USB - the board's monitor - and Serial1 is on GP0 / GP1. All pins are 3.3 V logic. Write LED_BUILTIN rather than a number, so the sketch is right on both the real board and the simulation.

Properties of the Raspberry Pi Pico W

Double-click the board to change them; every run starts again from the properties
PropertyWhat it does
PROGRAMthe sketch's HEX (Export Compiled Binary with the board Raspberry Pi Pico W (TEP Proteus))
WIFISSID / WIFIPASSthe router in range (TEP-WiFi / 12345678)
MONITORYES = the built-in serial monitor on the USB (Serial)
BAUDthe monitor's speed (115200, or AUTO)
AUTOOPENYES = the monitor opens at Run (the demos: YES)
TIMEthe clock NTP gives the sketch: PC, or a start time in UTC

The IP address follows the part's number: U1 gets 192.168.1.101, U2 .102 and so on. Use one Pico W per design: its USB serial and LED lines are hidden pins, and Proteus joins hidden pins of the same name across parts.

Troubleshooting

  • Nothing happens at Run: the HEX was not built with our board package - choose Raspberry Pi Pico W (TEP Proteus) and export it again.
  • "LEAmDNS.h: No such file" or "BOOTSEL was not declared": an older copy of the board package is installed - 1.13.0 adds the Pico W.
  • setup1() / loop1() never run: the second core is not modelled - put the work in loop().
  • digitalWrite(64, ...) does nothing: use LED_BUILTIN.
  • The board does not join: the network name or password differs from WIFISSID / WIFIPASS, or the panel's WI-FI SIGNAL is OUT OF RANGE.
  • A number goes wrong above 32767: an int is 16 bits on the hidden AVR (32 on the RP2040) - use long.

Writing Your Own Pico W Sketch

Start from the demo: it already has the join, mDNS, the web server and the monitor commands. Keep loop() free of long delay() calls, so the web server, mDNS and BOOTSEL stay responsive, and add your sensor the same way the temperature is read - a small function that returns text or a number:

  1. Wire the sensor to the GP pins in Proteus - an analog sensor on GP26 to GP28, an I2C sensor on GP4 / GP5.
  2. Read it in a function and add the value to sendPage() and sendJson().
  3. Export the HEX with the board Raspberry Pi Pico W (TEP Proteus), set it as the Program File and press Run.
  4. Open the page on the phone and the JSON on the laptop, and compare the values with the monitor.

When it works in Proteus, choose the real Raspberry Pi Pico W in the Arduino IDE and upload the same sketch.

Things to Know Before Using a Real Pico W

  • The board package: install Earle Philhower's "Raspberry Pi Pico/RP2040" package and choose Raspberry Pi Pico W.
  • Uploading: the first time, hold BOOTSEL while plugging in the USB - the Pico appears as a drive and the IDE uploads a UF2 file to it.
  • 3.3 V only: the pins are not 5 V tolerant.
  • BOOTSEL in a sketch: reading it briefly stops the flash, so read it every few milliseconds, as the demo does, not in a tight loop.
  • Our ESP32 boards: the same WiFi and WebServer names run there too - see our ESP32 DevKit V1 Library for Proteus - and the Arduino Nano 33 IoT Library for Proteus shows UDP between a board and our laptop.

Limitations of the Simulation

  • The board runs your sketch on a hidden ATmega2560 at 16 MHz with 8 KB of RAM - not on the RP2040. Big buffers that fit in its 264 KB may not fit here, and an int is 16 bits.
  • Not modelled: the second core, PIO, Serial2, the rp2040 calls, Bluetooth, the soft AP, real TLS, VSYS / 3V3_EN / VREF, the radio itself - the join and network times are realistic values, not a radio simulation. MicroPython is not possible.
  • The red PWR LED, the antenna colours, the PANEL pad, the panel, its phone, the router, the internet host and the two monitors are TEP additions; the MAC address is a TEP address.
  • Raspberry Pi, Pico and RP2040 are trademarks of Raspberry Pi Ltd, CYW43439 a name of Infineon Technologies; this library is not made or endorsed by them or by Labcenter.
  • Tested in Proteus 8.5 in October 2026 (the demos as shipped, the Pico W, the laptop and the phone together at about 0.4 x real time on our PC). Proteus 7 is not supported.

So, that was all about the Raspberry Pi Pico W Library for Proteus. I hope it lets you try the Pico W's Wi-Fi with the arduino-pico core before the real board is on your desk - web pages, JSON, BOOTSEL, sensors - with the same sketch that runs on the hardware. If you use the Raspberry Pi Pico W Library for Proteus in a project, please share it in the comments or in our forum, and if you have any questions, ask in the comments and I will help you out. Till the next tutorial, take care and have fun!


Comments

0

Join the conversation