Segui questi passi per programmare KeyChainino con Arduino come programmatore ISP:
1) Scarica e installa la libreria Arduino-tiny core:
- Se non lo hai ancora fatto, scarica il software di Arduino (Arduino IDE) e segui le istruzioni per Windows, Mac OS X o Linux.
- Segui le sottostanti istruzioni (fonte https://github.com/SpenceKonde/ATTinyCore) per installare Attiny core: In Arduino 1.6.4+, puoi installare il supporto per ATtiny usando board manager integrato nel software.
- Apri la finestra preferenze nell’Arduino IDE.
- Cerca il campo “Additional Boards Manager URLs” in fondo alla finestra.
- Incolla il seguente link URL nell’apposito spazio (Separa questo link con una virgola se hai già inserito altri link):
http://drazzy.com/package_drazzy.com_index.json
- Click su OK per salvare ed aggiornare.
- Apri la finestra “Board Manager” nel menu “Tools > Board”
- Portati in fondo alla lista. Dovresti vedere la sezione “ATTinyCore by Spence Konde”.
- Fai Click su sulla sezione che riguarda ATtiny e apparirà il pulsante “install”.
- La parola “installed” dovrebbe comparire accanto al titolo della sezione “ATTinyCore”.
- Chiudi il boards manager. Ora dovresti vedere il campo “ATtinyCore” sul menu “Tools > Board”,
2) Trasformiamo Arduino UNO in un programmatore ISP
Utilizzeremo Arduino UNO per programmare KeyChainino. Innanzitutto abbiamo bisogno di trasformare la nostra scheda Arduino UNO in un programmatore ISP (in-system programmer).
- Apri lo sketch ArduinoISP dal menù degli esempi.
- Seleziona la scheda (dal menu Tools > Board) e la porta seriale (dal menu Tools > Serial Port) che corrisponde al tuo Arduino.
- Carica lo sketch ArduinoISP sul tuo Arduino.
3) Colleghiamo Arduino a KeyChainino
Dobbiamo collegare la scheda Arduino a KeyChainino seguendo questo schema:
4) Carichiamo il Bootloader su KeyChainino
Ora dobbiamo usare il nostro Arduino come ISP per caricare il bootloader su KeyChainino:
- Seleziona “ATtiny24/44/84” dal menu the Tools > Board (NON usare la versione opitiboot)
- Seleziona “8 Mhz (internal)” dal menu Tools > Clock
- Seleziona “ATtiny84” dal menu Tools > Chip
- Seleziona “Clockwise (like damellis core)” dal menu Tools > Pin Mapping
(lascia la porta seriale che corrisponde ad Arduino)
- Seleziona “Arduino as ISP” dal menu Tools > Programmer.
- Assicurati di aver rimosso la batteria da KeyChainino!
- Carica il Bootloader (Burn Bootloader) dal menu Tools.
- Dovresti vedere “Done burning bootloader.” nell’Arduino IDE senza messaggi di errore. Ora possiamo caricare lo sketch.
5) Upload dello Sketch su KeyChainino
Ora possiamo usare Arduino, come programmatore ISP, per caricare (upload) lo sketch su KeyChainino:
- Scarica lo sketch del gioco Arkanoid qui
- Apri lo sketch con Arduino IDE
- Controlla (due volte 🙂 ) la Board (ATtiny24/44/84), Chip (ATtiny84) e Clock (8 Mhz Internal) dal menu Tools > Board
(Lascia la seriale impostata del tuo Arduino). - Seleziona “Arduino as ISP” dal menu Tools > Programmer.
- Assicurati di aver rimosso la batteria da KeyChainino.
- Carica lo sketch.
Ora dovresti vedere “Done uploading.” nell’Arduino IDE senza messaggi di errore.
Inserisci la batteria su KeyChainino e gioca!
P.S. Ripeti solo quest’ultimo step ogni volta che carichi uno sketch differente. Non è necessario caricare il bootloader ogni volta. Puoi farlo solo la prima volta.
I cavi collegati all’ISP di Keychainino bisogna saldarli?
Ciao Alessandro,
Puoi procedere in due modi:
– saldi il connettore a 6 pin nei fori dell’ISP di KeyChianino e poi lo dissaldi quando lo porti in giro (questo perché il connettore a 6 pin lo renderebbe molto scomodo)
– oppure colleghi i cavi solo al connettore a 6 pin, inserisci il connettore nell’alloggiamento ISP di KeyChianino e poi lo tieni obliquo quando carichi il programma. In questo modo il connettore, quando lo tieni pressato in obliquo, fa contatto con i fori metallizzati dell’ISP di KeyChianino e quindi è possibile programmarlo.
Spero di esserti stato d’aiuto.
Alessandro
Ciao Alessandro. Complimenti innanzitutto per l’idea!
Vorrei sapere se c’è modo di programmare KeyChainino anche da un Arduino Nano. Ho dato per scontato che si potesse fare ma ho problemi nel momento in cui vado a caricare il bootloader. Ho controllato lo sketch Arduino ISP e i pin a cui collego KeyChainino sono effettivamente i pin 10, 11, 12, e 13 (e ho decommentato la riga “#define USE_OLD_STYLE_WIRING” per essere sicuro che non andasse a cercare l’ISP sul chip integrato) ma quando carico il bootloader ottengo “Problem uploading to board”. Ora a breve dovrei avere un Arduino Uno quindi immagino che risolverò, però volevo sapere se effettivamente il problema è legato al Nano.
Ciao e Grazie Andrea! In realtà non ho mai provato a caricare il bootloader con il nano ma in teoria non ci dovrebbero essere problemi.
Sto solo pensando che lavorano a tensioni e frequenze di quarzo diversi. Quindi forse è quello il problema!
Hai provato a cercare se qualcuno ha mai provato a usare il nano come programmatore ISP?
Si in effetti ho visto che c’è qualcosina da cambiare per farlo con il nano (tra l’altro il mio non è un nano originale ma una schedina compatibile, potrebbe essere anche quello il problema). Comunque a breve avrò una Uno quindi non ci dovrebbero essere problemi, era solo per curiosità. Grazie per la risposta velocissima =)
Figurati. È sempre un piacere:)