Pages: [1]   Go Down
Author Topic: USBtiny su Linux  (Read 2123 times)
0 Members and 1 Guest are viewing this topic.
Global Moderator
Italy
Offline Offline
Brattain Member
*****
Karma: 313
Posts: 21624
Logic is my way
View Profile
WWW
 Bigger Bigger  Smaller Smaller  Reset Reset

Oggi mi è arrivato il programmatore USBTiny di Adafruit.
Dopo il montaggio ho voluto sperimentare il prodotto per verificare che lo avessi montato bene e che fosse in grado di programmare un Atmega.

Premessa:
SO: Ubuntu 10.10
Arduino: Uno
Programmatore: Adafruit USBTiny

Dopo aver connesso il programmatore al PC tramite un cavetto USB, ho montato l'Atmega "vergine" sulla Uno e poi ho collegato l'USBTiny all'Arduino tramite il cavettino a 6 pin. Risultato: sia da terminale che da IDE di Arduino, NON sono riuscito a programmare il chip. Il messaggio era:
avrdude: initialization failed, rc=-1

Ho quindi lanciato l'IDE come root e magicamente sono riuscito ad usare il programmatore caricando correttamente il bootloader dell'Uno sull'Atmega.

Ho cercato con Google e sono giunto a questa pagina:
http://www.ladyada.net/make/usbtinyisp/avrdude.html
dove si spiega come dare i permessi permanenti ai normali utenti per poter accedere all'USBTiny.

1) premete ALT+F2 e digitate "gksudo gedit" per Gnome o "kdesudo kedit" se usate KDE. Inserite la password di root o la vostra password personale (a seconda delle distro)
2) copiate nell'editor il seguente comando:
Code:
SUBSYSTEM=="usb", SYSFS{idVendor}=="1781", SYSFS{idProduct}=="0c9f", GROUP="users", MODE="0666"
3) salvate il file come "usbtiny-perms.rules" nella cartella "/etc/udev/rules.d"
4) riavviate

A questo punto avete i permessi per poter programmare con l'USBTiny.

PROGRAMMAZIONE
Connessioni:
0) disconnettete ogni cosa dalle alimentazioni!
1) prendete l'Arduino Uno e togliete il chip di serie;
2) montate l'Atmega "vergine"
3) collegate il cavetto a 6 pin dell'USBtiny al connettore ICSP sull'Arduino tenendo bene a mente che il connettorino di aggancio deve avere il dentino rivolto verso l'interno della scheda Arduino e la fettuccia deve avere il cavettino rosso dalla parte del led "on" dell'Arduino. In pratica, deve essere montato "alla rovescia", col cavetto che fa una curva prima di tornare indietro.
4) collegate un cavetto USB all'USBtiny e lasciate il ponticello dell'USBTiny (quello accanto ai 2 cavetti di connessione) inserito. NON alimentate l'Arduino con un proprio cavetto USB o tramite alimentatore: ci pensa il programmatore.
5) Avviate l'IDE di Arduino
6) scegliete da "Tools/Burn bootloader" la voce "w/ USBTinyISP".
7) Aspettate (circa 1 minuto)
smiley-cool quando la luce rossa dell'USBTiny si spegne e l'IDE segnala l'avvenuta programmazione, potete disconnettere tutto e collegare il cavetto USB all'Arduino.
9) Per prova caricate lo sketch di esempio "Basic/Blink" per verificare che l'Atmega accetti gli sketch tramite Arduino.

In sintesi:
se usate Linux e state smadonnando con l'USBtiny (o qualche altro programmatore), forse potrebbero essere solo problemi di permessi. Provate come root.

EDIT:
post riveduto con la soluzione permanente pubblicata su Adafruit


Spero che serva a qualcun altro  smiley-grin
« Last Edit: September 22, 2011, 04:46:54 pm by leo72 » Logged


Carunchio Chieti ITALY
Offline Offline
Full Member
***
Karma: 2
Posts: 202
View Profile
WWW
 Bigger Bigger  Smaller Smaller  Reset Reset

Utilissimo!!
Anche io avevo scoperto qualcosa di simile:
 selezionando dall'ide arduino burn bootloader/parallel programmer non si hanno i permessi per usare la parallela
penso si debba fare una procedura analoga alla tua!
ma nel mio caso penso possa bastare lanciare da terminale sudo arduino,anche se in questo caso parte la versione 018 quella scaricata dai repository!
approposito c'è un modo per lanciare la 022 con sudo?
io la faccio partire da una cartella sulla scrivania,ma con sudo anche portandomi da terminale nella cartella e lanciando sudo arduino parte sempre la 018...
PS le mie erano solo prove sto aspettando che mi arrivino gli atmega168
i 328 non sono riuscito a trovarli vergini mica hai qualche link?
« Last Edit: January 19, 2011, 05:44:06 pm by Marco_Ritrivi » 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

