Forum: Mikrocontroller und Digitale Elektronik NGW100 IO´s übers Web ansteuern


von Toni M. (mindsmith)


Lesenswert?

Hallo,

haben ein NGW100, über die Linux console konnte ich schon ein paar IO´s 
ansprechen. Mit der Ansteuerung der IO´s übers Web komm ich einfach 
nicht weiter.

Im Auslieferungszustand kann man übers Webinterface die eine LED ein und 
aus schalten. Hab Ihr mir ein paar Beispiele wie die C-Programme 
aussehen müssen? Mir würde ein Beispiel mit einem Button zum ein und aus 
schalten und ein keine Anzeige vom Zustand eines Einganges erst mal 
reichen.

Ein Beschreibung wie genau ich das zu programmieren hab, hab ich leider 
nicht gefunden.

Danke.
Gruss Toni

von ... (Gast)


Lesenswert?

Toni M. schrieb:
> Hab Ihr mir ein paar Beispiele wie die C-Programme
> aussehen müssen?

Das sind keine C-Programme bei WEBIF, sondern shell-scripte.
Schaust du in deinem Buildroot unter 
/package/webif/files/www/cgi-bin/webif
Da sind ein paar Beispiele wie das auszusehen hat.
Webif muss dazu in deinem Build aktiviert sein.

von Toni M. (mindsmith)


Lesenswert?

Also in meinem Webif Verzeichnis hats zwar Beispiele aber keine die mit 
den GPIO´s zu tun haben. Habe mir schon die cgipio.cgi Datei auf dem 
Server angeschaut, die Datei kann man aber nur zu Teil im Klartext 
lesen.
Deshalb bin ich von einer C Datei ausgegangen.

Das ich über ein shell-script direkt Consolenbefehle über den Browser 
ausführen kann und damit auch die IO´s steuern kann hab ich auch schon 
raus gefunden.
Aber in den shell-script kann ich doch kein html einfügen oder?
In dem Beispiel vom NGW100 haben die da einen Button und so.

von ... (Gast)


Lesenswert?

Toni M. schrieb:
> Aber in den shell-script kann ich doch kein html einfügen oder?
> In dem Beispiel vom NGW100 haben die da einen Button und so

Andersherum, in einen Button kannst du ein shell-script einfügen.

von Toni M. (mindsmith)


Lesenswert?

Hast mir ein Beispiel dafür? mit der Einbindung von dem html Zeug kenn 
ich mich nicht grad gut aus.

von Christian H. (netzwanze) Benutzerseite


Lesenswert?

echo "<html><head><title>Hallo Welt!</title></head><body>Hallo 
Welt!</body></html>"

von ... (Gast)


Lesenswert?

Toni M. schrieb:
> Im Auslieferungszustand kann man übers Webinterface die eine LED ein und
> aus schalten.

hast du noch den Auslieferungszustand auf deinem NGW100?

von Toni M. (mindsmith)


Lesenswert?

Derzeit ist alles noch orginal, hab es noch nicht lange und mache meine 
ersten Gehversuche mit dem Board.

@ Christian H. ok das klappt, wie geht es mit den button´s ?

von Udo S. (udo)


Lesenswert?

kannst du mal den kompletten Ordner /www und den Ordner /usr/lib/webif 
hier posten?

Gruß
Udo

von Toni M. (mindsmith)


Lesenswert?

@Udo, die Files sind per Mail an Dich unterwegs.

Nochmal zu den buttons, hat mir dazu noch jemand ein Beispiel?
Zu der Anzeige eines Zustandes eines Eingangs hätte ich auch gerne noch 
ein Beispiel.

von Udo S. (udo)


Lesenswert?

Hallo Tony,

nochmal danke für die files.
Ich habe die Befürchtung, das es so einfach über einen Webscript nicht 
mehr geht, da die Methode über gpio-dev abgekündigt ist und von neueren 
Kerneln nicht mehr unterstützt wird.
Genaueres kannst du hier nachlesen:
http://www.avrfreaks.net/wiki/index.php/Documentation:Linux/GPIO#NGW100

Gruß
Udo

von Toni M. (mindsmith)


Lesenswert?

Ich will ja gar kein neuen Kernel benutzen, mir reicht das was ich hab.
Trotzdem würde ich gerne wissen wie ich die IO´s über den Browser 
steuern kann. Ein Programbeispiel wie das zu machen ist würde mir 
wirklich helfen.
Danke.

von Udo S. (udo)


Angehängte Dateien:

Lesenswert?

Hallo Toni,

also bei den alten Kernel wird das Programm cgipio verwendet. Quellcode 
siehe Anhang.
Bei den neueren Kernel geht es auch übers Webinterface, siehe die 
anhängenden html/sh-Dateien.

Gruß
Udo

Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.