Disabilitare Auto reset on serial su una UNO R2

Ho bisogno di disabilitare il reset automatico all' apertura delle comunicazioni seriali, perche' ho scritto una app che riceve info via seriale e vorrei testarla senza serial monitor.

Ho letto sul forum inglese che l' unico modo di fare cio' e' di mettere un capacitore da almeno 10uF tra 5V e reset pin (o era gnd e reset?), ma prima di farlo volevo assicurarmi che non ci fossero altri modi.. e volevo capire se la soluzione e' praticabile sulla R2, oppure inutile. magari sulla R2 e' prevista questa possibilita' con l' uso di jumper? vedo che ci sono due gruppi di 6 pin di cui ignoro l' uso..

altrimenti, che tipo di cap devo usare?

grazie per l' attenzione

PS: ho letto che c'e' un modo per disabilitarlo tagliando una traccia, ma eviterei...

Ciao lattaio

vedo che ci sono due gruppi di 6 pin di cui ignoro l' uso.

Quelli gruppi di contatti sono per saldare dei conettori ISP ( In System Programming). È un modo per caricare dei programmi (per esempio il Bootloader) e settare registri interni del Controller. È un metodo per programmare il Controller una volta saldato sulla scheda. Ti serve un programmatore ISP oppure con le istruzioni di menniti un altro Arduino. XD XD XD XD XD (menniti son stato bravo???)

Per disabilitare il Autoreset:
http://www.arduino.cc/playground/Main/DisablingAutoResetOnSerialConnection

Istruzioni per l'uso di un Arduino come programmatore ISP:
http://www.michelemenniti.it/VHD/Elettronica/GPAT_v3.pdf

Ciao Uwe

uwefed:
Per disabilitare il Autoreset:
Arduino Playground - DisablingAutoResetOnSerialConnection

grazie ma questo link lo avevo gia' letto, e le informazioni sembrano essere pertinenti solo fino alla UNO non rev2

vorrei solo capire che capacitore mettere dove..

questo e' il thread linkato dalla voce del wiki che hai mandato, ma non e' specifico per UNO r2 e soprattutto non e' nemmeno troppo chiaro =)

http://www.arduino.cc/cgi-bin/yabb2/YaBB.pl?num=1295386772

Prima di tutto: cos'è la Arduino UNO R2? In cosa si differenzia, scusami?

Cmq il condensatore da 10 uF è indispensabile sulle UNO per disabilitare il reset: va messo fra RESET e GND: pin lungo del condensatore (+) in RESET e pin corto (-) in GND dopo aver collegato l'Arduino e prima di aprire la comunicazione seriale.

leo72:
Prima di tutto: cos'è la Arduino UNO R2? In cosa si differenzia, scusami?

Cmq il condensatore da 10 uF è indispensabile sulle UNO per disabilitare il reset: va messo fra RESET e GND: pin lungo del condensatore (+) in RESET e pin corto (-) in GND dopo aver collegato l'Arduino e prima di aprire la comunicazione seriale.

Forse è quel mostro col chip 8u2 violentato ]:smiley:
@lattaio
Mi permetto di aggiungere che se tu avessi guardato anche l'altro link in quella Guida trovi tanto di foto in hi-res e spiegazioni esplicite sull'autoreset, potrebbe servirti anche una R da 120Ohm :wink:
@Uwe

uwefed:
.......Ti serve un programmatore ISP oppure con le istruzioni di menniti un altro Arduino. XD XD XD XD XD (menniti son stato bravo???)
Istruzioni per l'uso di un Arduino come programmatore ISP:
http://www.michelemenniti.it/VHD/Elettronica/GPAT_v3.pdf

come te non c'è nessuno XD XD XD

menniti:

uwefed:
menniti son stato bravo???

come te non c'è nessuno XD XD XD

A me voi due iniziate a destarmi sospetto... ]:smiley: :wink: :stuck_out_tongue: XD XD XD

Leo, sei geloso come una Panda cinese :grin:, tranquillo, il nostro è solo un feeling elettronico ;). Uwe nel suo luogo di lavoro ha una grande fama di "tombeur de femmes", ogni tanto becca un infermiera e le fa vedere la sua collezione di provette :stuck_out_tongue_closed_eyes: :stuck_out_tongue_closed_eyes: :stuck_out_tongue_closed_eyes:
E io, beh, sul mio sito hai visto.... quindi siamo al di sopra di ogni sospetto XD

