Offline
Newbie
Karma: 0
Posts: 4
|
 |
« on: September 06, 2012, 03:56:15 pm » |
salve a tutti!  da poco ho comprato un arduino UNO e avevo intenzione di costruire un midi controller per controllare il software che uso per fare musica (AudioMulch).. mi domandavo se fosse possibile trasmettere messaggi midi da arduino direttamente tramite usb.. grazie in anticipo Filippo 
|
|
|
|
|
Logged
|
|
|
|
|
Dueville (VI)
Offline
Edison Member
Karma: 15
Posts: 1052
http://cesarecacitti.wordpress.com/
|
 |
« Reply #1 on: September 06, 2012, 04:07:26 pm » |
bhè, diciamo che è possibile, ma prima ti chiedo di spostare il topic nella board Software o Hardware (scegli tu in base alle esigenze) e dopo di rimuovere questo topic con la funzione "remove topic" in basso a destra. Grazie ciaoooo
|
|
|
|
|
Logged
|
Arduino UNO r3, Arduino MEGA 1280, adafruit motor shield, bluetooth module, enc28j60 shield. Ultimi acquisti: un sacco di componenti elettronici, ATTEN AT 8586
|
|
|
|
Rome (Italy)
Offline
Tesla Member
Karma: 74
Posts: 7361
"Il Vero Programmatore ha imparato il C sul K&R, qualunque altro testo è inutile e deviante."
|
 |
« Reply #2 on: September 06, 2012, 04:12:30 pm » |
da poco ho comprato un arduino UNO e avevo intenzione di costruire un midi controller per controllare il software che uso per fare musica (AudioMulch).. mi domandavo se fosse possibile trasmettere messaggi midi da arduino direttamente tramite usb..
Senza la shield USB Host no.
|
|
|
|
|
Logged
|
|
|
|
|
0
Online
Edison Member
Karma: 15
Posts: 1888
Have you mooed today?
|
 |
« Reply #3 on: September 06, 2012, 04:20:32 pm » |
Senza la shield USB Host no. +1 oppure potresti acquistare una Leonardo
|
|
|
|
|
Logged
|
|
|
|
|
Padova
Offline
Jr. Member
Karma: 4
Posts: 87
|
 |
« Reply #4 on: September 07, 2012, 07:01:56 am » |
Se vuoi collegare la tua UNO al pc e usarla come controller midi allora si può fare, ma non è una procedura immediata e facile. Si tratta di sostituire il firmware del atmega8u2 che si occupa della conversione usb-seriale con uno che faccia riconoscere la uno come periferica midi. Purtroppo però si perde la possibilità di caricare gli sketch dall'IDE. Fino a qualche mese fa almeno era così, non so se abbiano risolto nel frattempo. In alternativa puoi puntare ad una Leonardo o ad una Teensy, adottano lo stesso micro entrambe, ma la seconda esiste da un po' di tempo 
|
|
|
|
|
Logged
|
|
|
|
|
Dueville (VI)
Offline
Edison Member
Karma: 15
Posts: 1052
http://cesarecacitti.wordpress.com/
|
 |
« Reply #5 on: September 07, 2012, 08:06:13 am » |
Se vuoi collegare la tua UNO al pc e usarla come controller midi allora si può fare, ma non è una procedura immediata e facile. Si tratta di sostituire il firmware del atmega8u2 che si occupa della conversione usb-seriale con uno che faccia riconoscere la uno come periferica midi. Purtroppo però si perde la possibilità di caricare gli sketch dall'IDE. Fino a qualche mese fa almeno era così, non so se abbiano risolto nel frattempo. In alternativa puoi puntare ad una Leonardo o ad una Teensy, adottano lo stesso micro entrambe, ma la seconda esiste da un po' di tempo  mica vero!!! io ho fatto una pianolina midi con arduino senza dover modificare il firmware dell' atmega8u2: i dati si mandano in seriale ad un programma sul pc che simula una periferica midi (disponibile sotto windows e mac osx)
|
|
|
|
|
Logged
|
Arduino UNO r3, Arduino MEGA 1280, adafruit motor shield, bluetooth module, enc28j60 shield. Ultimi acquisti: un sacco di componenti elettronici, ATTEN AT 8586
|
|
|
|
Padova
Offline
Jr. Member
Karma: 4
Posts: 87
|
 |
« Reply #6 on: September 07, 2012, 08:14:05 am » |
Se vuoi collegare la tua UNO al pc e usarla come controller midi allora si può fare, ma non è una procedura immediata e facile. Si tratta di sostituire il firmware del atmega8u2 che si occupa della conversione usb-seriale con uno che faccia riconoscere la uno come periferica midi. Purtroppo però si perde la possibilità di caricare gli sketch dall'IDE. Fino a qualche mese fa almeno era così, non so se abbiano risolto nel frattempo. In alternativa puoi puntare ad una Leonardo o ad una Teensy, adottano lo stesso micro entrambe, ma la seconda esiste da un po' di tempo  mica vero!!! io ho fatto una pianolina midi con arduino senza dover modificare il firmware dell' atmega8u2: i dati si mandano in seriale ad un programma sul pc che simula una periferica midi (disponibile sotto windows e mac osx) si ok, è la via più facile, ma bisogna far girare su pc programmi intermedi, che potrebbero anche creare dei ritardi. Modificando il firmware arduino viene visto come periferica nativamente midi plug n' play, non c'è bisogno di installare nulla, e probabilmente si evitano i lag che dicevo sopra. Rimane il fatto che è un lavoraccio
|
|
|
|
|
Logged
|
|
|
|
|
Rome (Italy)
Offline
Tesla Member
Karma: 74
Posts: 7361
"Il Vero Programmatore ha imparato il C sul K&R, qualunque altro testo è inutile e deviante."
|
 |
