Skip to content

restore ESPNow to some functionality#11075

Merged
tannewt merged 1 commit into
adafruit:mainfrom
dhalbert:restore-espnow-functionality
Jun 29, 2026
Merged

restore ESPNow to some functionality#11075
tannewt merged 1 commit into
adafruit:mainfrom
dhalbert:restore-espnow-functionality

Conversation

@dhalbert

@dhalbert dhalbert commented Jun 27, 2026

Copy link
Copy Markdown
Collaborator

ESPNow was broken on ESP32-S3 as of the ESP-IDF v6.0.1 upgrade, and was failing on other boards earlier.

This restores it to working at least to some extent.

The new way to set the phy_rate is with esp_now_set_peer_rate_config(). However, this function is poorly documented (I opened espressif/esp-idf#18766), and the settings for the passed struct are not documented.

To fix this for now, I just commented out the ability to set the phy_rate, leaving it at the default 1Mbps. I added documentation to point out setting the phy_rate does nothing for now.

Also note that esp_now_set_peer_rate_config() should be called after esp_now_init(). It was being called before.

I tested with an ESP32-S3 broadcasting and and ESP32-C6 receiving, using the example code in https://learn.adafruit.com/esp-now-in-circuitpython/code-esp-now.

@todbot for interest.

@dhalbert dhalbert force-pushed the restore-espnow-functionality branch from 68dcf5f to a1e9594 Compare June 27, 2026 01:23
@dhalbert dhalbert requested a review from tannewt June 27, 2026 03:12

@tannewt tannewt left a comment

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Thank you!

@tannewt tannewt merged commit daa9df8 into adafruit:main Jun 29, 2026
260 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

ESPNow fails to initialize on ESP32 C6

2 participants