Programmatore AVR USB +  USBProg + Ubuntu

We salve a tutti, oggi mi è arrivato il programmatore usb avr e mi stavo costruendo la board, quando mi sono reso conto che non saprei come usarlo su linux ;D

uhm ho trovato un programmino che si chiama USBProg e non trova il programmatore, ma è giusto che sia così perchè non ci ho installato i drivers.

la guida del mio programmatore dice questo

USBasp works under other operating systems such as Mac OS X and Linux, by drivers are not provided by Protostack nor are installation instructions included in this user's guide. The USBasp programmer uses the AVR-USB library and driver source code can be downloaded this page http://www.obdev.at/products/avrusb/index.html . Mac users may also want to look at http://www.harbaum.org/till/macavr/index.shtml .

Questo è il programmatore! http://www.protostack.com/index.php?main_page=product_info&cPath=23&products_id=24

cosa dovrei fare? per ora ho una mezza idea di installare xp su una partizione... ma non saprei... per ora continuo a costruire la piattaforma per programmare...

Federico come fai tu?

Certo che sono dei simpaticoni… vendono un circuito progettato da un altro e poi forniscono zero supporto

comunque funziona su linux senza problemi (credo) basta usare il programma avrdude versione 5.2 o superiore

bisogna specificare usbasp come programmatore quando lanci avrdude

trovi qui le info http://www.fischl.de/usbasp/
m

grazie mille… un’altra cosina veloce, nella scheda devo montare una induttanza da 10uH tra +5v e avcc e tra avcc e massa devo mette un condensatore… ma sono proprio necessari?

edit trovato… con la programmazione non c’entra nulla è semplicemente il riferimento del convertitore ad e da giusto?

io faccio da terminale avrdude –c usbasp atmega168 –U flash:w:/home/Calamaro/Scrivania/ATmegaBOOT_168_diecimila.hex

ma mi dice

no programmer has been specified on the command line or the config file Specify a programmer using the -c option and try again

cosa potrebbe voler dire?

edit vuol dire che non ho installato usbasp ma come si installa su ubuntu? non ci sono punte guide :S

prova

avrdude –c usbasp -p m168 –U flash:w:/home/Calamaro/Scrivania/ATmegaBOOT_168_diecimila.hex

boh non so se sia difettoso sto coso oppure sono proprio io nabbo boh... su windows mi da altri problemi tipo

avrdude: warning: cannot set sck period. please check for usbasp firmware update. avrdude: error: programm enable: target doesn't answer. 1 avrdude: initialization failed, rc=-1 Double check connections and try again, or use -F to override

sto guardando a giro per capire ma boh... che palle...

così a occhio direi che devo programmare l'atmega a bordo del programmatore... lol

guardate cosa mi dice :D

root@calamaro-laptop:~# avrdude -p m8 -c usbasp -v -F -i 16

avrdude: Version 5.8, compiled on Jul 20 2009 at 13:58:01
         Copyright (c) 2000-2005 Brian Dean, http://www.bdmicro.com/
         Copyright (c) 2007-2009 Joerg Wunsch

         System wide configuration file is "/etc/avrdude.conf"
         User configuration file is "/root/.avrduderc"
         User configuration file does not exist or is not a regular file, skipping

         Using Port                    : /dev/parport0
         Using Programmer              : usbasp
         Setting isp clock delay        :  16
         AVR Part                      : ATMEGA8
         Chip Erase delay              : 10000 us
         PAGEL                         : PD7
         BS2                           : PC2
         RESET disposition             : dedicated
         RETRY pulse                   : SCK
         serial program mode           : yes
         parallel program mode         : yes
         Timeout                       : 200
         StabDelay                     : 100
         CmdexeDelay                   : 25
         SyncLoops                     : 32
         ByteDelay                     : 0
         PollIndex                     : 3
         PollValue                     : 0x53
         Memory Detail                 :

                                  Block Poll               Page                       Polled
           Memory Type Mode Delay Size  Indx Paged  Size   Size #Pages MinW  MaxW   ReadBack
           ----------- ---- ----- ----- ---- ------ ------ ---- ------ ----- ----- ---------
           eeprom         4    20   128    0 no        512    4      0  9000  9000 0xff 0xff
           flash         33    10    64    0 yes      8192   64    128  4500  4500 0xff 0x00
           lfuse          0     0     0    0 no          1    0      0  2000  2000 0x00 0x00
           hfuse          0     0     0    0 no          1    0      0  2000  2000 0x00 0x00
           lock           0     0     0    0 no          1    0      0  2000  2000 0x00 0x00
           calibration    0     0     0    0 no          4    0      0     0     0 0x00 0x00
           signature      0     0     0    0 no          3    0      0     0     0 0x00 0x00

         Programmer Type : usbasp
         Description     : USBasp, http://www.fischl.de/usbasp/

avrdude: auto set sck period (because given equals null)
avrdude: warning: cannot set sck period. please check for usbasp firmware update.
avrdude: error: programm enable: target doesn't answer. 1 
avrdude: initialization failed, rc=-1
avrdude: AVR device initialized and ready to accept instructions
avrdude: Device signature = 0x000000
avrdude: Yikes!  Invalid device signature.
avrdude: Expected signature for ATMEGA8 is 1E 93 07

avrdude done.  Thank you.

Io scriverei a chi me l'ha venduto....