« Reply #7 on: September 07, 2012, 08:14:50 am » |
mica vero!!!
Hai letto il topic ? La richiesta è per una periferica midi USB, non per una emulazione sulla seriale tramite un qualche driver. Tra parentesi la seriale del pc non può funzionare alla velocità standard delle porte midi, 31250 bps, il che vuol dire farla lavorare alla velocità più vicina, solitamente 38400 bps, con il reale rischio di problemi con il sync dei messaggi midi.
|
|
|
|
|
Logged
|
|
|
|
|
Rome (Italy)
Offline
Tesla Member
Karma: 74
Posts: 7361
"Il Vero Programmatore ha imparato il C sul K&R, qualunque altro testo è inutile e deviante."
|
 |
« Reply #8 on: September 07, 2012, 08:17:29 am » |
si ok, è la via più facile, ma bisogna far girare su pc programmi intermedi, che potrebbero anche creare dei ritardi.
Non solo c'è il problema del lag, ma ci sono reali problemi di stabilità dei driver e spesso di incompatibilità con il proprio pc. Il discorso midi è molto delicato e va affrontato nel giusto modo se non si vuole andare incontro a cocenti delusioni.
|
|
|
|
|
Logged
|
|
|
|
|
Dueville (VI)
Offline
Edison Member
Karma: 15
Posts: 1052
http://cesarecacitti.wordpress.com/
|
 |
« Reply #9 on: September 07, 2012, 08:24:00 am » |
guardate, io lo dico solo perchè ho provato ed ho notato che il lag è inesistente, anzi, il mio pianoforte (che è midi nativo e che è un clavinova 340) ha più lag di un "coso" costruito con arduino in 10 minuti!
|
|
|
|
|
Logged
|
Arduino UNO r3, Arduino MEGA 1280, adafruit motor shield, bluetooth module, enc28j60 shield. Ultimi acquisti: un sacco di componenti elettronici, ATTEN AT 8586
|
|
|
|
Padova
Offline
Jr. Member
Karma: 4
Posts: 87
|
 |
« Reply #10 on: September 07, 2012, 08:27:55 am » |
Non solo c'è il problema del lag, ma ci sono reali problemi di stabilità dei driver e spesso di incompatibilità con il proprio pc. Il discorso midi è molto delicato e va affrontato nel giusto modo se non si vuole andare incontro a cocenti delusioni.
Concordo, avevo consigliato apposta la teensy perchè è gia "pronta all'uso", basta impostarla in modalità periferica midi e preoccuparsi solo di mandare e ricevere i messaggi con le apposite funzioni. Secondo me è la maniera più immediata per fare quello che @I_am_citizen_insane vuole... guardate, io lo dico solo perchè ho provato ed ho notato che il lag è inesistente, anzi, il mio pianoforte (che è midi nativo e che è un clavinova 340) ha più lag di un "coso" costruito con arduino in 10 minuti!
Sul pc di qualcun'altro, con hardware o anche solo configurazione software diverse, potrebbe non funzionare come funziona a te 
|
|
|
|
|
Logged
|
|
|
|
|
Milan, Italy
Offline
Sr. Member
Karma: 0
Posts: 287
|
 |
« Reply #11 on: September 07, 2012, 09:42:04 am » |
Ma al posto della Uno non è meglio usare una Leonardo, così l'impostazione dell'usb si può fare direttamente dallo sketch senza dover riprogrammare l'atmega8u2. Mi sembra che l'avessero introdotta proprio per questo tipo di esigenze.
Alberto
|
|
|
|
|
Logged
|
|
|
|
|
Offline
Newbie
Karma: 0
Posts: 4
|
 |
« Reply #12 on: September 11, 2012, 01:56:36 pm » |
Ma al posto della Uno non è meglio usare una Leonardo, così l'impostazione dell'usb si può fare direttamente dallo sketch senza dover riprogrammare l'atmega8u2. Mi sembra che l'avessero introdotta proprio per questo tipo di esigenze.
Alberto
mi pare dunque di capire che la soluzione migliore sarebbe basare il controller su una board Leonardo, giusto? ps: qualcuno potrebbe dirmi come si fa a spostare un thread? 
|
|
|
|
|
Logged
|
|
|
|
|
Offline
Full Member
Karma: 2
Posts: 196
|
 |
« Reply #13 on: September 11, 2012, 02:16:38 pm » |
se avete come SO xp o seven 32bit allora potete scaricare dalla roland: Roland Serial Midi Driver..... http://www.roland.com/support/article/?q=downloads&p=SK%2D500&id=1812543verrà installata una com midi virtuale a 31250bps e dovrete gestire solo la comunicazione standard midi....con la seriale ardu ... latenza bassissima meglio di così  ciao
|
|
|
|
|
Logged
|
|
|
|
|
Offline
Newbie
Karma: 0
Posts: 4
|
 |
« Reply #14 on: September 11, 2012, 02:26:21 pm » |
grazie! ottimo fino a quando non saprò come operare sulla leonardo 
|
|
|
|
|
Logged
|
|
|
|
|
|