Navigation

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

    NEWS

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

    • ioBroker goes Matter ... Matter Adapter in Stable

    • Monatsrückblick - April 2025

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

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

      @instalator:

      Ошибка с фалом версий

      Server-PC	2016-05-19 23:17:07	warn	host.Server-PC warning: Cannot read "http://download.iobroker.net/sources-dist.json"
      Server-PC	2016-05-19 23:17:07	info	host.Server-PC Update repository "fast-online" under "http://download.iobroker.net/sources-dist.json"
      

      Соответственно в админке показывает не все драйвера. `

      Опять не пересобрался http://download.iobroker.net/sources-dist.json

      1 Reply Last reply Reply Quote 0
      • I
        instalator last edited by

        @bzaugolnov:

        @instalator:

        Ошибка с фалом версий

        Server-PC	2016-05-19 23:17:07	warn	host.Server-PC warning: Cannot read "http://download.iobroker.net/sources-dist.json"
        Server-PC	2016-05-19 23:17:07	info	host.Server-PC Update repository "fast-online" under "http://download.iobroker.net/sources-dist.json"
        

        Соответственно в админке показывает не все драйвера. `

        Опять не пересобрался http://download.iobroker.net/sources-dist.json `
        Сейчас норм?

        1 Reply Last reply Reply Quote 0
        • B
          bzaugolnov last edited by

          @instalator:

          Сейчас норм? `
          Да. Спасибо за оперативность.

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

            Планируется ли как-то исправить ошибку Adapter already running

            (http://forum.iobroker.net/viewtopic.php?p=23712#p23712)

            которая присутствует в мультихост конфигурациях?

            Дело в том, что если например при пропадании и появлении электроэнергии

            происходит перезагрузка мастера и слейва - мастер в основном

            загружается немного позже, так как на нем больше сервисов.

            И начинает передергивать javascript адаптер слейва, который уже

            благополучно загрузился и работает.

            Получается что-то типа (на слейве):

            root@art1:~# ps ax | grep io
            ...
              656 ?        Ssl    9:21 iobroker.js-controller
             7188 ?        Sl    58:34 io.javascript.1
             9353 ?        Sl     0:43 io.javascript.1
             9423 ?        Sl     0:40 io.javascript.1
            10397 ?        Sl     0:25 io.javascript.1
            11582 pts/0    S+     0:00 grep io
            

            Здесь видно, что мастером запущено несколько экземпляров javascript на слейве.

            При этом хаотически щелкают реле и т.д. так как разные экземпляры

            javascript слейва мешают один другому.

            Здесь возможны два варианта решения:

            1. сначала проверить, что не запущено на слейве и лишь потом запускать

            (здесь возможно повторение той же ошибки, если адаптер на слейве запускается с небольшой задержкой)

            2. сначала все адаптеры на слейве погасить с мастера, и лишь потом

            запустить, как говорится с чистого листа.

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

              @jeorgep:

              Планируется ли как-то исправить ошибку Adapter already running

              (http://forum.iobroker.net/viewtopic.php?p=23712#p23712)

              которая присутствует в мультихост конфигурациях?

              Дело в том, что если например при пропадании и появлении электроэнергии

              происходит перезагрузка мастера и слейва - мастер в основном

              загружается немного позже, так как на нем больше сервисов.

              И начинает передергивать javascript адаптер слейва, который уже

              благополучно загрузился и работает.

              Получается что-то типа (на слейве):

              root@art1:~# ps ax | grep io
              ...
                656 ?        Ssl    9:21 iobroker.js-controller
               7188 ?        Sl    58:34 io.javascript.1
               9353 ?        Sl     0:43 io.javascript.1
               9423 ?        Sl     0:40 io.javascript.1
              10397 ?        Sl     0:25 io.javascript.1
              11582 pts/0    S+     0:00 grep io
              

              Здесь видно, что мастером запущено несколько экземпляров javascript на слейве.

              При этом хаотически щелкают реле и т.д. так как разные экземпляры

              javascript слейва мешают один другому.

              Здесь возможны два варианта решения:

              1. сначала проверить, что не запущено на слейве и лишь потом запускать

              (здесь возможно повторение той же ошибки, если адаптер на слейве запускается с небольшой задержкой)

              2. сначала все адаптеры на слейве погасить с мастера, и лишь потом

              запустить, как говорится с чистого листа. `
              Планируется… Но пока планирую я один. 😞

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

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

                Да, я полностью понимаю Вашу загруженность!

                Просто обращаю внимание на, как мне кажется существенный недостаток,

                который не дает возможности работать полноценно в мультихост режиме.

                Здесь мне тоже кажется предпочтительнее второй вариант.

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

                javascript на слейве - ибо непонятно, что он сделает в мое отсутствие при подобном сбое.

                –-----

                Еще, если будет возможность (и время) - обратите внимание на

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

                (http://forum.iobroker.net/viewtopic.php?p=32357#p32357).

                То-есть предоставить пользователю возможность выбора - или локально или через owserver

                (на этапе конфигурации адаптера).

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

                но и появляется возможность остановить ненужные сервисы owserver и owhttpd,

                что освобождает так необходимые ресурсы на маломощных серверах типа Raspberry Pi.

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

                  @jeorgep:

                  Да, я полностью понимаю Вашу загруженность!

                  Просто обращаю внимание на, как мне кажется существенный недостаток,

                  который не дает возможности работать полноценно в мультихост режиме.

                  Здесь мне тоже кажется предпочтительнее второй вариант.

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

                  javascript на слейве - ибо непонятно, что он сделает в мое отсутствие при подобном сбое.

                  –-----

                  Еще, если будет возможность (и время) - обратите внимание на

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

                  (http://forum.iobroker.net/viewtopic.php?p=32357#p32357).

                  То-есть предоставить пользователю возможность выбора - или локально или через owserver

                  (на этапе конфигурации адаптера).

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

                  но и появляется возможность остановить ненужные сервисы owserver и owhttpd,

                  что освобождает так необходимые ресурсы на маломощных серверах типа Raspberry Pi. `
                  Можешь опробовать owfs с гита?

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

                    @Bluefox:

                    @jeorgep:

                    То-есть предоставить пользователю возможность выбора - или локально или через owserver

                    (на этапе конфигурации адаптера).

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

                    но и появляется возможность остановить ненужные сервисы owserver и owhttpd,

                    что освобождает так необходимые ресурсы на маломощных серверах типа Raspberry Pi. Можешь опробовать owfs с гита?
                    Попробовал, в стандартном режиме если подключены 1-3 датчика он их находит, если больше трёх тогда "0" найдено. В локальном режиме поиск не работает

                    inMem	2016-08-23 23:58:13.760	debug	message *.logging system.adapter.admin.0.logging val=false, ack=true, ts=1471985893718, q=0, from=system.adapter.admin.0, lc=1471985893718
                    host-Server1	2016-08-23 23:58:05.732	info	Restart adapter system.adapter.owfs.0 because enabled
                    host-Server1	2016-08-23 23:58:05.731	error	instance system.adapter.owfs.0 terminated with code 0 (OK)
                    owfs-0	2016-08-23 23:58:05.709	info	terminating
                    ReferenceError:	2016-08-23 23:58:05.187	error	at Object.oncomplete (fs.js:108:15)
                    ReferenceError:	2016-08-23 23:58:05.187	error	at /opt/iobroker/node_modules/iobroker.owfs/main.js:167:35
                    ReferenceError:	2016-08-23 23:58:05.187	error	d is not defined
                    uncaught	2016-08-23 23:58:05.185	error	exception: d is not defined
                    inMem	2016-08-23 23:58:04.566	debug	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=29, ack=false, time=1471985884527, _id=83
                    
                    1 Reply Last reply Reply Quote 0
                    • Bluefox
                      Bluefox last edited by

                      А теперь?

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

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

                        > Можешь опробовать owfs с гита?
                        У меня совсем не работает - в файле состояние датчика изменилось, а адаптер не видит,

                        возможно потому, что нет возможности выбора: локальный или owserver,

                        а owserver сервис у меня выключен.

                        По крайней мере я не нахожу опции выбора в настройках адаптера.

                        Но так как там нет и функции поиска датчиков - подозреваю, что у меня установлено что-то не верно.

                        Как я делал :

                        остановил iobroker

                        скачал отсюда архив https://github.com/ioBroker/ioBroker.ow … master.zip

                        распаковал в папку /opt/iobroker

                        установил:

                        npm install ioBroker.owfs-master

                        После чего проверил версию в файле:

                        /opt/iobroker/node_modules/iobroker.owfs/package.json

                        "version": "0.3.0",
                        

                        и запустил iobroker

                        проверил версию в WEB интерфейсе - тоже 0.3.0

                        Что должно быть в веб настройках адаптера?

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

                          @Bluefox:

                          А теперь?

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

                          ! ````
                          TypeError: 2016-08-24 10:32:36.258 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-24 10:32:36.258 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-24 10:32:36.258 error at Socket.onpacket (/opt/iobroker/node_modules/iobroker.js-controller/node_modules/socket.io-client/lib/socket.js:221:12)
                          TypeError: 2016-08-24 10:32:36.258 error at Socket.onevent (/opt/iobroker/node_modules/iobroker.js-controller/node_modules/socket.io-client/lib/socket.js:263:10)
                          TypeError: 2016-08-24 10:32:36.258 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-24 10:32:36.258 error at Socket.StatesInMemClient.client.on.connectionTimeout (/opt/iobroker/node_modules/iobroker.js-controller/lib/states/statesInMemClient.js:45:30)
                          TypeError: 2016-08-24 10:32:36.258 error at Object.that.states.States.change (/opt/iobroker/node_modules/iobroker.js-controller/lib/adapter.js:2096:34)
                          TypeError: 2016-08-24 10:32:36.258 error at Adapter.emit (events.js:95:17)
                          TypeError: 2016-08-24 10:32:36.258 error at Adapter.adapter.on.timer (/opt/iobroker/node_modules/iobroker.owfs/main.js:24:14)
                          TypeError: 2016-08-24 10:32:36.258 error at processMessage (/opt/iobroker/node_modules/iobroker.owfs/main.js:169:24)
                          TypeError: 2016-08-24 10:32:36.258 error Cannot call method 'readdir' of null
                          message 2016-08-24 10:32:36.253 error messagebox.system.adapter.owfs.0 [object Object] Cannot call method 'readdir' of null

                          Это стандартно семь датчиков
                          
                          >! ````
                          inMem	2016-08-24 10:42:12.577	debug	message *.logging system.adapter.admin.0.logging val=false, ack=true, ts=1472024532539, q=0, from=system.adapter.admin.0, lc=1472024532539
                          inMem	2016-08-24 10:42:12.569	debug	message *.logging system.adapter.admin.0.logging val=false, ack=true, ts=1472024532539, q=0, from=system.adapter.admin.0, lc=1472024532539
                          owfs-0	2016-08-24 10:42:08.841	debug	sendTo "readdir" to system.adapter.admin.0 from system.adapter.owfs.0
                          owfs-0	2016-08-24 10:42:08.839	debug	Result for dir: {}
                          owfs-0	2016-08-24 10:42:08.837	debug	Result for list_: []
                          owfs-0	2016-08-24 10:42:08.836	debug	Result for list: [""]
                          inMem	2016-08-24 10:42:08.703	debug	message megaesp.0.* megaesp.0.p9_P9 val=29, ack=true, ts=1472024528688, q=0, from=system.adapter.megaesp.0, lc=1472024528688
                          inMem	2016-08-24 10:42:08.679	debug	message megaesp.0.* megaesp.0.p3_P3_humidity val=79.7, ack=true, ts=1472024528663, q=0, from=system.adapter.megaesp.0, lc=1472024528663
                          megaesp-0	2016-08-24 10:42:08.659	debug	detected new value on port [9]: 29, calc state 29
                          megaesp-0	2016-08-24 10:42:08.656	debug	Response for 192.168.1.20[all]: 0;0;0;temp:20.00/hum:79.70;temp:19.50;OFF;RGB;NC;NC;29
                          megaesp-0	2016-08-24 10:42:08.594	debug	getPortState http://192.168.1.20/sec/?cmd=all
                          owfs-0	2016-08-24 10:42:07.515	debug	Connect to 127.0.0.1:4304
                          i
                          

                          Сейчас семь датчиков
                          443_owfs.png
                          Когда пять находит

                          ! ````
                          Нажмите Ctrl+A и Ctrl+C, что бы скопировать в буфер обмена и после этого нажмите мышкой в любом месте.
                          inMem 2016-08-24 11:27:44.682 debug message owfs.0.* owfs.0.wires.Sensor3_temperature val=null, ack=false, ts=1472027264623, q=0, from=system.adapter.owfs.0, lc=1472027264623
                          inMem 2016-08-24 11:27:44.622 debug message owfs.0.* owfs.0.wires.Sensor2_fasttemp val=null, ack=false, ts=1472027264610, q=0, from=system.adapter.owfs.0, lc=1472027264610
                          inMem 2016-08-24 11:27:44.584 debug message owfs.0.* owfs.0.wires.Sensor1_temperature val=null, ack=false, ts=1472027264561, q=0, from=system.adapter.owfs.0, lc=1472027264561
                          owfs-0 2016-08-24 11:27:44.368 info starting. Version 0.3.1 in /opt/iobroker/node_modules/iobroker.owfs
                          owfs-0 2016-08-24 11:27:44.280 debug statesDB connected
                          owfs-0 2016-08-24 11:27:44.261 debug objectDB connected
                          host-Server1 2016-08-24 11:27:43.103 info instance system.adapter.owfs.0 started with pid 4016
                          host-Server1 2016-08-24 11:27:41.146 info instance system.adapter.owfs.0 terminated with code 0 (OK)
                          owfs-0 2016-08-24 11:27:41.115 info terminating
                          inMem 2016-08-24 11:27:40.763 debug message *.logging system.adapter.admin.0.logging val=false, ack=true, ts=1472027260728, q=0, from=system.adapter.admin.0, lc=1472027260728
                          inMem 2016-08-24 11:27:40.763 debug message *.logging system.adapter.admin.0.logging val=false, ack=true, ts=1472027260728, q=0, from=system.adapter.admin.0, lc=1472027260728
                          host-Server1 2016-08-24 11:27:40.588 info stopInstance system.adapter.owfs.0 killing pid 3909
                          host-Server1 2016-08-24 11:27:40.588 info stopInstance system.adapter.owfs.0
                          host-Server1 2016-08-24 11:27:40.586 info object change system.adapter.owfs.0
                          owfs-0 2016-08-24 11:27:00.597 debug sendTo 'readdir' to system.adapter.admin.0 from system.adapter.owfs.0
                          owfs-0 2016-08-24 11:27:00.596 debug 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']}
                          owfs-0 2016-08-24 11:27:00.543 debug Result for list_: ['10.DB1979020800','28.ECB1CD040000','28.3C3B63040000','28.6659CE040000','28.3E0764040000']
                          owfs-0 2016-08-24 11:27:00.542 debug Result for list: ['/10.DB1979020800','/28.ECB1CD040000','/28.3C3B63040000','/28.6659CE040000','/28.3E0764040000']
                          owfs-0 2016-08-24 11:26:59.580 debug Connect to 127.0.0.1:4304
                          inMem 2016-08-24 11:26:59.577 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=86, ack=false, time=1472027219565, _id=83207467

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

                            @jeorgep:

                            > Можешь опробовать owfs с гита?
                            У меня совсем не работает - в файле состояние датчика изменилось, а адаптер не видит,

                            возможно потому, что нет возможности выбора: локальный или owserver,

                            а owserver сервис у меня выключен.

                            По крайней мере я не нахожу опции выбора в настройках адаптера.

                            Но так как там нет и функции поиска датчиков - подозреваю, что у меня установлено что-то не верно.

                            Как я делал :

                            остановил iobroker

                            скачал отсюда архив https://github.com/ioBroker/ioBroker.ow … master.zip

                            распаковал в папку /opt/iobroker

                            установил:

                            npm install ioBroker.owfs-master

                            После чего проверил версию в файле:

                            /opt/iobroker/node_modules/iobroker.owfs/package.json

                            "version": "0.3.0",
                            

                            и запустил iobroker

                            проверил версию в WEB интерфейсе - тоже 0.3.0

                            Что должно быть в веб настройках адаптера? `

                            cd /opt/iobroker
                            npm install https://github.com/ioBroker/ioBroker.owfs/tarball/master/
                            iobroker upload owfs
                            iobroker restart owfs
                            
                            1 Reply Last reply Reply Quote 0
                            • J
                              jeorgep last edited by

                              cd /opt/iobroker
                              npm install https://github.com/ioBroker/ioBroker.owfs/tarball/master/
                              iobroker upload owfs
                              iobroker restart owfs
                              

                              Да, спасибо - все получилось!

                              Работает и чтение и запись в локальном режиме.

                              Работает быстро!

                              Найдено 30 датчиков в локальном режиме.

                              Если некорректно работает в локальном режиме - возможно стоит посмотреть конфигурацию 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
                              
                              

                              /etc/systemd/system/multi-user.target.wants/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
                              

                              Система Armbian VERSION=5.16

                              Orange Pi + 2

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

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

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

                                1 Reply Last reply Reply Quote 0
                                • 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
                                            • First post
                                              Last post

                                            Support us

                                            ioBroker
                                            Community Adapters
                                            Donate

                                            788
                                            Online

                                            31.7k
                                            Users

                                            79.8k
                                            Topics

                                            1.3m
                                            Posts

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