Hallo zusammen;
ich bin ein wenig verwirrt hoffentlich könnt Ihr mir helfen…
Es geht um das „leidige“ W5100 Ethernet Shild.
Zum Problem…:
IDE ist eine 1.8.5 incl der dazugehörigen Librarys.
WIZnet Ethernet W5100 (Nummer PG074-010 1901).
Arduino Uno R3.
Folgenden Sketch auf den Uno geladen...
#include <SPI.h>
#include <Ethernet.h>
byte mac[] = {0x00, 0x08, 0xDC, 0x63, 0x75, 0x4B}; // Wiznet
IPAddress ip(192, 168, 43, 2);
IPAddress dnServer(192,168,43, 1);
IPAddress gateway(192, 168, 43, 1);
IPAddress subnet(255, 255, 255, 0);
EthernetServer server(80);
EthernetClient client;
void setup()
{
Serial.begin(9600);
while (!Serial)
{
; // warte
}
Ethernet.begin(mac, ip, dnServer, gateway, subnet);
Serial.println("Ethernet gestartet.");
server.begin();
Serial.println("Server gestartet.");
Serial.print(F("Lokale IP: "));Serial.println(Ethernet.localIP());
}
void loop()
{
EthernetClient client = server.available();
if (client)
{
Serial.println("Neuer Client");
client.println("HTTP/1.1 200 OK\r\n");
client.println("Server: Arduino\r\n");
client.println("Content-Type: text/html\r\n");
client.println();
client.println("<html>");
client.print("<b>Hey da bin ich</b>");
client.println("</html>");
}
delay(1);
// close the connection:
client.stop();
}
… dann schön den Monitor auf gemacht und ab da begannen die Kopfschmerzen denn egal mit welcher Library ich es auch versucht habe, stand da
Lokale IP: 0.0.0.0
oder bei manchen Librarys z.B. von der 1.8.12
„Kann ohne Hardware nix machen“
Aber es ließ sich alles ohne fehler auf den Uno packen (auch mit auskommentierter SPI).
Die LED‘s am Shield zeigten auch keine Kollision, doch von Zeit zu Zeit blinkte die RX.
Also dachte ich mir Pinge ich die Geschichte mal an und schaue was passiert, auch wenn im Monitor 0.0.0.0 stand setzte ich den Ping mit 192.168.43.2 ab.
ich@TESTKISTE~ $ ping 192.168.43.2
PING 192.168.43.2 (192.168.43.2) 56(84) bytes of data.
64 bytes from 192.168.43.2: icmp_seq=1 ttl=128 time=0.719 ms
64 bytes from 192.168.43.2: icmp_seq=2 ttl=128 time=0.607 ms
64 bytes from 192.168.43.2: icmp_seq=3 ttl=128 time=0.505 ms
64 bytes from 192.168.43.2: icmp_seq=4 ttl=128 time=0.624 ms
64 bytes from 192.168.43.2: icmp_seq=5 ttl=128 time=0.530 ms
64 bytes from 192.168.43.2: icmp_seq=6 ttl=128 time=0.629 ms
64 bytes from 192.168.43.2: icmp_seq=7 ttl=128 time=0.611 ms
64 bytes from 192.168.43.2: icmp_seq=8 ttl=128 time=0.635 ms
64 bytes from 192.168.43.2: icmp_seq=9 ttl=128 time=0.499 ms
64 bytes from 192.168.43.2: icmp_seq=10 ttl=128 time=0.600 ms
^C
--- 192.168.43.2 ping statistics ---
10 packets transmitted, 10 received, 0% packet loss, time 9188ms
rtt min/avg/max/mdev = 0.499/0.595/0.719/0.071 ms
Ich war nun also etwas erstaunt über die Funktion der TX LED und habe mal den Browser (erstmal nur den Firefox und später auch noch Chrome und Opera) geöffnet … fix die IP eingegeben (mal mit mal ohne http vorweg auch mit und ohne Port) aber habe nur ein „Timed Out“ zurück bekommen (RX und TX blinkten aber mal zwischendurch).
Dann dachte ich mir versuche ich es mal mit nem Networkscanner und erhoffte mir mehr infos aber das einzige was ich sah war:
192.168.43.1 (meinen Gateway mit der dazugehörigen MAC und Vendor)
192.168.43.2 (also der Uno mit der MAC und Vendor)
192.168.43.3 (meine Testkiste mit MAC, Vendor und Name)
Daten werden also ausgetauscht.
An welcher stelle bin ich jetzt zu blöd die IP im Monitor und diese einfachen 4 Wörter „Hey da bin ich“ vom Uno mittels 192.168.43.2 in meinem Browser anzeigen zu lassen?
Danke schonmal vorweg für eure Hilfe.