MIDI - Modalità tasto per software dj mixxx

Salve, ho questo codice che funziona .. ma solo che se configuro il software mixxx.org come modalità tasto .. e se lo testo funziona ma lo devo tenere premuto.

Come posso fare se premo Fa partire e se ripremo si ferma.

Ecco il codice che ho scritto:

#include <MIDI.h>

MIDI_CREATE_DEFAULT_INSTANCE();

#define buttonNumber 6

byte buttons[buttonNumber] = { 2, 3, 4, 5, 6, 7 };
byte buttonsNote[buttonNumber] = { 36, 23, 8, 9, 10, 11 };
byte statusNote[buttonNumber] = {0, 0, 0, 0, 0, 0};

#define led 9


byte buttonstate[buttonNumber] = {0,0,0,0,0,0};
byte lastbuttonstate[buttonNumber] = {0,0,0,0,0,0};

void setup() {  
  Serial.begin(115200);
  delay(100);
  for (byte i = 0; i < buttonNumber; i++) {
    pinMode(buttons[i], INPUT_PULLUP);
  }
  pinMode(led, OUTPUT);
}

void loop() {
  for (byte i = 0; i < buttonNumber; i++) {

    buttonstate[i] = digitalRead(buttons[i]);

  if(buttonstate[i] != lastbuttonstate[i]) {
    if (buttonstate[i] == LOW){
      MIDI.sendNoteOn(buttonsNote[i], 127, 1);
      digitalWrite(led, 1);
    }     
    else {
     MIDI.sendNoteOff(buttonsNote[i], 0, 1);
     digitalWrite(led, 0);
    }
  }

  lastbuttonstate[i] = buttonstate[i]; 
  }
}

Avete idea come fare?
E poi una cosa divertente vorrei utilizzare o meglio creare una classe Button.h, Button.cpp

Ma come posso fare queste due?

Grazie mille e buona giornata.

image
Dicevo questa finestra del mixxx.org

Mmmm ... tu sai che, se vai nell'elenco delle librerie di Arduino, nella categoria Signal Input/Output e scorri in ordine alfabetico, di librerie per la gestione dei bottoni, rilevamento della pressione, del rilascio, del click, doppio click, triplo click, click lento, click veloce, ecc. ecc. ... ce ne sono un bel po' già pronte e collaudate? :slight_smile:

Guglielmo

ok, non lo sapevo io andavo su qua:

visto che utilizzo arduino-cli con visual studio code + script miei per compilare e caricare e controllare il monitor seriale.

Un'altra cosa mi posso auto costruirmi i pulsanti visto che ho una stampante 3D ?

Perché mi servono tantissimi e forme che voglio io.

Idea per questa cosa dell'auto costruirsi i button come dicono in inglese.

Saluti e buona giornata.

Beh, puoi sicuramente costruirli come vuoi, ma ... per la parte "elettromeccanica" credo ti convenga comunque incorporarci dei bottoni che trovi sul mercato :roll_eyes:

Guglielmo

ok, ma senza utilizzare i bottoni già fatti.. sai mica se su internet si trova qualche documentazione?.
Grazie di nuovo e buona giornata e nel frattempo cerco in inglese con la chiave "How to build push button" .
Non so altri termini .. tu ne hai altri?
Grazie mille.

Come sei messo col debounce?

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