Setting up USB device on ESP32-S3

Hi there, I’m attempting to use an ESP32-S3 board as device, the exact board I’m using being esp32-s3-devkitc-1-N8R2. What I want to do is to use it as a composite USB device, combining keyboard and CDC ; the cdc serial port being used to configure macros on the keyboard through a software on the computer.
I have managed to make it work as a keyboard, but I can’t seem to be able to configure the CDC as I wish. Since to detect the right USB device to communicate to, I have to scan for the right VID/PID but I can’t change this. Here is the code I am working with (which is a simplified code taken from the ESP32 github) :

#include <Arduino.h>
#include "USB.h"
#include "USBCDC.h"
#define HWSerial Serial0
#define USBSerial Serial

void setup() {

void loop() {
    size_t l = HWSerial.available();
    uint8_t b[l];
    l =, l);
    USBSerial.write(b, l);

The serial works correctly, I can write things on the hardware serial and see the bytes coming on the usb serial just right. The only issue here is that the USB descriptor is kept as the original one on my device manager. The VID, PID, Product Name and Manufacturer Name that are debugged to USBSerial are the default ones, though I should have changed them in setup.
And, if I understood everything correctly, I have to unset the flag ARDUINO_USB_MODE and set ARDUINO_USB_CDC_ON_BOOT on the build flags, so here is the platformio.ini file :

; PlatformIO Project Configuration File
;   Build options: build flags, source filter
;   Upload options: custom upload port, speed and extra flags
;   Library options: dependencies, extra library storages
;   Advanced options: extra scripting
; Please visit documentation for the other options and examples

platform = espressif32
board = esp32-s3-devkitc-1

; change microcontroller
board_build.mcu = esp32s3

; change MCU frequency
board_build.f_cpu = 240000000L

build_unflags = -D ARDUINO_USB_MODE
build_flags = -D ARDUINO_USB_CDC_ON_BOOT=1

framework = arduino
monitor_port = COM7
upload_port = COM7
monitor_speed = 115200
monitor_rts = 0
monitor_dtr = 0

Has anyone been able to perform this ? Or is the hardware simply not supporting changing the USB descriptor ?