Pages: [1]   Go Down
Author Topic: Atmega16U2 MIDI controller  (Read 1005 times)
0 Members and 1 Guest are viewing this topic.
Offline Offline
Jr. Member
**
Karma: 0
Posts: 84
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

Ciao a tutti, eccomi con un nuovo quesito.
E' da un po che volevo utilzzare il mio Arduino UNO rev3 per creare una rudimentale tastiera midi, ho quindi creato il circuito(banalissimo) e ho creato uno sketch processing con dei sample. Il tutto funziona perfettamente ma ha sostanzialmente due svantaggi: Il tempo trascorso tra la pressione del tasto e la riproduzione del suono e il fatto che si può utilizzare solamente con processing.
Ho cercato in giro è ho trovato questa splendida soluzione http://hunt.net.nz/users/darran/weblog/5b7f8/Arduino_UNO_USB_MIDI_firmware.html, il problema è che io fin ora ho solo programmato gli sketch nell'ide di arduino, non ho mai flashato nessun chip senza l'aiuto del bootloader o simili.
Volevo quindi chiedervi come si procede per mettere quel firmware sull'Atmega16U2 presente sul mio Arduino.

Grazie mille a tutti.  smiley
Logged

BZ (I)
Offline Offline
Brattain Member
*****
Karma: 234
Posts: 20196
+39 349 2158303
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

Ciao a tutti, eccomi con un nuovo quesito.
Mi mancavi  smiley-wink smiley-wink smiley-wink

Quote from: aleale97
E' da un po che volevo utilzzare il mio Arduino UNO rev3 per creare una rudimentale tastiera midi, ho quindi creato il circuito(banalissimo) e ho creato uno sketch processing con dei sample. Il tutto funziona perfettamente ma ha sostanzialmente due svantaggi: Il tempo trascorso tra la pressione del tasto e la riproduzione del suono e il fatto che si può utilizzare solamente con processing.
Ho cercato in giro è ho trovato questa splendida soluzione http://hunt.net.nz/users/darran/weblog/5b7f8/Arduino_UNO_USB_MIDI_firmware.html, il problema è che io fin ora ho solo programmato gli sketch nell'ide di arduino, non ho mai flashato nessun chip senza l'aiuto del bootloader o simili.
Volevo quindi chiedervi come si procede per mettere quel firmware sull'Atmega16U2 presente sul mio Arduino.

Grazie mille a tutti.  smiley
Devi saldare un conettore a3x2 pin sul connettore ISP del ATmega16U2 (che sta vicino a quello) e con un programmatore ISP puoi caricare il firmware.
Ciao Uwe
Logged

Dueville (VI)
Offline Offline
Edison Member
*
Karma: 28
Posts: 1722
http://cesarecacitti.wordpress.com/
View Profile
WWW
 Bigger Bigger  Smaller Smaller  Reset Reset

però sta attento che dopo devi ricordarti che facendo quella modifica non puoi programmare arduino via usb!
Logged

Arduino UNO r3, Arduino MEGA 1280, adafruit motor shield, bluetooth module, enc28j60 shield.
Ultimi acquisti: un sacco di componenti elettronici, ATTEN AT 8586

Offline Offline
Full Member
***
Karma: 4
Posts: 213
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

la tua  RMK o "rudimentary midi keyboard" è monophonic o polyphonic ?

cioè riesci a trasmettere contemporaneamente le note_on/off di più tasti se prendi un accordo tipo DO maggiore , formato da DO,MI,FA ?

Logged

Riva del Garda, TN / Forlì
Offline Offline
Edison Member
*
Karma: 7
Posts: 2247
Il piu' modesto al mondo
View Profile
WWW
 Bigger Bigger  Smaller Smaller  Reset Reset

però sta attento che dopo devi ricordarti che facendo quella modifica non puoi programmare arduino via usb!
esatto comunque il firmware è flashabile trmaite usb senza usare un programmatore ISP

semplicemente cerca flip e DFU in google  smiley-wink
Logged

Il nuovo forum italiano sull'elettronica: http://www.electroit.tk/ <--- Nuovamente online!

BZ (I)
Offline Offline
Brattain Member
*****
Karma: 234
Posts: 20196
+39 349 2158303
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

superlol non lo sapevo. praticamente il ATmega16u2 ha un suo bootloader che fa trasferire i programma nella sua flash. finche non sovvrascrivi o cancelli il bootloader puoi sostituire il suo firmware come vuoi. Una volta tolto il firmware originale non avrai piú collegamento al ATmega328 e non puoi piú sostituire il suo sketch eccetto che lo fai tramite ISP oppure rimetti il firmware originale per fare l' upload e poi rimetti quel firmware che é necessario per il progetto.
Ciao Uwe
Logged

