OWServer liefert keine aktuellen Messwerte

Begonnen von sweetie-pie, 24 Januar 2013, 23:33:36

Vorheriges Thema - Nächstes Thema

sweetie-pie

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

Martin Fischer

> 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
--
Admin, Developer, Gründungsmitglied des FHEM e.V.

sweetie-pie

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


Martin Fischer

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
--
Admin, Developer, Gründungsmitglied des FHEM e.V.

sweetie-pie

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

Martin Fischer

hallo holger,

also ich kann beim besten willen nichts erkennen. vielleicht hat boris noch eine idee?

gruss martin
--
Admin, Developer, Gründungsmitglied des FHEM e.V.

sweetie-pie

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                          ........

Martin Fischer

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 bzw. http://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 beschrieben, selber compilen.

irgendwie bekommen wir das schon hin...

gruss martin
--
Admin, Developer, Gründungsmitglied des FHEM e.V.

sweetie-pie

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

Martin Fischer

> 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
--
Admin, Developer, Gründungsmitglied des FHEM e.V.