cos'è la Arduino UNO R2? In cosa si differenzia, scusami?

Credo sia questa

@menniti: Certe battute non me le aspettavo da un uomo sposato da 26 anni, vergogna! ]:smiley:

P.S.
Noto, tra l'altro, che la tua ammirazione nei confronti di Uwe si estende anche al di fuori dell'ambito elettronico :stuck_out_tongue_closed_eyes:

superkulak:

cos'è la Arduino UNO R2? In cosa si differenzia, scusami?

Credo sia questa

appunto.... ]:smiley:

@menniti: Certe battute non me le aspettavo da un uomo sposato da 26 anni, vergogna! ]:smiley:

anche tu problemi con la lingua madre eh? male diffuso purtroppo ]:smiley: Prima di tutto non erano battute, in secondo luogo lo sposato sono io non lui, e io non ho fatto nulla di male :slight_smile:

P.S.
Noto, tra l'altro, che la tua ammirazione nei confronti di Uwe si estende anche al di fuori dell'ambito elettronico :stuck_out_tongue_closed_eyes:

stasera non hai sonno, visto che hai tanta voglia di chiacchierare, oppure sei sotto gli effetti di un alcolico potente (alcool etilico 100%?), io ammiro Uwe per quello che vale come elettronico, sono felice per la sua collezione di provette, ma lui non mi inviterebbe mai ad andarla a vedere e io non andrei mai a vederla XD, il resto sono tue allusioni gratuite :slight_smile:

leo72:
A me voi due iniziate a destarmi sospetto... ]:smiley: :wink: :stuck_out_tongue: XD XD XD

Leo, volevo dire quasi la stessa cosa: Sei geloso delle cazzate che spariamo?

@menniti
Oggi non era la giornata delle infermiere, ma dei patologi. Hai mai visto 8 patologi in un giorno? Domani peggio: istallazione di un apparecchio nella servizio mortuario. Meno Patologi in giro. Ok, oggi mi ha telefonta una infermiera, ma voleva solo sapere cosa fare con un foglio che le hanno lascitato.

Ciao Uwe

uwefed:
Leo, volevo dire quasi la stessa cosa: Sei geloso delle cazzate che spariamo?

In quanto a cazzate non sono secondo a nessuno, casomai siete voi che dovete inseguire XD

La comparsa di questa UNO R2 sta portando alcune piccole novità in giro per il sito... nella sezione Hardware/UNO ci sono adesso oltre agli schemi della UNO originale quelli della nuova R2.

superkulak:
Credo sia questa

Che bello; hanno messo un connettore sul ISP anche per il ATmega8U2.
Comunque esiste anche questa versione:

Fatta per difficoltá di fornitura di ATmegas nel DIP.

Ho guardato gli schemi delle due Versioni del Arduino UNO oltre al connettore JP2, un secondo amplificatore operazionale per scegliere la fonte della alimentazione e un ATmega8 al posto del ATmega328 non ho notato niente di sostanzioso.

Ciao Uwe

Insomma, http://arduino.cc/en/Main/ArduinoBoardUno dice di mettere una resistenza da 110 ohm tra 5V e reset

e Arduino Playground - DisablingAutoResetOnSerialConnection dice di mettere un condensatore tra GND e reset

faccio entrambi?

