🛠 Se connecter au Wi-Fi 2,4 GHz avec le CYW43

Raspberry Pi Pico 2 W · intermediaire · Schéma : IMG-pico-2-w-intermediaire-4-pico2w-connexion-wifi.svg — Pico 2 W associée à une borne Wi-Fi 2,4 GHz, routeur 5 GHz barré, LED de la radio et adresse IP affichée en console.

Objectifs

Premier pas sans-fil de la Pico 2 W : initialiser la puce Infineon CYW43439 (Wi-Fi 4, 2,4 GHz uniquement, WPA3 accepte), rejoindre un réseau en mode station, récupérer l'adresse IP par DHCP et la lire depuis le programme. C'est la base commune a tous les tutoriels réseau de cette carte.

Matériel

Code complet

// main.c - lien : pico_stdlib pico_cyw43_arch_lwip_threadbackground
#include "pico/stdlib.h"
#include "pico/cyw43_arch.h"
#include "lwip/ip4_addr.h"
#include "lwip/netif.h"

#define WIFI_SSID "mon_ssid"
#define WIFI_PASS "mon_mot_de_passe"

int main(void) {
    stdio_init_all;
    if (cyw43_arch_init) { printf("cyw43 init failed\n"); return 1; }
    cyw43_arch_enable_sta_mode;
    if (cyw43_arch_wifi_connect_timeout_ms(
            WIFI_SSID, WIFI_PASS, CYW43_AUTH_WPA2_AES_PSK, 30000)) {
        printf("connexion Wi-Fi echouee\n");
        return 1;
    }
    printf("IP : %s\n", ip4addr_ntoa(netif_ip4_addr(netif_default)));
    while (true) { sleep_ms(1000); }  // lwIP tourne dans le thread cyw43
}

Equivalent MicroPython : import network; wlan = network.WLAN; wlan.active(True); wlan.connect('ssid', 'pass') puis wlan.ipconfig('addr4').

Vérification attendue

La console affiche l'adresse IP obtenue (typiquement 192.168.x.x) après quelques secondes ; la carte est pingable depuis le réseau local. En MicroPython, wlan.isconnected renvoie True.

Erreurs fréquentes

Autres tutoriels pour cette carte

Exemples de code pour cette carte

← Retour à la fiche 🛠 Tous les tutoriels