[vz-dev] neue fontend hardware plattform ?!
Roland Kletzing
devzero at web.de
Thu Sep 9 09:11:29 CEST 2010
Hallo Harald,
>was haltet ihr denn von einer solchen hw-loesung als fontend ?
Super!
Insbesondere nach sowas wie dem USBFOO suche ich jetzt schon länger. Das
werd ich mir mal näher ansehen. Preis ist ja auch schwer ok.
Und was LUA betrifft - schau Dir mal nen Flukso näher an ;)
(insofern: ja , lua taugt was)
Grüsse
Roland
--------------------------------------------------
From: "Harald Koenig" <koenig at tat.physik.uni-tuebingen.de>
Sent: Thursday, September 09, 2010 12:41 AM
To: "volkszaehler-dev" <volkszaehler-dev at lists.volkszaehler.org>
Subject: [vz-dev] neue fontend hardware plattform ?!
> Hallo mal wieder,
>
> erstmal danke fuer den tipp zum dockstar -- wirklich ein schnaeppchen!!!
>
>
> nun zum subject: als fontend linksys wrt54gl oder nun dockstar oder oae.
> verwenden...
>
> dockstar o.ae. plus "usbfoo" (url s.u.) scheinen mir eine super
> kombination zu sein um ein frontend
> nach meinem geschmack zu bekommen. long story:
>
> mit dem AVR NET IO als fontend werde ich einfach nicht warm, was so einige
> gruende hat:
> - kein wlan, da ich sowohl hauptzaehler als auch sicherungskasten weit weg
> vom ethernet bin
> - kein linux -- spezielle firmware
> - bastelei (spannungsregler und/oder bausatz), ... -- nicht dass ich
> generell was gegen basteln haette, s.u.;)
> - erstmal kein gehaeuse/netzteil/....
> - muss man extra bestellen -- liegt nicht einfach in der bastelkiste (und
> wie es der zufall so will:
> dort liegt schon ein wrt54gl, der auch wlan hat und linux kann... ;-)
>
> vor allem das "kein linux" ist fuer mich einfach unbequem, fuer eigene
> ideen/tests/aenderungen waere mir das einfach naeher...
>
>
> 1. akt:
>
> daher hab ich mal angefangen mit einem noch herumliegenden linksys wrt54gl
> zu spielen:
> man kann dort einfach z.b. die linux-distro "openwrt" installieren.
> der wrt54gl hat 2 serielle schnittstellen, eine ist erstmal als serielle
> konsole belegt,
> die zweite noch frei -- man muss jedoch erstmal nen pfostenstecker loeten
> (== basteln;),
> der rest geht dann wieder bequem mit stecken -- das kabel "cd/dvd-laufwerk
> nach pc-mainboad
> aus der bastelkiste hat schon die richtigen 3 pins fuer die serielle
> schnittstelle belegt!;).
>
> und siehe da, meine "McGyver" loesung, den zaehlerpuls direkt auf die
> serielle schnittstelle
> zu legen klappt auch hier! kaum ist strace/wget/awk installiert (nur
> strace und sty fehlen
> beim default image) klappt mein mini-skript und man kann die pulse zaehlen
> und uebers netz jagen,
> alles nur mit ssh-login ins linux und ein bissl scripting.
>
> mit der shell/strace/awk/wget loesung ist das aber auch nicht wirklich
> schoen, eher ein erster proof of concept.
> aber beim openwrt gibts ein web-interface "luci" fuers setup, welches auf
> lua basiert.
>
> lua? eine nette kleine skriptsprache von der ich schon viel gehoert habe:
> klein/schlank/schnell,
> auch gut objektorienttiert (wenn man das will), systemnah, ...
> und siehe da: in lua brauchts nur ganz wenige zeilen, alles ist viel
> lesbarer, keine
> haesslichen tricks mit strace fuer die timestamps etc. -- und wieder ein
> bequemes skript
> zum testen/aendern/erweitern -- hier mal kurz das skript:
>
> --- 8< ------ 8< ------ 8< ------ 8< ------ 8< ------ 8< ------ 8< ------
> 8< ---
> #!/usr/bin/lua
>
> require "socket"
> http = require("socket.http")
>
> tty="/dev/cua/1"
>
> os.execute("rdate harald")
> os.execute("stty 50 time 1 min 1 -icanon < " .. tty)
>
> rserial=io.open(tty,"r")
>
> t1=0
> while true do
> chaine=rserial:read(1)
> t=socket.gettime()
>
> url="http://harald/volkszaehler.org/httplog.php?uuid=00000000-0000-0000-0000-000000000001&port=0000000&time="
> .. math.floor(t + 0.5)
> -- print (t,url,t-t1)
> http.request(url)
> t1=t
> end
> --- 8< ------ 8< ------ 8< ------ 8< ------ 8< ------ 8< ------ 8< ------
> 8< ---
>
>
> dann kam euer tipp mit dem dockstar -- 2. akt:
>
> auch fuer den dockstar gibts openwrt, es hat eine serielle schnittstelle,
> wenn auch nur eine.
> aber wenns mal laeuft braucht man ja keine serielle konsole mehr, als im
> init login-shell
> abklemmem und schon greift die selbe loesung -- im dockstar ist sogar die
> steckerleiste
> schon geloetet, und der "rest" meines cdrom-kabels vom wrt54gl hat noch
> einen bislang
> nicht gebrauchten stecker mit 2mm rastermass -- der passt perfekt auf die
> 3 pins fuer die
> serielle schnittstelle, als gar kein loeten;)
>
> sowohl mein wrt54gl als auch beim dockstar kann ich den S0-ausgang eines
> SWISSNOX zaehler
> direkt anschliessen, jeweils als pulldown gegen masse und die pulse kommen
> prima als
> zeichen auf der seriellen schnittstelle rein.
>
> lua macht auf dem dockstar allerdings erstmal noch ein problem, hier muss
> man im lua socket bzw. posix modul
> noch ein bissl was fixen (ist eingetuetet) damit die timestamps klappen,
> aber dann klappts damit auch wieder recht huebsch.
>
>
> ABER beide loesungen kranken erstmal daran, dass ich nur einen eingang
> habe (beim wrt54gl koennte ich
> noch nen zaehler auf die zweite serielle schnittstelle legen -- 3 zaehler
> fuer alle 3 phasen gehen
> aber auch hier nicht, geschweige denn noch mehr eingaenge).
>
> es braucht also ein ein bissl hardware mit mehr puls-eingaengen, welches
> dann fuer jeden puls
> ein zeichen ueber die serielle schnittstelle oder usb fue den dockstar
> ausgibt,
> z.b. '0' fuer puls an pin 0, '1' fuer puls an pin 1 usw. (bzw. buchstaben
> o.ae. fuer mehr als 10 ports, s.u.;).
> das klingt nun nach einer aufgabe, die wirklich sehr abegrenzt ist was so
> ein kleiner atmel machen koennte.
>
> und eher zufaellig habe ich so ein schnuckelchen auf dem linux-tag in
> berlin beim merchendising-stand am eingang
> von Petra und Nils von "kernel concepts" entdeckt -- damals noch ohne ganz
> konkrete idee und aufgabe (aber mit so einer vorahnung;)
>
>
>
> 3. akt: auftritt "USBFOO" (links unten...)
>
> mit dem "usbfoo" (at90usb162) in kombination mit der "lufa" library und
> dem demo-beispiel von "kernel concepts"
> braucht es nur noch ein paar mehr zeilen C-code (und den gcc-avr) und der
> usbfoo gibt fuer jeden puls ein zeichen
> ueber usb aus. mit dem CDC class usb treiber meldet sich das teil dann
> unter linux (z.b. auch im dockstar)
> als /dev/ttyACM0 als serielle schnittstelle - und schon kann man das
> strace- oder lua-skript wieder anwerfen,
> diesmal aber eben mit mehr eingaengen -- der usbfoo hat 16+ I/O pins
> rausgefuhert -- das reicht erstmal!
>
> mein demo-code fuer usbfoo liefert derzeit noch je ein zeichen fuer jeden
> *flankenwechsel*,
> uppercase fuer startflanke und lowercase fuer rueckflanke. bislang noch
> nicht mit
> echter serieller schnittstelle fuer meinen wrt54gl (kann sein dass ich das
> gar nicht mehr brauche,
> ein usb-wlan-stick fuer den dockstar koennte der bessere
> wlan-router/zaehler werden;)
> und auch noch nicht im interruptbetrieb sondern plumpenn polling (soll
> aber gehen mit der hardware),
> scheint aber erstmal zu klappen:
>
> http://www.tat.physik.uni-tuebingen.de/~koenig/vz/usbfoo-vz1.tar.gz
>
> usbfoo flashen mit
>
> dfu-rpgrammer at90usb162 erase
> dfu-rpgrammer at90usb162 flash usbfoo-vz1.hex
>
> und fertig...
>
>
> was haltet ihr denn von einer solchen hw-loesung als fontend ?
>
> wer hat AVR erfahrung und kann mal einem blutigen laien kommentieren, ob
> - LUFA was taugt
> - polling schon reicht
> - wie man die input ports auf interrupts (data change) bekommt....
> - das alles so keinen sinn hat
>
>
> wenns den dockstar nicht mehr gaebe waere meine naechste hw-plattform zum
> testen der "Fonera+",
> ein recht winziger wlan-router fuer 30 EUR den ich derletzt mal gesehen
> habe (hab noch keinen),
> auch da soll inzwischen freewrt u.ae. laufen (hat auch 16 MB ram wie der
> linksys, also
> kein vergleich zum dockstar -- aber regulaer lieferbar und schon mit wlan,
> einer internen
> seriellen konsole und angeblich bei neueren hw-versionen auch mit usb):
>
>
> https://shop.fon.com/FonShop/shop/DE/ShopController?view=product&product=PRD-018
>
>
> und hier mal noch einige links
>
> usbfoo: (auf dieser seite gibts dann auc links zur sw-library "lufa" sowie
> zum demo-source)
>
> http://shop.kernelconcepts.de/product_info.php?cPath=1_27&products_id=102
>
> bastel-anleitung zum WRT54GL:
>
> http://www.jbprojects.net/articles/wrt54gl_mods/
> http://oldwiki.openwrt.org/OpenWrtDocs%282f%29Hardware%282f%29Linksys%282f%29WRT54GL.html#head-dd43b50d854c2f0348686e6d7d165cdfd83a7e59
>
> openwrt auf WRT54GL installieren:
>
> http://www.myslug.de/index.php?title=Openwrt_auf_wrt54GL
>
>
> openwrt auf dockstar installieren:
>
> http://ahsoftware.de/dockstar/#ubootpatches
> http://www.cs.cmu.edu/~ecc/dockstar-howto.html
>
>
> ein paar bilder der kompletten hw gibs hoffentlich morgen...
>
>
> ueber kommentare/ideen/anregungen freut sich wie immer:
>
> Harald
> --
> "I hope to die ___ _____
> before I *have* to use Microsoft Word.", 0--,| /OOOOOOO\
> Donald E. Knuth, 02-Oct-2001 in Tuebingen. <_/ / /OOOOOOOOOOO\
> \ \/OOOOOOOOOOOOOOO\
> \
> OOOOOOOOOOOOOOOOO|//
> \/\/\/\/\/\/\/\/\/
> Harald Koenig // / \\ \
> koenig at tat.physik.uni-tuebingen.de ^^^^^ ^^^^^
> _______________________________________________
> volkszaehler-dev mailing list
> volkszaehler-dev at lists.volkszaehler.org
> https://volkszaehler.org/mailman/listinfo/volkszaehler-dev
More information about the volkszaehler-dev
mailing list