Protezione scheda Arduino (Fuse, Lock, .....)

hai risposto prima che finivo l'edit :)

Io ho scelto AVR Dragon perchè dai vostri consigli credo che sia quello che piu fa al caso mio, ed il Prof Menniti me lo ha confermato. Oltre alla programmazione dei Fuse e Lock etc...., quello di cui ho bisogno è la programmazione HV che dispone proprio l'AVR Dragon.

E hai fatto benissimo :) Comunque, a parte la programmazione HV ed il debug HW, tutto il resto lo puoi fare direttamente con la tua board Arduino, il mio Manuale serve proprio a questo, come spiega chiaramente il suo titolo..... ;)

;) ;) Grazie :)

Buongiorno a tutti

Una domanda: con AVR Dragon posso anche programmare il MEGA16U2 (convertitore usb/seriale) ed effettuare anche su questo la protezione dei Fuse tramite connettore ICSP?

Buongiorno Prof Menniti,

Praticamente io sto realizzando un circuito standalone e dovrò saldare un atmega16U2 (TQFP).
Credo sarà vergine e quindi privo di bootloader.

Domande:

  1. per programmarlo devo utilizzare la Sue schede ISPER QFP + ISP&Serial Programmer? (vedi immagine allegata)
  2. successivamente dovrò collegare AVR Dragon e la Sua scheda ISP&Serial Programmer attraverso il connettore ISP?

Questi zoccoli ZIF per la Sua scheda vanno bene?

http://www.ebay.it/itm/Zoccolo-ZIF-28-pin-per-circuiti-integrati-DIL-DIP-/261836430886?hash=item3cf6aade26:g:H5sAAOSwM0FXIOMW

http://www.ebay.it/itm/Zoccolo-ZIF-40-pin-per-circuiti-integrati-DIL-ART-FY09-/330889710333?hash=item4d0a904afd:g:hGUAAOSwPe1T9EuM

Inoltre ho bisogno di sapere:

  1. dove posso trovare il firmware ed il bootloader (identici a quelli di atmega16U2 di arduino uno r3) per il mio nuovo atmega16U2.

Praticamente io sto realizzando un circuito standalone e dovrò saldare un atmega16U2 (TQFP). Credo sarà vergine e quindi privo di bootloader.

Domande:

1) per programmarlo devo utilizzare la Sue schede ISPER QFP + ISP&Serial Programmer? (vedi immagine allegata) si ma a quel punto puoi usare un banalissimo Arduino 2) successivamente dovrò collegare AVR Dragon e la Sua scheda ISP&Serial Programmer attraverso il connettore ISP?

Questi zoccoli ZIF per la Sua scheda vanno bene?

Comprali da Plexishop o da Futura o da EBMStore, il 40 è uno standard fisso, invece ATTENZIONE al 28, esiste un passo largo (come il 40) ed uno stretto, a te serve quest'ultimo!

Inoltre ho bisogno di sapere:

3) dove posso trovare il firmware ed il bootloader (identici a quelli di atmega16U2 di arduino uno r3) per il mio nuovo atmega16U2.

Sul sito di Arduino, ma non capisco perché tu ti debba impelagare con quell'integrato, una volta che hai realizzato uno stand-alone sfrutta i pin dell'ICSP e continua a programmarlo via ISP. Se proprio vuoi continuare a programmarlo via seriale, usa uno dei tanti convertitori USB-Seriale che si trovano dappertutto a pochi euro.

Buonasera Professore Menniti.

1) per programmarlo devo utilizzare la Sue schede ISPER QFP + ISP&Serial Programmer? (vedi immagine allegata) si ma a quel punto puoi usare un banalissimo Arduino

Quindi per poter programmare e proteggere il ATMEGA16U2 posso utilizzare una scheda Arduino Uno R3 + la Sua scheda ISPER QFP (collegata ad Arduino attraverso gli strip) + AVR Dragon che servirà ad impostare i Fuse?

