arduino uno en ethernet shield en telenet router

Kan iemand mij helpen om dit werkend te krijgen? Ik heb al alles geprobeerd, maar ik krijg mijn webpagina niet te zien en volgens mij komt dit door slechte instellingen van de telenet router. Heeft iemand voor mij de juiste instellingen en een sketch voorbeeldje?

Je moet echt wat meer vertellen over wat je allemaal al hebt gedaan en hoe de instellingen van je router (natuurlijk alleen voor wat betreft de Arduino) nu staan.
De kans dat iemand met precies dezelfde combinatie aan de gang is, is niet heel groot.
Wat doe je om de webpagina in je browser te bekijken ?
Doe je dat vanuit huis, of doe je dat via het internet ?

En zo zijn er nog een hele hoop vragen te stellen.
Daarom dus de noodzaak dat je zoveel mogelijk informatie verstrekt.

Welk ethernetshield gebruik je ?

ik maak gebruik van een ethernet shield v1.1 met een enc28j60 chip (wel chinees ebay type van flamingo...). In eerste instantie wil ik de webpagina bekijken van thuis uit en daarna natuurlijk van buiten af. Ik heb de poort 2009 open gezet op de telenet router met 192.168.0.67, dit heb ik allemaal ingegeven in het voorbeeld die in arduino software zit voor web server.
Daarna naar het IP en het lukt dus niet.
Na het open zetten van de poort heb ik eens gekeken met een portscanner, maar blijkbaar staat de poort niet open. Geen idee eigenlijk hoe ik dan wel moet doen.

ff een paar vragen:
a) op welk adres staat de gateway?
b) heb je al getest of de web server op het lokale LAN het wel doet?

Je kunt niet van binnen je eigen thuisnetwerk via het internet terug naar je eigen netwerk.
Dus als je gaat testen van binnen je eigen netwerk, dan moet je dat doen door het interne IP van je netwerkshield en poort te gaan.

Vanuit je router kun je ook van internet poort 2009 naar poort 80 aan de binnenkant gaan als het goed is (kan aan de firmware van je router liggen).
Dan hoef je geen gedoe met poorten te doen met je Arduino / netwerkshield.

@ruben
Sorry maar zelfs met de extra informatie die je geeft ben je nog veel te vaag om iets te kunnen zeggen.
Ik heb telenet en ik kan aan men arduino yun's. Niet echt hetzelfde als een shield maar vanaf het netwerk bekeken eigenlijk wel.
Dus kan het?: Ja
Kunnen we je helpen? Niet als je zo vaag bent.

Een paar vragen die zo direct bij mij opkomen

  1. gebruik je dhcp of een fixed IP adres op je wifi shield
  2. kan je naar de web pagina op je locale lan?
    2.a) Als het kan wat is dan de url die je gebruikt?
  3. Zie je je arduino op je telenet pagina (telenet.be->mijn telenet->internet->draadloze instellingen->geavanceerd).
  4. waarom zet je poort 2009 open voor een web pagina?
  5. bij telenet kan je geen poort openzetten maar enkel een range van poorten heb je dan 2009 2009 ingegeven?
  6. Hoe heb je geprobeerd om van buitenuit aan je arduino te geraken?
  7. Welk IP adres heb je dan gebruikt? Waar heb je dat IP adres gevonden?
    Ik probeer je niet in de grond te boren met vragen. Dit zijn allemaal heel cruciale vragen waar je het antwoord van moet weten als je zo iets wilt opzetten.

Met vriendelijke groet
Jantje

rubenvanveerdeghem:
ik maak gebruik van een ethernet shield v1.1 met een enc28j60 chip (wel chinees ebay type van flamingo...).
~ ~ ~ ~ ~ ~ ~ ~ ~ ~
dit heb ik allemaal ingegeven in het voorbeeld die in arduino software zit voor web server.
~ ~ ~ ~ ~ ~ ~ ~ ~ ~
het lukt dus niet.
~ ~ ~ ~ ~ ~ ~ ~ ~ ~
Geen idee eigenlijk hoe ik dan wel moet doen.

Die ethernet printjes zijn praktisch allemaal 'made in china', dus dat zit wel goed.

nicoverduin:
b) heb je al getest of de web server op het lokale LAN het wel doet?

Dat vraag kwam ook in mij op, maar ik denk niet dat het met de huidige software+hardware ook maar enigszins kan werken.

De reden is dat ruben een ENC28J60 probeert te gebruiken met een voorbeeld-sketch wat in de arduino software zit.
Zover ik weet, werken de voorbeeld sketches in de Arduino IDE allemaal met de standaard meegeleverde ethernet.h librarie die uitsluitend geschreven is voor de W5100 ethernet chip. Daarom kan het zo nooit werken.
(n.b. Ik heb zelf nooit iets met een ENC28J60 gemaakt maar altijd met de W5100-ethernetshield)

De oplossing is om de standaard ethernet library te 'renamen' of te 'deleten' en om dan de ethernet library voor de ENC28J60 chip te installeren onder de naam ethernet.h . Na verwisseling van de library zullen de meeste ethernet voorbeeld sketches gewoon werken.
Of je installeert de ENC28J60 library en je past in je sketch de naam v/d library aan.

MAS3:
Je kunt niet van binnen je eigen thuisnetwerk via het internet terug naar je eigen netwerk.
Dus als je gaat testen van binnen je eigen netwerk, dan moet je dat doen door het interne IP van je netwerkshield en poort te gaan.

Vanuit je router kun je ook van internet poort 2009 naar poort 80 aan de binnenkant gaan als het goed is (kan aan de firmware van je router liggen).
Dan hoef je geen gedoe met poorten te doen met je Arduino / netwerkshield.

Hier vergist MAS3 zich. Als je vanuit je eigen locale netwerk je eigen externe IP4 adres intypt, inclusief het poortnummer ( dus b.v. 185.234.66.45:2009) dan kom je gewoon via de DNS-server van je provider weer terug in je router. Daar staat dan dat poort 2009 vertaalt wordt naar poort 80 en via de LAN kom je in je lokale server.
( waarschijnlijk werkt het met IP6 ook zo)

@ ruben. Dus nu eerst zorgen dat je de goede library gebruikt, of je schaft het ethernet-shield met W5100 chip aan, aan jouw de keuze.

Als je dat voor elkaar hebt, dan zorg je dat je op je lokale IP in de webserver kunt komen en daarna pas ga je kijken hoe je je router wijs gaat maken dat die aan 'porttranslation' moet gaan doen.

Jantje:
@ruben
Sorry maar zelfs met de extra informatie die je geeft ben je nog veel te vaag om iets te kunnen zeggen.
Ik heb telenet en ik kan aan men arduino yun's. Niet echt hetzelfde als een shield maar vanaf het netwerk bekeken eigenlijk wel.
Dus kan het?: Ja
Kunnen we je helpen? Niet als je zo vaag bent.

Een paar vragen die zo direct bij mij opkomen

  1. gebruik je dhcp of een fixed IP adres op je wifi shield
  2. kan je naar de web pagina op je locale lan?
    2.a) Als het kan wat is dan de url die je gebruikt?
  3. Zie je je arduino op je telenet pagina (telenet.be->mijn telenet->internet->draadloze instellingen->geavanceerd).
  4. waarom zet je poort 2009 open voor een web pagina?
  5. bij telenet kan je geen poort openzetten maar enkel een range van poorten heb je dan 2009 2009 ingegeven?
  6. Hoe heb je geprobeerd om van buitenuit aan je arduino te geraken?
  7. Welk IP adres heb je dan gebruikt? Waar heb je dat IP adres gevonden?
    Ik probeer je niet in de grond te boren met vragen. Dit zijn allemaal heel cruciale vragen waar je het antwoord van moet weten als je zo iets wilt opzetten.

Met vriendelijke groet
Jantje

Ik zal alle vragen proberen te beantwoorden.

1)volgens mij is het een fixed ip, maar dat ben ik niet zeker, hoe kan ik dit zeker weten?
2)lokaal kan ik niet op de server en dus weet ik dat het nog geen zin heeft om dit extern te proberen
3)ik zie mijn arduino niet op de telenet pagina
4)poort 2009 is gewoon een willekeurige keuze, moet ik iets anders nemen?
5)ik heb enkel ipv4 opengezet op 192.168.0.67 op poort 2009 tot 2009. bij ipv6 heb niets aangepast. De gateway staat op 192.168.0.1 en dmz staat op 192.168.0.1.
6)heb ik dus nog niet geprobeerd
7)zie 6 :slight_smile:

Dat je mij niet in de grond wil boren is mij wel duidelijk, is ook geen probleem hoor, zolang ik maar aan een oplossing geraak :-).

Ik heb ook al geprobeerd om de juiste library te downloaden, maar ik ook niet zeker dat het de juiste is, want ook daarmee is het voorlopig niet gelukt. zie EtherCard/README.md at main · njh/EtherCard · GitHub

Hopelijk kunnen jullie mij terug verder helpen.

Er staat mij iets van bij dat ik deze in het verleden heb gebruikt. Dat ging prima.

Gewoon de zip downloaden en in jouw <SKETCH_FOLDER> folder zetten.

rubenvanveerdeghem:
1)volgens mij is het een fixed ip, maar dat ben ik niet zeker, hoe kan ik dit zeker weten?

Dat bepaal jij in je Arduino code.

rubenvanveerdeghem:
2)lokaal kan ik niet op de server en dus weet ik dat het nog geen zin heeft om dit extern te proberen
3)ik zie mijn arduino niet op de telenet pagina

Dit wil zeggen dat je arduino niet op het netwerk geraakt. Het verhaal verkeerde library is een mogelijke verklaring.
Of met andere woorden: "waarschijnlijk heb je je shield nog niet aan de klap"

rubenvanveerdeghem:
4)poort 2009 is gewoon een willekeurige keuze, moet ik iets anders nemen?
5)ik heb enkel ipv4 opengezet op 192.168.0.67 op poort 2009 tot 2009. bij ipv6 heb niets aangepast. De gateway staat op 192.168.0.1 en dmz staat op 192.168.0.1.
6)heb ik dus nog niet geprobeerd
7)zie 6 :slight_smile:

Laten we dat dan maar houden tot na dat je je andere problemen hebt opgelost

Met vriendelijke groet
Jantje

Ik heb nog even zitten zoeken en eens je je arduino van het lokaal netwerk kan bereiken is het heel makkelijk om die ook via het internet te bereiken bij telenet.
Merk op dat deze aanpak risico's bevat voor je elektronisch veiligheid. Ik raad deze methode dan ook alleen aan om te testen of om open te zetten; te doen wat je moet doen; en weer dicht te zetten.
Enkel te gebruiken op eigen verantwoordelijkheid.

Wat heb je nodig:
Je telenet aanlog naam en wachtwoord
Je telenet zo ingesteld dat je op de telenet Homespots kan aanloggen
Het ip adres van je arduino op je locale netwerk.

Ga naar mijn telenet->internet->draadloze instellingen->netwerk
Copieer het IP adress onder WAN configuratie (Ik noem dat nu WAN IP)

Ga naar mijn telenet->internet->draadloze instellingen->geavanceerd->IPV4
vul het ip adres in van je arduino in dmz. (je kan enkel de 2 laatste cijfers invullen; als de andere cijfers niet kloppen heb je je arduino niet aan de telenet router hagen.)
druk op wijzigingen opslaan.

Verwijder all netwerk kabels van je computer.
Sluit enkel aan op het wifi netwerk TELENETHOMESPOT
open een browser en surf naar een pagina (aanvaard eventuele redirects)
Je krijgt een aanmeld pagina voor telenet homespot
vul je naam en wachtwoord in en vink aan dat je akkoord gaat met de voorwaarden.
meld aan
surf nu naar je WAN IP adres en je zit op je arduino
Ik heb ook ssh succesvol getest. Ik denk dat alle poorten en protocollen rechtstreeks open staan.
!!!!Dit is dus een enorm gat in je beveiliging!!!!!

Met vriendelijke groet
Jantje

Ik krijg het maar niet aan de praat. Wat ik ook probeer. Ik heb de library erop gezet en een voorbeeldje genomen uit deze library. Ik heb daar een ip-adres ingegeven, maar ik moet daar geen poort ingeven. Wat ik daarna ook probeer in de instellingen van telenet router, ik krijg geen respons. Nochtans als ik de netwerkkabel in het shield steek gaat het ene ledje constant branden en het andere licht nu en dan op. Verder geraak ik niet. Pingen werkt ook niet. Wat zou ik nog kunnen proberen?
Ik heb de netwerkkabel ook getest met mijn laptop, deze werkt dus ook :-).

rubenvanveerdeghem:
Ik krijg het maar niet aan de praat. Wat ik ook probeer. Ik heb de library erop gezet en een voorbeeldje genomen uit deze library. Ik heb daar een ip-adres ingegeven, maar ik moet daar geen poort ingeven. Wat ik daarna ook probeer in de instellingen van telenet router, ik krijg geen respons. Nochtans als ik de netwerkkabel in het shield steek gaat het ene ledje constant branden en het andere licht nu en dan op. Verder geraak ik niet. Pingen werkt ook niet. Wat zou ik nog kunnen proberen?
Ik heb de netwerkkabel ook getest met mijn laptop, deze werkt dus ook :-).

Kun je hier nog even de link van de library plaatsen, om even te kijken of het echt een ENC28j60 lib is, en ook de sketch zelf?

Meestal wordt poort 80 gebruikt voor http verkeer. Poort 80 is standaard en vaak staat er ergens in je sketch een regel met zoiets als : EthernetServer server(80); dat 80 slaat dus op de poort die gebruikt wordt.

Wel moet je een MAC adres ingeven, dat zul je zelf moeten verzinnen omdat dat ENC-shield geen eprom met MAC adres heeft. Voor MAC kun je b.v. DE.AD.BE.EF.FE.ED gebruiken, Het maakt niet uit MITS je maar geen mac adres neemt wat al op jouw lokale netwerk in gebruik is. Het mac adres wordt door de router gebruikt om lokaal bij te houden welke client/PC welk data pakket moet krijgen.

Je kunt in je telenetrouter kijken bij de lijst van aktieve (lokale) IP nummers, als daar het nummer bij staat wat jij in de sketch hebt gegeven dan heeft de router de ethernet shield herkend en dan kun je dat adres ook pingen. Als in de lijst van aktieve IP-nummers het nummer van de ethernetshield niet vermeld wordt dan is er gegarandeerd iets fout in de sketch of in de kabel. Als de 2 ledjes oplichten dan lijkt de kabel ok, dus moet het aan de sketch/library liggen.

EtherCard/README.md at main · njh/EtherCard · GitHub en
TrollMaker.com is for sale | HugeDomains en
Google Code Archive - Long-term storage for Google Code Project Hosting.

Telkens zit er een voorbeeldje bij met een simpele webpagina.
De eerste doet z'n werk niet, de tweede heeft foutmeldingen bij het compileren en de derde blijft hangen tijdens het compileren.

Voorlopig dus nog steeds geen succes.

Wat zijn de foutmeldingen? Nu is het een beetje zo van "Ik ben bij drie garages geweest" en mijn auto doet het nog steeds niet. Maar wat het niet doet en welke meldingen er zijn is onbekend.
Het is dus handiger als:
a) je aangeeft welke sketch je gebruikt hebt (dus gewoon hier neer zetten)
b) welke foutmeldingen je kreeg

Je kan moeilijk van iedereen die je wilt helpen verwachten dat ze eerst gaan uitzoeken waar je allemaal hent gekeken en welke sources je hebt gebruikt.

Welke type Arduino gebruik je

Mvg Marcel

Dit is mijn arduino: R3 ATmega328P CH340G Replace ATmega16U2 Mini USB Board | eBay
Dit is mijn ethernet shield: Ethernet Shield ENC28J60 RJ45 Lan Network Webserver For Arduino 2009 UNO Mega256 | eBay

In bijlage de 3 sketches: zoals eerder gezegd, de eerste (backsoon.ino) is compileerbaar maar ik vind de arduino webpagina niet. De tweede (helloworld.pde) geeft een foutmelding die in het bestandje error.txt te vinden is. En het derde (webserver.pde) blijft maar bezig met compileren.

bedankt allemaal om te helpen

backSoon.ino (1.61 KB)

WebServer.pde (5.34 KB)

HelloWorld.pde (1.24 KB)

error.txt (1.6 KB)

De *.pde bestanden zijn bestanden die gemaakt zijn voor een inmiddels oeroude IDE (van voor 1.0).
De nieuwere bestanden hebben de extensie *.ino.

De kans is groot dat je problemen zult hebben met het compileren van de *.pde bestanden, omdat die gemaakt zijn voor "een andere IDE", waar van alles op een heel andere wijze werkte.

Zoals MAS3 al zegt: Die flamingoarduino library is al zo oud, bijna 5 jaar, dat ik die niet meer zou gebruiken omdat de Arduino-IDE vanaf die tijd al vele malen is vernieuwd en de kans dus bestaat op incompatibiliteiten.

De ethercard library op : github lijkt mij dat die een goede kans op succes biedt. In diezelfde library staan voorbeelden. Daarvan zou ik de rbbb_server.ino nemen om uit te proberen.
In die sketch hoef je alleen maar deze regel aan te passen :
static byte myip[] = { 192,168,1,203 };
Je moet zorgen dat de eerste 3 bytes in jouw netwerk vallen en de laatste moet uniek in jouw lokale netwerk zijn, zodat er niet 2 apparaten met hetzelfde IP adres zitten.

Als het dan goed is kun je op dat IP adres een pagina zien met een klokje wat aangeeft hoelang de sketch loopt.

Ik hoor wel of het werkt.