Announcement

Collapse
No announcement yet.

OWFS server

Collapse
X
 
  • Filter
  • Time
  • Show
Clear All
new posts

    OWFS server

    @Randy,

    Testing plugin with an RPi OWFS server. HS3 Pro and HS3 ZeeLite running.
    Testing with HS3 ZeeLite.

    Looking to do maybe 3 separate OWFS servers

    1 - Test box currently is running Digitemp and OWFS server.
    2 - Wheezy build. Updated Mono. Running Z-Wave via sertonet
    3 - doing a 9097 ==> OWFS = temperature, humidity and lightning counter

    I am writing a text file for the Digitemp stuff and using a script on HS3 box to read text to variables every 5 minutes.

    Is there a way to get your plugin to see the OWFS server variables.

    IE: trying to switch port 2121 to 80 to see if your plugin sees server.

    [ATTACH]62284[/ATTACH]

    I understand the the plugin is written for the EDS embedded OWFS server.

    [ATTACH]62285[/ATTACH]
    [ATTACH]62286[/ATTACH]

    Should I quit trying to do this? It is working fine using Domoticz right now. Not done yet as the RPi is in the attic and have to finish moving two of the sensors to 2nd floor rooms. (IE: attic, lightning sensors in the attic, master bathroom sensors, hallway and need to move study and master bedroom yet)

    [ATTACH]62288[/ATTACH]
    Last edited by Pete; July 15, 2017, 09:47 AM.
    - Pete

    Auto mator
    Homeseer 3 Pro - 3.0.0.548 (Linux) - Ubuntu 18.04/W7e 64 bit Intel Haswell CPU 16Gb
    Homeseer Zee2 (Lite) - 3.0.0.548 (Linux) - Ubuntu 18.04/W7e - CherryTrail x5-Z8350 BeeLink 4Gb BT3 Pro
    HS4 Lite - Ubuntu 22.04 / Lenovo Tiny M900 / 32Gb Ram

    HS4 Pro - V4.1.18.1 - Ubuntu 22.04 / Lenova Tiny M900 / 32Gb Ram
    HSTouch on Intel tabletop tablets (Jogglers) - Asus AIO - Windows 11

    X10, UPB, Zigbee, ZWave and Wifi MQTT automation-Tasmota-Espurna. OmniPro 2, Russound zoned audio, Alexa, Cheaper RFID, W800 and Home Assistant

    #2
    Hi Pete,

    I have never heard of an OWFS server or Domoticz. Can you provide more information on the OWFS server?

    Regards,
    Ultrajones
    Plug-ins: UltraMon, UltraM1G, UltraCID, Ultra1Wire, UltraLog, UltraWeatherBug, UltraPioneerAVR, UltraGCIR

    Comment


      #3
      The EDS embedded stuff is based on OWFS located here and here.



      OWFS reads 1-wire devices connected via original maxim specifications.

      These could be a direct serial connections via bus masters:

      Serial

      Discrete compoment (passive)
      DS9790E (note the 'E')
      HA2, HA3 HA4B
      DS2480B-based
      DS9097U
      Numerous devices with an integral USB-serial convertor
      LINK (PIC microprocessor)
      LINK, LINK12, LINK45, LinkHub
      HA7E (microprocessor-based)
      HA7E HA7S
      HA5 (miroprocessor)
      HA5 with multidrop addressing)

      USB

      DS2490-based (native USB 1.1 chip)
      DS9490R DS9490B
      USB-Serial integrated
      LinkUSB
      USB9097

      i2C

      DS2482-100, DS2482-101 DS2482-800 DS2482-101 DS2483

      Parallel

      Not supported

      Ethernet

      LinkHubE
      HA7NET
      OW-SERVER-ENET

      Network

      ser2net
      owserver
      Xport

      Built-in

      kernel module w1

      Trying a test here using an RPi enabled OWServer running OWFS. Thinking that the EDS OWServer output is xml on the EDS OWServer versus HTML on the standard OWFS.

      OWFS has been around for a very long time....before EDS was around.

      Domoticz reads standard OWServer device directory. It uses LUA (C) for much of the very tight programming.

      I am embedding sensors pages over to HSTouch pages and concurrently embedding created sensor variables via Digitemp text files.

      IE: initially testing is with an RPI but you can write this stuff to an Arduino if you wanted to.

      I have turned the POE connected RPi2 in the attic to:

      1 - ZNet like device using the ZWave GPIO card in it.
      2 - 1-Wire network hub for the 2nd floor and attic and lightning sensor counter

      Multipurposing it.

      Doing similiar with lightning sensor board ...on another RPi...not one wire though...

      [ATTACH]62289[/ATTACH]
      Last edited by Pete; July 15, 2017, 11:02 AM.
      - Pete

      Auto mator
      Homeseer 3 Pro - 3.0.0.548 (Linux) - Ubuntu 18.04/W7e 64 bit Intel Haswell CPU 16Gb
      Homeseer Zee2 (Lite) - 3.0.0.548 (Linux) - Ubuntu 18.04/W7e - CherryTrail x5-Z8350 BeeLink 4Gb BT3 Pro
      HS4 Lite - Ubuntu 22.04 / Lenovo Tiny M900 / 32Gb Ram

      HS4 Pro - V4.1.18.1 - Ubuntu 22.04 / Lenova Tiny M900 / 32Gb Ram
      HSTouch on Intel tabletop tablets (Jogglers) - Asus AIO - Windows 11

      X10, UPB, Zigbee, ZWave and Wifi MQTT automation-Tasmota-Espurna. OmniPro 2, Russound zoned audio, Alexa, Cheaper RFID, W800 and Home Assistant

      Comment


        #4
        Hi Pete,

        Thank you for providing the additional details. If you could mimic the behavior of the EDS OWServer by returning the readings in XML format, then my plug-in would work with little modifications. If you're interested in this approach, then let me know and I'll provide you additional details. Otherwise, I do not have any plans on adding support for OWFS as the required skills to set it up is beyond the average HomeSeer user.

        Regards,
        Ultrajones
        Plug-ins: UltraMon, UltraM1G, UltraCID, Ultra1Wire, UltraLog, UltraWeatherBug, UltraPioneerAVR, UltraGCIR

        Comment


          #5
          Thank you Randy. I am interested.

          Yes looking right now to find a script that creates an XML format of the owfs html format.

          Here is just the regular format directory....

          ~ZNet:/mnt/1wire/26.3B3AF5000000# stat -c "%y %s %n" *

          2017-07-15 12:19:00.000000000 -0500 16 address
          2017-07-15 12:19:00.000000000 -0500 256 alias
          2017-07-15 12:26:43.000000000 -0500 8 B1-R1-A
          2017-07-15 12:26:43.000000000 -0500 1 CA
          2017-07-15 12:19:00.000000000 -0500 2 crc8
          2017-07-15 12:19:00.000000000 -0500 24 date
          2017-07-15 12:26:43.000000000 -0500 8 disconnect
          2017-07-15 12:26:43.000000000 -0500 1 EE
          2017-07-15 12:26:43.000000000 -0500 8 endcharge
          2017-07-15 12:19:00.000000000 -0500 2 family
          2017-07-15 12:26:43.000000000 -0500 8 HIH3600
          2017-07-15 12:26:43.000000000 -0500 8 HIH4000
          2017-07-15 12:26:43.000000000 -0500 8 HTM1735
          2017-07-15 12:19:00.000000000 -0500 12 humidity
          2017-07-15 12:26:43.000000000 -0500 1 IAD
          2017-07-15 12:19:00.000000000 -0500 12 id
          2017-07-15 12:19:00.000000000 -0500 16 locator
          2017-07-15 12:26:43.000000000 -0500 8 MultiSensor
          2017-07-15 12:26:43.000000000 -0500 12 offset
          2017-07-15 12:26:43.000000000 -0500 8 pages
          2017-07-15 12:19:00.000000000 -0500 16 r_address
          2017-07-15 12:19:00.000000000 -0500 12 r_id
          2017-07-15 12:19:00.000000000 -0500 16 r_locator
          2017-07-15 12:26:43.000000000 -0500 8 S3-R1-A
          2017-07-15 12:19:00.000000000 -0500 12 temperature
          2017-07-15 12:19:00.000000000 -0500 32 type
          2017-07-15 12:26:43.000000000 -0500 12 udate
          2017-07-15 12:26:43.000000000 -0500 12 VAD
          2017-07-15 12:26:43.000000000 -0500 12 VDD
          2017-07-15 12:26:43.000000000 -0500 12 vis

          ~ZNet:/mnt/1wire/26.3B3AF5000000# cat temperature

          23.9375

          cat humidity

          41.6294


          Same question has been posted on a few forums (automation and 1wire OWFS).

          On linux RPi or Ubuntu OWFS is just:

          apt install owfs

          Then it is just configuring the configuration file for the 9097.

          from lxml import html, etree

          doc = html.fromstring(open('a.html').read())
          out = open('a.xhtml', 'wb')
          out.write(etree.tostring(doc))

          The following NEW packages will be installed:
          python-lxml

          Unpacking python-lxml (from .../python-lxml_2.3.2-1+deb7u1_armhf.deb) ...
          Setting up python-lxml (2.3.2-1+deb7u1) ...
          Last edited by Pete; July 15, 2017, 12:30 PM.
          - Pete

          Auto mator
          Homeseer 3 Pro - 3.0.0.548 (Linux) - Ubuntu 18.04/W7e 64 bit Intel Haswell CPU 16Gb
          Homeseer Zee2 (Lite) - 3.0.0.548 (Linux) - Ubuntu 18.04/W7e - CherryTrail x5-Z8350 BeeLink 4Gb BT3 Pro
          HS4 Lite - Ubuntu 22.04 / Lenovo Tiny M900 / 32Gb Ram

          HS4 Pro - V4.1.18.1 - Ubuntu 22.04 / Lenova Tiny M900 / 32Gb Ram
          HSTouch on Intel tabletop tablets (Jogglers) - Asus AIO - Windows 11

          X10, UPB, Zigbee, ZWave and Wifi MQTT automation-Tasmota-Espurna. OmniPro 2, Russound zoned audio, Alexa, Cheaper RFID, W800 and Home Assistant

          Comment


            #6
            OK got a PHP script that emulates the EDS owserver. Running it in debug mode generates the EDS owserver xml file.

            It works except that it doesn't see the schema located here:

            hxxp://www/embededdatasystems.com/schema/owserver

            The PHP script cannot find the schema.

            ZNet:/var/www# php owserver.php -d
            ServerRead: Data error on /bus.1/type
            ServerRead: Data error on /bus.1/family
            ServerRead: Data error on /bus.1/r_address
            PHP Notice: Undefined index: in /var/www/owserver.php on line 49

            Notice: Undefined index: in /var/www/owserver.php on line 49
            <Devices-Detail-Response xmlns="http://www/embededdatasystems.com/schema/owserver" xmlns:xsi="htinstance">
            <DevicesConnected>1</DevicesConnected>
            <DataErrors>0</DataErrors>
            <DeviceName>OWServer Emulator V1</DeviceName>
            <HostName>ICS-ZNet</HostName>
            <owd_ Description="">
            <Name></Name>
            <Family></Family>
            <ROMId></ROMId>
            <PrimaryValue> Deg C</PrimaryValue>
            <Temperature Units="Centigrade"></Temperature>
            </owd_>
            </Devices-Detail-Response>


            Line 49

            $sen = shell_exec("owread $device/r_address");

            // Create the xml code for this device
            $devXml .= " <owd_$type Description=\"{$family[$fam]['description']}\">\n";
            $devXml .= " <Name>$type</Name>\n";
            $devXml .= " <Family>$fam</Family>\n";
            $devXml .= " <ROMId>$sen</ROMId>\n";
            $devXml .= " <PrimaryValue>$temp Deg $temp_unit</PrimaryValue>\n";
            $devXml .= " <Temperature Units=\"{$units[$temp_unit]}\">$temp</Temperature>\n";
            $devXml .= " </owd_$type>\n";
            }
            }
            - Pete

            Auto mator
            Homeseer 3 Pro - 3.0.0.548 (Linux) - Ubuntu 18.04/W7e 64 bit Intel Haswell CPU 16Gb
            Homeseer Zee2 (Lite) - 3.0.0.548 (Linux) - Ubuntu 18.04/W7e - CherryTrail x5-Z8350 BeeLink 4Gb BT3 Pro
            HS4 Lite - Ubuntu 22.04 / Lenovo Tiny M900 / 32Gb Ram

            HS4 Pro - V4.1.18.1 - Ubuntu 22.04 / Lenova Tiny M900 / 32Gb Ram
            HSTouch on Intel tabletop tablets (Jogglers) - Asus AIO - Windows 11

            X10, UPB, Zigbee, ZWave and Wifi MQTT automation-Tasmota-Espurna. OmniPro 2, Russound zoned audio, Alexa, Cheaper RFID, W800 and Home Assistant

            Comment


              #7
              Hi Pete,

              So you're all set?
              Plug-ins: UltraMon, UltraM1G, UltraCID, Ultra1Wire, UltraLog, UltraWeatherBug, UltraPioneerAVR, UltraGCIR

              Comment


                #8
                Not yet...almost...

                I am not sure if it is related to running Wheezy / PHP 5.4 (old) / xml-parser

                Keep getting errors running php. Wondering now if it is because I have humidity and counters enabled?

                All I have to do is run a cron job to post an xml file...

                ICS-ZNet:/var/www# php owserver.php -d
                PHP Notice: Undefined offset: 26 in /var/www/owserver.php on line 42

                Notice: Undefined offset: 26 in /var/www/owserver.php on line 42
                ServerRead: Data error on /26.8CC814000000/
                PHP Notice: Undefined offset: 26 in /var/www/owserver.php on line 49

                Notice: Undefined offset: 26 in /var/www/owserver.php on line 49
                PHP Notice: Undefined offset: 26 in /var/www/owserver.php on line 42

                Notice: Undefined offset: 26 in /var/www/owserver.php on line 42
                ServerRead: Data error on /26.993AF5000000/
                PHP Notice: Undefined offset: 26 in /var/www/owserver.php on line 49
                - Pete

                Auto mator
                Homeseer 3 Pro - 3.0.0.548 (Linux) - Ubuntu 18.04/W7e 64 bit Intel Haswell CPU 16Gb
                Homeseer Zee2 (Lite) - 3.0.0.548 (Linux) - Ubuntu 18.04/W7e - CherryTrail x5-Z8350 BeeLink 4Gb BT3 Pro
                HS4 Lite - Ubuntu 22.04 / Lenovo Tiny M900 / 32Gb Ram

                HS4 Pro - V4.1.18.1 - Ubuntu 22.04 / Lenova Tiny M900 / 32Gb Ram
                HSTouch on Intel tabletop tablets (Jogglers) - Asus AIO - Windows 11

                X10, UPB, Zigbee, ZWave and Wifi MQTT automation-Tasmota-Espurna. OmniPro 2, Russound zoned audio, Alexa, Cheaper RFID, W800 and Home Assistant

                Comment


                  #9
                  It sees the sensors and errors out.

                  php owserver.php
                  PHP Notice: Undefined offset: 26 in /var/www/html/owserver.php on line 43
                  ServerRead: Data error on /26.8CC814000000/
                  PHP Notice: Undefined offset: 26 in /var/www/html/owserver.php on line 50
                  PHP Notice: Undefined offset: 26 in /var/www/html/owserver.php on line 43
                  ServerRead: Data error on /26.993AF5000000/
                  PHP Notice: Undefined offset: 26 in /var/www/html/owserver.php on line 50
                  PHP Notice: Undefined offset: 26 in /var/www/html/owserver.php on line 43
                  ServerRead: Data error on /26.B3CA14000000/
                  PHP Notice: Undefined offset: 26 in /var/www/html/owserver.php on line 50
                  PHP Notice: Undefined offset: 26 in /var/www/html/owserver.php on line 43
                  ServerRead: Data error on /26.3B3AF5000000/
                  PHP Notice: Undefined offset: 26 in /var/www/html/owserver.php on line 50
                  PHP Notice: Undefined index: 1D in /var/www/html/owserver.php on line 43
                  ServerRead: Data error on /1D.37C907000000/
                  PHP Notice: Undefined index: 1D in /var/www/html/owserver.php on line 50
                  ServerRead: Data error on /bus.1/type
                  ServerRead: Data error on /bus.1/family
                  ServerRead: Data error on /bus.1/r_address
                  PHP Notice: Undefined index: in /var/www/html/owserver.php on line 50


                  <Devices-Detail-Response xmlns="http://www/embededdatasystems.com/schema/owserver" xmlns:xsi="htinstance">
                  <DevicesConnected>7</DevicesConnected>
                  <DataErrors>0</DataErrors>
                  <DeviceName>OWServer Emulator V1</DeviceName>
                  <HostName>ICS-ZNet</HostName>
                  <owd_DS18B20 Description="Parasite power thermometer">
                  <Name>DS18B20</Name>
                  <Family>28</Family>
                  <ROMId>F5000002F4D8CF28</ROMId>
                  <PrimaryValue>36.4375 Deg C</PrimaryValue>
                  <Temperature Units="Centigrade">36.4375</Temperature>
                  </owd_DS18B20>
                  <owd_DS2438 Description="">
                  <Name>DS2438</Name>
                  <Family>26</Family>
                  <ROMId>DC00000014C88C26</ROMId>
                  <PrimaryValue> Deg C</PrimaryValue>
                  <Temperature Units="Centigrade"></Temperature>
                  </owd_DS2438>
                  <owd_DS2438 Description="">
                  <Name>DS2438</Name>
                  <Family>26</Family>
                  <ROMId>8F000000F53A9926</ROMId>
                  <PrimaryValue> Deg C</PrimaryValue>
                  <Temperature Units="Centigrade"></Temperature>
                  </owd_DS2438>

                  With running debug it errors out and writes this xml file:

                  <Devices-Detail-Response xmlns="http://www/embededdatasystems.com/schema/owserver" xmlns:xsi="htinstance">
                  <DevicesConnected>1</DevicesConnected>
                  <DataErrors>0</DataErrors>
                  <DeviceName>OWServer Emulator V1</DeviceName>
                  <HostName>ICS-ZNet</HostName>
                  <owd_ Description="">
                  <Name></Name>
                  <Family></Family>
                  <ROMId></ROMId>
                  <PrimaryValue> Deg C</PrimaryValue>
                  <Temperature Units="Centigrade"></Temperature>
                  </owd_>
                  </Devices-Detail-Response>
                  - Pete

                  Auto mator
                  Homeseer 3 Pro - 3.0.0.548 (Linux) - Ubuntu 18.04/W7e 64 bit Intel Haswell CPU 16Gb
                  Homeseer Zee2 (Lite) - 3.0.0.548 (Linux) - Ubuntu 18.04/W7e - CherryTrail x5-Z8350 BeeLink 4Gb BT3 Pro
                  HS4 Lite - Ubuntu 22.04 / Lenovo Tiny M900 / 32Gb Ram

                  HS4 Pro - V4.1.18.1 - Ubuntu 22.04 / Lenova Tiny M900 / 32Gb Ram
                  HSTouch on Intel tabletop tablets (Jogglers) - Asus AIO - Windows 11

                  X10, UPB, Zigbee, ZWave and Wifi MQTT automation-Tasmota-Espurna. OmniPro 2, Russound zoned audio, Alexa, Cheaper RFID, W800 and Home Assistant

                  Comment


                    #10
                    Have to edit this part of the php script to include my combo temperature/humidity and dual counter.

                    Code:
                    // This array defines the value to retrieve for common 1-wire families
                    // information for adding more families can be found at the link below
                    //[B]hxxp://owfs.org/index.php?page=family-code-lookup[/B]
                    $family = array( "10" => array("getval" => "temperature", "description" => "Parasite power thermometer"), // DS18S20 temp
                                     "26" => array("getval" => "temperature", "description" => "Parasite power thermometer"), // DS18B20 temp
                                     "28" => array("getval" => "temperature", "description" => "Parasite power thermometer"), // DS18B20 temp
                                     "24" => array("getval" => "date", "description" => "Real time clock"),                   // DS1904 RTC
                                     "27" => array("getval" => "time", "description" => "Real time clock"),                   // DS1904 RTC
                                     "2C" => array("getval" => "wiper", "description" => "Digital potentiometer") );          // DS2890 digital pot
                    
                    $temp_unit = shell_exec("owread /settings/units/temperature_scale");
                    $units = array( "C" => "Centigrade", "F" => "Fahrenheit");
                    - Pete

                    Auto mator
                    Homeseer 3 Pro - 3.0.0.548 (Linux) - Ubuntu 18.04/W7e 64 bit Intel Haswell CPU 16Gb
                    Homeseer Zee2 (Lite) - 3.0.0.548 (Linux) - Ubuntu 18.04/W7e - CherryTrail x5-Z8350 BeeLink 4Gb BT3 Pro
                    HS4 Lite - Ubuntu 22.04 / Lenovo Tiny M900 / 32Gb Ram

                    HS4 Pro - V4.1.18.1 - Ubuntu 22.04 / Lenova Tiny M900 / 32Gb Ram
                    HSTouch on Intel tabletop tablets (Jogglers) - Asus AIO - Windows 11

                    X10, UPB, Zigbee, ZWave and Wifi MQTT automation-Tasmota-Espurna. OmniPro 2, Russound zoned audio, Alexa, Cheaper RFID, W800 and Home Assistant

                    Comment


                      #11
                      Think its working even though I am still getting some errors.

                      This is what I changed:

                      Code:
                      // This array defines the value to retrieve for common 1-wire families
                      // information for adding more families can be found at the link below
                      // hxxp://owfs.org/index.php?page=family-code-lookup
                      $family = array( "10" => array("getval" => "temperature", "description" => "Parasite power thermometer"), // DS18S20 temp
                                       "26" => array("getval" => "temperature", "description" => "Temperature Voltages and Current"), // DS2438 temp
                                       "26" => array("getval" => "humidity", "description" => "Voltages and Current"), // DS2438 hum
                                       "1D" => array("getval" => "counters.A", "description" => "Parasite power counter"), // DS2423 counterA
                                       "1D" => array("getval" => "counters.B", "description" => "Parasite power counter"), // DS2423 counterB
                                       "28" => array("getval" => "temperature", "description" => "Parasite power thermometer"), // DS18B20 temp
                                       "24" => array("getval" => "date", "description" => "Real time clock"),                   // DS1904 RTC
                                       "27" => array("getval" => "time", "description" => "Real time clock"),                   // DS1904 RTC
                                       "2C" => array("getval" => "wiper", "description" => "Digital potentiometer") );          // DS2890 digital pot
                      This is the errors I see:

                      php owserver.php -d
                      ServerRead: Data error on /bus.1/type
                      ServerRead: Data error on /bus.1/family
                      ServerRead: Data error on /bus.1/r_address
                      PHP Notice: Undefined index: in /var/www/html/owserver.php on line 54

                      Notice: Undefined index: in /var/www/html/owserver.php on line 54

                      Line 54

                      Line 53 // Create the xml code for this device
                      Line 54 $devXml .= " <owd_$type Description=\"{$family[$fam]['description']}\">\n";

                      XML File looks like this:

                      nano details.xml

                      Code:
                      <Devices-Detail-Response xmlns="http://www/embededdatasystems.com/schema/owserver" xmlns:xsi="htinstance">
                        <DevicesConnected>7</DevicesConnected>
                        <DataErrors>0</DataErrors>
                        <DeviceName>OWServer Emulator V1</DeviceName>
                        <HostName>ICS-ZNet</HostName>
                        <owd_DS18B20 Description="Parasite power thermometer">
                          <Name>DS18B20</Name>
                          <Family>28</Family>
                          <ROMId>F5000002F4D8CF28</ROMId>
                          <PrimaryValue>31.625 Deg C</PrimaryValue>
                          <Temperature Units="Centigrade">31.625</Temperature>
                        </owd_DS18B20>
                        <owd_DS2438 Description="Voltages and Current">
                          <Name>DS2438</Name>
                          <Family>26</Family>
                          <ROMId>DC00000014C88C26</ROMId>
                          <PrimaryValue>36.8339 Deg C</PrimaryValue>
                          <Temperature Units="Centigrade">36.8339</Temperature>
                        </owd_DS2438>
                        <owd_DS2438 Description="Voltages and Current">
                          <Name>DS2438</Name>
                          <Family>26</Family>
                          <ROMId>8F000000F53A9926</ROMId>
                          <PrimaryValue>58.166 Deg C</PrimaryValue>
                          <Temperature Units="Centigrade">58.166</Temperature>
                        </owd_DS2438>
                        <owd_DS2438 Description="Voltages and Current">
                          <Name>DS2438</Name>
                          <Family>26</Family>
                          <ROMId>9600000014CAB326</ROMId>
                          <PrimaryValue>38.113 Deg C</PrimaryValue>
                          <Temperature Units="Centigrade">38.113</Temperature>
                        </owd_DS2438>
                        <owd_DS2438 Description="Voltages and Current">
                          <Name>DS2438</Name>
                          <Family>26</Family>
                          <ROMId>BD000000F53A3B26</ROMId>
                          <PrimaryValue>39.2312 Deg C</PrimaryValue>
                          <Temperature Units="Centigrade">39.2312</Temperature>
                        </owd_DS2438>
                        <owd_DS2423 Description="">
                          <Name>DS2423</Name>
                          <Family>1D</Family>
                          <ROMId>FC00000007C9371D</ROMId>
                          <PrimaryValue> Deg C</PrimaryValue>
                          <Temperature Units="Centigrade"></Temperature>
                        </owd_DS2423>
                        <owd_ Description="">
                          <Name></Name>
                          <Family></Family>
                          <ROMId></ROMId>
                          <PrimaryValue> Deg C</PrimaryValue>
                          <Temperature Units="Centigrade"></Temperature>
                        </owd_>
                      </Devices-Detail-Response>
                      - Pete

                      Auto mator
                      Homeseer 3 Pro - 3.0.0.548 (Linux) - Ubuntu 18.04/W7e 64 bit Intel Haswell CPU 16Gb
                      Homeseer Zee2 (Lite) - 3.0.0.548 (Linux) - Ubuntu 18.04/W7e - CherryTrail x5-Z8350 BeeLink 4Gb BT3 Pro
                      HS4 Lite - Ubuntu 22.04 / Lenovo Tiny M900 / 32Gb Ram

                      HS4 Pro - V4.1.18.1 - Ubuntu 22.04 / Lenova Tiny M900 / 32Gb Ram
                      HSTouch on Intel tabletop tablets (Jogglers) - Asus AIO - Windows 11

                      X10, UPB, Zigbee, ZWave and Wifi MQTT automation-Tasmota-Espurna. OmniPro 2, Russound zoned audio, Alexa, Cheaper RFID, W800 and Home Assistant

                      Comment


                        #12
                        The plugin now is not erroring out as before. It is though not reading in the data and I still have not figured out the descriptors using for the combo temperature/humidity sensors and the counters. It is seeing the counters but not the humidity sensors.

                        This is how it is configured. Writing the file here to the dub dub dub root. The plugin looks at the details.xml file. There are no disconnects now. But it is not populating devices. IE: it sees a counter, calls it device #5 then errors on the numbers (whole number integers). I just point the plugin to the RPi2 dub dub dub directory port 80. I just installed Apache2 and PhP on the RPi2. Not mysql for time bean.

                        ~ZNet:/var/www# ls
                        details.xml html index.html index.php owserver.php

                        I am using this stuff documented on the OWFS site.

                        Family-code lookup

                        [ATTACH]62304[/ATTACH]

                        [ATTACH]62305[/ATTACH]

                        Over the years here have collected a variety of one wire devices.

                        Temperature, combo (humidity and temperture), combo 2 (light, humidity and temperature), dual counters, AAG Weather stations (2), barometer, Temp08s and Temp05's, Maxim USB and Serial hubs(?)...from originally AAG, Midon, maxim and Hobby boards and purchasing single 1-wire temperature sensors in bulk (at one time it was like $10 for 10 or more of these sensors).

                        New thing now is writing the OWFS system in to arduinos wired or wirelessly and using Mosquitto. I have tested out the Mosquitto installation on same RPi here and it works fine. IE: there is a DIY step by step documented process for OWFS-Mosquitto.

                        Until recently had my 1-wire stuff wired up in star fashion using cat5e run to the leviton 42 inch panel. It worked like this for many years. It was all in Wintel (and a combo using xAP and regular 1-wire stuff) and now looking to shift it over to Linux and sort of mini hubs maybe based on the RPi2 with a combo set up (sort of spoke and hub thing). The initial testing here is one RPi2 in the attic (multiple functional one) with mostly 1-wire combination sensors and one lightning counter covering the attic space and 2nd floor. Next endeavor will be another RPi2 covering main floor and basement. The network connectivity of the plugin to using the OWFS standards makes this possible and very easy.

                        Cost savings for me is that I have a few RPi's that are spares and much old 1-wire stuff sitting around not being used these days having started to play with this stuff in the late 1990's.

                        Note that the Php script came for a perl script which eventually was used for a OWFS-SERVER emulator for the Casa Verde box and the ISY box. Tested one plugin running it in mono which creates a web server which writes xml to the mothership automation program. The software mentioned above uses LUA, Python, Perl or whatever tight language for running on theRPi.
                        Last edited by Pete; July 16, 2017, 02:03 PM.
                        - Pete

                        Auto mator
                        Homeseer 3 Pro - 3.0.0.548 (Linux) - Ubuntu 18.04/W7e 64 bit Intel Haswell CPU 16Gb
                        Homeseer Zee2 (Lite) - 3.0.0.548 (Linux) - Ubuntu 18.04/W7e - CherryTrail x5-Z8350 BeeLink 4Gb BT3 Pro
                        HS4 Lite - Ubuntu 22.04 / Lenovo Tiny M900 / 32Gb Ram

                        HS4 Pro - V4.1.18.1 - Ubuntu 22.04 / Lenova Tiny M900 / 32Gb Ram
                        HSTouch on Intel tabletop tablets (Jogglers) - Asus AIO - Windows 11

                        X10, UPB, Zigbee, ZWave and Wifi MQTT automation-Tasmota-Espurna. OmniPro 2, Russound zoned audio, Alexa, Cheaper RFID, W800 and Home Assistant

                        Comment


                          #13
                          Update 17th of July.

                          Running the php to xml file not getting any errors now.

                          The top of the details.xml file looks like this:

                          cat details.xml
                          <Devices-Detail-Response xmlns="http://www/embededdatasystems.com/schema/owserver" xmlns:xsi="htinstance">
                          <DevicesConnected>6</DevicesConnected>
                          <DataErrors>0</DataErrors>
                          <DeviceName>OWSERVER-ENET</DeviceName>
                          <HostName>ICS-ZNet</HostName>
                          <owd_DS18B20 Description="Programmable Resolution Thermometer">
                          <Name>DS18B20</Name>
                          <Family>28</Family>
                          <ROMId>F5000002F4D8CF28</ROMId>
                          <PrimaryValue>38.75 Deg C</PrimaryValue>
                          <Temperature Units="Centigrade">38.75</Temperature>
                          </owd_DS18B20>

                          Not sure if I am configuring the plugin correctly.

                          First device configuration is just using the rom id above:

                          F5000002F4D8CF28

                          Calling the device temperature-test

                          IP configuration is:

                          IPOFRPI

                          192.168.244.169:80

                          I do not see any errors when starting the plugin but do not see the first device being created.

                          Jul-17 11:54:49 AM Plug-In Interface Ultra1Wire3 is running as a trial, 28 days remaining.
                          Jul-17 11:54:50 AM Info Plugin Ultra1Wire3 has connected. IP:127.0.0.1:52452
                          Jul-17 11:54:50 AM Plug-In Finished initializing plug-in Ultra1Wire3

                          [ATTACH]62318[/ATTACH]
                          [ATTACH]62319[/ATTACH]

                          @Randy is there some typo in the details.xml file that makes it now work?

                          BTW also noticed on the HS3 mothership that the debug logs are getting written to the root...IE:

                          HomeSeer\hspi_ultra1wire3_debug.log

                          Its just that backward forward slash thing...

                          Standard HS3 build here on my linux boxes is:

                          /HomeSeer

                          in the root drive.

                          Watching the debug log see this:

                          7/17/2017 1:28:12 PM...Informational~~!~~Ultra1Wire3 version 3.0.6405.17148 initialization complete.
                          7/17/2017 1:28:12 PM...Debug~~!~~Entered InitHA7Net() function.
                          7/17/2017 1:28:12 PM...Debug~~!~~Sending HA7Net multicast query to 192.168.244.164 ...
                          7/17/2017 1:28:14 PM...Debug~~!~~No HA7Net units were found via discovery process ...
                          7/17/2017 1:28:14 PM...Debug~~!~~Entered InitOWServer() function.
                          7/17/2017 1:28:14 PM...Debug~~!~~Sending OWServer broadcast query to 192.168.244.164 ...
                          7/17/2017 1:28:16 PM...Debug~~!~~No OWServer units were found via discovery process ...
                          7/17/2017 1:28:17 PM...Debug~~!~~Getting OWServer devices from: http://192.168.244.169:80/details.xml
                          7/17/2017 1:28:17 PM...Debug~~!~~Entered InitializeChannelDatabase() function.
                          7/17/2017 1:28:17 PM...Debug~~!~~Entered OpenDBConn() function.
                          7/17/2017 1:28:17 PM...Debug~~!~~Running SQLite database vacuum.
                          7/17/2017 1:28:17 PM...Debug~~!~~Database initialization complete.
                          7/17/2017 1:28:17 PM...Debug~~!~~Entered CheckDatabaseTable() function.
                          7/17/2017 1:28:17 PM...Debug~~!~~Table tblTemperatureData exists.
                          7/17/2017 1:28:17 PM...Debug~~!~~Entered CheckDatabaseTable() function.
                          7/17/2017 1:28:17 PM...Debug~~!~~Table tblHumidityData exists.
                          7/17/2017 1:28:17 PM...Debug~~!~~Entered CheckDatabaseTable() function.
                          7/17/2017 1:28:17 PM...Debug~~!~~Table tblCounterData exists.
                          7/17/2017 1:28:17 PM...Debug~~!~~Entered CheckDatabaseTable() function.
                          7/17/2017 1:28:17 PM...Debug~~!~~Table tblPressureData exists.
                          7/17/2017 1:28:17 PM...Debug~~!~~CheckDatabase() reports hour database 13 exists.
                          7/17/2017 1:28:17 PM...Debug~~!~~Entered UpdateEnviromentalSensors() subroutine.
                          7/17/2017 1:29:17 PM...Debug~~!~~Entered InitHA7Net() function.
                          7/17/2017 1:29:17 PM...Debug~~!~~Sending HA7Net multicast query to 192.168.244.164 ...
                          7/17/2017 1:29:19 PM...Debug~~!~~No HA7Net units were found via discovery process ...
                          7/17/2017 1:29:19 PM...Debug~~!~~Entered InitOWServer() function.
                          7/17/2017 1:29:19 PM...Debug~~!~~Sending OWServer broadcast query to 192.168.244.164 ...
                          7/17/2017 1:29:21 PM...Debug~~!~~No OWServer units were found via discovery process ...
                          7/17/2017 1:29:21 PM...Debug~~!~~Getting OWServer devices from: http://192.168.244.169:80/details.xml
                          7/17/2017 1:29:21 PM...Debug~~!~~CheckDatabase() reports hour database 13 exists.
                          7/17/2017 1:29:21 PM...Debug~~!~~Entered UpdateEnviromentalSensors() subroutine.
                          Last edited by Pete; July 17, 2017, 01:31 PM.
                          - Pete

                          Auto mator
                          Homeseer 3 Pro - 3.0.0.548 (Linux) - Ubuntu 18.04/W7e 64 bit Intel Haswell CPU 16Gb
                          Homeseer Zee2 (Lite) - 3.0.0.548 (Linux) - Ubuntu 18.04/W7e - CherryTrail x5-Z8350 BeeLink 4Gb BT3 Pro
                          HS4 Lite - Ubuntu 22.04 / Lenovo Tiny M900 / 32Gb Ram

                          HS4 Pro - V4.1.18.1 - Ubuntu 22.04 / Lenova Tiny M900 / 32Gb Ram
                          HSTouch on Intel tabletop tablets (Jogglers) - Asus AIO - Windows 11

                          X10, UPB, Zigbee, ZWave and Wifi MQTT automation-Tasmota-Espurna. OmniPro 2, Russound zoned audio, Alexa, Cheaper RFID, W800 and Home Assistant

                          Comment


                            #14
                            Wow Pete, do you have a day job? I have not had time to keep up with your effort here. If you are attempting to mimic what the EDS OWServer does for all of the different types of sensors, then it won't work unless you make the XML file identical to what the EDS OWServer would output. I am okay with adding support for a custom XML file as long as the work we do can be leveraged by anyone else trying to implement something simlair. Can you send me the XML file that contains the output of all of your sensors and associated values so I can check out what we are dealing with? I'll review then make suggestions on a final version we can use to import the sensors and values.

                            Regards,
                            Ultrajones
                            Plug-ins: UltraMon, UltraM1G, UltraCID, Ultra1Wire, UltraLog, UltraWeatherBug, UltraPioneerAVR, UltraGCIR

                            Comment


                              #15
                              Hello Randy,

                              Out of boredom...only watch movies and never listen to the radio or watch television or read the newspapers...just play with computers mostly....

                              Last test here was just to get a copy of the xml file in the manual for the EDS server with one device and copy it over to the RPi2 running OWServer and Apache2 and PHP.

                              [ATTACH]62349[/ATTACH]
                              [ATTACH]62350[/ATTACH]

                              OW-SERVER-ENET-2 - User Manual

                              Just pointed your plugin to the 192.168.244.169:80/details.xml and waited. Never saw any devices created and debug doesn't show any errors.

                              All of the OWSERVER devices are mounted here:

                              ICS-ZNet:~# ls /mnt/1wire
                              1D.37C907000000 26.993AF5000000 alarm simultaneous system
                              26.3B3AF5000000 26.B3CA14000000 bus.0 statistics uncached
                              26.8CC814000000 28.CFD8F4020000 settings structure

                              PHP script is in the /var/www/ directory

                              ICS-ZNet:/var/www# ls
                              1wiretest.py html index.php owserver.php
                              details.xml index.html mipi-1wire.pl

                              You just run PHP like so (via a cron job as often as you want).

                              The php script uses owserver built in commands (owread) to read the 1-wire network devices and temperatures or whatever.



                              ICS-ZNet:/var/www/html# php owserver.php

                              ZNet:/var/www/html# ls
                              details.xml index.html index.php owserver.php owserver.php.bak

                              First sensor it sees should work. This is the top of the xml file and first sensor.

                              Code:
                              <Devices-Detail-Response xmlns="hxxp://www/embededdatasystems.com/schema/owserv$
                                <DevicesConnected>6</DevicesConnected>
                                <DataErrors>0</DataErrors>
                                <DeviceName>EDSOWSERVER</DeviceName>
                                <HostName>ICS-ZNet</HostName>
                                <owd_DS18B20 Description="Programmable Resolution Thermometer">
                                  <Name>DS18B20</Name>
                                  <Family>28</Family>
                                  <ROMId>F5000002F4D8CF28</ROMId>
                                  <PrimaryValue>48.3125 Deg C</PrimaryValue>
                                  <Temperature Units="Centigrade">48.3125</Temperature>
                                </owd_DS18B20>
                              Honestly not sure how your plugin works but assumed that it only looks for the details.xml file and nothing else.
                              I am guessing it will work fine with the old Temp08-5's that I have. If you get it to work then you can build a one wire network from a RPi using the RPi i2C methodology or a maxim serial or usb hub device these days. Here my RPi2 is also a ZNet like device POE powered in the attic. It is now doing both Z-Wave and 1-wire stuff.

                              The PhP file to details.xml is very generic and was written up for Vera users using the EDS Vera server plugin but taking the XML file from the old OWServer as documents some 15 years ago...the Vera plugin just uses java (I think) to read the details dot xml file. It works with both this script and the official EDS OW-Server appliance.
                              Last edited by Pete; July 19, 2017, 02:17 PM.
                              - Pete

                              Auto mator
                              Homeseer 3 Pro - 3.0.0.548 (Linux) - Ubuntu 18.04/W7e 64 bit Intel Haswell CPU 16Gb
                              Homeseer Zee2 (Lite) - 3.0.0.548 (Linux) - Ubuntu 18.04/W7e - CherryTrail x5-Z8350 BeeLink 4Gb BT3 Pro
                              HS4 Lite - Ubuntu 22.04 / Lenovo Tiny M900 / 32Gb Ram

                              HS4 Pro - V4.1.18.1 - Ubuntu 22.04 / Lenova Tiny M900 / 32Gb Ram
                              HSTouch on Intel tabletop tablets (Jogglers) - Asus AIO - Windows 11

                              X10, UPB, Zigbee, ZWave and Wifi MQTT automation-Tasmota-Espurna. OmniPro 2, Russound zoned audio, Alexa, Cheaper RFID, W800 and Home Assistant

                              Comment

                              Working...
                              X