Non ho le idee chiare di quali shede utilizzare. In poche parole io ho un ATMEGA16U2 acquistato (TQFP) e prima di saldarlo sulla mia PCB, devo ovviamente programmarlo inserendolo nell'apposito zoccolo ZIF QFP 32pin, lo zoccolo dovrà di conseguenza essere saldato sulla Sua scheda ISPER QFP ( e fino a qui ci sono...). Successivamente penso che dovrò collegare attraverso gli strip, la scheda ISPER QFP con la scheda ISP&Serial Programmer e quest'ultima andrà collegata alla scheda Arduino attraverso gli strip.

Premessa: so che per programmare il ATMEGA16U2 occorre utilizzare il software FLIP.

3) dove posso trovare il firmware ed il bootloader (identici a quelli di atmega16U2 di arduino uno r3) per il mio nuovo atmega16U2.

Sul sito di Arduino, ma non capisco perché tu ti debba impelagare con quell'integrato, una volta che hai realizzato uno stand-alone sfrutta i pin dell'ICSP e continua a programmarlo via ISP. Se proprio vuoi continuare a programmarlo via seriale, usa uno dei tanti convertitori USB-Seriale che si trovano dappertutto a pochi euro.

Praticamente il convertitore ATMEGA16U2 mi è necessario perchè la mia scheda deve lavorare in realtime con la USB scambiando i dati (in/out), quindi la porta USB non mi serve per la programmazione.

Veramente le idee le hai molto incasinate, scusami ma devo insistere sul fatto che tu continui ad arrabattare notizie qui e lì senza una documentazione seria di riferimento. Tanto per cominciare del mio manuale hai letto poco o niente, con questo "metodo" alla fine riuscirai a fare ciò che ti serve, ma con le soluzioni peggiori e con una perdita di tempo infinita. Quindi io ora provo a chiarirti un po' di cose, ma la prossima volta che chiedi ti dovrai mostrare "preparato" altrimenti niente più tutorato....(con i termini UNI ci capiamo meglio vero?) Il Mio progetto ISPSER è una scheda principale che può essere usata come shield di Arduino o come scheda esperna, ma il collegamento è sempre di tipo ISP. Con un qualsiasi Arduino e la mia scheda ISPSER puoi programmare via ICSP gli ATmega a 28 e 40 pin PDIP (per i modelli fai riferimento al Manuale) e gli ATmega qfp a 100pin, anche vergini. Con un qualsiasi schedino USB-->Seriale collegato allo specifico connettore e la mia scheda ISPSER puoi programmare gli stessi microcontrollori a patto che abbiano già a bordo il bootloader. Per programmazione intendo anche la modifica dei fuse e dei lock bit, mediante gli opportuni software, oltre che il caricamento di firmware in formato .INO o in formato .HEX

Quindi il Dragon non ti serve a niente, ti torna invece utile per le situazioni per le quali il progetto ISPSER non è previsto (p.es la potente programmazione HV)

Se vuoi usare il Dragon al posto di Arduino assieme alla mia scheda ISPSER puoi farlo, basta collegarli tra loro via ICSP.

Le altre tre schede (adapters) del mio progetto si innestano nei socket pdip della ISPSER e servono per programmare le rispettive famiglie e modelli di componenti (v. Manuale), quindi richiedono NECESSARIAMENTE di essere installate sulla ISPSER (solo una per volta)

Sfruttando l'opportuna scheda adattatrice puoi programmare, con le modalità appena scritte, gli altri modelli di ATmega/ATtiny, in base alla loro pinature (pdip o smd e numero di pin)

Una volta programmato l'ATmega16u2 (a me risulta tranquillamente programmabile senza particolari problemi via ISP), lo devi saldare sul tuo PCB e poi è pronto per lavorare...ma..... come ti dicevo questa funzione la puoi fare svolgere ad un qualsiasi schedino USB-Seriale, ce ne sono alcuni minuscoli ed efficientissimi, basati su altri chip o anche sullo stesso; puoi lasciarlo esterno ed estraibile oppure puoi trovargli un posto fisso sul PCB e saldarlo direttamente sul tuo PCB; questa operazione sarà molto meno dispendiosa di quella che vuoi adottare, ma sarà altrettanto efficiente. Programmazione seriale o scambio dati, il principio di colloquio è lo stesso.

Buongiorno Prof :)

