ESP-NOW encrypt with ESP32 peer (Arduino 3.x): silent no-recv on SoftAP ESP8266
- Dominant language
- C++
- Stars
- 16.7k
- Forks
- 13.1k
- PR merge metrics
- No merged PRs in 30d
Description
## Summary
Encrypted **ESP-NOW between ESP32 (Arduino-ESP32 3.x) and ESP8266 SoftAP** fails silently (no recv on 8266) even with **matching PMK/LMK**, same channel, and STA joined SoftAP. **Unencrypted peers work** on the same setup.
Full write-up + repro sketch shapes:
**https://github.com/espressif/arduino-esp32/issues/12796**
### ESP8266 side (fail)
```cpp
esp_now_set_kok((u8*)PMK, 16);
esp_now_add_peer(tail_mac, ESP_NOW_ROLE_COMBO, 2, (u8*)LMK, 16);
// recv_cb never called for encrypted frames from ESP32
```
### Workaround
```cpp
esp_now_add_peer(tail_mac, ESP_NOW_ROLE_COMBO, 2, NULL, 0); // no encrypt
```
### Also document please
ESP8266 **SoftAP MAC ≠ STA MAC** (`WiFi.softAPmacAddress()` / client `WiFi.BSSID()` vs `WiFi.macAddress()`). Wrong peer MAC also looks like “ESP-NOW ready but dead.”
Asking: is encrypted ESP-NOW ESP32↔ESP8266 supported? If not, docs would save a lot of bench time.
Field notes: https://github.com/tmdrake/DRAKE_2_0_TAIL/blob/main/docs/ESPNOW_ENCRYPT_CROSS_CHIP_ISSUE.md
Contributor guide
No contributing guide indexed for this repository
Assessment
This issue has not been assessed yet.