Togli quella installata tramite gestore di pacchetti della tua distro, poi ti scarichi la IDE dal sito e lanci l'installer.
Questo ti metterà l'IDE nella tua /home. Crei un link simbolico sulla scrivania e sei a posto.

Sì, funziona anche lanciando con "sudo". Per far ciò basta entrare nella cartella dove hai l'eseguibile "Arduino" e dare:
sudo ./arduino
così lanci l'IDE con i permessi di root.
ATTENTO però che in questo modo puoi in teoria cancellare file di sistema magari sostituendoli con un bello sketch smiley-lol
Ecco perché è preferibile dare i permessi all'utente.
Logged


Carunchio Chieti ITALY
Offline Offline
Full Member
***
Karma: 2
Posts: 202
View Profile
WWW
 Bigger Bigger  Smaller Smaller  Reset Reset

scusami ma cosa intendi per lanci l'installer??
io ho scaricato la 0022.tgz
l'ho estratta e messa sulla scrivania ho dato i permessi per eseguire l'eseguibile arduino doppio click ->esegui... la usavo così!
ma l'installer non so proprio dov'è
ho ubuntu 10.10
« Last Edit: January 19, 2011, 06:28:45 pm by Marco_Ritrivi » 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

Mi son confuso con Eagle, che ha un file da lanciare per far partire l'installazione  smiley-wink
E' vero, Arduino è già usabile.
Logged


Milano, Italy
Offline Offline
Faraday Member
**
Karma: 10
Posts: 3085
Sideralis Arduino!
View Profile
WWW
 Bigger Bigger  Smaller Smaller  Reset Reset

Ottima descrizione ma cercando indietro nella mia memoria non ricordo di aver fatto tutta questa procedura per far funzionare il mio usbTiny, saro' piu'  fortunello!  8-)

Scusate se forse non e' la sede ma rilancio con una domanda al volo: da shell come cavolo si fa a compilare un .pde?
Logged

Federico - Sideralis
Arduino &C: http://www.sideralis.org
Foto: http://blackman.amicofigo.com

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

Io non lo so.
L'unica che ho trovato è questo script:
http://arkku.com/misc/arduino_make.sh
(post relativo: http://www.arduino.cc/cgi-bin/yabb2/YaBB.pl?num=1253788114)
« Last Edit: January 20, 2011, 03:25:37 am by leo72 » Logged


0
Offline Offline
Edison Member
*
Karma: 20
Posts: 2227
Have you mooed today?
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

Quote
Scusate se forse non e' la sede ma rilancio con una domanda al volo: da shell come cavolo si fa a compilare un .pde?
avr-gcc
..ed ottineni l'HEX.
Con avrdude lo puoi poi caricare su Arduino.

Puoi trovare qualche info in più anche su questo playground:
http://www.arduino.cc/playground/Italiano/Avrdude-openwrt
(anche se è orinetato a openwrt, è valido per tutte le altre piattafome *nix; win mi rifiuto anche solo di provare  :-X)

Quote
interessante, mi mancava!
« Last Edit: January 20, 2011, 03:49:01 am by pictux » 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

Sei sicuro di poter usare avr-gcc su un file .pde?
A me su un file di prova denominato leds.pde ha dato:
Code:
/usr/lib/gcc/avr/4.3.5/../../../avr/bin/ld:./leds.pde: file format not recognized; treating as linker script
/usr/lib/gcc/avr/4.3.5/../../../avr/bin/ld:./leds.pde:24: syntax error
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

In un post sul forum ho letto:
Quote
You can't compile the PDE-files directly. The Arduino IDE does some preprocessing of these files, which includes adding prototypes, #includes and - most importantly - a main-function. So to be able to compile a pde-file you need to add these things manually.
Logged


Milano, Italy
Offline Offline
Faraday Member
**
Karma: 10
Posts: 3085
Sideralis Arduino!
View Profile
WWW
 Bigger Bigger  Smaller Smaller  Reset Reset

So che va scritta parte dell'intestazione del file manualmente, ma probabilmente e' automatizzabile. Guardero' i link! Grazie smiley-kitty
Logged

Federico - Sideralis
Arduino &C: http://www.sideralis.org
Foto: http://blackman.amicofigo.com

Pages: [1]   Go Up
Jump to: