Dubbio su ethernet shield compatibile

Salve a tutti, ho di recente ricevuto una shield ethernet vendutami come compatibile che effettivamente ha funzionato subito correttamente avendo caricato sul mio arduino Uno lo sketch preso qui: http://arduino.cc/en/Tutorial/WebServer

Ho notato però che, con la shield collegata all'arduino, mi è impossibile caricare firmware...l'IDE mi da sempre un errore del tipo avrdude: ................ getsync(): not in sync: resp=0x00
e mi succede con qualsiasi sketch io abbia in quel momento già caricato sull'Uno e con qualsiasi io stia provando a caricare..ho anche provato con 3 versioni diverse dell'IDE ma non è cambiato nulla..

Può dipendere dalla shield "compatibile" che impegna in qualche modo la seriale di arduino impedendo all'IDE di fare l'upload ?
Se stacco la shield, eseguo e carico lo sketch non ho mai nessun problema..

Inoltre sarà stato un caso, ancora è successo una sola volta, ma ieri sera dopo circa 20 ore di uptime, ho provato a collegarmi all'indirizzo di rete locale che ho assegnato tramite lo sketch, la pagina web non veniva visualizzata restituendo un errore come se la pagina non esistesse.. ma provando un ping , rispondeva ! :astonished:
Nel monitor seriale non spuntava nulla, mentre fino a qualche ora prima, a ogni apertura della pagina o suo refresh, spuntavano tutte le info relative alla richiesta ricevuta...

Ho escluso eventuali conflitti di ip con altri dispositivi e ho premeto il tasto di reset sulla shield, il tutto è tornato a funzionare immediatamente..

P.S. la scheda è alimentata solo tramite USB attualmente, possono i due problemi in qualche modo dipendere da questo?

P.P.S. immagini della scheda:

Che pin utilizza lo shi ed ? Se impegna i pin 0 e 1 hai in mano la risposta.

Sinceramente visto che é compatibile con l'originale e USA la stessa libreria, ho pensato che usasse gli stessi pin di quella...e quindi ne 0 ne 1 ..

La ethernet shield si collega col connettore ICSP, come la scheda originale giusto?
Se è così, può darsi che ci sia qualche segnale che disturba la programmazione e solo rimuovendola riesci nell'operazione. Non ho la ethernet originale, non so dirti quindi se è una cosa di tutte le ethernet oppure no ma è l'unica cosa che mi viene a mente.

È un problema di reset, lo hanno tutte le compatibili, puoi provare a caricare lo sketch allo stesso modo della manovra di emergenza

Consiste nel premere il reset o collegare il cavo subito dopo la compilazione dello sketch? O cmq manovre da compiere avendo fisicamente la scheda in mano? Perché purtroppo a causa del lavoro la maggior parte di sketch li scrivo solitamente in remoto e li carico mentre non sono a casa...oppure magari esiste qualche mod da poter fare alla shield per poter caricare sempre gli sketch ?

bazzicando in rete ho trovato uno shop che vende una scheda sempre "compatibile" che usa sempre il w5100.. nella scheda del prodotto viene riportato un problema che mostra la scheda e 2 possibili soluzioni..

Power on reset issue:

This is an issue with the Ethernet shield that when it is powered on, the reset button has to be pressed to get the Ethernet shield working. This issue is not specific on this Ethernet shield, but exists in all variant of the Arduino Ethernet shields. The issue is caused by the fact that the normal reset time of the Arduino is too short. Unfortunately this issue cannot be solved by software. Below are the solutions to resolve this problem, you may choose one in your preference.

1. Solder a 100 nF (or thereabout) capacitor between the reset pin and GND, the good place to put it is between the reset button of the Ethernet shield. However, by doing this, the Ethernet shield has to be removed from the Arduino while downloading the program to the Arduino, otherwise you will get the following error

avrdude: stk500_getsync(): not in sync: resp=0x00

2. Clip off the reset pin of the Ethernet shield, and connect it with a wire to an unused i/o of the Arduino. So the reset of the Ethernet shield is independent to the Arduino. Before calling the Ethernet library,  enable that output pin, pull it low for 100ms, and then switch the port back to input mode with pullups disabled.

Posso immaginare che la scheda che ho comprato io, abbia la modifica n.1 già applicata, infatti non ho il problema del power on reset, ma ho proprio il problema descritto nella soluzione 1...
Potrei quindi eliminare il condensatore e adottare la secondas soluzione, se ho ben capito ?!

Andrebbe visto lo schema elettrico della tua ethernet. Lo fornisce, il venditore?

Chiedo :slight_smile: intanto grazie per le risposte..appena mi risponde il venditore, vi faccio sapere !

5a2v0:
oppure magari esiste qualche mod da poter fare alla shield per poter caricare sempre gli sketch ?

esiste un bootloader da mettere al posto di quello preinstallato sull'Arduino che permette di caricare gli sketch direttamente dalla rete però non so se in presenza del problema del reset non funzionino neanche loro, non ne ho idea.
Potresti però resettare via software l'Arduino, usando il circuito di reset interno del watchdog.