Lerne, wie man den Raspberry Pi Pico W5 mit der Arduino-IDE programmiert. Der Raspberry Pi RP2350 Pico W5 von Elecrow ist ein Entwicklungsboard mit dem RP2350-Mikrocontroller (150 MHz ARM Cortex, Dual-Core), 24 GPIO-Pins, Bluetooth 5.0 sowie 2,4-GHz- oder 5-GHz-Dualband-WLAN. Mit diesen technischen Daten richtet sich das Board an IoT-Anwendungen mit höherem Rechen- und Netzwerkbedarf.
In diesem Tutorial lernst du, wie du mit diesem Board startest.
Benötigte Teile
Du benötigst das Raspberry Pi RP2350 Pico W5. Und wenn du externe Hardware anschließen möchtest, um die GPIO-Ports zu testen, sind einige Kabel, Widerstände, LEDs und ein Breadboard sehr hilfreich.

Raspberry Pi RP2350 Pico W5

USB-C-Kabel

Dupont-Kabel-Set

Breadboard

Widerstands- & LED-Kit
Makerguides is a participant in affiliate advertising programs designed to provide a means for sites to earn advertising fees by linking to Amazon, AliExpress, Elecrow, and other sites. As an Affiliate we may earn from qualifying purchases.
Eigenschaften des Raspberry Pi Pico W5 Boards
Der Pico W5 ist ein Mikrocontroller basierend auf dem Raspberry Pi Pico W Design. Er verwendet denselben RP2350 Mikrocontroller-Chip mit bis zu 150 MHz und einem ARM Cortex M0+ Dual-Core Prozessor.
Allerdings wurde er hinsichtlich USB-Schnittstelle, Flash-Kapazität und Bluetooth-kompatibler Leistung verbessert. Am wichtigsten ist, dass das Board 2,4 GHz oder 5 GHz Dual-Band Betrieb unterstützt.nsowie energiesparendes Bluetooth und Bluetooth 5.0.
Das folgende Bild zeigt die Ober- und Unterseite des Boards. Der USB-C-Anschluss und die 2,4- und 5-GHz-Antennen sind gut erkennbar.

Das Board verfügt über einen RESET- und einen BOOT-Knopf sowie eine eingebaute LED neben dem BOOT-Knopf.
Technische Daten
Die folgende Tabelle listet die wichtigsten technischen Details des Boards auf:

Pinbelegung des Pico W5 Boards
Das Bild unten zeigt die Pinbelegung des Pico W5 Boards. Es gibt 24 GPIO-Pins mit PWM, zwei I2C-Schnittstellen und vier Analog-Digital-Wandler (ADC). Die eingebaute LED ist an GPIO 25 angeschlossen. Beachte, dass das Board einen USB Typ-C Anschluss zur Stromversorgung nutzt und mit 3,3 V läuft.

Installation des RP2350 Cores
Bevor du den Pico W5 programmieren kannst, musst du zuerst den RP2350 Core installieren. Gehe zu File -> Preferences und öffne den Preferences-Dialog

Im Preferences-Dialog gehe zum SettingsTab. Unten siehst du „Additional boards manager URLs:“. Klicke auf den Button rechts daneben (gelb markiert), um den URL-Editor zu öffnen.

Füge im URL-Editor die folgende URL zur Liste hinzu (unten gelb markiert):
„https://github.com/earlephilhower/arduino-pico/releases/download/global/package_rp2040_index.json“

Das package_rp2040_index unterstützt den RP2040 und den RP2350 Chip. Wie du siehst, habe ich auch die ESP8266 und ESP32 Cores installiert, aber für dieses Tutorial brauchst du nur den RP2350 Core.
Installation der RP2350 Boards
Als nächstes müssen wir die RP2350 Boards installieren. Gehe zu Tools -> Board -> Board Manager und suche nach RP2350 mit der Suchleiste. Installiere das Raspberry Pi Pico/RP2040/RP2350 Board von Earle F. Philhower.Nach der Installation sollte es so aussehen.

Wähle das Raspberry Pi Pico 2 Board
Sobald die Installation des RP2350 Cores abgeschlossen ist, verbinde den Pico W5 mit dem USB-Port deines Computers. Gehe dann zum Board Manager und wähle das „Raspberry Pi Pico 2 Board“ wie unten gezeigt aus:

Das Board sollte von der Arduino IDE erkannt werden und du solltest sehen, dass es über USB an einen COM-Port angeschlossen ist (siehe Screenshot oben). Jetzt sind wir bereit, den Pico W5 zu programmieren.
Blink-Programm für den Pico W5
Beginnen wir mit dem typischen Blink-Programm. Es lässt die eingebaute LED des Boards jede Sekunde blinken:
void setup() {
pinMode(LED_BUILTIN, OUTPUT);
}
void loop() {
digitalWrite(LED_BUILTIN, HIGH);
delay(1000);
digitalWrite(LED_BUILTIN, LOW);
delay(1000);
}
Klicke auf den Upload-Button der Arduino IDE und der Code sollte hochgeladen werden. Wenn erfolgreich, beginnt die eingebaute LED zu blinken.
Wenn der Upload fehlschlägt, musst du möglicherweise den BOOT-Knopf vor oder während des Uploads drücken (und/oder gedrückt halten). Das sollte nur einmal nötig sein, da der arduino-pico Core auto-reset Unterstützung bietet. Ich hatte generell keine Probleme, das Board zu flashen.
Testen der GPIOs des Pico W5
Um die GPIOs und PWM des Pico W5 auszuprobieren, habe ich eine LED mit einem 220Ω Widerstand an GPIO 9 und GND angeschlossen. Siehe Schaltung unten:

Das folgende kleine Testprogramm dimmt die LED hoch und runter und funktionierte einwandfrei:
#define LED 9
void setup() {
pinMode(LED , OUTPUT);
}
void loop() {
for (int b = 0; b <= 255; b++) {
analogWrite(LED , b);
delay(5);
}
for (int b = 255; b >= 0; b--) {
analogWrite(LED , b);
delay(5);
}
}
Testen des 5 GHz Wi-Fi des Pico W5
Eine der Hauptfunktionen des Pico W5 Boards ist die Unterstützung von 5 GHz Wi-Fi. Ich habe den üblichen Wi-Fi Code ausprobiert, konnte ihn aber nicht zum Laufen bringen. Wahrscheinlich, weil das Pico W5 Board von Elecrow noch nicht auf der Liste der unterstützten Boards des Raspberry Pi Pico Arduino core ist.
Ich habe jedoch ein Beispiel im Beispiel code für das Pico W5 Board gefunden, und das funktionierte. Unten ist eine leicht modifizierte Version dieses Demo-Codes.
#define Serial2_RX 5
#define Serial2_TX 4
#define SET_WIFI_MODE "AT+WMODE=3,1"
#define SET_WIFI_SSID_PASSWORD "AT+WJAP=\"SSID\",\"PWD\""
void setup() {
Serial.begin(115200);
Serial2.setRX(Serial2_RX);
Serial2.setTX(Serial2_TX);
Serial2.begin(115200);
delay(1000);
UART2_test();
}
void UART2_test() {
clear_serial();
bool ok_flag = false;
Serial2.println(SET_WIFI_MODE);
while (!ok_flag) {
if (Serial2.find("OK")) {
delay(1000);
ok_flag = true;
Serial.println("Set WIFI Mode Ok!");
}
}
clear_serial();
ok_flag = 0;
Serial2.println(SET_WIFI_SSID_PASSWORD);
while (!ok_flag) {
if (Serial2.find("OK")) {
delay(1000);
ok_flag = true;
Serial.println("WIFI Connected!");
}
}
}
void clear_serial() {
while (Serial2.read() >= 0);
while (Serial.read() >= 0);
}
void loop() {
}
Du musst die SSID- und PWD-Werte mit den Zugangsdaten deines Wi-Fi Netzwerks ersetzen.
Fazit
Hoffentlich war dieses Tutorial hilfreich, um mit dem Pico W5 Board von Elecrow zu starten. Der RP2350 Prozessor des Pico W5 ist eine deutliche Verbesserung gegenüber dem RP2040, aber aktuell (März 2025) ist die Softwareunterstützung noch etwas eingeschränkt.
Insbesondere ist das Pico W5 Board noch nicht auf der Liste der unterstützten Boards des Raspberry Pi Pico Arduino core. Einfache Anwendungen wie GPIO funktionieren, aber ich konnte die Wi-Fi- oder Bluetooth-Bibliotheken mit dem Pico W5 nicht zum Laufen bringen.
Beachte auch, dass das demo code für den Pico W5 Fehler enthält oder offenbar auf eine ältere/andere Version des Pico W5 Boards abzielt, die den RP2040 statt des RP2350 verwendet. Zum Beispiel nutzt das Blink-Programm im Demo-Code GPIO 12 (oder 16) für die eingebaute LED, tatsächlich ist es aber GPIO 25. Auch die Installationsanleitung zeigt das Raspberry Pi Pico/RP2040 Board, aber bei mir funktionierte nur das Raspberry Pi Pico 2 Board.
Schließlich gibt es mehrere verschiedene Pico Boards, was verwirrend sein kann. Zum Beispiel gibt es das Pico W5 and the Pico 2W, und der Pico W5 kann mit einem RP2350 oder einem RP2040 Mikrocontroller-Chip kommen.
Übrigens, wenn du einen Pico mit Display verwenden möchtest, schau dir unser Scribble on CrowPanel Pico 4.3″ Display Tutorial an.
Viel Spaß beim Basteln ; )
Links
Hier sind einige Links, die ich beim Schreiben dieses Artikels nützlich fand:
- Product Page
- Demo Code
- PICO W5 Tutorial
- Arduino-Pico Documentation
- Arduino-Pico Library
- Schematic & PCB
- Datasheet for RP2350
- Datasheet for BW16
- RP2350 versus RP2040
- Pico W5 versus Pico 2W
Schaltpläne
Die folgenden Bilder sind Ausschnitte aus dem Schaltplan des Pico W5 Boards mit dem RP2350 Mikrocontroller von folgendem Link: Schematic & PCB.
Mikrocontroller

Wi-Fi und Bluetooth

Eingebaute LED

Stromversorgung


