Ethernet shield Question

Salve a tutti,

Un problema che mi sta assillando è legato alla non visualizzazione del modulo "shield ethernet" in rete, ma se quest' ultimo viene collegato

direttamente al pc, tutto funziona alla perfezione.

Ho controllato più di una volta le impostazioni del modem router, ho eliminato l' assegnazione automatica degli indirizzi ip, ho inserito l'indirizzo

ip, nella lista previlegiata del modem, con tanto di assegnazione mac, ma niente da fare, il modulo in rete, non viene visualizzato. :0

Il fatto che lo shield e le porte del modem, non siano guaste, me lo rivela il collegamento diretto al pc e solo in quel contesto, visualizzo la pagina

di prova nel browser.

Ciao

..le sfere di vetro vanno alla grande, in questo periodo.. :zipper_mouth_face:

Un problema che mi sta assillando è legato alla non visualizzazione del modulo "shield ethernet" in rete, ma se quest' ultimo viene collegato
direttamente al pc, tutto funziona alla perfezione.

inizio chiedendo maggiori informazioni riguardo all'hw utilizzato (versione Arduino, versione Eth Shield), e allo sketch che stai usando per testare il tutto.

Se lo shield è l'ufficiale, verifica di aver definito anche i valori di netmask (e gateway), oltre all'ip.

ciao

per capire meglio... se colleghi con un cavo l'ethernet shield alla presa di rete del PC riesci a pingare Arduino e a collegarti?
Se invece entrambi (PC e Arduino) sono connessi al router no?
Veramente strano, il router dovrebbe avere un semplice "switch" al suo interno...

prova così: carica uno sketch che risponda al ping, dal PC fai:

ping <indirizzo_ip_arduino>

e se non ti risponde dai

arp -a

vedi se almeno il PC riesce ad ottenere l'ARP che hai definito nel tuo sketch

Non é che hai dato lo stesso indirizzo IP al Arduino come ha il router?
Ciao Uwe

Si leggono molti messaggi riguardanti la eth shield con scritto "non riesco a vedere arduino", sono mesi che continuo a chiedermi cosa vorrà dire non riesco a vedere?
Chi o che cosa la deve vedere?
Perchè si deve vedere?
A cosa serve vedere la scheda?

Spiegate cosa state facendo....
non lo vedo nell'elenco dei dhcp router,
non lo pingo da pc su rete locale,
non lo pingo da ip remoto,
non vedo il mac
non vedo l'IP
non vedo arduino perchè è buio
ecc
ciao

buio pesto? accendere una luce?? :wink: :wink:
Ciao Uwe

Salve a tutti e grazie innanzitutto per il Vostro intervento,

Per essere giustamente più preciso, posterò lo sketch che tra l'altro è quello preconfezionato nel software di arduino e io non ho fatto nient'altro che modificare i parametri di rete.

#include <SPI.h>
#include <Ethernet.h>

// network configuration. gateway and subnet are optional.

// the media access control (ethernet hardware) address for the shield:
byte mac[] = { 0x90, 0xA2, 0xDA, 0x00, 0x6C, 0xE3 }; (MAC DELLA MIA SCHEDA)
//the IP address for the shield:
byte ip[] = { 192, 168, 0, 6 }; (IP LIBERO DELLA MIA RETE)
// the router's gateway address:
byte gateway[] = { 192, 168, 0, 1 }; (IP MODEM)
// the subnet:
byte subnet[] = { 255, 255, 255, 0 }; (CLASSICO PARAMETRO ORMAI UN DEFAULT PER MOLTE RETI)

// Initialize the Ethernet server library
// with the IP address and port you want to use
// (port 80 is default for HTTP):
EthernetServer server(80);

void setup()
{
// initialize the ethernet device
Ethernet.begin(mac, ip, gateway, subnet);

// start listening for clients
server.begin();
}

void loop()
{
// if an incoming client connects, there will be bytes available to read:
EthernetClient client = server.available();
if (client == true) {
// read bytes from the incoming client and write them back
// to any clients connected to the server:
server.write(client.read());
}
}

Per quanto riguarda l'hw, possiedo un Arduino UNO, con shield ethernet che trovate rappresentata in questa immagine: http://arduino.cc/en/Guide/ArduinoEthernetShield

Rammento che se collego arduino direttamente al pc, funziona tutto alla perfezione, visualizzando ad esempio, una pagina di prova nel browser.
Come ultima cosa, ho provato a collegare al mio modem, un piccolo convertitore USB/ETHERNET, attribuendogli un indirizzo ip, sia statico che dinamico e funziona sempre.
Altro test che ho eseguito è stato quello di disabilitare e abilitare il DHCP, ma il modem già a priori, non visualizza lo shield collegato, nella lista preposta...., mah che rabbia :0

lucadentella:
ciao

per capire meglio... se colleghi con un cavo l'ethernet shield alla presa di rete del PC riesci a pingare Arduino e a collegarti?
Se invece entrambi (PC e Arduino) sono connessi al router no?
Veramente strano, il router dovrebbe avere un semplice "switch" al suo interno...

prova così: carica uno sketch che risponda al ping, dal PC fai:

ping <indirizzo_ip_arduino>

e se non ti risponde dai

arp -a

vedi se almeno il PC riesce ad ottenere l'ARP che hai definito nel tuo sketch

Proverò anche (ARP-A) e vediamo se fa qualcosa.

Ciao

Aggiorno il mio post, perchè penso di essere prossimo alla soluzione; ho fatto un altro esperimento che consiste nell utilizzare un dispositivo, per inviare segnali ethernet, tramite onde convogliate, nella linea elettrica, in sostanza se interpongo questo dispositivo, il modulo lo vedo e funziona, in caso contrario, nulla da fare.

Riepilogando: nella porta del router, inserisco il dispositivo ad onde convogliate, che verrà collegato tramite presa elettrica.

Nella mia stanza, prelevo dal secondo dispositivo ad onde convogliate, il segnale ethernet che verrà collegato al modulo shield ethernet.
Magia! Funziona, a questo punto devo dare una spiegazione tecnica all'inghippo e l'unica cosa che mi viene in mente è: non che sta m....ia di shield, voglia un cavo incrociato???

Ciao a tutti :slight_smile:

Ciao

normalmente la configurazione è

  • dispositivo di rete -> altro dispositivo di rete (es. Arduino -> PC) = cavo incrociato
  • dispositivo di rete -> switch (o router) = cavo dritto

in realtà quasi tutti i dispositivi "moderni" hanno la funzionalità di Auto-MDIX ovvero "capiscono" che cavo stai usando e agiscono di conseguenza. Potrebbe essere però che tu stia usando un cavo cross, che quindi va bene per un collegamento diretto ma non verso il router se questo non fa auto-sensing...

lucadentella:
Ciao

normalmente la configurazione è

  • dispositivo di rete -> altro dispositivo di rete (es. Arduino -> PC) = cavo incrociato
  • dispositivo di rete -> switch (o router) = cavo dritto

in realtà quasi tutti i dispositivi "moderni" hanno la funzionalità di Auto-MDIX ovvero "capiscono" che cavo stai usando e agiscono di conseguenza. Potrebbe essere però che tu stia usando un cavo cross, che quindi va bene per un collegamento diretto ma non verso il router se questo non fa auto-sensing...

Salve Luca,

Si effettivamente hai ragione, purtroppo mi ero illuso che funzionasse, ma a questo punto, la causa potrebbe essere da imputare ad un probabile guasto dello shield, dal momento che ancora adesso non funziona :0; nel contempo ho potuto constatare, anche un altro problema ed in sostanza, lo shield non accetta gli indirizzi ip es: 192.168.0.4, con la conseguente mancata trasmissione dell' ip stesso anche collegandolo direttamente al pc, se però l'indirizzo lo modifico in: 192.168.1.4, ecco che riappare alla perfezione col ping e nel browser.

A questo punto ho reimpostato il modem, perchè accettasse ip, con numerazione x.x.1.0, anzichè x.x.0.1. ma anche in questo caso nessun risultato.

Ciao

Salve a tutti,

Problema definitivamente risolto!

Svelato l'arcano e colpevole di tutto il caos è il mio modem (tra l'altro da poco acquistato e pagato a peso d'oro ) che non accetta lo shield ethernet.
Per bypassare il problema, ho collegato in cascata, uno switch router che per fortuna avevo in casa, configurandolo come bridge 8)
Per farla breve, bisogna essere fortunati, di trovare un modem router "compatibile" con questo shield, altrimenti l' utilizzo di uno switch router in cascata è d'obbligo :P.

Adesso mi viene da sorridere, vedendo che uno shield piccolo, abbia bisogno, in certe situazioni, di parecchio hw intorno, un po' come avere un piccolo cellulare in tasca e due batterie tipo valigie, per alimentarlo eheh :roll_eyes:

Un saluto e buona domenica

ciao

sarebbe interessante capire cosa - dello stack ethernet - non piace al tuo modem visto che dovrebbe essere tutto standard...

ma scusami la stupida domanda ma la tua scheda di quale tipo e cioe che cip monta un enc28j60 oppure un winznet

Ha gia' risposto a questa domanda:

matrix77:
Per quanto riguarda l'hw, possiedo un Arduino UNO, con shield ethernet che trovate rappresentata in questa immagine: http://arduino.cc/en/Guide/ArduinoEthernetShield

questa e' la board ufficiale, quindi wiznet, non a caso dice di usare lo sketch incluso in Ide, nell'ide non c'e' supporto ufficiale per l'ENC

mi associo alla domanda di lucadentella, ed azzardo che potrebbe essere guasto il router, visto che e' nuovo fattelo sostituire, male non fa

a ok scusate non avevo notato , e con questo non dovresti avere troppe difficolta

.....che potrebbe essere per reagire così male ad un livello così basso?
MTU? (troppe ritrasmissioni o troppa frammentazione)
Porte hub non switching sul router e cavo dritto ?(nessuna autonegoziazione sull'uplink)
Porte antiche a 10mbit sul router con mancata/fallata autonegoziazione sulla velocità di comunicazione?.
sarei curioso di capire anch'io a che livello è l'inghippo...

Testato:
Ha gia' risposto a questa domanda:

matrix77:
Per quanto riguarda l'hw, possiedo un Arduino UNO, con shield ethernet che trovate rappresentata in questa immagine: http://arduino.cc/en/Guide/ArduinoEthernetShield

questa e' la board ufficiale, quindi wiznet, non a caso dice di usare lo sketch incluso in Ide, nell'ide non c'e' supporto ufficiale per l'ENC

mi associo alla domanda di lucadentella, ed azzardo che potrebbe essere guasto il router, visto che e' nuovo fattelo sostituire, male non fa

Ma dubito che possa trattarsi di un guasto, ho provato un convertitore USB/ETHERNET, è un piccolo dispositivo server video e tutto viene "visto" regolarmente; ci potrebbe essere qualche casistica di guasto in linea con questo tipo di problema?O forse un BUG nel firmware, visto che l'ho appena aggiornato?Non dimenticate che comunque lo switch router è collegato in cascata ad una di quelle porte maledette :0 e funziona senza problemi.La cosa che mi fa arrabbiare è che lo shield, dovrebbe funzionare in maniera fluida, proprio come una qualsiasi periferica acquistata, non ci dovrebbero essere problemi di questo tipo, visto che per ora, tutto quello che ho collegato al mio modem, funziona senza problemi, quindi per logica, ci deve essere una differenza, abbastanza pesante tra un dispositivo ethernet acquistato e lo shield stesso, una qualche remota incompatibilità che ogni tanto si fa sentire.Purtroppo dovrei approfondire di più l' argomento, per capire cosa non piace al mio modem di "sto" shield.

Ciao

...per curiosità, che modem router è? (marca / modello)

BrainBooster:
.....che potrebbe essere per reagire così male ad un livello così basso?
MTU? (troppe ritrasmissioni o troppa frammentazione)
Porte hub non switching sul router e cavo dritto ?(nessuna autonegoziazione sull'uplink)
Porte antiche a 10mbit sul router con mancata/fallata autonegoziazione sulla velocità di comunicazione?.
sarei curioso di capire anch'io a che livello è l'inghippo...

Salve a anche a te e grazie per il tuo intevento,

Ti posso solo dire che l'indirizzo "pingato" in realtà mi dava come risultato "indirizzo non raggiungibile", quando lo shield veniva collegato direttamente al modem, a differenza dalla classica situazione, dove non sia ha nessuna risposta, da un indirizzo "pingato" e non assolutamente trovato in rete.
Un ultima cosa che può forse interessare e che i moduli ad onde convogliate che ho provato, andavano spesso in crash, con lo shield collegato e dovevo spesso resettarli.

Ciao

BrainBooster:
...per curiosità, che modem router è? (marca / modello)

netgear n300

Ciao