la ringrazio per i consigli e per la spiegazione. Avevo gia letto i PDF delle altre 4 riviste pubblicate e ho iniziato a leggere attentamente il suo manuale partebndo dall'inizio (io se inizio a leggere qualcosa devo sempre iniziare dalla pagina n° 1 perchè non voglio tralasciare mai nulla :) ). Purtroppo lo studio, il lavoro, la casa... mi rubano troppo tempo e quindi per andare un po piu veloce ho approfittatto della vostra preparazione, ma sto leggendo le riviste, manuali...perchè è importante per me e ogni giorno che ci butto gli occhi sopra imparo tantissimo. Quindi chiedo "scusa" se ho dato l'impressione di approfittare della vostra gentilezza e preparazione :)

Vi aggiorno appena avrò qualcosa di concreto ;) Buona giornata a tutti

Ma hai cambiato nick? Hai fatto benissimo a "scusarti" tra "" perché il mio voleva essere solo un incitamento e niente di più, nonostante il tono da cattedra :) :) :) :) Per quello che posso sono a disposizione. Buono studio.

Grazie Prof

non ho cambiato Nick ho usato quello di mio fratello, purtroppo abbiamo un solo computer in casa e quando raramente è nelle sue mani.... guai a chi glielo tocca :( Quindi adesso sto utilizzando il suo per scriverle (spero che questo non crei disordine nella discussione). Se dovesse essere un problema, chiedo gentilmente a Guglielmo (moderatore globale) di rimediare.

Grazie a tutti

No,no, pura curiosità, nessun disordine.

Rieccomi qui... Ho acquistato il programmatore AVRDRAGON, saldato lo zoccolo ZIF da 40 poli e ho montato su di esso un 328p-pu. Sono riuscito a trasferire lo sketch da AVR studio al 328p-pu, ma ho un dubbio circa la tensione dell'AVRdragon. Praticamente, non ho capito se il programmatore sviluppa gia da solo la 12V per il ripristino del microcontrolloreo se devo recuperare la 12V da fonti esterne. Io pensavo che dalla porta USB sulla quale è collegato, esso aveva la possibilità di generare la 12V.

Ho bisogno del vostro aiuto per capire questa cosa. Grazie mille

Jumpereset: Sono riuscito a trasferire lo sketch da AVR studio al 328p-pu, ma ho un dubbio circa la tensione dell'AVRdragon. Praticamente, non ho capito se il programmatore sviluppa gia da solo la 12V per il ripristino del microcontrolloreo

L'AVR Dragon dispone di un piccolo switching step up che genera i 12V partendo dai 5V della USB, pertanto non serve nessuna alimentazione esterna.

Ciao Astro, grazie mille per la info.

io ho gia trasferito uno sketch nel 328p-pu e adesso vorrei provare a proteggerlo. Sono sicuro che al 100% al primo tentativo brikkerò il micro. Quindi avrei bisogno di sapere quale è la procedura per ripristinare l'AVRDragon per riportarlo nelle condizioni di riutilizzo (cancellando ovviamente lo sketch all'interno.. lo so gia).

Premessa: utilizzo AVR studio V4

Grazie mille

Basta che da AvrStudio selezioni la programmazione HV e ripristini i fuse ai corretti valori.

Gentilissimo Astro !! ;)

DOMANDA Premesso che possiedo l'AVRDragon e quindi sono in grado di poter programmare e riprogrammare l'Atmel328P-PU anche nel caso in cui dovessi fare un errore e brikkarlo...durante le prove. Quello che vorrei sapere da voi è: per avere la "MASSIMA PROTEZIONE" contro la copia del firmware all'interno... cosa devo fare?

Da qualche parte leggevo di programmare anche il fuse RSTDISBL, che se qualcuno tenta di accedere alla lettura... non puo farlo se non effettua prima il RESET del pin RSTDISBL,ma che a quel punto il firmware verrebbe cancellato..automaticamente..

Non so, ditemi voi cosa occorre fare. Grazie

Ciao Jump, anche io ho letto qualcosa del genere. Aggiungo anche che F O R S E occorre settare anche il fuse SPIEN

...ma non ne sono certo.

Qualcuno esperto ti darà una risposta su questo forum