Hallo,
ich doktore derzeit noch an meinem OWServer mit 8 DS18B20 Sensoren herum.
Irgendwann hatte ich offensichtlich bei dem funktionierenden System ein Update gefahren und seit dem liefert das Modul keine aktuellen Messwerte mehr. Fehler in der Konfig scheidet also aus. Heute habe ich abermals ein Update gefahren, fhemupdate sagt zur Version:2013-01-23_07:45:13 17848 FHEM/10_OWServer.pm
Im Log steht immer:
2013.01.24 23:26:08 3: DS18B20_68722B040000: reading temperature did not return a value
Gleichzeitig habe ich noch die OWS-bins auf dem Server und /opt/owfs/bin/owread -s 192.168.2.219:3001 /28.68722B040000/temperature
liefert einen aktuellen Messwert. Fehler beim Server scheidet auch aus, und ja: Der Port ist richtig.. ;-)
Jemand eine Idee, wie ich mich dem Problem annähern kann?
Gruß
Holger
> Fehler in der Konfig scheidet also aus.
soso :-) leider habe ich gerade meine glasskugel nicht griffbereit. daher kann ich das auch gerade nicht beurteilen.
führe bitte mal folgendes aus:
in der fhem commandline (alternativ in FHEMWEB eingabezeile):
jsonlist <name_der_owserver_definition>
sowie
jsonlist <name_einer_beliebigen_owdevice_definition>
dann möchte ich eine ausgabe von
get <name_der_owserver_definition> devices
sowie deine owfs.cfg sehen.
bitte die jeiligen ausgaben hier in codeblöcke (BBcode) zur besseren lesbarkeit "verpacken".
gruss martin
Moin,
hier die Ausgaben:
jsonlist MyRemoteOWServer
{
"ResultSet": {
"Results": {
"ATTRIBUTES": {
"loglevel": "5"
},
"DEF": "192.168.2.219:3001",
"NAME": "MyRemoteOWServer",
"NR": "504",
"READINGS": {
"/settings/timeout/directory": {
"TIME": "2013-01-24 22:11:09",
"VAL": " 60"
},
"/settings/timeout/ftp": {
"TIME": "2013-01-24 22:11:09",
"VAL": " 900"
},
"/settings/timeout/ha7": {
"TIME": "2013-01-24 22:11:09",
"VAL": " 60"
},
"/settings/timeout/network": {
"TIME": "2013-01-24 22:11:09",
"VAL": " 1"
},
"/settings/timeout/presence": {
"TIME": "2013-01-24 22:11:09",
"VAL": " 120"
},
"/settings/timeout/serial": {
"TIME": "2013-01-24 22:11:09",
"VAL": " 5"
},
"/settings/timeout/server": {
"TIME": "2013-01-24 22:11:09",
"VAL": " 10"
},
"/settings/timeout/stable": {
"TIME": "2013-01-24 22:11:09",
"VAL": " 300"
},
"/settings/timeout/usb": {
"TIME": "2013-01-24 22:11:09",
"VAL": " 5"
},
"/settings/timeout/volatile": {
"TIME": "2013-01-24 22:11:09",
"VAL": " 15"
},
"/settings/timeout/w1": {
"TIME": "2013-01-24 22:11:09",
"VAL": " 30"
},
"/settings/units/pressure_scale": {
"TIME": "2013-01-24 22:11:09",
"VAL": "mbar"
},
"/settings/units/temperature_scale": {
"TIME": "2013-01-24 22:11:09",
"VAL": "C"
}
},
"STATE": "Initialized",
"TYPE": "OWServer",
"fhem": {
"protocol": "192.168.2.219:3001"
}
}
}
}
jsonlist DS18B20_688A41040000
{
"ResultSet": {
"Results": {
"ATTRIBUTES": {
"alias": "tKamin.O",
"model": "DS18B20",
"room": "Heizung",
"stateFormat": "T: temperature"
},
"DEF": "28.688A41040000 300",
"IODev": "MyRemoteOWServer",
"NAME": "DS18B20_688A41040000",
"NR": "506",
"READINGS": {
"alarm": {
"TIME": "2013-01-25 09:14:23",
"VAL": "1"
},
"state": {
"TIME": "2013-01-25 09:14:23",
"VAL": "temperature: 18.1875 alarm: 1"
},
"temperature": {
"TIME": "2013-01-18 22:44:00",
"VAL": "18.1875"
}
},
"STATE": "T: 18.1875",
"TYPE": "OWDevice",
"fhem": {
"address": "28.688A41040000",
"alerting": "1",
"bus": "bus.0",
"getters": "ARRAY",
"interfaces": "temperature",
"interval": "300",
"polls": "ARRAY",
"setters": "ARRAY",
"state": "ARRAY"
}
}
}
}
get MyRemoteOWServer devices
28.68722B040000 DS18B20 DS18B20_68722B040000
28.688A41040000 DS18B20 DS18B20_688A41040000
28.347D2B040000 DS18B20 DS18B20_347D2B040000
28.ACAF2B040000 DS18B20 DS18B20_ACAF2B040000
28.C2D540040000 DS18B20 DS18B20_C2D540040000
28.121A2B040000 DS18B20 DS18B20_121A2B040000
28.59C72B040000 DS18B20 DS18B20_59C72B040000
28.15AB2B040000 DS18B20 DS18B20_15AB2B040000
Serverseitig habe ich keine owfs.cfg, da ich den Server per Commandline gestartet habe. Hier der Task:NSLU2:~# ps -efH | grep ows
root 1759 1 0 Jan18 ? 00:04:25 /opt/owfs/bin/owserver -p 3001 -d /dev/1wireport
/dev/1wireport ist ein ttyUSB-Devise das über udev immer einen eindeutigen Link bekommt. Der Bus hängt über einen passiven USB9097N-Adapter an der NSLU2.
Hier nochmal die Ausgaben von der Shell mit dem Binarys aus dem ows-Paket (Aufgerufen auf der gleichen Maschine auf der auch fhem läuft):
holly@zeus:~$ /opt/owfs/bin/owdir -s 192.168.2.219:3001
/28.68722B040000
/28.688A41040000
/28.347D2B040000
/28.ACAF2B040000
/28.C2D540040000
/28.121A2B040000
/28.59C72B040000
/28.15AB2B040000
/bus.0
/uncached
/settings
/system
/statistics
/structure
/simultaneous
/alarm
holly@zeus:~$ /opt/owfs/bin/owread -s 192.168.2.219:3001 /28.C2D540040000/temperature
33.3125
Dieser Wert ist aktuell...
Ich hoffe das hilft...
Danke und Gruß
Holger
danke holger,
also ich kann hier keine auffälligkeiten erkennen, die mir irgendwie einen hinweis geben was falsch ist. oder ich übersehe etwas.
> "DEF": "192.168.2.219:3001",
hier geht klar hervor, das du auf 192.168.2.219 port 3001 konnektierst.
> "/settings/timeout/directory": {
> "TIME": "2013-01-24 22:11:09",
> "VAL": " 60"
bestätigt, das auch daten von owserver kommen.
> "DEF": "28.688A41040000 300",
> "IODev": "MyRemoteOWServer",
> "NAME": "DS18B20_688A41040000",
das sagt mir, dass das IODev richtig ist und der slave via autocreate angelegt wurde.
> "temperature": {
> "TIME": "2013-01-18 22:44:00",
> "VAL": "18.1875"
das sagt allerdings, dass das letzt mal am 18.01. um 22:44 daten geholt wurden.
> 28.688A41040000 DS18B20 DS18B20_688A41040000
gefunden wird er auch...
> root 1759 1 0 Jan18 ? 00:04:25 /opt/owfs/bin/owserver -p 3001 -d /dev/1wireport
port stimmt auch..
das einzige was jetzt noch fehlen könnte wäre ein:
attr DS18B20_688A41040000 polls temperature,temphigh,templow
was aber normalerweise von alleine gehen sollte.
probier mal bitte letzteres...
gruss martin
Hallo Martin,
auch der polls-Tipp hat leider nicht geholfen:
2013.01.25 21:00:30 3: DS18B20_15AB2B040000: reading temperature did not return a value
2013.01.25 21:00:30 3: DS18B20_15AB2B040000: reading temphigh did not return a value
2013.01.25 21:00:30 3: DS18B20_15AB2B040000: reading templow did not return a value
Ich habe mal die Netzwerkverbindung betrachtet:
root@zeus:~# netstat -ant | grep 219
tcp 0 0 192.168.2.220:39305 192.168.2.219:3001 VERBUNDEN
Sieht also auch gut aus...
Was ich nicht verstehe, ich habe attr MyRemoteOWServer loglevel 5
gesetzt, habe keine zusätzlichen Logausgaben? Muss ich dafür auch das globale loglevel auf einen bestimmten Wert setzen?
Weiterhin geht anscheinend das reopen nicht...
fhem> set MyRemoteOWServer reopen
Unknown argument reopen, choose one of reopen timeout/directory timeout/ftp timeout/ha7 timeout/network timeout/presence timeout/serial timeout/server timeout/stable timeout/uncached timeout/usb timeout/volatile timeout/w1 units/pressure_scale units/temperature_scale
Auch habe ich mal die /opt/fhem/FHEM/lib/OWNet.pm überprüft:
package OWNet ;
# OWNet module for perl
# $Id: OWNet.pm,v 1.23 2012/07/17 01:54:09 alfille Exp $
Ist auch okay, oder?
Gruß
Holger
hallo holger,
also ich kann beim besten willen nichts erkennen. vielleicht hat boris noch eine idee?
gruss martin
ich hab hier nochmal einen TCP-Dump zwischen CLient und Server gemacht... vielleicht kann damit ja jemand was anfangen. Zunächst die Anfrage, dann folgt eingerückt die Antwort. Insgesamt sind es 8 Sensoren.
00000000 00 00 00 00 00 00 00 15 00 00 00 02 00 00 01 0e ........ ........
00000010 00 00 80 e8 00 00 00 00 ........
00000000 00 00 00 00 00 00 00 00 ff ff ff ff 00 00 01 0e ........ ........
00000010 00 00 00 00 00 00 00 00 ........
00000018 00 00 00 00 00 00 00 15 00 00 00 02 00 00 01 0e ........ ........
00000028 00 00 80 e8 00 00 00 00 ........
00000018 00 00 00 00 00 00 00 00 ff ff ff ff 00 00 01 0e ........ ........
00000028 00 00 00 00 00 00 00 00 ........
00000030 00 00 00 00 00 00 00 15 00 00 00 02 00 00 01 0e ........ ........
00000040 00 00 80 e8 00 00 00 00 ........
00000030 00 00 00 00 00 00 00 00 ff ff ff ff 00 00 01 0e ........ ........
00000040 00 00 00 00 00 00 00 00 ........
00000048 00 00 00 00 00 00 00 08 00 00 00 07 00 00 01 0e ........ ........
00000058 00 00 80 e8 00 00 00 00 ........
00000048 00 00 00 00 00 00 00 b8 00 00 00 00 00 00 01 0e ........ ........
00000058 00 00 00 b7 00 00 00 00 ........
00000060 00 00 00 00 00 00 00 15 00 00 00 02 00 00 01 0e ........ ........
00000070 00 00 80 e8 00 00 00 00 ........
00000060 00 00 00 00 00 00 00 00 ff ff ff ff 00 00 01 0e ........ ........
00000070 00 00 00 00 00 00 00 00 ........
00000078 00 00 00 00 00 00 00 15 00 00 00 02 00 00 01 0e ........ ........
00000088 00 00 80 e8 00 00 00 00 ........
00000078 00 00 00 00 00 00 00 00 ff ff ff ff 00 00 01 0e ........ ........
00000088 00 00 00 00 00 00 00 00 ........
00000090 00 00 00 00 00 00 00 15 00 00 00 02 00 00 01 0e ........ ........
000000A0 00 00 80 e8 00 00 00 00 ........
00000090 00 00 00 00 00 00 00 00 ff ff ff ff 00 00 01 0e ........ ........
000000A0 00 00 00 00 00 00 00 00 ........
000000A8 00 00 00 00 00 00 00 08 00 00 00 07 00 00 01 0e ........ ........
000000B8 00 00 80 e8 00 00 00 00 ........
000000A8 00 00 00 00 00 00 00 b8 00 00 00 00 00 00 01 0e ........ ........
000000B8 00 00 00 b7 00 00 00 00 ........
000000C0 00 00 00 00 00 00 00 15 00 00 00 02 00 00 01 0e ........ ........
000000D0 00 00 80 e8 00 00 00 00 ........
000000C0 00 00 00 00 00 00 00 00 ff ff ff ff 00 00 01 0e ........ ........
000000D0 00 00 00 00 00 00 00 00 ........
000000D8 00 00 00 00 00 00 00 15 00 00 00 02 00 00 01 0e ........ ........
000000E8 00 00 80 e8 00 00 00 00 ........
000000D8 00 00 00 00 00 00 00 00 ff ff ff ff 00 00 01 0e ........ ........
000000E8 00 00 00 00 00 00 00 00 ........
000000F0 00 00 00 00 00 00 00 15 00 00 00 02 00 00 01 0e ........ ........
00000100 00 00 80 e8 00 00 00 00 ........
000000F0 00 00 00 00 00 00 00 00 ff ff ff ff 00 00 01 0e ........ ........
00000100 00 00 00 00 00 00 00 00 ........
00000108 00 00 00 00 00 00 00 08 00 00 00 07 00 00 01 0e ........ ........
00000118 00 00 80 e8 00 00 00 00 ........
00000108 00 00 00 00 00 00 00 b8 00 00 00 00 00 00 01 0e ........ ........
00000118 00 00 00 b7 00 00 00 00 ........
00000120 00 00 00 00 00 00 00 15 00 00 00 02 00 00 01 0e ........ ........
00000130 00 00 80 e8 00 00 00 00 ........
00000120 00 00 00 00 00 00 00 00 ff ff ff ff 00 00 01 0e ........ ........
00000130 00 00 00 00 00 00 00 00 ........
00000138 00 00 00 00 00 00 00 15 00 00 00 02 00 00 01 0e ........ ........
00000148 00 00 80 e8 00 00 00 00 ........
00000138 00 00 00 00 00 00 00 00 ff ff ff ff 00 00 01 0e ........ ........
00000148 00 00 00 00 00 00 00 00 ........
00000150 00 00 00 00 00 00 00 15 00 00 00 02 00 00 01 0e ........ ........
00000160 00 00 80 e8 00 00 00 00 ........
00000150 00 00 00 00 00 00 00 00 ff ff ff ff 00 00 01 0e ........ ........
00000160 00 00 00 00 00 00 00 00 ........
00000168 00 00 00 00 00 00 00 08 00 00 00 07 00 00 01 0e ........ ........
00000178 00 00 80 e8 00 00 00 00 ........
00000168 00 00 00 00 00 00 00 b8 00 00 00 00 00 00 01 0e ........ ........
00000178 00 00 00 b7 00 00 00 00 ........
00000180 00 00 00 00 00 00 00 15 00 00 00 02 00 00 01 0e ........ ........
00000190 00 00 80 e8 00 00 00 00 ........
00000180 00 00 00 00 00 00 00 00 ff ff ff ff 00 00 01 0e ........ ........
00000190 00 00 00 00 00 00 00 00 ........
00000198 00 00 00 00 00 00 00 15 00 00 00 02 00 00 01 0e ........ ........
000001A8 00 00 80 e8 00 00 00 00 ........
00000198 00 00 00 00 00 00 00 00 ff ff ff ff 00 00 01 0e ........ ........
000001A8 00 00 00 00 00 00 00 00 ........
000001B0 00 00 00 00 00 00 00 15 00 00 00 02 00 00 01 0e ........ ........
000001C0 00 00 80 e8 00 00 00 00 ........
000001B0 00 00 00 00 00 00 00 00 ff ff ff ff 00 00 01 0e ........ ........
000001C0 00 00 00 00 00 00 00 00 ........
000001C8 00 00 00 00 00 00 00 08 00 00 00 07 00 00 01 0e ........ ........
000001D8 00 00 80 e8 00 00 00 00 ........
000001C8 00 00 00 00 00 00 00 b8 00 00 00 00 00 00 01 0e ........ ........
000001D8 00 00 00 b7 00 00 00 00 ........
000001E0 00 00 00 00 00 00 00 15 00 00 00 02 00 00 01 0e ........ ........
000001F0 00 00 80 e8 00 00 00 00 ........
000001E0 00 00 00 00 00 00 00 00 ff ff ff ff 00 00 01 0e ........ ........
000001F0 00 00 00 00 00 00 00 00 ........
000001F8 00 00 00 00 00 00 00 15 00 00 00 02 00 00 01 0e ........ ........
00000208 00 00 80 e8 00 00 00 00 ........
000001F8 00 00 00 00 00 00 00 00 ff ff ff ff 00 00 01 0e ........ ........
00000208 00 00 00 00 00 00 00 00 ........
00000210 00 00 00 00 00 00 00 15 00 00 00 02 00 00 01 0e ........ ........
00000220 00 00 80 e8 00 00 00 00 ........
00000210 00 00 00 00 00 00 00 00 ff ff ff ff 00 00 01 0e ........ ........
00000220 00 00 00 00 00 00 00 00 ........
00000228 00 00 00 00 00 00 00 08 00 00 00 07 00 00 01 0e ........ ........
00000238 00 00 80 e8 00 00 00 00 ........
00000228 00 00 00 00 00 00 00 b8 00 00 00 00 00 00 01 0e ........ ........
00000238 00 00 00 b7 00 00 00 00 ........
00000240 00 00 00 00 00 00 00 15 00 00 00 02 00 00 01 0e ........ ........
00000250 00 00 80 e8 00 00 00 00 ........
00000240 00 00 00 00 00 00 00 00 ff ff ff ff 00 00 01 0e ........ ........
00000250 00 00 00 00 00 00 00 00 ........
00000258 00 00 00 00 00 00 00 15 00 00 00 02 00 00 01 0e ........ ........
00000268 00 00 80 e8 00 00 00 00 ........
00000258 00 00 00 00 00 00 00 00 ff ff ff ff 00 00 01 0e ........ ........
00000268 00 00 00 00 00 00 00 00 ........
00000270 00 00 00 00 00 00 00 15 00 00 00 02 00 00 01 0e ........ ........
00000280 00 00 80 e8 00 00 00 00 ........
00000270 00 00 00 00 00 00 00 00 ff ff ff ff 00 00 01 0e ........ ........
00000280 00 00 00 00 00 00 00 00 ........
00000288 00 00 00 00 00 00 00 08 00 00 00 07 00 00 01 0e ........ ........
00000298 00 00 80 e8 00 00 00 00 ........
00000288 00 00 00 00 00 00 00 b8 00 00 00 00 00 00 01 0e ........ ........
00000298 00 00 00 b7 00 00 00 00 ........
000002A0 00 00 00 00 00 00 00 15 00 00 00 02 00 00 01 0e ........ ........
000002B0 00 00 80 e8 00 00 00 00 ........
000002A0 00 00 00 00 00 00 00 00 ff ff ff ff 00 00 01 0e ........ ........
000002B0 00 00 00 00 00 00 00 00 ........
000002B8 00 00 00 00 00 00 00 15 00 00 00 02 00 00 01 0e ........ ........
000002C8 00 00 80 e8 00 00 00 00 ........
000002B8 00 00 00 00 00 00 00 00 ff ff ff ff 00 00 01 0e ........ ........
000002C8 00 00 00 00 00 00 00 00 ........
000002D0 00 00 00 00 00 00 00 15 00 00 00 02 00 00 01 0e ........ ........
000002E0 00 00 80 e8 00 00 00 00 ........
000002D0 00 00 00 00 00 00 00 00 ff ff ff ff 00 00 01 0e ........ ........
000002E0 00 00 00 00 00 00 00 00 ........
000002E8 00 00 00 00 00 00 00 08 00 00 00 07 00 00 01 0e ........ ........
000002F8 00 00 80 e8 00 00 00 00 ........
000002E8 00 00 00 00 00 00 00 b8 00 00 00 00 00 00 01 0e ........ ........
000002F8 00 00 00 b7 00 00 00 00 ........
hallo holger,
also lass uns mal bei '0' anfangen. da ich weiss, dass du gerne "non-standard-ports" einsetzt, versuchen wir es mal mit den defaultwerten.
ich gehe davon aus, das der rechner auf dem owserver (OWFS) läuft, die IP 192.168.2.219 hat und dein fhem 192.168.2.220. wenn nicht, dann musst du ggf. "umdenken".
auf dem OWFS rechner legst du bitte folgende konfigurationsdatei an:
# file: /etc/owfs.conf
# setup owserver's port
server: port = 4304
# all programs BUT not owserver see this line
!server: server = localhost:4304
# setup owserver's device
# only owserver connects to the USB device
# hier bitte deinen busmaster eintragen, also entweder
#server: usb
# oder z.B.
#server: device = /dev/linkUSBi
# oder
#server: device = /dev/ttyS0
# einer davon muss "auskommentiert" werden.
# wenn du noch owhttpd installiert hast, dann noch ein
# setup owhttpd's port
http: port = 3001
mehr ist nicht notwendig.
dann startest du den owserver in einer bash:
bash> owserver -c /etc/owfs.conf
über owshell commands oder (sofern installiert) über owhttpd (auf dem OWFS rechner: http://localhost:3001 (//localhost:3001) bzw. http://192.168.2.219:3001 (//192.168.2.219:3001)) prüfst du bitte, ob alle slaves sichtbar sind:
bash> owdir
wenn das klappt, dann weiter mit FHEM, ansonsten fehlersuche.
weiter mit FHEM:
alle OWServer / OWDevices bitte erstmal entfernen.
nun neuanlage von OWServer:
define myOWFS OWServer 192.168.2.219:4304
prüfen ob er was findet:
get myOWFS devices
hier sollte dann eine liste mit den bereits mittels owdir gefundenen device erscheinen.
wenn das auch nicht "fruchtet", dann kannst du ggf. mal OWFS deinstallieren und wie in meinem artikel 1-Wire Software unter Linux - Teil 2 (//www.fischer-net.de/hausautomation/haustechnik/1-wire/40-1-wire-software-unter-linux-teil-2.html) beschrieben, selber compilen.
irgendwie bekommen wir das schon hin...
gruss martin
Hallo Martin,
vielen Dank für deine Unterstützung.
Nachdem ich in den vergangen Tagen recht viel an meiner Installation gearbeitet hatte um u.a. mein CAN-Modul und den RESOL-Adapter zu integrieren, habe ich heute mal einen Kahlschlag gemacht, meine Änderungen gesichert und fhem-Development von Grund auf neu installiert und meine fhem.cfg wieder reinkopiert, aber vorher per Hand gesäubert.
Gleichzeitig habe ich die alte NSLU2 (OWFS-Remote-Server) mit selbstkompilierten owfs gegen einen PaspPi mit aktuellen Debian und owfs-Distributionspaket ausgetauscht.
Nun schein es zu laufen... warten wir mal ab.
BTW/OT: Das Update-Modul ist ja von dir, kann ich verhindern, dass einzelne Dateien (z.B. 00_CUL.pm) geupdated wird?
Danke und Gruß
Holger
> vielen Dank für deine Unterstützung.
gern...
> Nun schein es zu laufen... warten wir mal ab.
das ist schön zu lesen. ich sach doch: wir bekommen das schon hin und nun hast du es sogar alleine geschafft. ich sehe kein grund, warum es auf einmal nicht mehr laufen sollte. es sei denn, du .... :-)
> BTW/OT: Das Update-Modul ist ja von dir, kann ich verhindern,
> dass einzelne Dateien (z.B. 00_CUL.pm) geupdated wird?
jepp, siehe commandref.html
attr global exclude_from_update 00_CUL.pm,foobar,barfoo
gruss martin