Navigation

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

    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

    Разные ошибки

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

      Там в main.js ошибка небольшая.

      Надо добавить строкой 167

      fs = fs || require('fs');
      
      1 Reply Last reply Reply Quote 0
      • J
        jeorgep last edited by

        @spectrekr:

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

        Т.к. сейчас попробовал установить драйвер в систему, где 1wire работает, но owfs сервера нет, указал каталог с датчиками, драйвер пишет что нашел 6 вместо 5 датчиков, хотя это понятно, так как он читает количество каталогов в данной директории, но в настройках датчики не появляются. `

        Пакет owfs

        предоставляет 4 сервиса

        /lib/systemd/system/owfs.service

        ! ````
        [Unit]
        Description=1-wire filesystem FUSE mount
        Documentation=man:owfs(1)
        ! [Service]
        Type=forking
        ExecStart=/opt/owfs/bin/owfs -c /etc/owfs.conf --pid-file /var/run/owfs/owfs.pid -C
        ExecStop=/usr/bin/umount /mnt/1wire
        RuntimeDirectory=owfs
        ! [Install]
        WantedBy=multi-user.target

        Формирует виртуальную файловую систему в точке монтирования
        
        ****/lib/systemd/system/owserver.service****
        
        >! ````
        [Unit]
        Description=Backend server for 1-wire control
        Documentation=man:owserver(1)
        After=syslog.target network.target
        >! [Service]
        Type=forking
        ExecStart=/opt/owfs/bin/owserver -c /etc/owfs.conf -C --pid-file /var/run/owfs/owserver.pid
        >! [Install]
        WantedBy=multi-user.target
        Also=owserver.socket
        

        Предоставляет удаленный доступ к owfs файловой системе

        (по умолчанию порт 4304)

        /lib/systemd/system/owhttpd.service

        ! ````
        [Unit]
        Description=Tiny webserver for 1-wire control
        Documentation=man:owhttpd(1)
        After=network.target
        ! [Service]
        Type=forking
        ExecStart=/opt/owfs/bin/owhttpd -c /etc/owfs.conf --background --pid-file /var/run/owfs/owhttpd.pid
        User=owfs
        Group=owfs
        ! [Install]
        WantedBy=multi-user.target

        Поднимает легкий http server (на порту 2121 по умолчанию)
        
        и ****/lib/systemd/system/owftpd.service**** - не пользовался
        
        Для локального использования в файловой системе достаточно запустить лишь ****owfs**** сервис
        
        с конфигом /etc/owfs.conf вида:
        

        ! server: server = localhost:4304
        Celsius
        owfs: device = /dev/i2c-0
        mountpoint = /mnt/1wire
        allow_other
        timeout_volatile = 60
        timeout_stable = 60
        timeout_directory = 30
        timeout_presence = 60
        timeout_network = 0
        timeout_persistent_low = 600
        timeout_persistent_high = 3600
        format = fic
        cache_size = 0

        
        Для удаленного использования запускается два сервиса
        
        ****owfs.service****
        
        ****owserver.service****
        
        или три ****+ owhttpd.service****
        
        с конфигом /etc/owfs.conf вида:
        

        ! server: server = localhost:4304
        Celsius
        server: device = /dev/i2c-0
        http: port = 2121
        mountpoint = /mnt/1wire
        allow_other
        timeout_volatile = 60
        timeout_stable = 60
        timeout_directory = 30
        timeout_presence = 60
        timeout_network = 0
        timeout_persistent_low = 600
        timeout_persistent_high = 3600
        format = fic
        cache_size = 0

        В этом варианте можно пользоваться как удаленно так и локально.
        
        Локальный доступ осуществляется гораздо быстрее - в десятки раз,
        
        чем удаленный. Поэтому если нет необходимости в удаленном доступе -
        
        лучше пользоваться локальным. Погасив при этом ненужные сервисы owserver и owhttpd.
        
        Большое спасибо Bluefox за оперативность!
        1 Reply Last reply Reply Quote 0
        • Bluefox
          Bluefox last edited by

          @Haus:

          @Bluefox:

          А теперь?

          Включи debug уровень. Я встроил debug выводы для скана сенсоров, если не локально. `
          Вот это в локал

          owfs-0	2016-08-24 10:42:08.836	debug	Result for list: [""]
          
          

          Сейчас семь датчиков

          Когда пять находит

          owfs-0	2016-08-24 11:27:00.542	debug	Result for list: ['/10.DB1979020800','/28.ECB1CD040000','/28.3C3B63040000','/28.6659CE040000','/28.3E0764040000']
          
          ```` `  
          

          Помогай. У меня с FAKED
          48_2016-08-24_13_57_25-iobroker.admin.png

          Ошибка, где то в библиотеке owjs.

          Где то здесь (node_modules/owjs/owjs.js:

          // return array of dir
              self.list = function (path, callback) {
                  var promise;
                  if (path instanceof Array) {
                      promise = Q.all(path.map(self.list));
                  }
                  else {
                      promise = self.send(path, null, OW_DIRALL)
                      .then(function (messages) {
                          var message = messages[0];
                          if (message.header.ret < 0) {
                              throw new Error(message.header.ret);
                          } 
                          var str = message.payload;
                          str = str.substring(0, str.length - 1); // remove zero-char from end
                          return str.split(',');
                      });
                  }
          
                  return nodify(promise, callback);
              };
          

          Можешь встроить

          .then(function (messages) {
          		console.log(JSON.stringify(messages));//<-----
                          var message = messages[0];
          
          

          И выполнить

          iobroker stop owfs
          node node_modules/iobroker.owfs/main.js --force --logs
          
          
          1 Reply Last reply Reply Quote 0
          • S
            spectrekr last edited by

            @jeorgep:

            В этом варианте можно пользоваться как удаленно так и локально.

            Локальный доступ осуществляется гораздо быстрее - в десятки раз,

            чем удаленный. Поэтому если нет необходимости в удаленном доступе -

            лучше пользоваться локальным. Погасив при этом ненужные сервисы owserver и owhttpd.

            Большое спасибо Bluefox за оперативность! `
            Проблема в том что у меня 1wire реализован через gpio на raspberry и owfs пакет не дружит с режимом kernel. Соответственно он мне не создает виртуальную fs.

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

              @spectrekr:

              Проблема в том что у меня 1wire реализован через gpio на raspberry и owfs пакет не дружит с режимом kernel. Соответственно он мне не создает виртуальную fs. `

              Гм, не знаю - у меня мастер восьмиканальный железный.

              Попробуй так:

              systemctl disable owserver.service

              systemctl disable owhttpd.service

              Проверь есть ли у тебя /lib/systemd/system/owfs.service

              (он может отсутствовать)

              Если нет - создай по образу моего.

              systemctl enable owfs.service

              в /etc/owfs.conf

              Закомментируй строки типа

              server: device = /dev/i2c-0

              (то что у тебя)

              и поставь

              owfs: device = /dev/i2c-0

              (то устройство что у тебя)

              После этого перезагрузи Raspberry.

              Именно после перегрузки он может подхватить конфиг

              1 Reply Last reply Reply Quote 0
              • S
                spectrekr last edited by

                @jeorgep:

                Игрался и настраивал, не поддерживается. Там старые версии ядра еще можно было пропатчить, чтоб owfs заработал, на 4 версии ядра информации вообще не нашел. Внешнее устройство на i2c или USB в этом плане лучше.

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

                  @jeorgep:

                  @spectrekr:

                  Проблема в том что у меня 1wire реализован через gpio на raspberry и owfs пакет не дружит с режимом kernel. Соответственно он мне не создает виртуальную fs. `
                  После этого перезагрузи Raspberry.

                  Именно после перегрузки он может подхватить конфиг `
                  Не 😮 , я на DELL FX170 вся инфа в подписе

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

                    @Bluefox:

                    @Haus:

                    @Bluefox:

                    А теперь?

                    Включи debug уровень. Я встроил debug выводы для скана сенсоров, если не локально. `
                    Вот это в локал

                    owfs-0	2016-08-24 10:42:08.836	debug	Result for list: [""]
                    
                    

                    Сейчас семь датчиков

                    Когда пять находит

                    owfs-0	2016-08-24 11:27:00.542	debug	Result for list: ['/10.DB1979020800','/28.ECB1CD040000','/28.3C3B63040000','/28.6659CE040000','/28.3E0764040000']
                    
                    ```` `  
                    

                    Помогай. У меня с FAKED
                    filename="2016-08-24 13_57_25-ioBroker.admin.png" index="0">~~

                    Ошибка, где то в библиотеке owjs.

                    Где то здесь (node_modules/owjs/owjs.js:

                    // return array of dir
                        self.list = function (path, callback) {
                            var promise;
                            if (path instanceof Array) {
                                promise = Q.all(path.map(self.list));
                            }
                            else {
                                promise = self.send(path, null, OW_DIRALL)
                                .then(function (messages) {
                                    var message = messages[0];
                                    if (message.header.ret < 0) {
                                        throw new Error(message.header.ret);
                                    } 
                                    var str = message.payload;
                                    str = str.substring(0, str.length - 1); // remove zero-char from end
                                    return str.split(',');
                                });
                            }
                    
                            return nodify(promise, callback);
                        };
                    

                    Можешь встроить

                    .then(function (messages) {
                    		console.log(JSON.stringify(messages));//<-----
                                    var message = messages[0];
                    
                    

                    И выполнить

                    iobroker stop owfs
                    node node_modules/iobroker.owfs/main.js --force --logs
                    
                    ```` `  
                    

                    Сделал, считал когда пять

                    ! ````
                    2016-08-24 18:34:08.823 - debug: owfs.0 Connect to 127.0.0.1:4304
                    [{"header":{"version":0,"payload":85,"ret":0,"controlflags":32,"size":84,"offset":32770},"payload":"/10.DB1979020800,/28.ECB1CD040000,/28.3C3B63040000,/28.6659CE040000,/28.3E0764040000\u0000"}]
                    Result for list: ["/10.DB1979020800","/28.ECB1CD040000","/28.3C3B63040000","/28.6659CE040000","/28.3E0764040000"]
                    2016-08-24 18:34:09.757 - debug: owfs.0 Result for list: ["/10.DB1979020800","/28.ECB1CD040000","/28.3C3B63040000","/28.6659CE040000","/28.3E0764040000"]
                    Result for list_: ["10.DB1979020800","28.ECB1CD040000","28.3C3B63040000","28.6659CE040000","28.3E0764040000"]
                    2016-08-24 18:34:09.758 - debug: owfs.0 Result for list_: ["10.DB1979020800","28.ECB1CD040000","28.3C3B63040000","28.6659CE040000","28.3E0764040000"]
                    [{"header":{"version":0,"payload":392,"ret":0,"controlflags":32,"size":391,"offset":0},"payload":"/10.DB1979020800/address,/10.DB1979020800/alias,/10.DB1979020800/crc8,/10.DB1979020800/errata,/10.DB1979020800/family,/10.DB1979020800/id,/10.DB1979020800/locator,/10.DB1979020800/power,/10.DB1979020800/r_address,/10.DB1979020800/r_id,/10.DB1979020800/r_locator,/10.DB1979020800/scratchpad,/10.DB1979020800/temperature,/10.DB1979020800/temphigh,/10.DB1979020800/templow,/10.DB1979020800/type\u0000"}]
                    [{"header":{"version":0,"payload":541,"ret":0,"controlflags":32,"size":540,"offset":0},"payload":"/28.ECB1CD040000/address,/28.ECB1CD040000/alias,/28.ECB1CD040000/crc8,/28.ECB1CD040000/errata,/28.ECB1CD040000/family,/28.ECB1CD040000/fasttemp,/28.ECB1CD040000/id,/28.ECB1CD040000/locator,/28.ECB1CD040000/power,/28.ECB1CD040000/r_address,/28.ECB1CD040000/r_id,/28.ECB1CD040000/r_locator,/28.ECB1CD040000/scratchpad,/28.ECB1CD040000/temperature,/28.ECB1CD040000/temperature10,/28.ECB1CD040000/temperature11,/28.ECB1CD040000/temperature12,/28.ECB1CD040000/temperature9,/28.ECB1CD040000/temphigh,/28.ECB1CD040000/templow,/28.ECB1CD040000/type\u0000"}]
                    [{"header":{"version":0,"payload":541,"ret":0,"controlflags":32,"size":540,"offset":0},"payload":"/28.3C3B63040000/address,/28.3C3B63040000/alias,/28.3C3B63040000/crc8,/28.3C3B63040000/errata,/28.3C3B63040000/family,/28.3C3B63040000/fasttemp,/28.3C3B63040000/id,/28.3C3B63040000/locator,/28.3C3B63040000/power,/28.3C3B63040000/r_address,/28.3C3B63040000/r_id,/28.3C3B63040000/r_locator,/28.3C3B63040000/scratchpad,/28.3C3B63040000/temperature,/28.3C3B63040000/temperature10,/28.3C3B63040000/temperature11,/28.3C3B63040000/temperature12,/28.3C3B63040000/temperature9,/28.3C3B63040000/temphigh,/28.3C3B63040000/templow,/28.3C3B63040000/type\u0000"}]
                    [{"header":{"version":0,"payload":541,"ret":0,"controlflags":32,"size":540,"offset":0},"payload":"/28.6659CE040000/address,/28.6659CE040000/alias,/28.6659CE040000/crc8,/28.6659CE040000/errata,/28.6659CE040000/family,/28.6659CE040000/fasttemp,/28.6659CE040000/id,/28.6659CE040000/locator,/28.6659CE040000/power,/28.6659CE040000/r_address,/28.6659CE040000/r_id,/28.6659CE040000/r_locator,/28.6659CE040000/scratchpad,/28.6659CE040000/temperature,/28.6659CE040000/temperature10,/28.6659CE040000/temperature11,/28.6659CE040000/temperature12,/28.6659CE040000/temperature9,/28.6659CE040000/temphigh,/28.6659CE040000/templow,/28.6659CE040000/type\u0000"}]
                    [{"header":{"version":0,"payload":541,"ret":0,"controlflags":32,"size":540,"offset":0},"payload":"/28.3E0764040000/address,/28.3E0764040000/alias,/28.3E0764040000/crc8,/28.3E0764040000/errata,/28.3E0764040000/family,/28.3E0764040000/fasttemp,/28.3E0764040000/id,/28.3E0764040000/locator,/28.3E0764040000/power,/28.3E0764040000/r_address,/28.3E0764040000/r_id,/28.3E0764040000/r_locator,/28.3E0764040000/scratchpad,/28.3E0764040000/temperature,/28.3E0764040000/temperature10,/28.3E0764040000/temperature11,/28.3E0764040000/temperature12,/28.3E0764040000/temperature9,/28.3E0764040000/temphigh,/28.3E0764040000/templow,/28.3E0764040000/type\u0000"}]
                    Result for dir: {"10.DB1979020800":["address","alias","crc8","errata","family","id","locator","power","r_address","r_id","r_locator","scratchpad","temperature","temphigh","templow","type"],"28.ECB1CD040000":["address","alias","crc8","errata","family","fasttemp","id","locator","power","r_address","r_id","r_locator","scratchpad","temperature","temperature10","temperature11","temperature12","temperature9","temphigh","templow","type"],"28.3C3B63040000":["address","alias","crc8","errata","family","fasttemp","id","locator","power","r_address","r_id","r_locator","scratchpad","temperature","temperature10","temperature11","temperature12","temperature9","temphigh","templow","type"],"28.6659CE040000":["address","alias","crc8","errata","family","fasttemp","id","locator","power","r_address","r_id","r_locator","scratchpad","temperature","temperature10","temperature11","temperature12","temperature9","temphigh","templow","type"],"28.3E0764040000":["address","alias","crc8","errata","family","fasttemp","id","locator","power","r_address","r_id","r_locator","scratchpad","temperature","temperature10","temperature11","temperature12","temperature9","temphigh","templow","type"]}
                    2016-08-24 18:34:09.807 - debug: owfs.0 Result for dir: {"10.DB1979020800":["address","alias","crc8","errata","family","id","locator","power","r_address","r_id","r_locator","scratchpad","temperature","temphigh","templow","type"],"28.ECB1CD040000":["address","alias","crc8","errata","family","fasttemp","id","locator","power","r_address","r_id","r_locator","scratchpad","temperature","temperature10","temperature11","temperature12","temperature9","temphigh","templow","type"],"28.3C3B63040000":["address","alias","crc8","errata","family","fasttemp","id","locator","power","r_address","r_id","r_locator","scratchpad","temperature","temperature10","temperature11","temperature12","temperature9","temphigh","templow","type"],"28.6659CE040000":["address","alias","crc8","errata","family","fasttemp","id","locator","power","r_address","r_id","r_locator","scratchpad","temperature","temperature10","temperature11","temperature12","temperature9","temphigh","templow","type"],"28.3E0764040000":["address","alias","crc8","errata","family","fasttemp","id","locator","power","r_address","r_id","r_locator","scratchpad","temperature","temperature10","temperature11","temperature12","temperature9","temphigh","templow","type"]}
                    sendTo "readdir" to system.adapter.admin.0 from system.adapter.owfs.0
                    2016-08-24 18:34:09.808 - debug: owfs.0 sendTo "readdir" to system.adapter.admin.0 from system.adapter.owfs.0
                    2016-08-24 18:34:13.959 - debug: inMem message *.logging system.adapter.admin.0.logging val=false, ack=true, ts=1472052853910, q=0, from=system.adapter.admin.0, lc=1472052853910

                    Тут добавил датчик считал и получил 0
                    
                    >! ````
                    Read /28.3E0764040000/fasttemp:22.5
                    2016-08-24 17:25:39.499  - debug: owfs.0 Read /28.3E0764040000/fasttemp:22.5
                    2016-08-24 17:25:39.524  - debug: inMem message  owfs.0.* owfs.0.wires.Sensor8_fasttemp val=22.5, ack=true, ts=1472048739505, q=0, from=system.adapter.owfs.0, lc=1472040899036
                    2016-08-24 17:25:50.314  - debug: inMem message  messagebox.system.adapter.owfs.0 messagebox.system.adapter.owfs.0 command=readdir, ip=127.0.0.1, port=4304, from=system.adapter.admin.0, ip=127.0.0.1, port=4304, id=107, ack=false, time=1472048750295, _id=83207507
                    Connect to 127.0.0.1:4304
                    2016-08-24 17:25:50.322  - debug: owfs.0 Connect to 127.0.0.1:4304
                    [{"header":{"version":0,"payload":-1,"ret":0,"controlflags":0,"size":0,"offset":0},"payload":""},{"header":{"version":0,"payload":102,"ret":0,"controlflags":32,"size":101,"offset":32770},"payload":"/10.DB1979020800,/28.ECB1CD040000,/28.3C3B63040000,/28.6659CE040000,/28.3E0764040000,/28.FF76034B0400\u0000"}]
                    Result for list: [""]
                    2016-08-24 17:25:51.429  - debug: owfs.0 Result for list: [""]
                    Result for list_: []
                    2016-08-24 17:25:51.431  - debug: owfs.0 Result for list_: []
                    Result for dir: {}
                    2016-08-24 17:25:51.432  - debug: owfs.0 Result for dir: {}
                    sendTo "readdir" to system.adapter.admin.0 from system.adapter.owfs.0
                    2016-08-24 17:25:51.432  - debug: owfs.0 sendTo "readdir" to system.adapter.admin.0 from system.adapter.owfs.0
                    Read /28.ECB1CD040000/fasttemp:24.5
                    2016-08-24 17:26:04.757  - debug: owfs.0 Read /28.ECB1CD040000/fasttemp:24.5
                    2016-08-24 17:26:04.786  - debug: inMem message  owfs.0.* owfs.0.wires.Sensor2_fasttemp val=24.5, ack=true, ts=1472048764764, q=0, from=system.adapter.owfs.0, lc=1472046903492
                    Read /28.6659CE040000/fasttemp:21
                    2016-08-24 17:26:05.067  - debug: owfs.0 Read /28.6659CE040000/fasttemp:21
                    2016-08-24 17:26:05.090  - debug: inMem message  owfs.0.* owfs.0.wires.Sensor6_fasttemp val=21, ack=true, ts=1472048765074, q=0, from=system.adapter.owfs.0, lc=1472048466105
                    Read /28.ECB1CD040000/temperature:24.5625
                    

                    Вот это при локальном поиске

                    ! ````
                    Read /28.ECB1CD040000/temperature:24.5
                    2016-08-24 17:22:09.831 - debug: owfs.0 Read /28.ECB1CD040000/temperature:24.5
                    2016-08-24 17:22:09.858 - debug: inMem message owfs.0.* owfs.0.wires.Sensor3_temperature val=24.5, ack=true, ts=1472048529838, q=0, from=system.adapter.owfs.0, lc=1472048319346
                    2016-08-24 17:22:20.355 - debug: inMem message messagebox.system.adapter.owfs.0 messagebox.system.adapter.owfs.0 command=readdir, path=/mnt/1wire, from=system.adapter.admin.0, path=/mnt/1wire, id=106, ack=false, time=1472048540343, _id=83207506
                    2016-08-24 17:22:20.364 - error: message messagebox.system.adapter.owfs.0 [object Object] Cannot call method 'readdir' of null
                    2016-08-24 17:22:20.370 - error: TypeError: Cannot call method 'readdir' of null
                    at processMessage (/opt/iobroker/node_modules/iobroker.owfs/main.js:169:24)
                    at Adapter.adapter.on.timer (/opt/iobroker/node_modules/iobroker.owfs/main.js:24:14)
                    at Adapter.emit (events.js:95:17)
                    at Object.that.states.States.change (/opt/iobroker/node_modules/iobroker.js-controller/lib/adapter.js:2096:34)
                    at Socket.StatesInMemClient.client.on.connectionTimeout (/opt/iobroker/node_modules/iobroker.js-controller/lib/states/statesInMemClient.js:45:30)
                    at Socket.Emitter.emit (/opt/iobroker/node_modules/iobroker.js-controller/node_modules/socket.io-client/node_modules/component-emitter/index.js:131:20)
                    at Socket.onevent (/opt/iobroker/node_modules/iobroker.js-controller/node_modules/socket.io-client/lib/socket.js:263:10)
                    at Socket.onpacket (/opt/iobroker/node_modules/iobroker.js-controller/node_modules/socket.io-client/lib/socket.js:221:12)
                    at Manager. <anonymous>(/opt/iobroker/node_modules/iobroker.js-controller/node_modules/socket.io-client/node_modules/component-bind/index.js:21:15)
                    at Manager.Emitter.emit (/opt/iobroker/node_modules/iobroker.js-controller/node_modules/socket.io-client/node_modules/component-emitter/index.js:131:20)
                    Read /28.ECB1CD040000/fasttemp:24.5
                    2016-08-24 17:22:34.683 - debug: owfs.0 Read /28.ECB1CD040000/fasttemp:24.5
                    2016-08-24 17:22:34.710 - debug: inMem message owfs.0.* owfs.0.wires.Sensor2_fasttemp val=24.5, ack=true, ts=1472048554689, q=0, from=system.adapter.owfs.0, lc=1472046903492
                    Read /28.3C3B63040000/fasttemp:22
                    2016-08-24 17:22:34.961 - debug: owfs.0 Read /28.3C3B63040000/fasttemp:22
                    2016-08-24 17:22:34.991 - debug: inMem message owfs.0.* owfs.0.wires.Sensor4_fasttemp val=22, ack=true, ts=1472048554968, q=0, from=system.adapter.owfs.0, lc=1472040658839
                    Read /28.6659CE040000/temperature:21.3125
                    2016-08-24 17:22:35.958 - debug: owfs.0 Read /28.6659CE040000/temperature:21.3125
                    2016-08-24 17:22:35.991 - debug: inMem message owfs.0.* owfs.0.wires.Sensor7_temperature val=21.3125, ack=true, ts=1472048555965, q=0, from=system.adapter.owfs.0, lc=1472048286461</anonymous>

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

                      @spectrekr:

                      @jeorgep: Игрался и настраивал, не поддерживается. Там старые версии ядра еще можно было пропатчить, чтоб owfs заработал, на 4 версии ядра информации вообще не нашел. Внешнее устройство на i2c или USB в этом плане лучше.
                      Ну, и на всякий случай контрольный выстрел, чтобы совесть была чиста 🙂

                      В /etc/owfs.conf

                      должна быть указана точка монтирования:

                      mountpoint = /mnt/1wire
                      

                      Она должна существовать и на нее должны бть права:

                      mkdir /mnt/1wire
                      chmod 777 /mnt/1wire
                      chown root:root /mnt/1wire
                      
                      

                      И в /etc/fuse.conf не забыть:

                      user_allow_other
                      

                      В /boot/config.txt Raspberry Pi:

                      Наверное (точно не помню - у меня Orange Pi, там этого нет):

                      dtoverlay=w1-gpio
                      

                      У меня owfs самосборный, не из репозитария debian jessie.

                      А вот что говорит man owfs:

                      * w1 kernel module
                             This  a  linux-specific option for using the operating system's access to bus masters. Root access is required and the implementation was
                             still in progress as of owfs v2.7p12 and linux 2.6.30.
                      
                             Bus masters are recognized and added dynamically. Details of the physical bus master are not accessible, bu they include USB, i2c  and  a
                             number of GPIO designs on embedded boards.
                      
                             Access  is  restrict  to superuser due to the netlink broadcast protocol employed by w1\. Multitasking must be configured (threads) on the
                             compilation.
                      
                             --w1   Use the linux kernel w1 virtual bus master.
                      
                      
                      1 Reply Last reply Reply Quote 0
                      • Bluefox
                        Bluefox last edited by

                        Я поправил на git локальный поиск. С большим количеством датчиков по сети пока ничего не делал.

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

                          @Bluefox:

                          Я поправил на git локальный поиск. С большим количеством датчиков по сети пока ничего не делал. `
                          Сейчас попробую

                          P.S. локально считывает, сейчас добавлю датчиков

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

                            @Bluefox:

                            Я поправил на git локальный поиск. С большим количеством датчиков по сети пока ничего не делал. `
                            Добавил датчики, ключи всё гут в новой конфигурации с чебоксом локально.

                            А вот если сразу убрать чебокс и не сохранить, нажать на поиск сыпятся ошибки

                            TypeError:	2016-08-25 00:23:40.195	error	at Manager.Emitter.emit (/opt/iobroker/node_modules/iobroker.js-controller/node_modules/socket.io-client/node_modules/component-emitter/index.js:131:20)
                            TypeError:	2016-08-25 00:23:40.195	error	at Manager. (/opt/iobroker/node_modules/iobroker.js-controller/node_modules/socket.io-client/node_modules/component-bind/index.js:21:15)
                            TypeError:	2016-08-25 00:23:40.195	error	at Socket.onpacket (/opt/iobroker/node_modules/iobroker.js-controller/node_modules/socket.io-client/lib/socket.js:221:12)
                            TypeError:	2016-08-25 00:23:40.195	error	at Socket.onevent (/opt/iobroker/node_modules/iobroker.js-controller/node_modules/socket.io-client/lib/socket.js:263:10)
                            TypeError:	2016-08-25 00:23:40.195	error	at Socket.Emitter.emit (/opt/iobroker/node_modules/iobroker.js-controller/node_modules/socket.io-client/node_modules/component-emitter/index.js:131:20)
                            TypeError:	2016-08-25 00:23:40.195	error	at Socket.StatesInMemClient.client.on.connectionTimeout (/opt/iobroker/node_modules/iobroker.js-controller/lib/states/statesInMemClient.js:45:30)
                            TypeError:	2016-08-25 00:23:40.195	error	at Object.that.states.States.change (/opt/iobroker/node_modules/iobroker.js-controller/lib/adapter.js:2096:34)
                            TypeError:	2016-08-25 00:23:40.195	error	at Adapter.emit (events.js:95:17)
                            TypeError:	2016-08-25 00:23:40.195	error	at Adapter.adapter.on.timer (/opt/iobroker/node_modules/iobroker.owfs/main.js:24:14)
                            TypeError:	2016-08-25 00:23:40.195	error	at processMessage (/opt/iobroker/node_modules/iobroker.owfs/main.js:136:39)
                            TypeError:	2016-08-25 00:23:40.195	error	Cannot read property 'Client' of null
                            message	2016-08-25 00:23:40.188	error	messagebox.system.adapter.owfs.0 [object Object] Cannot read property 'Client' of null
                            owfs-0	2016-08-25 00:23:40.183	debug	Connect to 127.0.0.1:4304
                            inMem	2016-08-25 00:23:40.177	debug	message messagebox.system.adapter.owfs.0 messagebox.system.adapter.owfs.0 command=readdir, ip=127.0.0.1, port=4304, from=system.adapter.admin.0, ip=127.0.0.1, port=4304, id=160, ack=false, time=1472
                            inMem	2016-08-25 00:23:33.570	debug	message *.logging system.adapter.admin.0.logging val=true, ack=true, ts=1472073813535, q=0, from=system.adapter.admin.0, lc=1472073813535
                            inMem	2016-08-25 00:23:33.567	debug	message *.logging system.adapter.admin.0.logging val=true, ack=true, ts=1472073813535, q=0, from=system.adapter.admin.0, lc=1472073813535
                            owfs-0	2016-08-25 00:23:30.755	info	starting. Version 0.3.2 in /opt/iobroker/node_modules/iobroker.owfs
                            owfs-0	2016-08-25 00:23:30.666	debug	statesDB connected
                            owfs-0	2016-08-25 00:23:30.631	debug	objectDB connected
                            host-Server1	2016-08-25 00:23:29.498	info	instance system.adapter.owfs.0 started with pid 21434
                            host-Server1	2016-08-25 00:23:27.525	info	instance system.adapter.owfs.0 terminated with code 0 (OK)
                            owfs-0	2016-08-25 00:23:27.498	info	terminating
                            host-Server1	2016-08-25 00:23:26.971	info	stopInstance system.adapter.owfs.0 killing pid 21185
                            host-Server1	2016-08-25 00:23:26.970	info	stopInstance system.adapter.owfs.0
                            host-Server1	2016-08-25 00:23:26.962	info	object change system.adapter.owfs.0
                            

                            Bluefox, я думаю было бы здорово для каждого датчика сделать своё время опроса. Я раньше хитрил чтобы негонять опрос всех датчиков там где нужно часто (система отопления, котел, трёхходовой), запускал ещё один драйвер ну а в комнатах или ещё где рас в минуту или на улице рас в пять минут ну это ж кастыль

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

                              @Bluefox:

                              Я поправил на git локальный поиск. С большим количеством датчиков по сети пока ничего не делал. `

                              Тестирую работу owfs.

                              Установлена версия "version": "0.3.2"

                              Работает достаточно хорошо, быстро в локальном режиме

                              (в удаленном пока не тестировал - насколько я понимаю коллеги тестировали, у них работает)

                              Из замечаний - некорректно работает поиск.

                              Нашло 8 устройств - реально 15.

                              (Для меня некритично - я их прописываю ручками).

                              После редактирования OWFS свойств и записи увидел следующее:

                              root@art4:~# ps ax | grep owfs
                               1429 ?        Ssl  897:08 /opt/owfs/bin/owfs -c /etc/owfs.conf --pid-file /var/run/owfs/owfs.pid -C
                              16952 ?        Sl     2:51 io.owfs.0
                              17104 pts/5    S+     0:00 grep owfs
                              29842 ?        Sl     4:21 io.owfs.0
                              
                              

                              Запустилось два экземпляра адаптера owfs.

                              В результате чего во вкладке objects неверно отображаются уже отредактированные

                              обьекты owfs (не учтено последнее изменение)

                              Возможно это связано с проблеммой http://forum.iobroker.net/viewtopic.php?p=33105#p33105

                              Хотя здесь удвоились адаптеры на мастере.

                              Кстати, при решении данной проблеммы нужно учесть, что периодически мастер сигнализирует

                              об утраченной связи со слейвом, при том что тот жив, там хороший Ethernet,

                              я на нем сижу по ssh и сессия не рвется:

                              ...
                              2016-08-25 06:52:14.141  - .[33mwarn.[39m: host.art4 "system.host.art1" is offline
                              2016-08-25 06:52:14.155  - .[33mwarn.[39m: host.art4 "system.host.art1" is offline
                              ...
                              2016-08-25 08:36:34.419  - .[33mwarn.[39m: host.art4 "system.host.art1" is offline
                              2016-08-25 08:36:34.429  - .[33mwarn.[39m: host.art4 "system.host.art1" is offline
                              ...
                              2016-08-25 11:13:33.746  - .[33mwarn.[39m: host.art4 "system.host.art1" is offline
                              ...
                              2016-08-25 15:43:56.440  - .[33mwarn.[39m: host.art4 "system.host.art1" is offline
                              2016-08-25 15:43:56.461  - .[33mwarn.[39m: host.art4 "system.host.art1" is offline
                              ...
                              2016-08-25 16:33:23.163  - .[33mwarn.[39m: host.art4 "system.host.art1" is offline
                              2016-08-25 16:33:23.340  - .[33mwarn.[39m: host.art4 "system.host.art1" is offline
                              ...
                              2016-08-25 17:07:41.211  - .[33mwarn.[39m: host.art4 "system.host.art1" is offline
                              2016-08-25 17:07:41.224  - .[33mwarn.[39m: host.art4 "system.host.art1" is offline
                              
                              

                              В этом случае вариант:

                              Если теряется связь с мастером, то все инстанции погасить. И ждать, когда связь снова появится.
                              

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

                              В том числе перезапущены скрипты, что есть не очень хорошо.

                              Возможно следует пересмотреть систему детектирования слейвов или увеличить таймауты?

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

                                На гите:

                                0.3.3 (2016-08-25)

                                • (bluefox) custom poll interval for every sensor

                                • (bluefox) fix list of sensors over ethernet more than 5

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

                                  ` > Из замечаний - некорректно работает поиск.

                                  Нашло 8 устройств - реально 15. `
                                  Как выглядит папка /mnt/1wire ? Или где там у тебя замонтировано.

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

                                    @Bluefox:

                                    На гите:

                                    0.3.3 (2016-08-25)

                                    • (bluefox) custom poll interval for every sensor

                                    • (bluefox) fix list of sensors over ethernet more than 5 `
                                      Без чебокса, мастер подключен к серверу.
                                      443_owfs.png

                                    ! inMem 2016-08-25 23:05:32.311 debug message *.logging system.adapter.admin.0.logging val=false, ack=true, ts=1472155532267, q=0, from=system.adapter.admin.0, lc=1472155532267
                                    ! inMem 2016-08-25 23:05:32.293 debug message *.logging system.adapter.admin.0.logging val=false, ack=true, ts=1472155532267, q=0, from=system.adapter.admin.0, lc=1472155532267
                                    ! owfs-0 2016-08-25 23:05:27.269 debug sendTo "readdir" to system.adapter.admin.0 from system.adapter.owfs.0
                                    ! owfs-0 2016-08-25 23:05:27.268 error Cannot read dir: Invalid response for list [empty answer]
                                    ! owfs-0 2016-08-25 23:05:27.267 warn Invalid response for list [empty answer]: [{"header":{"version":0,"payload":-1,"ret":0,"controlflags":0,"size":0,"offset":0},"payload":""},{"header":{"version":0,"payload":-1,"ret":0,"controlflags":0
                                    ! owfs-0 2016-08-25 23:05:23.806 debug Connect to 192.168.1.11:4304
                                    ! inMem 2016-08-25 23:05:23.799 debug message messagebox.system.adapter.owfs.0 messagebox.system.adapter.owfs.0 command=readdir, ip=192.168.1.11, port=4304, from=system.adapter.admin.0, ip=192.168.1.11, port=4304, id=13, ack=false, time
                                    ! megaesp-0 2016-08-25 23:05:16.788 debug Response for 192.168.1.20[all]: 117;123;255;temp:19.50/hum:80.70;temp:19.00;OFF;RGB;NC;NC;31
                                    ! megaesp-0 2016-08-25 23:05:16.769 debug getPortState http://192.168.1.20/sec/?cmd=all
                                    ! owfs-0 2016-08-25 23:05:04.845 debug sendTo "readdir" to system.adapter.admin.0 from system.adapter.owfs.0
                                    ! owfs-0 2016-08-25 23:05:04.842 error Cannot read dir: Invalid response for list [empty answer]
                                    ! owfs-0 2016-08-25 23:05:04.839 warn Invalid response for list [empty answer]: [{"header":{"version":0,"payload":-1,"ret":0,"controlflags":0,"size":0,"offset":0},"payload":""},{"header":{"version":0,"payload":-1,"ret":0,"controlflags":0
                                    ! owfs-0 2016-08-25 23:05:01.310 debug Connect to 127.0.0.1:4304
                                    ! inMem 2016-08-25 23:05:01.304 debug message messagebox.system.adapter.owfs.0 messagebox.system.adapter.owfs.0 command=readdir, ip=127.0.0.1, port=4304, from=system.adapter.admin.0, ip=127.0.0.1, port=4304, id=12, ack=false, time=14721
                                    ! inMem 2016-08-25 23:04:56.504 debug message *.logging system.adapter.admin.0.logging val=true, ack=true, ts=1472155496459, q=0, from=system.adapter.admin.0, lc=1472155496459
                                    ! inMem 2016-08-25 23:04:56.495 debug message *.logging system.adapter.admin.0.logging val=true, ack=true, ts=1472155496459, q=0, from=system.adapter.admin.0, lc=1472155496459
                                    ! owfs-0 2016-08-25 23:04:53.929 info starting. Version 0.3.3 in /opt/iobroker/node_modules/iobroker.owfs
                                    ! owfs-0 2016-08-25 23:04:53.837 debug statesDB connected
                                    ! owfs-0 2016-08-25 23:04:53.817 debug objectDB connected
                                    ! host-Server1 2016-08-25 23:04:52.702 info instance system.adapter.owfs.0 started with pid 30470
                                    ! host-Server1 2016-08-25 23:04:50.741 info instance system.adapter.owfs.0 terminated with code 0 (OK)
                                    ! owfs-0 2016-08-25 23:04:50.720 info terminating
                                    ! host-Server1 2016-08-25 23:04:50.182 info stopInstance system.adapter.owfs.0 killing pid 29564
                                    ! host-Server1 2016-08-25 23:04:50.181 info stopInstance system.adapter.owfs.0
                                    ! host-Server1 2016-08-25 23:04:50.177 info object change system.adapter.owfs.0
                                    –force --logs

                                    root@Server1:/opt/iobroker# iobroker stop owfs
                                    Adapter "owfs.0 stopped.
                                    root@Server1:/opt/iobroker# node node_modules/iobroker.owfs/main.js --force --logs
                                    starting. Version 0.3.3 in /opt/iobroker/node_modules/iobroker.owfs
                                    2016-08-25 23:53:59.435  - info: owfs.0 starting. Version 0.3.3 in /opt/iobroker/node_modules/iobroker.owfs
                                    2016-08-25 23:54:24.315  - debug: inMem message  *.logging system.adapter.admin.0.logging val=true, ack=true, ts=1472158464267, q=0, from=system.adapter.admin.0, lc=1472158464267
                                    2016-08-25 23:54:26.874  - debug: inMem message  messagebox.system.adapter.owfs.0 messagebox.system.adapter.owfs.0 command=readdir, ip=127.0.0.1, port=4304, from=system.adapter.admin.0, ip=127.0.0.1, port=4304, id=16, ack=false, time=1472158466861, _id=36007437
                                    Connect to 127.0.0.1:4304
                                    2016-08-25 23:54:26.880  - debug: owfs.0 Connect to 127.0.0.1:4304
                                    Invalid response for list [empty answer]: [{"header":{"version":0,"payload":-1,"ret":0,"controlflags":0,"size":0,"offset":0},"payload":""},{"header":{"version":0,"payload":-1,"ret":0,"controlflags":0,"size":0,"offset":0},"payload":""},{"header":{"version":0,"payload":-1,"ret":0,"controlflags":0,"size":0,"offset":0},"payload":""},{"header":{"version":0,"payload":272,"ret":0,"controlflags":32,"size":271,"offset":32775},"payload":"/10.DB1979020800,/28.ECB1CD040000,/28.1C8D2D050000,/28.3C3B63040000,/28.6659CE040000,/28.3E0764040000,/28.FF1C154A0400,/28.FFF2054A0400,/28.FFE6574E0400,/28.FF76034B0400,/28.FF3E484E0400,/28.FFC1674E0400,/28.FF7B414E0400,/3A.483B1E000000,/3A.E6331E000000,/3A.DB481E000000\u0000"}]
                                    2016-08-25 23:54:30.349  - warn: owfs.0 Invalid response for list [empty answer]: [{"header":{"version":0,"payload":-1,"ret":0,"controlflags":0,"size":0,"offset":0},"payload":""},{"header":{"version":0,"payload":-1,"ret":0,"controlflags":0,"size":0,"offset":0},"payload":""},{"header":{"version":0,"payload":-1,"ret":0,"controlflags":0,"size":0,"offset":0},"payload":""},{"header":{"version":0,"payload":272,"ret":0,"controlflags":32,"size":271,"offset":32775},"payload":"/10.DB1979020800,/28.ECB1CD040000,/28.1C8D2D050000,/28.3C3B63040000,/28.6659CE040000,/28.3E0764040000,/28.FF1C154A0400,/28.FFF2054A0400,/28.FFE6574E0400,/28.FF76034B0400,/28.FF3E484E0400,/28.FFC1674E0400,/28.FF7B414E0400,/3A.483B1E000000,/3A.E6331E000000,/3A.DB481E000000\u0000"}]
                                    Cannot read dir: Invalid response for list [empty answer]
                                    2016-08-25 23:54:30.351  - error: owfs.0 Cannot read dir: Invalid response for list [empty answer]
                                    sendTo "readdir" to system.adapter.admin.0 from system.adapter.owfs.0
                                    2016-08-25 23:54:30.354  - debug: owfs.0 sendTo "readdir" to system.adapter.admin.0 from system.adapter.owfs.0
                                    2016-08-25 23:54:34.435  - debug: inMem message  *.logging system.adapter.admin.0.logging val=false, ack=true, ts=1472158474389, q=0, from=system.adapter.admin.0, lc=1472158474389
                                    

                                    С чебоксом "локальный OWFS"
                                    443_owfs.ceboks.png

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

                                      Haus ну ты же стрелянный воробей. Там owserver почему-то шлёт странные ответы. Можешь посмотреть что там приходит в ответ:

                                      Line 277
                                      
                                      client.list = function (path, callback) {
                                              this.send(path, null, OW_DIRALL).then(function (messages) {
                                                  var ret;
                                                  var str;
                                                  adapter.log.debug('Got ' + messages.length + ' packets'); // <================================= Check output
                                                  for (var m = 0; m < messages.length; m++) {
                                                      ret = messages[m].header ? messages[m].header.ret : -100;
                                      
                                                      adapter.log.debug(JSON.stringify(messages[m])); // <================================= Check output
                                      
                                                      if (messages[m].header && messages[m].header.payload > 0 && messages[m].header.ret >= 0) {
                                                          str = messages[m].payload;
                                                          break;
                                                      }
                                                  }
                                                  if (ret < 0) {
                                                      adapter.log.warn('Invalid response for list: ' + ret);
                                                      callback('Invalid response');
                                                      return;
                                                  }
                                                  if (!str) {
                                                      adapter.log.warn('Invalid response for list [empty answer]: ' + JSON.stringify(messages));
                                                      callback('Invalid response for list [empty answer]');
                                                      return;
                                                  }
                                                  str = str.substring(0, str.length - 1); // remove zero-char from end
                                                  callback(null, str.split(','));
                                              }, function (error) {
                                                  callback(error);
                                              });
                                          };
                                      
                                      

                                      И подправить. 😉

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

                                        @Bluefox:

                                        Haus ну ты же стрелянный воробей. Там owserver почему-то шлёт странные ответы. Можешь посмотреть что там приходит в ответ:

                                        Line 277
                                        
                                        client.list = function (path, callback) {
                                                this.send(path, null, OW_DIRALL).then(function (messages) {
                                                    var ret;
                                                    var str;
                                                    adapter.log.debug('Got ' + messages.length + ' packets'); // <================================= Check output
                                                    for (var m = 0; m < messages.length; m++) {
                                                        ret = messages[m].header ? messages[m].header.ret : -100;
                                                        
                                                        adapter.log.debug(JSON.stringify(messages[m])); // <================================= Check output
                                                        
                                                        if (messages[m].header && messages[m].header.payload > 0 && messages[m].header.ret >= 0) {
                                                            str = messages[m].payload;
                                                            break;
                                                        }
                                                    }
                                                    if (ret < 0) {
                                                        adapter.log.warn('Invalid response for list: ' + ret);
                                                        callback('Invalid response');
                                                        return;
                                                    }
                                                    if (!str) {
                                                        adapter.log.warn('Invalid response for list [empty answer]: ' + JSON.stringify(messages));
                                                        callback('Invalid response for list [empty answer]');
                                                        return;
                                                    }
                                                    str = str.substring(0, str.length - 1); // remove zero-char from end
                                                    callback(null, str.split(','));
                                                }, function (error) {
                                                    callback(error);
                                                });
                                            };
                                        
                                        

                                        И подправить. 😉 `

                                        ! ````
                                        root@Server1:/opt/iobroker# iobroker upload owfs
                                        got /opt/iobroker/node_modules/iobroker.owfs/admin
                                        upload [1] owfs.admin /opt/iobroker/node_modules/iobroker.owfs/admin/owfs.png owfs.png image/png
                                        upload [0] owfs.admin /opt/iobroker/node_modules/iobroker.owfs/admin/index.html index.html text/html
                                        root@Server1:/opt/iobroker# iobroker restart owfs
                                        Adapter "owfs.0 restarted.
                                        root@Server1:/opt/iobroker# iobroker stop owfs
                                        Adapter "owfs.0 stopped.
                                        root@Server1:/opt/iobroker# node node_modules/iobroker.owfs/main.js --force --logs
                                        starting. Version 0.3.3 in /opt/iobroker/node_modules/iobroker.owfs
                                        2016-08-26 01:16:47.660 - info: owfs.0 starting. Version 0.3.3 in /opt/iobroker/node_modules/iobroker.owfs
                                        2016-08-26 01:17:16.807 - debug: inMem message *.logging system.adapter.admin.0.logging val=true, ack=true, ts=1472163436761, q=0, from=system.adapter.admin.0, lc=1472163436761
                                        2016-08-26 01:17:27.910 - debug: inMem message messagebox.system.adapter.owfs.0 messagebox.system.adapter.owfs.0 command=readdir, ip=127.0.0.1, port=4304, from=system.adapter.admin.0, ip=127.0.0.1, port=4304, id=19, ack=false, time=1472163447900, _id=36007443
                                        Connect to 127.0.0.1:4304
                                        2016-08-26 01:17:27.916 - debug: owfs.0 Connect to 127.0.0.1:4304
                                        Got 4 packets
                                        2016-08-26 01:17:31.390 - debug: owfs.0 Got 4 packets
                                        {"header":{"version":0,"payload":-1,"ret":0,"controlflags":0,"size":0,"offset":0},"payload":""}
                                        2016-08-26 01:17:31.392 - debug: owfs.0 {"header":{"version":0,"payload":-1,"ret":0,"controlflags":0,"size":0,"offset":0},"payload" :""}
                                        {"header":{"version":0,"payload":-1,"ret":0,"controlflags":0,"size":0,"offset":0},"payload":""}
                                        2016-08-26 01:17:31.393 - debug: owfs.0 {"header":{"version":0,"payload":-1,"ret":0,"controlflags":0,"size":0,"offset":0},"payload" :""}
                                        {"header":{"version":0,"payload":-1,"ret":0,"controlflags":0,"size":0,"offset":0},"payload":""}
                                        2016-08-26 01:17:31.395 - debug: owfs.0 {"header":{"version":0,"payload":-1,"ret":0,"controlflags":0,"size":0,"offset":0},"payload" :""}
                                        {"header":{"version":0,"payload":272,"ret":0,"controlflags":32,"size":271,"offset":32775},"payload":"/10.DB1979020800,/28.ECB1CD0400 00,/28.1C8D2D050000,/28.3C3B63040000,/28.6659CE040000,/28.3E0764040000,/28.FF1C154A0400,/28.FFF2054A0400,/28.FFE6574E0400,/28.FF7603 4B0400,/28.FF3E484E0400,/28.FFC1674E0400,/28.FF7B414E0400,/3A.483B1E000000,/3A.E6331E000000,/3A.DB481E000000\u0000"}
                                        2016-08-26 01:17:31.396 - debug: owfs.0 {"header":{"version":0,"payload":272,"ret":0,"controlflags":32,"size":271,"offset":32775}," payload":"/10.DB1979020800,/28.ECB1CD040000,/28.1C8D2D050000,/28.3C3B63040000,/28.6659CE040000,/28.3E0764040000,/28.FF1C154A0400,/28 .FFF2054A0400,/28.FFE6574E0400,/28.FF76034B0400,/28.FF3E484E0400,/28.FFC1674E0400,/28.FF7B414E0400,/3A.483B1E000000,/3A.E6331E000000 ,/3A.DB481E000000\u0000"}
                                        Invalid response for list [empty answer]: [{"header":{"version":0,"payload":-1,"ret":0,"controlflags":0,"size":0,"offset":0},"payloa d":""},{"header":{"version":0,"payload":-1,"ret":0,"controlflags":0,"size":0,"offset":0},"payload":""},{"header":{"version":0,"paylo ad":-1,"ret":0,"controlflags":0,"size":0,"offset":0},"payload":""},{"header":{"version":0,"payload":272,"ret":0,"controlflags":32,"s ize":271,"offset":32775},"payload":"/10.DB1979020800,/28.ECB1CD040000,/28.1C8D2D050000,/28.3C3B63040000,/28.6659CE040000,/28.3E07640 40000,/28.FF1C154A0400,/28.FFF2054A0400,/28.FFE6574E0400,/28.FF76034B0400,/28.FF3E484E0400,/28.FFC1674E0400,/28.FF7B414E0400,/3A.483 B1E000000,/3A.E6331E000000,/3A.DB481E000000\u0000"}]
                                        2016-08-26 01:17:31.397 - warn: owfs.0 Invalid response for list [empty answer]: [{"header":{"version":0,"payload":-1,"ret":0,"cont rolflags":0,"size":0,"offset":0},"payload":""},{"header":{"version":0,"payload":-1,"ret":0,"controlflags":0,"size":0,"offset":0},"pa yload":""},{"header":{"version":0,"payload":-1,"ret":0,"controlflags":0,"size":0,"offset":0},"payload":""},{"header":{"version":0,"p ayload":272,"ret":0,"controlflags":32,"size":271,"offset":32775},"payload":"/10.DB1979020800,/28.ECB1CD040000,/28.1C8D2D050000,/28.3 C3B63040000,/28.6659CE040000,/28.3E0764040000,/28.FF1C154A0400,/28.FFF2054A0400,/28.FFE6574E0400,/28.FF76034B0400,/28.FF3E484E0400,/ 28.FFC1674E0400,/28.FF7B414E0400,/3A.483B1E000000,/3A.E6331E000000,/3A.DB481E000000\u0000"}]
                                        Cannot read dir: Invalid response for list [empty answer]
                                        2016-08-26 01:17:31.399 - error: owfs.0 Cannot read dir: Invalid response for list [empty answer]
                                        sendTo "readdir" to system.adapter.admin.0 from system.adapter.owfs.0
                                        2016-08-26 01:17:31.402 - debug: owfs.0 sendTo "readdir" to system.adapter.admin.0 from system.adapter.owfs.0

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

                                          @Bluefox:

                                          ` > Из замечаний - некорректно работает поиск.

                                          Нашло 8 устройств - реально 15. Как выглядит папка /mnt/1wire ? Или где там у тебя замонтировано.

                                          ! root@art4:/opt/iobroker# ls -l /mnt/1wire drwxrwxrwx 1 root root 4096 сер 26 06:33 261DE49101000070 drwxrwxrwx 1 root root 4096 сер 26 06:33 268725A401000028 drwxrwxrwx 1 root root 4096 сер 26 06:33 26A9CA91010000F1 drwxrwxrwx 1 root root 4096 сер 26 06:33 26ECEA9101000097 drwxrwxrwx 1 root root 4096 сер 26 06:33 26F1EA9101000086 drwxrwxrwx 1 root root 4096 сер 26 06:33 280D1C2A05000057 drwxrwxrwx 1 root root 4096 сер 26 06:33 2834C84804000051 drwxrwxrwx 1 root root 4096 сер 26 06:33 283B42D805000049 drwxrwxrwx 1 root root 4096 сер 26 06:33 28799F74040000F0 drwxrwxrwx 1 root root 4096 сер 26 06:33 28864975040000EB drwxrwxrwx 1 root root 4096 сер 26 06:33 28B0A92A05000087 drwxrwxrwx 1 root root 4096 сер 26 06:33 28E5BC2A050000EC drwxrwxrwx 1 root root 4096 сер 26 06:33 29191D160000004F drwxrwxrwx 1 root root 4096 сер 26 06:33 29276E0C000000B1 drwxrwxrwx 1 root root 4096 сер 26 06:33 2945B70C000000B1 drwxr-xr-x 1 root root 4096 сер 22 08:12 alarm drwxr-xr-x 1 root root 4096 сер 22 08:12 bus.1 drwxr-xr-x 1 root root 4096 сер 22 08:12 bus.2 drwxr-xr-x 1 root root 4096 сер 22 08:12 bus.3 drwxr-xr-x 1 root root 4096 сер 22 08:12 bus.4 drwxr-xr-x 1 root root 4096 сер 22 08:12 bus.5 drwxr-xr-x 1 root root 4096 сер 22 08:12 bus.6 drwxr-xr-x 1 root root 4096 сер 22 08:12 bus.7 drwxr-xr-x 1 root root 4096 сер 22 08:12 bus.8 drwxr-xr-x 1 root root 4096 сер 22 08:12 settings drwxrwxrwx 1 root root 4096 сер 26 06:33 simultaneous drwxr-xr-x 1 root root 4096 сер 22 08:12 statistics drwxr-xr-x 1 root root 4096 сер 22 08:12 structure drwxr-xr-x 1 root root 4096 сер 22 08:12 system drwxr-xr-x 1 root root 4096 сер 22 08:12 uncached !
                                          "version": "0.3.3"

                                          Found 8 sensors

                                          У меня восьмиканальный мастер DS2482-800

                                          Похоже оно посчитало каналы

                                          Внутри канальной папки:

                                          root@art4:/opt/iobroker# ls -l /mnt/1wire/bus.5
                                          drwxrwxrwx 1 root root 4096 сер 26 06:38 2834C84804000051
                                          drwxrwxrwx 1 root root 4096 сер 26 06:38 28B0A92A05000087
                                          drwxrwxrwx 1 root root 4096 сер 26 06:38 28E5BC2A050000EC
                                          drwxr-xr-x 1 root root 4096 сер 22 08:12 alarm
                                          drwxr-xr-x 1 root root 4096 сер 22 08:12 interface
                                          drwxrwxrwx 1 root root 4096 сер 26 06:38 simultaneous
                                          
                                          

                                          Наверное есть смысл считать лишь файлы, которые начинаются с двойки.

                                          Типа:

                                          ! root@art4:/opt/iobroker# ls /mnt/1wire | grep '^2' 261DE49101000070 268725A401000028 26A9CA91010000F1 26ECEA9101000097 26F1EA9101000086 280D1C2A05000057 2834C84804000051 283B42D805000049 28799F74040000F0 28864975040000EB 28B0A92A05000087 28E5BC2A050000EC 29191D160000004F 29276E0C000000B1 2945B70C000000B1 !

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

                                            @jeorgep:

                                            @Bluefox:

                                            ` > Из замечаний - некорректно работает поиск.

                                            Нашло 8 устройств - реально 15. Как выглядит папка /mnt/1wire ? Или где там у тебя замонтировано.

                                            ! root@art4:/opt/iobroker# ls -l /mnt/1wire drwxrwxrwx 1 root root 4096 сер 26 06:33 261DE49101000070 drwxrwxrwx 1 root root 4096 сер 26 06:33 268725A401000028 drwxrwxrwx 1 root root 4096 сер 26 06:33 26A9CA91010000F1 drwxrwxrwx 1 root root 4096 сер 26 06:33 26ECEA9101000097 drwxrwxrwx 1 root root 4096 сер 26 06:33 26F1EA9101000086 drwxrwxrwx 1 root root 4096 сер 26 06:33 280D1C2A05000057 drwxrwxrwx 1 root root 4096 сер 26 06:33 2834C84804000051 drwxrwxrwx 1 root root 4096 сер 26 06:33 283B42D805000049 drwxrwxrwx 1 root root 4096 сер 26 06:33 28799F74040000F0 drwxrwxrwx 1 root root 4096 сер 26 06:33 28864975040000EB drwxrwxrwx 1 root root 4096 сер 26 06:33 28B0A92A05000087 drwxrwxrwx 1 root root 4096 сер 26 06:33 28E5BC2A050000EC drwxrwxrwx 1 root root 4096 сер 26 06:33 29191D160000004F drwxrwxrwx 1 root root 4096 сер 26 06:33 29276E0C000000B1 drwxrwxrwx 1 root root 4096 сер 26 06:33 2945B70C000000B1 drwxr-xr-x 1 root root 4096 сер 22 08:12 alarm drwxr-xr-x 1 root root 4096 сер 22 08:12 bus.1 drwxr-xr-x 1 root root 4096 сер 22 08:12 bus.2 drwxr-xr-x 1 root root 4096 сер 22 08:12 bus.3 drwxr-xr-x 1 root root 4096 сер 22 08:12 bus.4 drwxr-xr-x 1 root root 4096 сер 22 08:12 bus.5 drwxr-xr-x 1 root root 4096 сер 22 08:12 bus.6 drwxr-xr-x 1 root root 4096 сер 22 08:12 bus.7 drwxr-xr-x 1 root root 4096 сер 22 08:12 bus.8 drwxr-xr-x 1 root root 4096 сер 22 08:12 settings drwxrwxrwx 1 root root 4096 сер 26 06:33 simultaneous drwxr-xr-x 1 root root 4096 сер 22 08:12 statistics drwxr-xr-x 1 root root 4096 сер 22 08:12 structure drwxr-xr-x 1 root root 4096 сер 22 08:12 system drwxr-xr-x 1 root root 4096 сер 22 08:12 uncached !
                                            "version": "0.3.3"

                                            Found 8 sensors

                                            У меня восьмиканальный мастер DS2482-800

                                            Похоже оно посчитало каналы

                                            Внутри канальной папки:

                                            root@art4:/opt/iobroker# ls -l /mnt/1wire/bus.5
                                            drwxrwxrwx 1 root root 4096 сер 26 06:38 2834C84804000051
                                            drwxrwxrwx 1 root root 4096 сер 26 06:38 28B0A92A05000087
                                            drwxrwxrwx 1 root root 4096 сер 26 06:38 28E5BC2A050000EC
                                            drwxr-xr-x 1 root root 4096 сер 22 08:12 alarm
                                            drwxr-xr-x 1 root root 4096 сер 22 08:12 interface
                                            drwxrwxrwx 1 root root 4096 сер 26 06:38 simultaneous
                                            
                                            

                                            Наверное есть смысл считать лишь файлы, которые начинаются с двойки.

                                            Типа:

                                            ! root@art4:/opt/iobroker# ls /mnt/1wire | grep '^2' 261DE49101000070 268725A401000028 26A9CA91010000F1 26ECEA9101000097 26F1EA9101000086 280D1C2A05000057 2834C84804000051 283B42D805000049 28799F74040000F0 28864975040000EB 28B0A92A05000087 28E5BC2A050000EC 29191D160000004F 29276E0C000000B1 2945B70C000000B1 ! `
                                            А у меня например все начинаются с 02, а ещё есть "-" или "." в имени. Вот я и отфильтровал все сенсоры с точкой.

                                            Надо найти правило, как можно распознать сенсоры. А пока я просто уберу любые фильтры.

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

                                            Support us

                                            ioBroker
                                            Community Adapters
                                            Donate

                                            920
                                            Online

                                            31.9k
                                            Users

                                            80.1k
                                            Topics

                                            1.3m
                                            Posts

                                            27
                                            192
                                            52475
                                            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