Riva del Garda, TN / Forlì
Offline Offline
Edison Member
*
Karma: 7
Posts: 2247
Il piu' modesto al mondo
View Profile
WWW
 Bigger Bigger  Smaller Smaller  Reset Reset

superlol non lo sapevo. praticamente il ATmega16u2 ha un suo bootloader che fa trasferire i programma nella sua flash. finche non sovvrascrivi o cancelli il bootloader puoi sostituire il suo firmware come vuoi. Una volta tolto il firmware originale non avrai piú collegamento al ATmega328 e non puoi piú sostituire il suo sketch eccetto che lo fai tramite ISP oppure rimetti il firmware originale per fare l' upload e poi rimetti quel firmware che é necessario per il progetto.
Ciao Uwe
non so però se il bootloader si sovrascrive tramite usb oppure se rimane sotto come negli atmega, l'ultima volta che ho provato a fare un wipe dell'8u2 sotto il bootloader era rimasto...
Logged

Il nuovo forum italiano sull'elettronica: http://www.electroit.tk/ <--- Nuovamente online!

Global Moderator
Italy
Offline Offline
Brattain Member
*****
Karma: 313
Posts: 21624
Logic is my way
View Profile
WWW
 Bigger Bigger  Smaller Smaller  Reset Reset

Quello del link di aleale non è un bootloader per l'Atmega8U2 ma un firmware. Quindi si resetta l'8U2 e lo si fa entrare in modalità programmazione, si flasha il firmware usando il bootloader, che non viene cancellato, e si riavvia. Da quel momento in poi funziona con la nuova modalità di collegamento MIDI.

Attenzione, però! E' per l'8U2, mentre aleale ha la UNO R3, che usa il 16U2. Quel firmware non può essere flashato così com'è ma va ricompilato per il nuovo chip.
Logged


Offline Offline
Jr. Member
**
Karma: 0
Posts: 84
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

Mi mancavi  smiley-wink smiley-wink smiley-wink
Posso solo immaginare quanto  smiley-mr-green

la tua  RMK o "rudimentary midi keyboard" è monophonic o polyphonic ?

cioè riesci a trasmettere contemporaneamente le note_on/off di più tasti se prendi un accordo tipo DO maggiore , formato da DO,MI,FA ?
A dir la verità per ora era molto semplice, quando veniva premuto un tasto processing eseguiva un sample di lunghezza pre-definita... Non c'era nessun controllo su quanto sia premuto e per quanto tempo il tasto. Volevo sapere di più sulla possibilità di implementare MIDI in modo da aggiungere anche questa funzionalità.
superlol non lo sapevo. praticamente il ATmega16u2 ha un suo bootloader che fa trasferire i programma nella sua flash. finche non sovvrascrivi o cancelli il bootloader puoi sostituire il suo firmware come vuoi. Una volta tolto il firmware originale non avrai piú collegamento al ATmega328 e non puoi piú sostituire il suo sketch eccetto che lo fai tramite ISP oppure rimetti il firmware originale per fare l' upload e poi rimetti quel firmware che é necessario per il progetto.
Ciao Uwe
Ciò significa che posso fare l'upload di uno sketch via usb al ATmega16u2? Poi come faccio a tornare al firmware standard? (TTL - Seriale USB)

Grazie mille a tutti per le numerose risposte tempestive smiley-grin
Logged

Global Moderator
Italy
Offline Offline
Brattain Member
*****
Karma: 313
Posts: 21624
Logic is my way
View Profile
WWW
 Bigger Bigger  Smaller Smaller  Reset Reset

La procedura è questa:
http://arduino.cc/en/Hacking/DFUProgramming8U2

Però ricordati di quanto ti ho detto (che mi pare tu abbia ignorato):
Quello del link di aleale non è un bootloader per l'Atmega8U2 ma un firmware. Quindi si resetta l'8U2 e lo si fa entrare in modalità programmazione, si flasha il firmware usando il bootloader, che non viene cancellato, e si riavvia. Da quel momento in poi funziona con la nuova modalità di collegamento MIDI.

Attenzione, però! E' per l'8U2, mentre aleale ha la UNO R3, che usa il 16U2. Quel firmware non può essere flashato così com'è ma va ricompilato per il nuovo chip.
Logged


Pages: [1]   Go Up
Jump to: