Salve a tutti. io e un mio amico, vogliamo portare all'esame di stato, come progetto, un drum pad con arudino... unico problema: come possiamo interfacciare arduino con un programma MIDI?Qualcuno potrebbe aiutarmi? Si apprezzano commenti ricchi di info Grazie a tutti per l'aiuto!!!
dex97:
non abbiamo la piu pallida idea di come interfacciare arduino con un programma MIDI.... Qualcuno potrebbe aiutarmi? Si apprezzano commenti ricchi di info Grazie a tutti per l'aiuto!!!
Se usi una Teensy 3.1 tra le varie opzioni per la USB c'è anche l'interfaccia midi, questo vuol dire che il tuo pc vede una porta midi e ti interfacci con qualunque software midi semplicemente dicendogli di usare quella porta.
Se preferisci usare il vero connettore MIDI, per collegare il tuo pad magari ad altri strumenti, dai un'occhiata a https://www.arduino.cc/en/Tutorial/Midi.
SukkoPera:
dai un'occhiata a https://www.arduino.cc/en/Tutorial/Midi.
Quella è una interfaccia midi come io sono l'incredibile Hulk
Questa è una vera interfaccia midi, a norma, per Arduino.
Vabbe' dai, si va per gradi...
SukkoPera:
Vabbe' dai, si va per gradi...
Per gradi si, però l'interfaccia sul tutorial di Arduino la maggioranza delle volte non funziona quando la colleghi ad un device midi, ci sono delle specifiche da rispettare.
Perdonami, ma in quel modo la porta MIDI può solo funzionare da input ad Arduino, mentre qua andrebbe usata come output, o sbaglio?
Le porte midi usano connettori separati per IN e OUT, questo è lo schema canonico per tutte e due le configurazioni, l'inverter è indispensabile perché la logica del segnale midi è con idle sullo 0 e non sul 1 come standard UART.
Quindi fammi capire:
- Prima hai postato uno schema per l'input, ora un altro.
- In ogni caso, all'autore del post serve quello per l'output (che almeno al secondo tentativo hai postato).
- Secondo te un tutorial ufficiale di Arduino ha uno schema elettrico fatto a banzai che non funzionerà mai.
Sicuramente grazie a te l'autore del post ora ha le idee più chiare. Non capisco se ti fermi alla 3a parola dei post che leggi o se solo provi a piacere a darmi contro incondizionatamente.
SukkoPera:
3. Secondo te un tutorial ufficiale di Arduino ha uno schema elettrico fatto a banzai che non funzionerà mai.
Nello schema sul tutorial manca l'inverter, quindi non può funzionare visto che l'UART di Arduino lavora con idle a 1 mentre la midi lavora con idle a 0.
Anche il midi out può essere fatto con il fotocoupler, basta ribaltare lo schema del midi in, e non serve l'inverter.
SukkoPera:
Sicuramente grazie a te l'autore del post ora ha le idee più chiare.
Chi lo ha confuso sei tu visto che la domanda chiedeva esplicitamente come collegarsi ad un software midi, ovvero come collegarsi in midi ad un pc, gli ho consigliato la Teensy 3.1 perché dispone di questa funzione nativamente.
Mi sa tanto che non sono io quello che legge solo tre parole.
Io questo non lo so, non conosco il MIDI a così basso livello, così come credo nemmeno l'autore del post e nemmeno chi si mette a sperimentare con quello che è un tutorial UFFICIALE di Arduino. Per cui penso che se è proprio così, la cosa vada segnalata e il tutorial corretto.
Poi dubito che postando un circuito MIDI IN senza dire alcunché, chi apre un post come questo sia in grado di capire che va modificato e come farlo, ma vabbeh.
Per la cronaca, il mio PC ha ingressi MIDI "reali", sei tu che hai assunto che il suo non li abbia e debba ricorrere all'USB. Io mi sono limitato ad integrare il tuo post nel caso anche lui abbia a disposizione ingressi MIDI e voglia usare quelli, rimandandolo a quello che è un tutorial UFFICIALE, e ci tengo a insistere su questo.
Ora finiamola.
SukkoPera:
Io questo non lo so, non conosco il MIDI a così basso livello, così come credo nemmeno l'autore del post e nemmeno chi si mette a sperimentare con quello che è un tutorial UFFICIALE di Arduino. Per cui penso che se è proprio così, la cosa vada segnalata e il tutorial corretto.Poi dubito che postando un circuito MIDI IN senza dire alcunché, chi apre un post come questo sia in grado di capire che va modificato e come farlo, ma vabbeh.
Per la cronaca, il mio PC ha ingressi MIDI "reali", sei tu che hai assunto che il suo non li abbia e debba ricorrere all'USB. Io mi sono limitato ad integrare il tuo post nel caso anche lui abbia a disposizione ingressi MIDI e voglia usare quelli, rimandandolo a quello che è un tutorial UFFICIALE, e ci tengo a insistere su questo.
Ora finiamola.
quindi(correggetemi se sbaglio....) per poter collegare l'arduino al pc per usarlo su un programma midi, devo ricorrere a quello schema ufficiale? una volta fatto cio, per far interagire arduino con il programma (ad esempio ableton) qual'è il comando per programmarlo? (purtroppo la scuola in cui vado non ci da spiegazioni su arduino e sul suo mondo, quindi dobbiamo ricorrere alle nostre sole capacità )
Come detto sopra, innanzitutto bisognerebbe capire se al PC vuoi connetterti tramite USB o tramite una porta MIDI.
Nel primo caso ti conviene usare un Arduino che supporta l'USB nativamente, come una Teensy 3.1, ma credo che anche una Leonardo o Micro potrebbero andare con un po' di smanettamento.
Nel secondo caso io partirei con lo schema del tutorial e poi, se non funziona, proverei quello qua sopra (l'ultimo che vedi, MIDI OUT), che però richiede un po' di componenti.
In entrambi i casi, però, il software da programmare sull'Arduino dovrai scriverlo tu, o adattarne uno già esistente...
SukkoPera:
... sperimentare con quello che è un tutorial UFFICIALE di Arduino. ......Ora finiamola.
Gli autori di molti articoli su questo portale non sono degli esperti, sono degli appassionati per non dire dilettanti, giustamente astrobeed, che io ho anche criticato in qualche occasione, da esperto indica il giusto approccio hardware con la porta MIDI, che esiste da oltre 30 anni e in cui le specifiche si ritrovano sul sito ufficiale MIDI
http://www.midi.org/techspecs/electrispec.php
ora se vuoi finirla veramente dovresti chiedere scusa a astrobeed di essere stato arrogante e superbo, visto che ha fatto CORRETTA informazione e non immondizia come al solito si vede spesso
IO ARROGANTE E SUPERBO?!? Ma se mi sono limitato a rimandare a un tutorial!
Ah, e dunque Tom Igoe sarebbe un principiante???
Siete veramente bravi a rigirare la frittata su questo forum! :o
SukkoPera:
Ah, e dunque Tom Igoe sarebbe un principiante???
Nessuno dice questo, però nessuno sa tutto ed è esperto in tutti i campi, io il midi lo conosco bene perché ho degli amici musicisti che ogni tanto mi chiedono un qualche "marchingegno" midi da realizzare, oppure del software mirato per la gestione di strumenti midi.
Di tutorial, libri, ufficiali di Arduino con dentro errori vari ce ne sono stati molti, alcuni corretti nel tempo, altri sono rimasti.
Non pensare che tutto quello che trovi sul sito ufficiale è realmente scritto da Tom Igoe, sono in tanti a preparare il materiale che c'è sopra.
Di pc dotati di porta midi ormai ne esistono ben pochi, una volta si trovava facilmente perché incorporata in vari modelli di schede audio.
Adesso con la tendenza ad eliminare le porte poco usate, per ridurre i costi, non si trova più nemmeno la RS232, figuriamoci la midi, a meno che non monti una scheda specifica, inoltre è più semplice usare un device midi virtuale su USB, come permette la Teensy 3.1 che ho suggerito all'inizio di tutta questa discussione.
Se sia Tom Igoe o meno a preparare il materiale è abbastanza indifferente, ma se c'è il suo nome lui ne è repsonsabile. Se c'è un errore grosso come ritieni, va assolutamente corretto. Ripeto che io non ho le conoscenze sufficienti, ma se tu le hai dovresti perlomeno aprire un issue o una pull request su Arduino. Ricordo infatti che stiamo parlando di un tutorial ufficiale collegato ad un esempio ufficiale distribuito con l'IDE di Arduino. Se qualche musicista comprasse Arduino proprio per costruirsi uno strumento MIDI, vista l'apparente semplicità di realizzazione, e poi scoprisse che invece deve quasi costruirsi un PCB? Se Blink non blinkasse? Se Debounce non debouncasse? (concedetemi il termine :D)
Di PC dotati di porta MIDI non ce ne sono pochi come credi. Chiunque faccia un uso serio del MIDI ha probabilmente una scheda audio altrettanto seria. Se poi invece che al PC volessi collegare il tuo marchingegno a uno strumento (che so, una tastiera, una drum machine...), dubito che ci troverai l'USB sopra. Insomma, va benissimo usare la Teensy e il suo USB, ma non vedo perché scartare a priori l'opzione connettore MIDI.
SukkoPera:
Di PC dotati di porta MIDI non ce ne sono pochi come credi. Chiunque faccia un uso serio del MIDI ha probabilmente una scheda audio altrettanto seria.
Stiamo parlando di persone che devono usare il midi per motivi di lavoro o semplicemente per passione, il che vuol dire che hanno provveduto a fornire il loro pc di una porta midi sotto forma di scheda o sotto forma di adattatore USB.
In questo topic chi ha posto la domanda è uno studente che deve fare la tesina, vuole collegare Arduino al pc per usarlo come "tastiera" collegata ad un qualche software midi, pertanto la soluzione più semplice rimane sempre la Teensy 3.1 visto che basta collegarla alla USB del pc per farla vedere come un normale dispositivo midi, poi quello che deve fare dipende dal software che ci metti sopra.
Io uso un teensy ++ 2.0, cmq tutta la famiglia di queste board arduino compatibili, sono idonee, se usi l'usb è la migliore strada praticabile, grazie al suo bootloader puoi collegarti direttamente ai vari software (live, reason, Cubase, logic, traktor ecc...) minimizzando la latenza che è il requisito principale per un midi controller. Ho visto anche al Maker faire dell'anno scorso un controller fatto con arduino uno e un software che leggeva dalla seriale e trasformava in midi, ma è inutile che tu faccia un controller stupendo se tra quando premi un tasto e quando il software lo riceve passano 100ms... Dai un occhiata su Google, trovi molti esempi e nel caso venga utilizzato l'usb i migliori usano teensy.
Riguardo all'interfacciamento del controller con il software devi guardare nelle impostazioni midi, o impostazione controller, o simili, li puoi mappare i messaggi midi che invii dal controller e assegnarli alle funzioni, ogni software audio professionale lo ha integrato.