Cambiare ip ethernet shield dinamicamente

Conoscete la possibilità di poter cambiare l'ip dello shield ethernet dinamicamente.

Ovvero in configurzione ServerWeb è possibile configurare o modificare l'ip nel void loop() piuttosto che solo nel void setup()

grazie

Ciao,

Conoscete la possibilità di poter cambiare l'ip dello shield ethernet dinamicamente.

dovrebbe essere possibile.
Non ho mai provato a cambiarne l'ip, ma mi è capitato di dover gestire il begin() su una funzione richiamata tanto dal setup, che dal loop.
Poichè è nel begin che ne definisci l'ip, non vedo limiti particolari.
M

Ho provato modificando la varialbile ip e richiamando all'interno del loop queste due righe:

Ethernet.begin(mac, ip);
server.begin();

ma non sembra funzionare :roll_eyes:

Con google ho trovato questa discussione, che non ho letto: http://www.arduino.cc/cgi-bin/yabb2/YaBB.pl?num=1260737423/7

grazie

Ciao
leggendo la discussione postata da GianfrancoPa, effettivamente non ti ho detto una cosa che forse è fondamentale:
faccio il reset dello shield ethernet, prima di rieseguire il begin() :smiley:

Effettuare il reset dello shield ethernet non è complesso: ti basta curvare leggermente il pin reset dello shield, e con un cavetto portarlo ad un pin con cui piloterai il reset.
Arduino in tutto ciò continuerà a funzionare, se non per la parte ethernet (che mentre si resetta non è naturalmente disponibile!)

Qui qualche riga di codice che mi fu di spunto per pilotare il reset:
http://www.arduino.cc/cgi-bin/yabb2/YaBB.pl?num=1225354009/41#41
In questo caso si applicava alproblema dello shield eth che si "incastrava" o che senza un primo reset non ne voleva sapere di partire - anomalia quest'ultima risolta con il nuovo shield eth.

Qui una fotina esplicativa

vi ringrazio moltissimo
stasera provo

ho scollegato il reset della scheda ethernet e l'ho collegato ad un Digitale dell'arduino ma.....
mi da il seguente errore

avrdude: stk500_getsync(): not in sync: resp=0x00
avrdude: stk500_disable(): protocol error, expect=0x14, resp=0x51

in fase di uploading alla board

Ciao,
puoi rimuovere lo shield eth per caricare lo sketch.

Magari sto sragionando, ma mio avviso non è cmq quello che genera l'errore.

No dici benissimo ma nn funziona.
Mi rimangono le due righe di errore in fase di upload da quando ho collegato il reset dello shield ad un pin dell'arduino.
ho provato ad inserire il condensatore tra il suddetto pin e GND ma continua a rimanere il problema.

Ho notato http://www.arduino.cc/cgi-bin/yabb2/YaBB.pl?num=1225354009/41#41 che cmq il problema non a tutti si risolve....

Per cambiare dinamicamente l'IP non serve resettare la shield, basta leggere il datasheet del W5100 per capirlo, adesso non ho tempo per verificarlo, però credo che la libreria della Ethernet shield non preveda esplicitamente questa possibilità.
Prima di fine settimana non posso mettermi a controllare quello che fa la libreria ed eventualmente scrivere le eventuali righe di codice aggiuntivo, intanto provate a leggervi i thread dove si parla del DHCP, anche se è una problematica diversa serve il cambio dinamico dell'ip.

per la mia applicazione mi accontenterei di impostare l'ip nel loop senza impostarlo nel setup (dunque non cambiare l'ip ma impostarlo una sola volta dopo l'avvio nel loop del programma), ma comunque mi dà problemi.

Grazie