Sono buoni tutti di vendere un pezzo di hardware e poi lasciare i clienti senza un tutorial ...

si hai ragione infatti ho già scritto... il problema è che ne ho bisogno, il prossimo lo prendo italiano... inizio a guardarmi intorno... che incu***a... hanno pure un forum... spero me ne mandino un'altro funzionante e senza dover pagare la dogana a sto giro... che rabbia!

ps sto guardando questo http://www.grifo.com/PROG/HBI/AVRISP.htm il sito sembra affidabile... che ne pensate?

pensavo... se andasse programmato mettendo un jumper su j2? selfprogramming vuol dire che si programma da solo? la cosa che non capisco è come dalla usb ci si possa intrerfacciare direttamente col microcontrollore! uhm boh...

AVR ISP MK2 è quello ufficiale della Atmel.. però è un po delicatino...

guarda che un'arduino qualsiasi funziona benissimo da programmatore.

http://arduino.cc/en/Tutorial/ArduinoISP

m

anche con la mega con l'atmega1280? comunque stavo seguendo proprio codesto tutorial :D

edit mi da sto errore

avrdude: stk500_recv(): programmer is not responding

uhm il fatto di avere gli stessi problemi col programmatore appena montato oggi mi fa capire che devo aver sbagliato qualcosa porca P2#@211#1@11111#111@11!#!@#...

Mi sto sbattendo per trovare un circuito per capire come connettere la isp 10 all'atmel168... cavolo i microcontrollori son nuovi, impossibile che siano rotti... quindi non saprei proprio dove sbattere il capo... datemi un circuito per piacere :(

Puoi riassumere cosa stai facendo? Non ho capito niente piu', post dopo post...

allora ora mi trovo con 2 programmatori usbasp e sto cercando di programmare un microcontrollore atmel... nello specifico sto cercando di installare il bootloader di arduino diecimila dentro un atmega168...

Solo che i collegamenti non so se vanno bene... ho seguito uno schema trovato su protostack...

http://www.protostack.com/download/Datasheet%20(PB-MC-AVR28-DS-V1.4).pdf

ma non so se va bene... dimmi, tu che schema e che istruzioni usi?

Non hai fatto per provare l'opzione burn bootloader dall'ide di arduino? Puoi pluggare il 6pin del programmatore sul tuo arduino e quindi dire all'ide "programmamelo!" Cosi' almeno vedi se funzionano i componenti. Poi si possono provare cose + testuali

quindi tu mi suggerisci di connettere i vari pin della porta isp all'arduino quindi provare in quel modo... uso lo schema di nathanvi? http://zuccala.blogspot.com/2009/08/mini-tutorial-per-usare-arduino-come.html

Io intendevo di provare a collegare il tuo programmatore alla porta isp su arduino, e collegare quindi il programmatore al pc. Da li via l'ide di arduino c'e' una opzione che ti dice burn bootloader e vedi se funziona.

Per altro ti sono vicino psicologicamente, io ho fatto una board che funziona ma che non riesco a riprogrammare via cavo ftdi, sono qui che verifico i collegamenti saldo e dissaldo...

;D grande... ora provo... Thomas Fischl, che dovrebbe uno degli inventori di questo tipo di programmatore dice che il mio funziona... lo sto sentendo via mail e gli ho postato il risultato di lsusb...

root@calamaro-laptop:/home/calamaro# lsusb
Bus 001 Device 002: ID 05a9:2640 OmniVision Technologies, Inc. OV2640 Webcam
Bus 001 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub
Bus 003 Device 001: ID 1d6b:0001 Linux Foundation 1.1 root hub
Bus 004 Device 001: ID 1d6b:0001 Linux Foundation 1.1 root hub
Bus 007 Device 005: ID 0a5c:4503 Broadcom Corp. 
Bus 007 Device 004: ID 0a5c:4502 Broadcom Corp. 
Bus 007 Device 003: ID 413c:8126 Dell Computer Corp. Wireless 355 Bluetooth
Bus 007 Device 002: ID 0a5c:4500 Broadcom Corp. 
Bus 007 Device 001: ID 1d6b:0001 Linux Foundation 1.1 root hub
Bus 006 Device 002: ID 046d:c016 Logitech, Inc. M-UV69a/HP M-UV96 Optical Wheel Mouse
Bus 006 Device 001: ID 1d6b:0001 Linux Foundation 1.1 root hub
--->Bus 005 Device 003: ID 16c0:05dc VOTI USBasp AVR Programmer
Bus 005 Device 001: ID 1d6b:0001 Linux Foundation 1.1 root hub
Bus 002 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub

infatti come vedi lo riconosce... quindi bons ora proverò... speriamo bene ;D Comunque loro son gentilissimi... Mi hanno sempre risposto con cortesia cercando di aiutarmi... Dovevo prenderlo direttamente da loro, è come essere tedesco e comprare una macchina in india... ;D

You only need to set jumpers if the target is clocked very slow (e.g. with internal oscillator). Then you have to set the Slow-SCK jumper or use the -B option of avrdude to set the programming clock with software.

There is also a jumper to give the 5V to the target over the ISP cable. If you power the target externaly you don't need this jumper.

To test the programmer, you can connect to a device and start avrdude in terminal mode: avrdude -c usbasp -p atmega32 -t

questo è quello che mi ha scritto Fischl... magari può esserti utile :D