Skip to content

WebRTC connection fails with "STUN: Fingerprint does not match" after initial successful connection on ESP32-P4 (IDFGH-16491) #96

@EvanSeliner

Description

@EvanSeliner

Answers checklist.

  • I have read the documentation ESP-IDF Programming Guide and the issue is not addressed there.
  • I have updated my IDF branch (master or release) to the latest version and checked that the issue is present there.
  • I have searched the issue tracker for a similar issue and not found a similar issue.

General issue report

Description:
I am developing a WebRTC application on the ESP32-P4 using ESP-IDF v5.5.1. After successfully resolving an
initial "Invalid SDP line" error by correcting the a=fmtp line in the SDP answer, I am now facing a new
issue.

The WebRTC connection is established successfully, and the webrtc-internals page shows
setRemoteDescriptionOnSuccess. However, the connection is not stable and fails shortly after.

The device log shows repeated "STUN: Fingerprint does not match" errors after the peer connection is
established. This is followed by "AGENT: 1 Not found for bind remote" errors, and the ICE connection
eventually fails.

Steps to Reproduce:

  1. Flash the attached project to an ESP32-P4 board.
  2. Connect to the device's web server from a browser (Chrome or Firefox).
  3. Initiate a WebRTC connection.
  4. Observe the device logs and the webrtc-internals page in the browser.

Expected Behavior:
A stable WebRTC connection should be established and maintained.

Actual Behavior:
The WebRTC connection is established for a short period and then fails. The device log shows "STUN:
Fingerprint does not match" errors after the connection is established.

Logs and Dumps:

  • Device logs (please attach the full log from your last test)
  • webrtc-internals dump (please attach the full dump from your last test)
  • sdkconfig file (I can provide the content of this file for you)
  • main/webrtc_shim.c file (I can provide the content of this file for you)

Additional Information:

  • The issue seems to be related to the esp_peer component, as the "STUN: Fingerprint does not match" error
    appears after the initial connection is successful, suggesting a problem with handling subsequent STUN
    messages or keepalives.
  • The project uses the esp-webrtc solution from Espressif.

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions