reset fuse RSTDISBL con programmatore

Salve, premetto che non sono molto esperto in materia e chiedo l'aiuto del forum per risolvere un problema che da 3 giorni mi stà facendo impazzire, vi spiego il mio problema: stavo cercando di capire come funzionassero le protezioni di arduino per impedire la lettura e scrittura del codice macchina, e per errore (anche per ignoranza) ho abilitato il fuse RSTDISBL su 2 arduino pro mini atmega328, con il mio programmatore TL866II plus collegato a arduino tramite isp, adesso i 2 arduino sono entrami bloccati e inutilizzabili, fermi con lo sketch blink all'interno, mi sono messo alla ricerca per capire come ripristinare questo maledetto RSTDISBL e c'è scritto in rete che si deve usare un programmatore a alto voltaggio, su youtube c'è questo video Восстановление Фьюзов ( Fuses ) с помощью программатора MiniPro TL866 .. English subtitles - YouTube che mostra che anche con un tl866 è possibile resettare i fuse, ma credo che programmi in HV solo tramite lo zoccolo e non in ISP, stavo pensando di acquistare un AVRISP mkII ma non sono sicuro che risolvo il problema e mi ritroverei 2 programmatori inutili; vi prego datemi una mano a capirci qualcosa grazie :cold_sweat:

Mi spiace ma li puoi buttare ... :confused:

Per ripristinare il fuse RSTDISBL occorre un programmatore HV come QUESTO e NON va bene il collegamento ISP (non bastano i 6 fili del ISP, ne occorrono 8) ... quindi dovresti dissaldare il chip e metterlo in uno zoccolo per collegarlo al programmatore.

La prossima volta meglio che eviti di giocare con i FUSE se non sai ESATTAMENTE quello che stai facendo ... :wink:

Guglielmo

P.S.: Probabilmente ci potresti riuscire anche con un programmatore JTAG, come l'Atmel ICE (circa 130 US$) ed utilizzando Atmel Studio ... ma non credo che "il gioco valga la candela".

Grazie per la risposta, era quello che pensavo alla fine e adesso purtroppo ne ho la conferma, mi ero solo dato un po’ di speranza vedendo il video su YouTube ma come pensavo non è stato fatto tramite ISP

Visto che l'alternativa è buttare la scheda potresti provare con i collegamenti volanti senza dissaldare il chip.

Guarda AVR HV Rescue Board nella mia firma, è come la scheda postata da Guglielmo ma un po più semplice da fare, basta avere una breadboard, un transistor, un pulsante e qualche resistenza

è quello che sto provando di fare, stò collegando i pin di arduino che vengono richiesti dal programma tramite cavi allo zoccolo del programmatore, ma continua a dirmi che i collegamenti non ci sono :confused: alcuni pin del chip non sono presenti nei pin di arduino

Ma hai un programmatore che supporta la programmazione HV? Perché altrimenti è inutile qualisasi tentativo.

Il AVRISP mkII (e suoi cloni) NON supporta la programmazione HV, ci vuole o quella schedina che ti ho mostrato o un AVR Dragon o un Atmel ICE.

Guglielmo

gpb01:
Ma hai un programmatore che supporta la programmazione HV? Perché altrimenti è inutile qualisasi tentativo.

Il AVRISP mkII (e suoi cloni) NON supporta la programmazione HV, ci vuole o quella schedina che ti ho mostrato o un AVR Dragon o un Atmel ICE.

Guglielmo

si ma solo tramite lo zoccolo, tramite ISP no

No, certo, come ti ho spiegato occorrono 8 pins per la programmazione HV e la ISP ne ha 6 :smiley:

Guglielmo

doppiozero:
Visto che l'alternativa è buttare la scheda potresti provare con i collegamenti volanti senza dissaldare il chip.

Guarda AVR HV Rescue Board nella mia firma, è come la scheda postata da Guglielmo ma un po più semplice da fare, basta avere una breadboard, un transistor, un pulsante e qualche resistenza

il mio programmatore se usato dallo zoccolo mi fà programmare in HV quindi non dovrei costruire nulla, ma il problema stà nei collegamenti volanti dai pin di arduino allo zoccolo del programmatore, mi dice sempre che i pin non sono collegati

Stai alimentando la scheda? Perché non so se il tuo programmatore è in grado di alimentarla … dovresti verificare … ::slight_smile:

Guglielmo

Ma sei sicuro che il tuo programmatore supporti la programmazione HV?

doppiozero:
Ma sei sicuro che il tuo programmatore supporti la programmazione HV?

Ho chiesto anche io la cosa e la risposta è stata ...

momo93:
il mio programmatore se usato dallo zoccolo mi fà programmare in HV quindi non dovrei costruire nulla ...

Guglielmo

Ah scusa mi era sfuggito

gpb01:
Stai alimentando la scheda? Perché non so se il tuo programmatore è in grado di alimentarla ... dovresti verificare ... ::slight_smile:

Guglielmo

si il programmatore è in grado di alimentare la scheda

momo93:
si il programmatore è in grado di alimentare la scheda

SE i collegamenti che fai sono esatti, allora probabilmente quelo che è saldato sulla scheda da fastidio alla programmazione ... per questo dicevo che normalmnete occorre rimuovere il chip e metterlo nel programmatore HV o usare un programmatore JTAG.

Guglielmo

gpb01:
SE i collegamenti che fai sono esatti, allora probabilmente quelo che è saldato sulla scheda da fastidio alla programmazione ... per questo dicevo che normalmnete occorre rimuovere il chip e metterlo nel programmatore HV o usare un programmatore JTAG.

Guglielmo

si lo pensato anche io che i componenti sulla scheda possono dare fastidio, peccato ci ho provato :smiley:

per non combinare altri casini su altri arduino :smiley: quali fuse devo abilitare per impedire la clonazione del codice macchina, ma avendo modo anche in futuro di poter modificare lo sketch oppure resettare arduino anche da ISP? allego la foto dei pin che posso selezionare, quelli gia selezionati sono di default

NON dei toccare i FUSE, devi modificare i "Lock Bits" che sono in un registro a parte. Devi studiarti il datasheet, sezione 27 e vedere cosa e come vuoi proteggere.

Che programma usi per modificare i FUSE ed i Lock Bits ?

Guglielmo

gpb01:
NON dei toccare i FUSE, devi modificare i "Lock Bits" che sono in un registro a parte. Devi studiarti il datasheet, sezione 27 e vedere cosa e come vuoi proteggere.

Che programma usi per modificare i FUSE ed i Lock Bits ?

Guglielmo

uso il softwer del programmatore si chiama "Xgpro TL866II Plus" nella foto che ho caricato prima c'è la schermata dei fuse e dei Lock Bits che mi trovo davanti, ma non so quale selezionare

Come ti ho detto, devi prendere il datasheet della MCU che stai programmando e guardare la sezione che parla dei "Lock Bits" la cui attivazione ti permette vari livelli di protezione (programma, EEPROM, ecc.)

Guglielmo