venerdì 14 maggio 2021

Esp32 Page Tuner Elgato Clone

Visto il precedente post volevo fare qualcosa di ancora piu' semplice e meno costoso

Ho provato ad usare come controller una ESP32...la prima idea era quella di usare la libreria BleKeyboard con dei tasti fisici per i controlli ma alla fine avevo bisogno di un po' di saldature...volevo qualcosa di ancora piu' semplice...ho quindi usato i pin touch della Esp32 che necessitano solo del contatto di un dito per essere usati come interrutori






Nell'esempio i pin Touch4 e Touch5 sono associati al tasto spazio e Freccia a sinistra per abilitare la funzione Play e Rewind su Youtube e VLC

======================================================

#include <BleKeyboard.h>
#define interval 1000

BleKeyboard bleKeyboard;
int threshold = 40;
bool touch4detected = false;
bool touch5detected = false;
long previousMills = 0; 
void gotTouch5(){ 
 if (millis()-previousMills > interval)
    {
    touch5detected = true;
    previousMills = millis();
    }
}
void gotTouch4(){ 
 if (millis()-previousMills > interval)
    {
    touch4detected = true;
    previousMills = millis();
    }
}
void setup() {
  bleKeyboard.begin();
  delay(1000);
  while (!bleKeyboard.isConnected()) {
    Serial.println("in attesa");
  }
  
  Serial.begin(115200);
  delay(1000);
  
  touchAttachInterrupt(T4, gotTouch4, threshold);
  touchAttachInterrupt(T5, gotTouch5, threshold);
}
void loop(){
if(touch4detected){
  touch4detected = false;
  Serial.println("Play"); 
  bleKeyboard.print(" ");
  }
if(touch5detected){
  touch5detected = false;
  Serial.println("Rewind"); 
  bleKeyboard.write(KEY_LEFT_ARROW );
  }
}

Nessun commento:

Posta un commento

Alpine Linux 2024 su IBM A31

Ho provato a far resuscitare un IBM A31 destinato alla discarica. La macchina ha processore P4, 256 Mb di RAM, la batteria CMOS morta ed e&#...