Simuler clavier Azerty sur ESP32 S2/S3

Bonjour,

Je suis nouveau dans le monde d'Arduino (et des microcontrôleurs). J'ai un ESP32-S3-WROOM depuis peu.
J'essaie de le faire simuler un clavier, cela fonctionne avec le code d'exemple simplifié ci-dessous mais le texte envoyé est en Azerty.

#include "USB.h"
#include "USBHIDKeyboard.h"
USBHIDKeyboard Keyboard;

int counter = 0;

void setup() {
  // initialize control over the keyboard:
  Keyboard.begin();
  USB.begin();
}

void loop() {
    Keyboard.print("test d'affichage n° ");
    Keyboard.println(counter);
    delay(500);
    counter++;
}

Résultat:

test dùqffichqge n é
test dùqffichqge n "
test dùqffichqge n '
test dùqffichqge n (
test dùqffichqge n -
test dùqffichqge n è
test dùqffichqge n _
test dùqffichqge n ç
test dùqffichqge n &à
...

J'ai essayé les 2 bibliothèques suivantes afin d'avoir du texte qui sort en Azerty :
KeyboardAzertyFr ; keyboardex

Cependant, à chaque fois j'ai le message d'erreur suivant :

fatal error: HID.h: No such file or directory

Si je comprends bien, d'après ce message, ces bibliothèques s’appuient sur HID.h, qui n'existe pas pour les ESP32 S2 et S3.

Savez-vous s'il existe un autre moyen de sortir du texte en Azerty sur ces microcontrôleurs ? Ou de remplacer les appels à HID.h par un autre appel ?
Je suppose que je ne suis pas le premier à utiliser un ESP32 S2/S3 et à vouloir simuler un clavier Azerty :slight_smile:

Bonne journée

Bonjour,

Je serai également intéressé si vous avez un retour sur votre problème.

Merci.

C'est bizarre, c'est comme si les chiffres étaient remplacés par les touches du clavier sans le Shift. Sur le clavier :

  • & = 1
  • é = 2
  • " = 3
  • etc.

avec un décalage de 2.

J'essaie de contourner en listant à la main tous les codes présents dans la _asciimap contenus dans le fichier arduino-esp32/libraries/USB/src/USBHIDKeyboard.cpp at master · espressif/arduino-esp32 · GitHub

Mais ca ne passe toujours pas...

Au cas où vous n'y auriez pas pensé, j'ai posé la question à l'IA et voilà sa réponse...

1 Like

This topic was automatically closed 180 days after the last reply. New replies are no longer allowed.