Navigation

    Logo
    • Register
    • Login
    • Search
    • Recent
    • Tags
    • Unread
    • Categories
    • Unreplied
    • Popular
    • GitHub
    • Docu
    • Hilfe
    1. Home
    2. Русский
    3. ioBroker
    4. ioBroker драйвера
    5. MegaD 328

    NEWS

    • 15. 05. Wartungsarbeiten am ioBroker Forum

    • Monatsrückblick - April 2025

    • Minor js-controller 7.0.7 Update in latest repo

    MegaD 328

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

      @Bluefox:

      Ты имеешь ввиду

      OK->

      ? `
      Именно это я и имел в виду.

      Драйвер обновил, но не помогло. Проверил браузером и теперь везде OK, но в Mozilla было замечено что шрифт OK отличается для 0 и остальных. Дальнейший анализ показал, что у ответов сервера разный тип.

      Для 0 это - text/html, а для остальных - text/plain.

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

        @Bluefox:

        Походу не мне надо одному о документации заботится. По моему об этом нигде не написано.

        Спасибо. `
        Описано. Я отже холел об этом написать.

        http://ab-log.ru/smart-house/ethernet/megad-328

        Mode - очень важный и интересный параметр, позволяющий использовать устройство в широком спектре задач. Эта опция определяет режим входа

        P - устройство реагирует (то есть отправляет сообщения на сервер, выполняет сценарии и т.д.) только при замыкании контакта/выключателя

        R - устройство реагирует только при размыкании контакта/выключателя

        P&R - устройство реагирует как на замыкание, так и на размыкания контакта.

        В каких случаях это может потребоваться? Не буду брать для примера ситуации с управлением инженерным оборудованием. Квартирный звонок. Нажали - звонит, отжали - не звонит. Это режим "P&R" - при нажатии на кнопку звонка отправляется сообщение на сервер, включается соответствующий выход устройства. При отжатии снова отправляется сообщение на сервер, выключается выход устройства. Другой пример. Подключение к устройству охранных датчиков движения. Да, устройство вполне подходит для построения в том числе охранных систем! По умолчанию контакт датчика замкнут и система понимает, что датчик функционирует. При фиксации движения в зоне действия датчика, он размыкает контакт, что является тревожным сигналом. Тогда режим входа настраивается как "R"

        Флажок (чекбокс) справа от поля Mode указывает, что при наличии сервера, устройство отправляет на сервер сообщения всегда в режиме P&R, а при его отсутствии Action выполняется только в том режиме, который установлен в Mode.

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

          Вчера всплыла еще такая вещь - при снятии галочки "двойное нажатие" перестали работать скрипты на одиночное нажатие:

          on("megad.0.p9_P9", function (obj) {
              if (obj.newState.val === true) {
                request(Lamp4);
              }
          });
          

          В чем может быть подвох? Галочку вернул - она почти не мешает, но это лишняя нагрузка на систему и лишняя задержка для ожидания того, чего не нужно…

          1 Reply Last reply Reply Quote 0
          • V
            vtec last edited by

            Bluefox, если порт настроен как P&R (при изменении), как я должен написать скрипт, чтобы по нажатию физической кнопки, в vis так же отображалось что лампочка горит.

            При нажатии лампочки в vis переменной megad.0.p7_P7 устанавливаетcя значение в true, физическая лампа загорается. Если я нажимаю на кнопку (короткое нажатие), то переменной присваивается true и соответственно при отжатии присваивается false. Что приводит в vis к выключению лампочки.

            UPD. Ошибочка, меняется состояние с true на false это у кнопки (megad.0.p0_P0). Все равно не могу понять 🙂

            UPD. Правильно ли я мыслю?

            on('megad.0.p0_P0', function (obj) {
                if (obj.newState.val === true && getState('megad.0.p7_P7').val === false) {
                    setState ('megad.0.p7_P7', true);
                    log('вкл. порт 7, короткое нажатие');
                }else if(obj.newState.val === true && getState('megad.0.p7_P7').val === true){
                    setState ('megad.0.p7_P7', false);
                    log('выкл. порт 7, короткое нажатие');
                }
            });
            
            1 Reply Last reply Reply Quote 0
            • Bluefox
              Bluefox last edited by

              Пофиксил misc для входа. Добавил параметер "Дребезг". Поправил поиск.

              Что это такое? По имени naf
              48_megad-port-adc.jpg

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

                @Bosya:

                Вчера всплыла еще такая вещь - при снятии галочки "двойное нажатие" перестали работать скрипты на одиночное нажатие:

                on("megad.0.p9_P9", function (obj) {
                    if (obj.newState.val === true) {
                      request(Lamp4);
                    }
                });
                

                В чем может быть подвох? Галочку вернул - она почти не мешает, но это лишняя нагрузка на систему и лишняя задержка для ожидания того, чего не нужно… `
                Просто там генерировались 0 и 1 вместо true и false.

                Можешь в последней версии 0.2.11 поменять строку 934 с

                    adapter.setState(config.id, config.value, true);
                
                

                на

                    adapter.setState(config.id, !!config.value, true);
                
                
                1 Reply Last reply Reply Quote 0
                • Bluefox
                  Bluefox last edited by

                  @vtec:

                  Bluefox, если порт настроен как P&R (при изменении), как я должен написать скрипт, чтобы по нажатию физической кнопки, в vis так же отображалось что лампочка горит.

                  При нажатии лампочки в vis переменной megad.0.p7_P7 устанавливаетcя значение в true, физическая лампа загорается. Если я нажимаю на кнопку (короткое нажатие), то переменной присваивается true и соответственно при отжатии присваивается false. Что приводит в vis к выключению лампочки.

                  UPD. Ошибочка, меняется состояние с true на false это у кнопки (megad.0.p0_P0). Все равно не могу понять 🙂

                  UPD. Правильно ли я мыслю?

                  on('megad.0.p0_P0', function (obj) {
                      if (obj.newState.val === true && getState('megad.0.p7_P7').val === false) {
                          setState ('megad.0.p7_P7', true);
                          log('вкл. порт 7, короткое нажатие');
                      }else if(obj.newState.val === true && getState('megad.0.p7_P7').val === true){
                          setState ('megad.0.p7_P7', false);
                          log('выкл. порт 7, короткое нажатие');
                      }
                  });
                  ```` `  
                  

                  Да всё правильно. Работает? Лампочку в виз надо рисовать по megad.0.p7_P7.

                  Вот так

                  [{"tpl":"tplMfdSocketCtrl","data":{"oid":"megad.0.p7_P7","visibility-cond":"==","visibility-val":1,"asButton":true,"oidTrue":"megad.0.p0_P0","oidFalse":"megad.0.p0_P0","oidTrueValue":"false","oidFalseValue":"true","invert_state":false,"iconColor":"#143afa","icon_off":"/vis/widgets/jqui-mfd/img/light_light_dim_0.svg","icon_on":"/vis/widgets/jqui-mfd/img/light_light_dim_100.svg","invert_icon":false},"style":{"left":"680px","top":"176px"},"widgetSet":"jqui-mfd"}]
                  
                  1 Reply Last reply Reply Quote 0
                  • V
                    vtec last edited by

                    Да, заработало.

                    В твоем элементе у меня почему то значки не отобразились и он не заработал. В логе: <u>megad-0 2015-09-29 00:17:40 error Cannot write the read only port megad.0.p0_P0</u>

                    И как влияет ID объекта при true: megad.0.p0_P0 и ID объекта при false: megad.0.p0_P0 на лампочку (для чего это нужно)?

                    У меня вот такой элемент работает

                    [{"tpl":"tplHqButton","data":{"visibility-cond":"==","visibility-val":1,"oid":"megad.0.p7_P7","min":"false","max":"true","iconName":"img/bulb_off.png","btIconWidth":"56","offsetAuto":"true","leftOffset":"15","topOffset":"55","timeAsInterval":"true","infoLeftFontSize":"12","infoFontRightSize":"12"},"style":{"left":"485px","top":"233px"},"widgetSet":"hqwidgets"}]
                    
                    1 Reply Last reply Reply Quote 0
                    • V
                      vtec last edited by

                      Нажатие кнопки поиска

                      Error:	2015-09-29 00:31:30	error	at Socket.Emitter.emit (/opt/iobroker/node_modules/iobroker.js-controller/node_modules/socket.io-client/node_modules/component-emitter/index.js:134:20)
                      Error:	2015-09-29 00:31:30	error	at Socket.StatesInMemClient.client.on.connectionTimeout (/opt/iobroker/node_modules/iobroker.js-controller/lib/states/statesInMemClient.js:45:30)
                      Error:	2015-09-29 00:31:30	error	at Object.that.states.States.change (/opt/iobroker/node_modules/iobroker.js-controller/lib/adapter.js:1891:34)
                      Error:	2015-09-29 00:31:30	error	at Adapter.emit (events.js:95:17)
                      Error:	2015-09-29 00:31:30	error	at Adapter.adapter.config.ports.(anonymous function).value (/opt/iobroker/node_modules/iobroker.megad/main.js:87:17)
                      Error:	2015-09-29 00:31:30	error	at discoverMega (/opt/iobroker/node_modules/iobroker.megad/main.js:702:17)
                      Error:	2015-09-29 00:31:30	error	at discoverMegaOnIP (/opt/iobroker/node_modules/iobroker.megad/main.js:671:24)
                      Error:	2015-09-29 00:31:30	error	at Object.exports.createSocket (dgram.js:130:10)
                      Error:	2015-09-29 00:31:30	error	at new Socket (dgram.js:113:16)
                      Error:	2015-09-29 00:31:30	error	at newHandle (dgram.js:88:9)
                      Error:	2015-09-29 00:31:30	error	Bad socket type specified. Valid types are: udp4, udp6
                      message	2015-09-29 00:31:30	error	messagebox.system.adapter.megad.0 [object Object] Bad socket type specified. Valid types are: udp4, udp6
                      

                      Если используется модуль Datagram Sockets, то там написано: Creates a datagram Socket of the specified types. Valid types are udp4 and udp6.
                      6305_flot_lueftung.png

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

                        @vtec:

                        Нажатие кнопки поиска

                        Error:	2015-09-29 00:31:30	error	at Socket.Emitter.emit (/opt/iobroker/node_modules/iobroker.js-controller/node_modules/socket.io-client/node_modules/component-emitter/index.js:134:20)
                        Error:	2015-09-29 00:31:30	error	at Socket.StatesInMemClient.client.on.connectionTimeout (/opt/iobroker/node_modules/iobroker.js-controller/lib/states/statesInMemClient.js:45:30)
                        Error:	2015-09-29 00:31:30	error	at Object.that.states.States.change (/opt/iobroker/node_modules/iobroker.js-controller/lib/adapter.js:1891:34)
                        Error:	2015-09-29 00:31:30	error	at Adapter.emit (events.js:95:17)
                        Error:	2015-09-29 00:31:30	error	at Adapter.adapter.config.ports.(anonymous function).value (/opt/iobroker/node_modules/iobroker.megad/main.js:87:17)
                        Error:	2015-09-29 00:31:30	error	at discoverMega (/opt/iobroker/node_modules/iobroker.megad/main.js:702:17)
                        Error:	2015-09-29 00:31:30	error	at discoverMegaOnIP (/opt/iobroker/node_modules/iobroker.megad/main.js:671:24)
                        Error:	2015-09-29 00:31:30	error	at Object.exports.createSocket (dgram.js:130:10)
                        Error:	2015-09-29 00:31:30	error	at new Socket (dgram.js:113:16)
                        Error:	2015-09-29 00:31:30	error	at newHandle (dgram.js:88:9)
                        Error:	2015-09-29 00:31:30	error	Bad socket type specified. Valid types are: udp4, udp6
                        message	2015-09-29 00:31:30	error	messagebox.system.adapter.megad.0 [object Object] Bad socket type specified. Valid types are: udp4, udp6
                        

                        Если используется модуль Datagram Sockets, то там написано: Creates a datagram Socket of the specified types. Valid types are udp4 and udp6. `
                        Версия node.js старая… Попробуй поменять строчку 671 в main.js на

                        var client = dgram.createSocket('udp4');
                        
                        1 Reply Last reply Reply Quote 0
                        • V
                          vtec last edited by

                          Обновил до 0.10.40, тоже самое. Еще новее?

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

                            @vtec:

                            Обновил до 0.10.40, тоже самое. Еще новее? `
                            забудь.Я поменял вызов. Обнови megad

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

                              @Bluefox:

                              Что это такое? По имени naf `
                              http://ab-log.ru/smart-house/ethernet/megad-328

                              Флажок (чекбокс) справа от поля Net указывает, что NetAction будет вызван ТОЛЬКО при недоступности сервера. По умолчанию вызывается всегда.

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

                                @Bluefox:

                                @Bosya:

                                Вчера всплыла еще такая вещь - при снятии галочки "двойное нажатие" перестали работать скрипты на одиночное нажатие:

                                on("megad.0.p9_P9", function (obj) {
                                    if (obj.newState.val === true) {
                                      request(Lamp4);
                                    }
                                });
                                

                                В чем может быть подвох? Галочку вернул - она почти не мешает, но это лишняя нагрузка на систему и лишняя задержка для ожидания того, чего не нужно… `
                                Просто там генерировались 0 и 1 вместо true и false.

                                Можешь в последней версии 0.2.11 поменять строку 934 с

                                    adapter.setState(config.id, config.value, true);
                                
                                

                                на

                                    adapter.setState(config.id, !!config.value, true);
                                
                                ```` `  
                                

                                Я так понимаю это уже в 0.2.12 исправлено. А как по поводу моего предыдущего замечания?
                                @Bosya:

                                Драйвер обновил, но не помогло. Проверил браузером и теперь везде OK, но в Mozilla было замечено что шрифт OK отличается для 0 и остальных. Дальнейший анализ показал, что у ответов сервера разный тип.

                                Для 0 это - text/html, а для остальных - text/plain. `

                                1 Reply Last reply Reply Quote 0
                                • V
                                  vtec last edited by

                                  версия 0.2.12

                                  1. поиск так и не заработал.

                                  2. Считывание misc не заработало, так же по прежнему из поля mode считывает.

                                  3. Пожелание: во вкладке настройка драйверов в столбце "заголовок" сделать переход на мегу при условии что ip прописан в настройках (типа как переходим на редактор vis).

                                  1 Reply Last reply Reply Quote 0
                                  • M
                                    MSapogov last edited by

                                    @vtec:

                                    версия 0.2.12

                                    1. поиск так и не заработал.

                                    2. Считывание misc не заработало, так же по прежнему из поля mode считывает.

                                    3. Пожелание: во вкладке настройка драйверов в столбце "заголовок" сделать переход на мегу при условии что ip прописан в настройках (типа как переходим на редактор vis). `
                                    4. Убрать поле "Сценарий:", если тип датчика DHT11 или DHT22.

                                    5. Выход PWM может быть установлен не на всех выходах (Ограничение Atmega 328p)

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

                                      @vtec:

                                      версия 0.2.12

                                      1. поиск так и не заработал.

                                      2. Считывание misc не заработало, так же по прежнему из поля mode считывает.

                                      3. Пожелание: во вкладке настройка драйверов в столбце "заголовок" сделать переход на мегу при условии что ip прописан в настройках (типа как переходим на редактор vis). `
                                      Ничего не понимаю.

                                      А можешь прислать wireshark. Как iobroker ищет?

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

                                        @MSapogov:

                                        @vtec:

                                        версия 0.2.12

                                        1. поиск так и не заработал.

                                        2. Считывание misc не заработало, так же по прежнему из поля mode считывает.

                                        3. Пожелание: во вкладке настройка драйверов в столбце "заголовок" сделать переход на мегу при условии что ip прописан в настройках (типа как переходим на редактор vis). `
                                        4. Убрать поле "Сценарий:", если тип датчика DHT11 или DHT22.

                                        5. Выход PWM может быть установлен не на всех выходах (Ограничение Atmega 328p) `
                                        На каких портах можно pwm?

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

                                          @Bluefox:

                                          На каких портах можно pwm? `
                                          На 10 , 12 и 13 портах .

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

                                            @Andrei34:

                                            @Bluefox:

                                            На каких портах можно pwm? На 10 , 12 и 13 портах .
                                            Ну если быть точным то 3,5,6,9,10,11 - Если говорить про мегу 328

                                            Неправильно написал.

                                            5,11,12,15,16,17 вот так вроде по даташиту

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

                                            Support us

                                            ioBroker
                                            Community Adapters
                                            Donate

                                            863
                                            Online

                                            31.6k
                                            Users

                                            79.4k
                                            Topics

                                            1.3m
                                            Posts

                                            28
                                            430
                                            115568
                                            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