Skip to content

Version 3.2.0 breaks old libraries (Arduino PS4Controller) #11262

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Closed
1 task done
mnemocron opened this issue Apr 19, 2025 · 3 comments
Closed
1 task done

Version 3.2.0 breaks old libraries (Arduino PS4Controller) #11262

mnemocron opened this issue Apr 19, 2025 · 3 comments
Labels
Status: Awaiting triage Issue is waiting for triage

Comments

@mnemocron
Copy link

mnemocron commented Apr 19, 2025

Board

AI Thinker ESP32-CAM

Device Description

ESP32-S

Hardware Configuration

Version

v3.2.0

IDE Name

Arduino 3.2.6

Operating System

Windows 10

Flash frequency

PSRAM enabled

yes

Upload speed

Description

Arduino Sketches using the PS4_Controller library compile ok with ESP32 version 3.1.3. When using 3.2.0 the compilation process generates errors while compiling the library.

Sketch

// based on Examples > PS4Controller > PS4ReceiveData.ino
#include <PS4Controller.h>

void setup() {
  Serial.begin(115200);
  PS4.begin("11:22:33:AA:BB:CC");  // <-- explicitly setting a custom MAC
  Serial.println("Ready.");
}

void loop() {
  // Below has all accessible outputs from the controller
  if (PS4.isConnected()) {
    if (PS4.Right()) Serial.println("Right Button");
    // etc...
  }
}

Debug Message

c:\Users\<user>\Documents\Arduino\libraries\PS4Controller\src\ps4.c: In function 'ps4Deinit':
c:\Users\<user>\Documents\Arduino\libraries\PS4Controller\src\ps4.c:59:5: error: implicit declaration of function 'spp_deinit'; did you mean 'sppInit'? [-Wimplicit-function-declaration]
59 | spp_deinit();
| ^~~~~~~~~~
| sppInit
c:\Users\<user>\Documents\Arduino\libraries\PS4Controller\src\ps4.c: In function 'ps4SetBluetoothMacAddress':
c:\Users\<user>\Documents\Arduino\libraries\PS4Controller\src\ps4.c:244:3: error: implicit declaration of function 'esp_base_mac_addr_set' [-Wimplicit-function-declaration]
244 | esp_base_mac_addr_set(baseMac);
| ^~~~~~~~~~~~~~~~~~~~~
exit status 1

Compilation error: exit status 1

Other Steps to Reproduce

  • compiles with version 3.1.3
  • fails with version 3.2.0

see also discussion here: https://forum.arduino.cc/t/compilar-library-ps4-controler/1373660

I have checked existing issues, online documentation and the Troubleshooting Guide

  • I confirm I have checked existing issues, online documentation and Troubleshooting guide.
@mnemocron mnemocron added the Status: Awaiting triage Issue is waiting for triage label Apr 19, 2025
@schneeer
Copy link

Willkommen im Club.

#11259

@lbernstone
Copy link
Contributor

The upstream APIs can change in major/minor releases. You will need to have the library author update their code to match.

@me-no-dev
Copy link
Member

This is not connected to Arduino, but rather changes in APIs in ESP-IDF v5.4. External libraries that use ESP-IDF APIs would need to be updated in order to continue to function.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Status: Awaiting triage Issue is waiting for triage
Projects
None yet
Development

No branches or pull requests

4 participants