RP2040 BSSID reporting incorrect MAC address after connection

Hi everyone,

I have discovered a significant discrepancy in how the RP2040 platform (Pico W) reports BSSID information compared to ESP32/ESP8266. While the device initially connects to the correct Access Point, the BSSID reported by sensors shortly after boot is incorrect and appears to be random.

The Problem

At the moment of connection, the ESPHome logger correctly identifies the BSSID of my AP. However, once the system is fully booted and the wifi_info or text_sensor components try to read the BSSID, they receive a completely different MAC address.

Evidence from Logs

I am running ESPHome 2026.2.2.

1. Initial Discovery (Correct): [09:10:50.569][C][wifi:1213]: BSSID: 98:25:4A:C9:F3:16 (This matches my actual WiFi AP)

2. Sensor Update (Incorrect): [09:11:37.843][D][text_sensor:113]: 'rp2040test AP Locatie Combi' >> 'Onbekend AP - 04:1E:04:20:B0:28'

Key Observation: Unique “Fake” Addresses

I have tested this on multiple RP2040 devices. Each device reports a different incorrect address, suggesting this isn’t a static fallback but a memory pointer issue:

  • Device 1: reports 04:1E:04:20:B0:28
  • Device 2: reports D4:1C:04:20:E0:2E

Neither of these addresses exist on my network.

Configuration Used

substitutions:
  devicename: rp2040test

esphome:
  name: rp2040test
  friendly_name: rp2040test

rp2040:
  board: rpipicow

................


text_sensor:
  - platform: wifi_info
    bssid:
      name: "Connected BSSID"
      id: bssidmac
      on_value:
        then:
          - component.update: bssidname
    mac_address:
      name: "Mac Wifi Address"

Has anyone else noticed this on their Pico W builds?