Navigation

    Logo
    • Register
    • Login
    • Search
    • Recent
    • Tags
    • Unread
    • Categories
    • Unreplied
    • Popular
    • GitHub
    • Docu
    • Hilfe
    1. Home
    2. Русский
    3. ioBroker
    4. ioBroker драйвера
    5. 1Wire и 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

    1Wire и OWFS

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

      @spectrekr:

      @andrey99986:

      @Alekseym6:

      через owserver и исходный драйвер owfs в iobroker все ещё не пишет `
      У меня тоже owfs драйвер не работает (как мне кажется).

      Owserver запущен : "/usr/bin/owserver -d /dev/ttyUSB0 -p 3000"

      В настройках драйвера "Порт OWFS сервера" установил 3000.

      Вручную ввёл адреса устройств owfs (Темп. датчиков).

      В объектах owfs есть только "wires".

      Дальше - как вообще понять что он работает или не работает - как обратиться к показаниям ?

      P.S.То что Owserver работает - не вызывает сомнений, так как /usr/bin/owhttpd берёт из него данные. А в /mnt/1wire у вас есть что-то?
      Я так понял, что он не запускает /usr/bin/owfs. Эта программа ответственна за то, что бы 1wire монтировались.

      Возможно использование только с owserver.

      @andrey99986 я надеюсь, что в owfs настройках iob тоже порт 3000 прописан?

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

        @spectrekr:

        @andrey99986:

        @Alekseym6:

        через owserver и исходный драйвер owfs в iobroker все ещё не пишет `
        У меня тоже owfs драйвер не работает (как мне кажется).

        Owserver запущен : "/usr/bin/owserver -d /dev/ttyUSB0 -p 3000"

        В настройках драйвера "Порт OWFS сервера" установил 3000.

        Вручную ввёл адреса устройств owfs (Темп. датчиков).

        В объектах owfs есть только "wires".

        Дальше - как вообще понять что он работает или не работает - как обратиться к показаниям ?

        P.S.То что Owserver работает - не вызывает сомнений, так как /usr/bin/owhttpd берёт из него данные. А в /mnt/1wire у вас есть что-то?
        Не понятно с чем работает драйвер iobroker owfs - с owserver-ом на порту 3000 или с файловой системой в каталоге /mnt/owfs.

        Судя по отзывам и названием драйвера (OWFS) - с файловой системой.

        Тогда зачем порт указывать? "3000" ?

        Запустил /usr/lib/owfs/owfs -c /etc/owfs.conf -s 192.168.2.200:3000 -m /mnt/owfs, в каталоге /mnt/owfs появились папки датчиков.

        В iobroker пока нет изменений. Что должно появиться? объекты? или их вручную создавать?

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

          Заработало. Обновил драйвер iobroker OWFS. Систему поставил несколько дней назад, и уже обновления… 🙂

          1 Reply Last reply Reply Quote 0
          • X
            XAPuTOH last edited by

            Всем привет!

            Я только начал осваивать ioBroker, да и вообще тему умных домов. Поэтому сразу прошу прощения если сморожу какую нибудь глупость. 🙂

            Имею в наличии OrangePI Plus и датчик температуры ds18b20.

            Все подключил как в статье http://smart-home.te.ua/raspberry-pi-ds18b20-2/

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

            Девайс обнаружился показания есть:

            root@orange:/sys/bus/w1/devices# cat 28-031657ba9cff/w1_slave
            83 01 4b 46 7f ff 0c 10 a2 : crc=a2 YES
            83 01 4b 46 7f ff 0c 10 a2 t=24187
            

            Вопрос: Как бы мне эти показания завести ioBroker?

            Насколько я понимаю OWFS может мне быть полезен в этом деле.

            Подключил. в качестве точки монтирования настроил: /sys/bus/w1/devices/

            настроил датчик. в качестве property задал w1_slave

            Датчик нашелся на в качестве показаний дает 83 - первые символы ответа из команды cat 28-031657ba9cff/w1_slave.

            В общем что я делаю не так ? или может еще есть способы вывести показания?

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

              @XAPuTOH:

              Всем привет!

              Я только начал осваивать ioBroker, да и вообще тему умных домов. Поэтому сразу прошу прощения если сморожу какую нибудь глупость. 🙂

              Имею в наличии OrangePI Plus и датчик температуры ds18b20.

              Все подключил как в статье http://smart-home.te.ua/raspberry-pi-ds18b20-2/

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

              Девайс обнаружился показания есть:

              root@orange:/sys/bus/w1/devices# cat 28-031657ba9cff/w1_slave
              83 01 4b 46 7f ff 0c 10 a2 : crc=a2 YES
              83 01 4b 46 7f ff 0c 10 a2 t=24187
              

              Вопрос: Как бы мне эти показания завести ioBroker?

              Насколько я понимаю OWFS может мне быть полезен в этом деле.

              Подключил. в качестве точки монтирования настроил: /sys/bus/w1/devices/

              настроил датчик. в качестве property задал w1_slave

              Датчик нашелся на в качестве показаний дает 83 - первые символы ответа из команды cat 28-031657ba9cff/w1_slave.

              В общем что я делаю не так ? или может еще есть способы вывести показания? `
              Привет

              Про OrangePI Plus и gpio сказать нечего не могу, но если у тебя в папке по пути /sys/bus/w1/devices/ есть твои датчики то в ioBroker настрой драйвер OWFS на "Локальный OWFS" укажи путь /sys/bus/w1/devices и нажми поиск сенсоров.

              1 Reply Last reply Reply Quote 0
              • X
                XAPuTOH last edited by

                Все так и делаю

                но так не находит

                Точнее так находик 2 какихто датчика. Но идентификаторы не совпадают ну и в значениях пусто.

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

                  @XAPuTOH:

                  Все так и делаю

                  но так не находит

                  Точнее так находик 2 какихто датчика. Но идентификаторы не совпадают ну и в значениях пусто. `
                  Давай скриншоты попки и настроек OWFS драйвера.

                  здесь полистай http://forum.iobroker.net/viewtopic.php?f=27&t=3267

                  1 Reply Last reply Reply Quote 0
                  • X
                    XAPuTOH last edited by

                    Почитал. но видимо я не очень в теме. В основном не очень понятно - ключи и т.п.

                    Делаю так:

                    Сперва создал один экземпляр драйвера и настроил в ручную так : 1612_1.jpg

                    Потом второй - в котором как раз нашлось 2 датчика с неизвестными адресами:
                    1612_2.jpg

                    Так это выглядит на странице объекты: 1612_3.jpg
                    Значение температуры там - это начало ответа (см. первый пост)

                    Попробовал отключить датчик. - теперь автоматом находит 1 датчик

                    Включаю - опять 2 шт. Т.е. драйвер все таки как то реагирует на появление датчика. Правда адрес левый какой то.

                    Я понял так(но может ошибаюсь):

                    1. Мастер сети мне не нужен. У меня апельсинка мастер?

                    2. Сервер owfs я не устанавливаю? или его таки надо ставить?

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

                      @XAPuTOH:

                      Почитал. но видимо я не очень в теме. В основном не очень понятно - ключи и т.п.

                      Делаю так:

                      Сперва создал один экземпляр драйвера и настроил в ручную так :1.jpg

                      Потом второй - в котором как раз нашлось 2 датчика с неизвестными адресами:

                      2.jpg

                      Так это выглядит на странице объекты:3.jpg

                      Значение температуры там - это начало ответа (см. первый пост)

                      Попробовал отключить датчик. - теперь автоматом находит 1 датчик

                      Включаю - опять 2 шт. Т.е. драйвер все таки как то реагирует на появление датчика. Правда адрес левый какой то.

                      Я понял так(но может ошибаюсь):

                      1. Мастер сети мне не нужен. У меня апельсинка мастер?

                      2. Сервер owfs я не устанавливаю? или его таки надо ставить? `
                        Вторая картинка датчики это пример их надо удолять.

                      Драйвер не знает такой параметр w1-slave, можно подправить код(костыль).

                      opt/iobroker/node_modules/iobroker.owfs/admin/index.html
                      

                      добавив

                      'light',
                                  'temperature',
                                  'fasttemp',
                                  'w1-slave',
                                  'set_alarm',
                      

                      после сохранения

                      cd /opt/iobroker
                      iobroker upload owfs
                      iobroker restart owfs
                      

                      дай скрин папки devices

                      1 Reply Last reply Reply Quote 0
                      • X
                        XAPuTOH last edited by

                        Вот содержимое папки devices:

                        root@orange:/sys/bus/w1/devices# ls
                        28-031657ba9cff  w1_bus_master1
                        root@orange:/sys/bus/w1/devices#
                        
                        

                        Вот содержимое папки датчика:

                        root@orange:/sys/bus/w1/devices# cd 28-031657ba9cff
                        root@orange:/sys/bus/w1/devices/28-031657ba9cff# ls
                        driver  id  name  power  subsystem  uevent  w1_slave
                        root@orange:/sys/bus/w1/devices/28-031657ba9cff#
                        
                        

                        костыль прописал. изменений не заметил.

                        1 Reply Last reply Reply Quote 0
                        • X
                          XAPuTOH last edited by

                          Сделал другой костыль.

                          Написал скрипт и подписался на изменение кривого значения температуры.

                          Получаю правильное значение и пишу его в другой объект:

                          on({id: 'owfs.0.wires.temp', change: "ne"}, function (obj) {
                            exec('cat /sys/bus/w1/devices/28-031657ba9cff/w1_slave | grep "t="| cut -f 2 -d "="', function(error, stdout, stderr){
                                setState("javascript.0.scriptEnabled.testScripts.tempValue", stdout/1000, true);
                                log(error);
                                log(stdout);
                                log(stderr);
                            })
                          });
                          

                          вроде работает. Но блин это же костыль. разобраться что к чему хотелось бы

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

                            @XAPuTOH:

                            Сделал другой костыль.

                            Написал скрипт и подписался на изменение кривого значения температуры.

                            Получаю правильное значение и пишу его в другой объект:

                            on({id: 'owfs.0.wires.temp', change: "ne"}, function (obj) {
                              exec('cat /sys/bus/w1/devices/28-031657ba9cff/w1_slave | grep "t="| cut -f 2 -d "="', function(error, stdout, stderr){
                                  setState("javascript.0.scriptEnabled.testScripts.tempValue", stdout/1000, true);
                                  log(error);
                                  log(stdout);
                                  log(stderr);
                              })
                            });
                            

                            вроде работает. Но блин это же костыль. разобраться что к чему хотелось бы `
                            Вообще-то то что сейчас сделал, как раз задача owfserver. Ты его установил?

                            Если да, то там надо указывать точку монтирования. Какая у тебя?

                            1 Reply Last reply Reply Quote 0
                            • X
                              XAPuTOH last edited by

                              Во!

                              Я сервер не устанавливал. Я еще в дном из предидущих постов как раз уточнял надо ли ставить. Но видимо в куче скриншотов мой вопрос затерялся ))))

                              Думал раз показания идут значит и не надо.

                              Установлю сервер отпишусь!

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

                                @XAPuTOH:

                                Во!

                                Я сервер не устанавливал. Я еще в дном из предидущих постов как раз уточнял надо ли ставить. Но видимо в куче скриншотов мой вопрос затерялся ))))

                                Думал раз показания идут значит и не надо.

                                Установлю сервер отпишусь! `
                                Вопрос только сможет owfserver с gpio работать?

                                Во втором скриншоте ты работал с точкой монтирования, тогда без разницы кто туда пишет. Только драйвер заточен под owfs с порядком папок и документов от него.

                                1 Reply Last reply Reply Quote 0
                                • X
                                  XAPuTOH last edited by

                                  Пока пытался настроить OWFS чтото сломалось в адаптере.

                                  Выдает ошибки - ENOENT: no such file or directory, scandir

                                  Что может быть?

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

                                    @XAPuTOH:

                                    Пока пытался настроить OWFS чтото сломалось в адаптере.

                                    Выдает ошибки - ENOENT: no such file or directory, scandir

                                    Что может быть? `
                                    Ошибка говорит, что папка не существует. Значит ты ввёл не то имя в настройках или ..

                                    Ручками посмотри папку.

                                    1 Reply Last reply Reply Quote 0
                                    • X
                                      XAPuTOH last edited by

                                      Да, походу неправильно написал путь. перезабил и все наладилось.

                                      В общем наверное пока так оставлю.

                                      1 Reply Last reply Reply Quote 0
                                      • X
                                        XAPuTOH last edited by

                                        Вопрос. как правильно поступить в моей ситуации.

                                        Не хочу ставить OWFS сервер. уж больно много он мне не нужного дополнительно ставит. И неизвестно решит ли он как то мои вопросы.

                                        Я выкрутился тем что использую OWFS драйвер. подписываюсь на изменение файла.

                                        Далее я сам файл обрабатываю и пишу в нужный мне объект.

                                        Выглядит как костыль.

                                        Вопрос. Можно ли как то подписаться на изменение файла не используя OWFS драйвер?

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

                                          @XAPuTOH:

                                          Вопрос. как правильно поступить в моей ситуации.

                                          Не хочу ставить OWFS сервер. уж больно много он мне не нужного дополнительно ставит. И неизвестно решит ли он как то мои вопросы.

                                          Я выкрутился тем что использую OWFS драйвер. подписываюсь на изменение файла.

                                          Далее я сам файл обрабатываю и пишу в нужный мне объект.

                                          Выглядит как костыль.

                                          Вопрос. Можно ли как то подписаться на изменение файла не используя OWFS драйвер? `
                                          Добавь npm модуль watch в настройках javasciprt.

                                          И используй так:

                                          var watch = require('watch');
                                          watch.createMonitor('/sys/bus/w1/devices/28-031657ba9cff', function (monitor) {
                                              monitor.on("changed", function (f) {
                                                // Handle file changes
                                                console.log(f + ' was changed');
                                              });
                                          });
                                          
                                          
                                          1 Reply Last reply Reply Quote 0
                                          • X
                                            XAPuTOH last edited by

                                            Спасибо! то что надо!

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

                                            Support us

                                            ioBroker
                                            Community Adapters
                                            Donate

                                            748
                                            Online

                                            31.8k
                                            Users

                                            80.0k
                                            Topics

                                            1.3m
                                            Posts

                                            10
                                            33
                                            10456
                                            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