romu-hid-custom-keyboard.ino

Carte de développement USB compacte Bitmerse Romu (RP2354A) · Fichier : romu-hid-custom-keyboard.ino · Langage : C++ (Arduino) · Usage : Créer un pavé macro USB HID personnalisé utilisant les boutons physiques de la carte Romu.

Exemple de base pour détecter les appuis sur les boutons internes et allumer la LED, point de départ pour un périphérique HID.

La carte Romu n'a pas de GPIO externes accessibles facilement. Ce code utilise les GPIO internes connectés aux boutons. Pour un vrai HID, remplacez Serial par une bibliothèque TinyUSB configurée en mode HID Keyboard. Compilez avec le core Arduino-Pico.

romu-hid-custom-keyboard.ino

#include <Arduino.h>
#include "pico/stdlib.h"

// Les boutons sur la carte Romu sont généralement câblés aux GPIO internes
// Vérifiez le schéma spécifique de votre révision pour les numéros exacts.
// Exemple hypothétique : BTN1 = GPIO 2, BTN2 = GPIO 3
#define BTN1 2
#define BTN2 3
#define LED_RGB 25 // LED RGB souvent sur GPIO 25 ou dédiée

void setup() {
  pinMode(BTN1, INPUT_PULLUP);
  pinMode(BTN2, INPUT_PULLUP);
  pinMode(LED_RGB, OUTPUT);
  
  // Initialisation USB HID non standard nécessite souvent une lib spécifique 
  // ou une modification du core. Ici, exemple simplifié avec Serial pour debug.
  Serial.begin(115200);
}

void loop() {
  static bool lastState1 = HIGH;
  bool state1 = digitalRead(BTN1);
  
  if (state1 == LOW && lastState1 == HIGH) {
    // Action sur front descendant (appui)
    Serial.println("Bouton 1 pressé");
    digitalWrite(LED_RGB, HIGH);
    delay(50);
  }
  lastState1 = state1;
  
  // Logique pour envoyer des keystrokes via HID ici avec une lib comme TinyUSB
  delay(10);
}

← Retour à la fiche