Navigation

    Logo
    • Register
    • Login
    • Search
    • Recent
    • Tags
    • Unread
    • Categories
    • Unreplied
    • Popular
    • GitHub
    • Docu
    • Hilfe
    1. Home
    2. Русский
    3. ioBroker
    4. Ошибка
    5. ioBroker ошибки
    6. Ошибка создания объекта в OWFS

    NEWS

    • Neuer Blog: Fotos und Eindrücke aus Solingen

    • ioBroker@Smart Living Forum Solingen, 14.06. - Agenda added

    • ioBroker goes Matter ... Matter Adapter in Stable

    Ошибка создания объекта в OWFS

    This topic has been deleted. Only users with topic management privileges can see it.
    • Bluefox
      Bluefox last edited by

      @Haus:

      @Bluefox:

      Объясни, зачем тебе другие атрибуты? Что бы цикл чтения тормозить? `
      Мне не надо это я для проверки. Для DS18B20 DS18S20 temperature и DS2413 PIO.A, PIO.B , вот DS2406 там ещё что то нужно но не использовал незнаю.

      Главное посмотри почему с удалённого неработает

      P.S Вот нашел DS2406 и DS2408 могут

      "Вместо DS2405 был использован двухканальный компонент DS2406P, где один канал отвечал за включение-выключение процесса аэрации, а второй канал использовался как датчик сухого контакта и определял моменты включения насоса (эмулируя нажатие кнопки). Эта схема работала, но как обрабатывать срабатывание насоса программно? Оказывается, весьма несложно. Для этих целей лучше всего использовать свойство компонента set_alarm, установив его значение '230'. Такая установка означает, что в случае срабатывания датчика на канале B, сервер owfs сообщит об этом создав линк на файл устройства в каталоге alarm" `
      set_alarm сложный объект:

      ├── set_alarm
      │   │   ├── dew_point_hi
      │   │   ├── dew_point_low
      │   │   ├── heat_index_hi
      │   │   ├── heat_index_low
      │   │   ├── humidex_hi
      │   │   ├── humidex_low
      │   │   ├── humidity_hi
      │   │   ├── humidity_low
      │   │   ├── temp_hi
      │   │   └── temp_low
      
      1 Reply Last reply Reply Quote 0
      • Bluefox
        Bluefox last edited by

        @Alekseym6:

        @Bluefox:

        Какие ещё могут полезные свойства? `

        sensed.BYTE

        PIO.BYTE

        получить или установить сразу 2 порта IO `
        я расширил:

        var possibleProperties = [
                'humidity',
                'pressure',
                'inHg',
                'vib_level',
                'vib_peak',
                'vib_min',
                'vib_max',
                'current.0',
                'current.1',
                'current.2',
                'current.ALL',
                'min_current.0',
                'min_current.1',
                'min_current.2',
                'min_current.ALL',
                'max_current.0',
                'max_current.1',
                'max_current.2',
                'max_current.ALL',
                'volts.0',
                'volts.1',
                'volts.2',
                'volts.ALL',
                'min_volts.0',
                'min_volts.1',
                'min_volts.2',
                'min_volts.ALL',
                'max_volts.0',
                'max_volts.1',
                'max_volts.2',
                'max_volts.ALL',
                'gain',
                'offset',
                'current',
                'illuminance',
                'relay/state',
                'relay/control',
                'LED/state',
                'LED/control',
                'resistance',
                'dew_point',
                'heat_index',
                'humidex',
                'light',
                'temperature',
                'fasttemp',
                'set_alarm',
                'date',
                'PIO',
                'PIO.A',
                'PIO.B',
                'PIO.0',
                'PIO.1',
                'PIO.2',
                'PIO.3',
                'PIO.4',
                'PIO.5',
                'PIO.6',
                'PIO.7',
                'PIO.ALL',
                'PIO.BYTE',
                'latch.0',
                'latch.1',
                'latch.2',
                'latch.3',
                'latch.4',
                'latch.5',
                'latch.6',
                'latch.7',
                'latch.ALL',
                'latch.BYTE',
                'sensed.BYTE'
            ];
        
        1 Reply Last reply Reply Quote 0
        • H
          Haus last edited by

          @Bluefox:

          @Haus:

          Главное посмотри почему с удалённого неработает `
          Поменяй в файле /etc/owfs.conf

          # With this setup, any client (but owserver) uses owserver on the
          # local machine...
          !server: -s 4304
          
          

          и

          ####################### OWSERVER ########################
          
          server: -p 4304
          
          

          У тебя только локальный доступ настроен `

          Это я уже давно сделал, проблема в чём то другом. Когда я руками заполняю датчики всё работает, а Read addresses "Найдено 0 сенсор(a/ов)"

          ioBroker server 192.168.1.11

          owfs server 192.168.1.10 (где подключён адаптер) owfs.conf

          ! # Sample configuration file for the OWFS suite for Debian GNU/Linux.
          ! #
          ! #
          ! # This is the main OWFS configuration file. You should read the
          ! # owfs.conf(5) manual page in order to understand the options listed
          ! # here.
          ! ######################## SOURCES ########################
          ! #
          ! # With this setup, any client (but owserver) uses owserver on the
          ! # local machine…
          ! ! server: server = 4304
          ! #
          ! # ...and owserver uses the real hardware, by default fake devices
          ! # This part must be changed on real installation
          ! #server: FAKE = DS18S20,DS2405
          ! #
          ! # USB device: DS9490
          ! #server: usb = all
          ! #
          ! # Serial port: DS9097
          ! server: passive = /dev/ttyUSB0
          ! server: 8bit
          ! #server: passive = /dev/ttyUSB1
          ! #server: 8bit
          ! #
          ! # owserver tcp address
          ! #server: server = 192.168.10.1:3131
          ! #
          ! # random simulated device
          ! #server: FAKE = DS18S20,DS2405
          ! #
          ! ######################### OWFS ##########################
          ! #
          ! mountpoint = /mnt/1wire
          ! allow_other
          ! #
          ! ####################### OWHTTPD #########################
          ! http: port = 2121
          ! ####################### OWFTPD ##########################
          ! ftp: port = 2120
          ! ####################### OWSERVER ########################
          ! server: port = 4304

          1 Reply Last reply Reply Quote 0
          • H
            Haus last edited by

            @Bluefox:

            @Haus:
            owfs 0.2.1

            Зачем при read датчик выдаёт fasttemp?

            Я уже выкладывал log Response for write /Sensor2_temperature/temperature: true ????

            ! inMem 2016-07-29 13:33:19.406 debug message owfs.1.* owfs.1.wires.Sensor2_temperature val=24.5, ack=true, ts=1469788399389, q=0, from=system.adapter.owfs.1, lc=1469788399389
            ! owfs-1 2016-07-29 13:33:19.383 debug Read /28.FFF67D3B0400/temperature:24.5
            ! inMem 2016-07-29 13:33:18.575 debug message owfs.1.* owfs.1.wires.Sensor1_fasttemp val=24.5, ack=true, ts=1469788398559, q=0, from=system.adapter.owfs.1, lc=1469788398559
            ! owfs-1 2016-07-29 13:33:18.551 debug Read /28.FFF67D3B0400/fasttemp:24.5
            ! inMem 2016-07-29 13:32:49.589 debug message owfs.1.* owfs.1.wires.Sensor2_temperature val=0, ack=true, ts=1469788369575, q=0, from=system.adapter.owfs.1, lc=1469788369575
            ! owfs-1 2016-07-29 13:32:49.566 debug Response for write /Sensor2_temperature/temperature: true
            ! inMem 2016-07-29 13:32:49.507 debug message owfs.1.* owfs.1.wires.Sensor1_fasttemp val=0, ack=true, ts=1469788369492, q=0, from=system.adapter.owfs.1, lc=1469788369492
            ! owfs-1 2016-07-29 13:32:49.487 debug Response for write /Sensor1_fasttemp/fasttemp: true
            ! inMem 2016-07-29 13:32:49.479 debug message owfs.1.* owfs.1.wires.Sensor2_temperature val=24.5, ack=true, ts=1469788369458, q=0, from=system.adapter.owfs.1, lc=1469788369458
            ! owfs-1 2016-07-29 13:32:49.387 debug Read /28.FFF67D3B0400/temperature:24.5
            ! inMem 2016-07-29 13:32:48.612 debug message owfs.1.* owfs.1.wires.Sensor1_fasttemp val=24.5, ack=true, ts=1469788368599, q=0, from=system.adapter.owfs.1, lc=1469788368599
            ! owfs-1 2016-07-29 13:32:48.589 debug Read /28.FFF67D3B0400/fasttemp:24.5
            ! owfs-1 2016-07-29 13:32:48.509 debug Write /28.FFF67D3B0400/temperature with "0"
            ! owfs-1 2016-07-29 13:32:48.466 debug Write /28.FFF67D3B0400/fasttemp with "0"
            ! inMem 2016-07-29 13:32:48.450 debug message owfs.1.* owfs.1.wires.Sensor2_temperature val=0, ack=null, ts=1469788368431, q=0, from=system.adapter.owfs.1, lc=1469788368431
            ! inMem 2016-07-29 13:32:48.407 debug message owfs.1.* owfs.1.wires.Sensor1_fasttemp val=0, ack=null, ts=1469788368378, q=0, from=system.adapter.owfs.1, lc=1469788368378
            ! owfs-1 2016-07-29 13:32:48.231 info starting. Version 0.2.1 in /opt/iobroker/node_modules/iobroker.owfs
            ! owfs-1 2016-07-29 13:32:48.139 debug statesDB connected
            ! owfs-1 2016-07-29 13:32:48.120 debug objectDB connected
            ! host-Server1 2016-07-29 13:32:46.864 info instance system.adapter.owfs.1 started with pid 3576
            ! host-Server1 2016-07-29 13:32:44.896 info instance system.adapter.owfs.1 terminated with code 0 (OK)
            ! owfs-1 2016-07-29 13:32:44.873 info terminating

            1 Reply Last reply Reply Quote 0
            • Bluefox
              Bluefox last edited by

              > Зачем при read датчик выдаёт fasttemp?
              Потому что ты сказал в настройках это читать.

              Есть новая версия на гит

              1 Reply Last reply Reply Quote 0
              • H
                Haus last edited by

                @Bluefox:

                > Зачем при read датчик выдаёт fasttemp?
                Потому что ты сказал в настройках это читать.

                Есть новая версия на гит `
                Где я такое говорил?

                1 Reply Last reply Reply Quote 0
                • Bluefox
                  Bluefox last edited by

                  @Haus:

                  @Bluefox:

                  > Зачем при read датчик выдаёт fasttemp?
                  Потому что ты сказал в настройках это читать.

                  Есть новая версия на гит Где я такое говорил?
                  😄

                  в настройках

                  Ты настроил драйвер так, что бы он читал эту переменную. Удали её из конфига.

                  1 Reply Last reply Reply Quote 0
                  • H
                    Haus last edited by

                    @Bluefox:

                    @Haus:

                    @Bluefox:

                    Потому что ты сказал в настройках это читать.

                    Есть новая версия на гит Где я такое говорил?
                    😄

                    в настройках

                    Ты настроил драйвер так, что бы он читал эту переменную. Удали её из конфига. `
                    Чего та недопонимаю, ставлю новый owfs.2, включаю, захожу в настройки по умолчанию, нажимаю read получаю на DS18B20 два параметра 28.FFF67D3B0400/temperature, 28.FFF67D3B0400/fasttemp

                    1 Reply Last reply Reply Quote 0
                    • Bluefox
                      Bluefox last edited by

                      @Haus:

                      @Bluefox:

                      @Haus:

                      Где я такое говорил? `
                      😄

                      в настройках

                      Ты настроил драйвер так, что бы он читал эту переменную. Удали её из конфига. Чего та недопонимаю, ставлю новый owfs.2, включаю, захожу в настройки по умолчанию, нажимаю read получаю на DS18B20 два параметра 28.FFF67D3B0400/temperature, 28.FFF67D3B0400/fasttemp
                      Нажать на удалить не пробовал?

                      Сначала создаются возможные полезные значения, а тебе выбирать, хочешь ты их читать или нет
                      48_2016-07-29_23_32_51-iobroker.admin.png

                      1 Reply Last reply Reply Quote 0
                      • H
                        Haus last edited by

                        @Bluefox:

                        @Haus:

                        @Bluefox:

                        😄

                        в настройках

                        Ты настроил драйвер так, что бы он читал эту переменную. Удали её из конфига. Чего та недопонимаю, ставлю новый owfs.2, включаю, захожу в настройки по умолчанию, нажимаю read получаю на DS18B20 два параметра 28.FFF67D3B0400/temperature, 28.FFF67D3B0400/fasttemp
                        Нажать на удалить не пробовал?

                        Сначала создаются возможные полезные значения, а тебе выбирать, хочешь ты их читать или нет `
                        Не знаю кому и зачем нужен fasttemp. Закомментировал в admin````
                        'heat_index',
                        'humidex',
                        'light',
                        'temperature',
                        //'fasttemp',
                        'set_alarm',
                        'date',

                        1 Reply Last reply Reply Quote 0
                        • J
                          jeorgep last edited by

                          DS2408 в OWFS:

                          (http://owfs.org/uploads/DS2408.3.html#sect10)

                          PIO используются для записи в них 0/1

                          sensed используются для чтения информации с портов

                          latch используются для получения информации об изменении состояния порта

                          (бит 1 указывает, что состояние изменялось)

                          Для очистки состояния latch применяется запись в любой из latch портов. Например:

                          echo 1 > latch.0

                          При этом очищаюся ВСЕ восемь latch портов, то-есть для сохранения информации

                          об изменениях состояний портов со времени последней очистки - необходимо сохранить latch.ALL

                          и лишь потом производить очистку.

                          Перед использованием DS2408 необходимо провести ее инициализацию:

                          echo 1 > out_of_testmode

                          И для использования функции запись в порт - необходимо включить strobe:

                          echo 1 > strobe

                          В iobroker нужно использовать как минимум PIO и sensed - для возможности записи/чтения в порт.

                          1 Reply Last reply Reply Quote 0
                          • J
                            jeorgep last edited by

                            После установки версии 0.2.2 проблема с созданием объектов решилась.

                            Но очень долгая реакция на изменение состояния порта (sensed) в DS2408,

                            где-то 30 сек или больше, что недопустимо например для датчика движения и включения света.

                            У меня датчики HC-SR501 подключены к портам DS2408.

                            Параллельно запускаю скрипт:

                            #!/bin/bash
                            while true; do
                              ALL=`cat /mnt/1wire/29.XXXXXX000000/sensed.ALL`
                              echo $ALL
                              sleep 1
                            done
                            

                            И наблюдаю в закладке 'Objects' когда изменяется состояние (например value.sensed.4).

                            Задержка до пол-минуты относительно скрипта.

                            Реально такая задержка не позволит использовать драйвер OWFS для реакции на быстрые события.

                            1 Reply Last reply Reply Quote 0
                            • H
                              Haus last edited by

                              @jeorgep:

                              После установки версии 0.2.2 проблема с созданием объектов решилась.

                              Но очень долгая реакция на изменение состояния порта (sensed) в DS2408,

                              где-то 30 сек или больше, что недопустимо например для датчика движения и включения света.

                              У меня датчики HC-SR501 подключены к портам DS2408.

                              Параллельно запускаю скрипт:

                              #!/bin/bash
                              while true; do
                                ALL=`cat /mnt/1wire/29.XXXXXX000000/sensed.ALL`
                                echo $ALL
                                sleep 1
                              done
                              

                              И наблюдаю в закладке 'Objects' когда изменяется состояние (например value.sensed.4).

                              Задержка до пол-минуты относительно скрипта.

                              Реально такая задержка не позволит использовать драйвер OWFS для реакции на быстрые события. `
                              Привет,

                              Может есть возможность проверить удалённое подключение или большее количество датчиков на 127.0.0.1, у меня Read addresses "Найдено 0 сенсор(a/ов).

                              1 Reply Last reply Reply Quote 0
                              • J
                                jeorgep last edited by

                                ` > Привет,

                                Может есть возможность проверить удалённое подключение или большее количество датчиков на 127.0.0.1, у меня Read addresses "Найдено 0 сенсор(a/ов). `

                                Привет,

                                я не совсем понял вопрос.

                                Если про мое подключение - используется Orange Pi+2.

                                Как мастер - использую восьмиканальный DS2482-800 (http://datasheets.maximintegrated.com/e … 82-800.pdf).

                                Ибо 1-wire не любит подключения звездой, а в моем случае сервер с мастером находятся посередине топологии, пришлось использовать ее.

                                Реакция на уровне файлов OWFS или owserver неплохая - где-то на уровне секунды (точнее не замерял).

                                Датчиков используется много разнообразных.

                                И если для датчиков температуры, влажности, протечки воды, утечки газа - задержка в пол минуты допустима,

                                то для включалелей света или датчиков движения на портах DS2408 - она критична.

                                Жена не будет пол минуты после входа в помещение ждать пока загорится свет 🙂

                                В результате параллельного запуска скрипта и привязаного обьекта в ioBroker -

                                определил, что запаздывание от датчика движения происходит где-то до присвоения значения обьекту в ioBroker-е.

                                То-есть скрипт уже давно показал, что состояние изменилось, а в ioBrokere оно остается неизмененным еще где-то 30 сек.

                                Можно конечно обрабатывать состояние на уровне Bash или написать скрипт на Питоне и уже после

                                обработки изменять состояние переменной в ioBroker - но тогда драйвер OWFS не нужен.

                                1 Reply Last reply Reply Quote 0
                                • A
                                  Alekseym6 last edited by

                                  у меня при записи через FS(добавил строчки в драйвер) - реакция на изменении менее 1 сек. 7 шт DS2413(движение, стиральная машина, нагреватель воды, насос подкачки воды и т.д.). порт А вход с детектора движения, В выход на реле.

                                  1 Reply Last reply Reply Quote 0
                                  • J
                                    jeorgep last edited by

                                    > у меня при записи через FS(добавил строчки в драйвер) - реакция на изменении менее 1 сек. 7 шт DS2413(движение, стиральная машина, нагреватель воды, насос подкачки воды и т.д.). порт А вход с детектора движения, В выход на реле.

                                    Клас!

                                    делись строчками в драйвере 🙂

                                    1 Reply Last reply Reply Quote 0
                                    • H
                                      Haus last edited by

                                      @Alekseym6:

                                      у меня при записи через FS(добавил строчки в драйвер) - реакция на изменении менее 1 сек. 7 шт DS2413(движение, стиральная машина, нагреватель воды, насос подкачки воды и т.д.). порт А вход с детектора движения, В выход на реле. `
                                      Какой адаптер, как подключен?

                                      1 Reply Last reply Reply Quote 0
                                      • A
                                        Alekseym6 last edited by

                                        адаптер DS9490B, DS9490R USB to 1-Wire.

                                        подключение датчиков звездой, DS2413(7 шт), DS2405, питание 5В на DS18B20(21 шт), кабель UTP5. максимальная длинна 30 метров до бани.

                                        запускаю сервис owserver owfs

                                        добавил запись значений через FS в /opt/iobroker/node_modules/iobroker.owfs/main.js

                                        var fs = require('fs');

                                        …

                                        function writeWire(wire, value) {

                                        if (wire) {

                                        adapter.log.debug('Write /' + wire.id + '/' + (wire.property || 'temperature') + ' with "' + value + '"');

                                        var path1wire = "/var/1-wire";

                                        if (wire.property == "sensed.BYTE") {

                                        var pathfs = "/" + wire.id + "/PIO.BYTE";

                                        } else if (wire.property == "PIO.BYTE") {

                                        var pathfs = "/" + wire.id + "/PIO.BYTE";

                                        } else {

                                        var pathfs = "/" + wire.id + '/' + (wire.property || 'temperature');

                                        }

                                        path1wire = path1wire + pathfs;

                                        var dataV = parseInt(value);

                                        adapter.log.debug(path1wire + ' with "' + dataV + '"');

                                        // Пишем в файл.

                                        fs.writeFile(path1wire, dataV, function(err, written) {

                                        if (err) {

                                        // Произошла ошибка при записи

                                        adapter.log.warn('Cannot write value of ' + path1wire + ': ' + err);

                                        }

                                        });

                                        client.write('/' + wire.id + '/' + (wire.property || 'temperature'), value, function(err, message) {

                                        adapter.log.debug('Write /' + wire.id + '/' + (wire.property || 'temperature') + ':' + message);

                                        //no idea what is received here

                                        if (err) {

                                        adapter.log.warn('Cannot write value of /' + wire.id + '/' + (wire.property || 'temperature') + ': ' + err);

                                        }

                                        });

                                        }

                                        }

                                        1 Reply Last reply Reply Quote 0
                                        • J
                                          jeorgep last edited by

                                          > добавил запись значений через FS в /opt/iobroker/node_modules/iobroker.owfs/main.js
                                          Спасибо! буду пробовать

                                          ` > подключение датчиков звездой, DS2413(7 шт), DS2405, питание 5В на DS18B20(21 шт), кабель UTP5. максимальная длинна 30 метров до бани.

                                          запускаю сервис owserver owfs `
                                          У меня тоже UTP5 до 20 м в луче звезды.

                                          питание 9В и около датчиков ставлю стабилизатор 7805 - копейки стоит, а душе спокойнее 🙂

                                          Раньше при питании 5В и включениях реле - бывали сбои.

                                          Все на одном UPS ES 550G.

                                          Мне больше нравится DS2408S - 8-канальный ключ. Часть портов использую на вход

                                          (датчики движения, герконы, выходы компараторов датчиков дыма/газа, протечки, фотодиоды и т. п.)

                                          часть на управление (светодиоды - индикация, реле, тиристоры).

                                          В DS2408 есть приятная особенность - alarm.

                                          Раньше, когда моя система была на Raspberry Pi и самописных Python/bash скриптах -

                                          ресурсов катастрофически не хватало, и удобно было в цикле просматривать лишь папку alarm

                                          и при возникновении алармов про изменение состояния порта -

                                          уже распарсывать инфу по отдельным портам, вместо того, чтобы бегать по всем папкам.

                                          Для датчиков освещения, влажности, поточных значений датчиков газа/дыма - использую DS2438.

                                          Для отсылки срочных сообщений - GPRS Shield на SIM900.

                                          1 Reply Last reply Reply Quote 0
                                          • H
                                            Haus last edited by

                                            @Alekseym6:

                                            адаптер DS9490B, DS9490R USB to 1-Wire.

                                            подключение датчиков звездой, DS2413(7 шт), DS2405, питание 5В на DS18B20(21 шт), кабель UTP5. максимальная длинна 30 метров до бани.

                                            запускаю сервис owserver owfs

                                            добавил запись значений через FS в /opt/iobroker/node_modules/iobroker.owfs/main.js `
                                            Alekseym6, в ioBroker в драйвере owfs есть кнопка "Read addresses" она у тебя находит датчики и ключи?

                                            1 Reply Last reply Reply Quote 0
                                            • First post
                                              Last post

                                            Support us

                                            ioBroker
                                            Community Adapters
                                            Donate

                                            777
                                            Online

                                            31.8k
                                            Users

                                            80.0k
                                            Topics

                                            1.3m
                                            Posts

                                            5
                                            74
                                            16747
                                            Loading More Posts
                                            • Oldest to Newest
                                            • Newest to Oldest
                                            • Most Votes
                                            Reply
                                            • Reply as topic
                                            Log in to reply
                                            Community
                                            Impressum | Datenschutz-Bestimmungen | Nutzungsbedingungen
                                            The ioBroker Community 2014-2023
                                            logo