nessuno di questi consigli sembra essere specifico per UNO rev 2. Se date uno sguardo allo schema ( http://arduino.cc/en/uploads/Main/arduino-uno-rev2-schematic.pdf ) vedrete che la rev 2 ha DUE banchi di 6 jumper, ed immagino che uno solo faccia ICSP... l' altro che fa?

(errata corrige: sono tutti e due icsp. domani compro condensatore e resistenza, sperem..)

lattaio:
Insomma, http://arduino.cc/en/Main/ArduinoBoardUno dice di mettere una resistenza da 110 ohm tra 5V e reset
e Arduino Playground - DisablingAutoResetOnSerialConnection dice di mettere un condensatore tra GND e reset
faccio entrambi?

Non so consigliarti. Prova , ne hai 3 possibilitá: resistenza condensatore o entrambe.

lattaio:
nessuno di questi consigli sembra essere specifico per UNO rev 2. Se date uno sguardo allo schema ( http://arduino.cc/en/uploads/Main/arduino-uno-rev2-schematic.pdf ) vedrete che la rev 2 ha DUE banchi di 6 jumper, ed immagino che uno solo faccia ICSP... l' altro che fa?

Sul Arduino UNO ci sono 2 controller: Quello che usi Tu e un altro che fa l' interfaccia seriale -USB (quello vicino al conettore USB) I conettori ICSP (o ISP) sono un o per il ATmega 328 Tuo e l' altro per il ATmega8U2.
Tutte le versioni Arduino UNO ne hanno 2 ma non sempre sono presenti i piedini saldati.

Ciao Uwe

Esiste anche terzo modo per disabilitare l'autoreset, tagliare la pista che tiene chiuso il jumper a saldare "reset en", si trova a destra del quarzo poco sopra il pin 14 dell'ATmega.
Ovviamente una volta tagliata la pista per programmare Arduino diventa indispensabile premere il tasto reset ogni volta, è comunque possibile ripristinare l'autoreset chiudendo il jumper con una goccia di stagno.
Questa soluzione è molto pratica nel caso di applicazioni finali dove al massimo si va ad aggiornare il software ogni tanto con una nuova release.

Alle Arduino UNO si disabilita l'autoreset con l'uso del solo condensatore.

Infine, tra UNO R1 e R2 cambia poca roba, la scheda è la stessa.

EDIT:
il consiglio di inserire una resistenza al posto di un condensatore è riportato in un thread del forum datato 208 e che si riferisce addirittura alle Diecimila. La resistenza funziona solo fino alla 2009, dato che con l'introduzione dell'Atmega8U2 al posto del chip FTDI è cambiato il modo di gestione della linea di reset.
Siccome durante l'upload del codice l'Atmega8U2 mette a livello LOW la linea che porta al pin di reset dell'Atmega328, l'uso del condensatore permette di fornire una tensione necessaria a far vedere al pin un segnale HIGH finché l'Atmega8U2 non toglie il segnale LOW.

Una probabile soluzione alternativa/definitiva :slight_smile:
https://github.com/giseburt/Arduino/downloads
(non provato, ho la 2009)

Non credo serva a questo problema ma a questo.

leo72:
Alle Arduino UNO si disabilita l'autoreset con l'uso del solo condensatore.

Infine, tra UNO R1 e R2 cambia poca roba, la scheda è la stessa.

EDIT:
il consiglio di inserire una resistenza al posto di un condensatore è riportato in un thread del forum datato 208 e che si riferisce addirittura alle Diecimila. La resistenza funziona solo fino alla 2009, dato che con l'introduzione dell'Atmega8U2 al posto del chip FTDI è cambiato il modo di gestione della linea di reset.
Siccome durante l'upload del codice l'Atmega8U2 mette a livello LOW la linea che porta al pin di reset dell'Atmega328, l'uso del condensatore permette di fornire una tensione necessaria a far vedere al pin un segnale HIGH finché l'Atmega8U2 non toglie il segnale LOW.

:astonished:
Leo, penso che su questa cosa dovremmo arrivare ad una soluzione comune, altrimenti si continua a dire ognuno la propria e chi chiede aiuto va in confusione;
io l'ho scritto almeno 100 volte: la mia UNO non richiede né il C e né l'R, la mia 2009 gradisce entrambi, anche se col solo condensatore molte volte (ma non sempre!) mi ha funzionatoquindi la cosa non è scientifica ma variabile da caso a caso.
La cosa a mio parere (ma poi magari qualcuno corregge) funziona così: la R da 10K presente sul circuito fa da pull-up sul pin reset mantenendolo stabilmente HIGH per evitare “falsi” reset, succede se l’alimentazione di Arduino non è stabile, in caso di assorbimento eccessivo la tensione di alimentazione diminuisce e se il pin è libero potrebbe appunto provocare un reset indesiderato.
Una resistenza aggiuntiva da 120 Ohm tiene decisamente in HIGH il pin, finché non arriva il LOW dell’8u2; il condensatore, che viene mantenuto carico dalla R 120, in pratica ha funzione di serbatoio ritardante, cioè quando arriva il LOW dell’8u2 si comincia a scaricare, ma finché la sua carica non scende fino al livello di tensione LOW mantiene il pin reset in HIGH; in parole povere ritarda di qualche istante l’arrivo del LOW dall’8u2 al reset dell’atmega, ritardando di fatto il comando di reset.
EDIT: per chi volesse fare il collegamento di questi due componenti: la R da 120 si collega tra +5V e il pin reset, il C da 10µF si collega tra il pin reset e GND; come detto è possibile, forse consigliabile, collegare entrambi.