Skip to content
  • Home
  • Recent
  • Tags
  • 0 Unread 0
  • Categories
  • Unreplied
  • Popular
  • GitHub
  • Docu
  • Hilfe
Skins
  • Light
  • Brite
  • Cerulean
  • Cosmo
  • Flatly
  • Journal
  • Litera
  • Lumen
  • Lux
  • Materia
  • Minty
  • Morph
  • Pulse
  • Sandstone
  • Simplex
  • Sketchy
  • Spacelab
  • United
  • Yeti
  • Zephyr
  • Dark
  • Cyborg
  • Darkly
  • Quartz
  • Slate
  • Solar
  • Superhero
  • Vapor

  • Default (No Skin)
  • No Skin
Collapse
ioBroker Logo

Community Forum

donate donate
  1. ioBroker Community Home
  2. Русский
  3. ioBroker
  4. ioBroker драйвера
  5. Драйвер ioBroker MySensors

NEWS

  • UPDATE 31.10.: Amazon Alexa - ioBroker Skill läuft aus ?
    apollon77A
    apollon77
    48
    3
    8.8k

  • Monatsrückblick – September 2025
    BluefoxB
    Bluefox
    13
    1
    2.2k

  • Neues Video "KI im Smart Home" - ioBroker plus n8n
    BluefoxB
    Bluefox
    16
    1
    3.2k

Драйвер ioBroker MySensors

Scheduled Pinned Locked Moved ioBroker драйвера
106 Posts 13 Posters 32.6k Views
  • Oldest to Newest
  • Newest to Oldest
  • Most Votes
Reply
  • Reply as topic
Log in to reply
This topic has been deleted. Only users with topic management privileges can see it.
  • M Offline
    M Offline
    Maxtox
    wrote on last edited by
    #39

    https://youtu.be/LFCIhMTMtIY

    Arduino MEGA 2560 R3 / ioBroker / DOino Sketch

    1 Reply Last reply
    0
    • V Offline
      V Offline
      Vlad_k
      wrote on last edited by
      #40

      прыгает потому что твой шлюз отправляет данные постоянно

      1 Reply Last reply
      0
      • M Offline
        M Offline
        Maxtox
        wrote on last edited by
        #41

        @Vlad_k:

        прыгает потому что твой шлюз отправляет данные постоянно `
        вроде не прыгает ( подключил к компу)…

        https://youtu.be/rQqTmg9WccY

        в иоброкере...ЛОГ:

        @bluefox:

        stateChange	mysensors.0.V_TEMP_0_58	"43.29"	false	mysensors.0	2016-02-21 12:58:28	2016-02-21 12:58:18
        stateChange	mysensors.0.V_TEMP_0_58	"43.29"	false	mysensors.0	2016-02-21 12:58:28	2016-02-21 12:58:18
        stateChange	mysensors.0.V_TEMP_0_58	"43.29"	false	mysensors.0	2016-02-21 12:58:28	2016-02-21 12:58:18
        stateChange	mysensors.0.V_TEMP_0_58	"43.29"	false	mysensors.0	2016-02-21 12:58:27	2016-02-21 12:58:18
        stateChange	mysensors.0.V_TEMP_0_58	"43.29"	false	mysensors.0	2016-02-21 12:58:27	2016-02-21 12:58:18
        stateChange	mysensors.0.V_TEMP_0_58	"43.29"	false	mysensors.0	2016-02-21 12:58:27	2016-02-21 12:58:18
        stateChange	mysensors.0.V_TEMP_0_58	"43.29"	false	mysensors.0	2016-02-21 12:58:27	2016-02-21 12:58:18
        stateChange	mysensors.0.V_TEMP_0_58	"43.29"	false	mysensors.0	2016-02-21 12:58:27	2016-02-21 12:58:18
        stateChange	mysensors.0.V_TEMP_0_58	"43.29"	false	mysensors.0	2016-02-21 12:58:27	2016-02-21 12:58:18
        stateChange	mysensors.0.V_TEMP_0_58	"43.29"	false	mysensors.0	2016-02-21 12:58:27	2016-02-21 12:58:18
        stateChange	mysensors.0.V_TEMP_0_58	"43.29"	false	mysensors.0	2016-02-21 12:58:27	2016-02-21 12:58:18
        stateChange	mysensors.0.V_TEMP_0_58	"43.29"	false	mysensors.0	2016-02-21 12:58:27	2016-02-21 12:58:18
        stateChange	mysensors.0.V_TEMP_0_58	"43.29"	false	mysensors.0	2016-02-21 12:58:27	2016-02-21 12:58:18
        stateChange	mysensors.0.V_TEMP_0_58	"43.29"	false	mysensors.0	2016-02-21 12:58:27	2016-02-21 12:58:18
        stateChange	mysensors.0.V_TEMP_0_58	"43.29"	false	mysensors.0	2016-02-21 12:58:27	2016-02-21 12:58:18
        stateChange	mysensors.0.V_TEMP_0_58	"43.29"	false	mysensors.0	2016-02-21 12:58:26	2016-02-21 12:58:18
        stateChange	mysensors.0.V_TEMP_0_58	"43.29"	false	mysensors.0	2016-02-21 12:58:26	2016-02-21 12:58:18
        stateChange	mysensors.0.V_TEMP_0_58	"43.29"	false	mysensors.0	2016-02-21 12:58:26	2016-02-21 12:58:18
        stateChange	mysensors.0.V_TEMP_0_58	"43.29"	false	mysensors.0	2016-02-21 12:58:26	2016-02-21 12:58:18
        stateChange	mysensors.0.V_TEMP_0_58	"43.29"	false	mysensors.0	2016-02-21 12:58:26	2016-02-21 12:58:18
        stateChange	mysensors.0.V_TEMP_0_58	"43.29"	false	mysensors.0	2016-02-21 12:58:26	2016-02-21 12:58:18
        stateChange	mysensors.0.V_TEMP_0_58	"43.29"	false	mysensors.0	2016-02-21 12:58:26	2016-02-21 12:58:18
        stateChange	mysensors.0.V_TEMP_0_58	"43.29"	false	mysensors.0	2016-02-21 12:58:26	2016-02-21 12:58:18
        stateChange	mysensors.0.V_TEMP_0_58	"43.29"	false	mysensors.0	2016-02-21 12:58:26	2016-02-21 12:58:18
        stateChange	mysensors.0.V_TEMP_0_58	"43.29"	false	mysensors.0	2016-02-21 12:58:26	2016-02-21 12:58:18
        stateChange	mysensors.0.V_TEMP_0_58	"43.29"	false	mysensors.0	2016-02-21 12:58:26	2016-02-21 12:58:18
        stateChange	mysensors.0.V_TEMP_0_58	"43.29"	false	mysensors.0	2016-02-21 12:58:26	2016-02-21 12:58:18
        stateChange	mysensors.0.V_TEMP_0_58	"43.29"	false	mysensors.0	2016-02-21 12:58:26	2016-02-21 12:58:18
        stateChange	mysensors.0.V_TEMP_0_58	"43.29"	false	mysensors.0	2016-02-21 12:58:25	2016-02-21 12:58:18
        stateChange	mysensors.0.V_TEMP_0_58	"43.29"	false	mysensors.0	2016-02-21 12:58:25	2016-02-21 12:58:18
        stateChange	mysensors.0.V_TEMP_0_58	"43.29"	false	mysensors.0	2016-02-21 12:58:25	2016-02-21 12:58:18
        stateChange	mysensors.0.V_TEMP_0_58	"43.29"	false	mysensors.0	2016-02-21 12:58:25	2016-02-21 12:58:18
        stateChange	mysensors.0.V_TEMP_0_58	"43.29"	false	mysensors.0	2016-02-21 12:58:25	2016-02-21 12:58:18
        stateChange	mysensors.0.V_TEMP_0_58	"43.29"	false	mysensors.0	2016-02-21 12:58:25	2016-02-21 12:58:18
        stateChange	mysensors.0.V_TEMP_0_58	"43.29"	false	mysensors.0	2016-02-21 12:58:25	2016-02-21 12:58:18
        stateChange	mysensors.0.V_TEMP_0_58	"43.29"	false	mysensors.0	2016-02-21 12:58:25	2016-02-21 12:58:18
        stateChange	mysensors.0.V_TEMP_0_58	"43.29"	false	mysensors.0	2016-02-21 12:58:25	2016-02-21 12:58:18
        stateChange	mysensors.0.V_TEMP_0_58	"43.29"	false	mysensors.0	2016-02-21 12:58:25	2016-02-21 12:58:18
        stateChange	mysensors.0.V_TEMP_0_58	"43.29"	false	mysensors.0	2016-02-21 12:58:25	2016-02-21 12:58:18
        stateChange	mysensors.0.V_TEMP_0_58	"43.29"	false	mysensors.0	2016-02-21 12:58:25	2016-02-21 12:58:18
        stateChange	mysensors.0.V_TEMP_0_58	"43.29"	false	mysensors.0	2016-02-21 12:58:24	2016-02-21 12:58:18
        stateChange	mysensors.0.V_TEMP_0_58	"43.29"	false	mysensors.0	2016-02-21 12:58:24	2016-02-21 12:58:18
        stateChange	mysensors.0.V_TEMP_0_58	"43.29"	false	mysensors.0	2016-02-21 12:58:24	2016-02-21 12:58:18
        stateChange	mysensors.0.V_TEMP_0_58	"43.29"	false	mysensors.0	2016-02-21 12:58:24	2016-02-21 12:58:18
        stateChange	mysensors.0.V_TEMP_0_58	"43.29"	false	mysensors.0	2016-02-21 12:58:24	2016-02-21 12:58:18
        stateChange	mysensors.0.V_TEMP_0_58	"43.29"	false	mysensors.0	2016-02-21 12:58:24	2016-02-21 12:58:18
        stateChange	mysensors.0.V_TEMP_0_58	"43.29"	false	mysensors.0	2016-02-21 12:58:24	2016-02-21 12:58:18
        stateChange	mysensors.0.V_TEMP_0_58	"43.29"	false	mysensors.0	2016-02-21 12:58:24	2016-02-21 12:58:18
        stateChange	mysensors.0.V_TEMP_0_58	"43.29"	false	mysensors.0	2016-02-21 12:58:24	2016-02-21 12:58:18
        stateChange	mysensors.0.V_TEMP_0_58	"43.29"	false	mysensors.0	2016-02-21 12:58:24	2016-02-21 12:58:18
        stateChange	mysensors.0.V_TEMP_0_58	"43.29"	false	mysensors.0	2016-02-21 12:58:24	2016-02-21 12:58:18
        stateChange	mysensors.0.V_TEMP_0_58	"43.29"	false	mysensors.0	2016-02-21 12:58:24	2016-02-21 12:58:18
        stateChange	mysensors.0.V_TEMP_0_58	"43.29"	false	mysensors.0	2016-02-21 12:58:23	2016-02-21 12:58:18
        stateChange	mysensors.0.V_TEMP_0_58	"43.29"	false	mysensors.0	2016-02-21 12:58:23	2016-02-21 12:58:18
        stateChange	mysensors.0.V_TEMP_0_58	"43.29"	false	mysensors.0	2016-02-21 12:58:23	2016-02-21 12:58:18
        stateChange	mysensors.0.V_TEMP_0_58	"43.29"	false	mysensors.0	2016-02-21 12:58:23	2016-02-21 12:58:18
        

        Arduino MEGA 2560 R3 / ioBroker / DOino Sketch

        1 Reply Last reply
        0
        • V Offline
          V Offline
          Vlad_k
          wrote on last edited by
          #42

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

          1 Reply Last reply
          0
          • M Offline
            M Offline
            Maxtox
            wrote on last edited by
            #43

            ни чего не понимаю!

            https://youtu.be/wsnjSjnc0gU

            в скетче каждые 10сек. update!

            https://www.youtube.com/watch?v=wsnjSjnc0gU

            `if (millis() > next_Time[i])
                  {
                    next_Time[i] = next_Time[i] + 10000;  //Update Value every 10s 
                    Rt = Rv / ((1024.0 / analogRead(i)) - 1.0);
                    float tempNTC = (B_wert * Tn / (B_wert + (Tn * log(Rt / Rn)))) - Tn + 25.0 + Temp_offset[i];// Here Offset if needed
            
                    if ((tempNTC > (last_float_value[i] + delta_ntc)) || (tempNTC < (last_float_value[i] - delta_ntc))
                      || complete_loop)
                    {
                      //MyMessage msg(i, iomodus[i].variableType);
                      Serial.print("tempNTC of Pin ");
                      Serial.print(i);
                      Serial.print(" is ");
                      Serial.println(tempNTC);
                      send(msg.setSensor(i).set(tempNTC, 2), false);
            
                      last_float_value[i] = tempNTC;
            
                    }
                  }`[/i][/i][/i][/i][/i][/i][/i][/i]
            

            Arduino MEGA 2560 R3 / ioBroker / DOino Sketch

            1 Reply Last reply
            0
            • V Offline
              V Offline
              Vlad_k
              wrote on last edited by
              #44

              вроде нашел где глючит, залил , пробуй

              1 Reply Last reply
              0
              • M Offline
                M Offline
                Maxtox
                wrote on last edited by
                #45

                ok.. отпишусь!

                Arduino MEGA 2560 R3 / ioBroker / DOino Sketch

                1 Reply Last reply
                0
                • H Offline
                  H Offline
                  Haba
                  wrote on last edited by
                  #46

                  Подскажите пожалуйста, из-за чего криво может ставится этот драйвер?

                  саму ioBroker поставил и запустил раза с пятого :)

                  Железо Raspberry Pi B, шлюз Arduino Serial. Подключаю на GPIO, т.е. будет использоваться ttyAMA0

                  Установку делаю с админ панели

                  вот лог установки драйвера:

                  ! ````
                  $ ./iobroker add mysensors
                  npm install iobroker.mysensors --production --prefix "/opt/iobroker" (System call)
                  In file included from ../src/serialport.h:5:0, from ../src/serialport.cpp:3:
                  ../node_modules/nan/nan.h:316:47: error: ‘REPLACE_INVALID_UTF8’ is not a member of ‘v8::String’
                  static const unsigned kReplaceInvalidUtf8 = v8::String::REPLACE_INVALID_UTF8;
                  ^
                  ! make: *** [Release/obj.target/serialport/src/serialport.o] Ошибка 1
                  gyp

                  ERR! build error
                  gyp
                  ERR!
                  stack Error: make failed with exit code: 2gyp ERR! stack at ChildProcess.onExit (/usr/share/node-gyp/lib/build.js:267:23)
                  gyp ERR! stack at ChildProcess.emit (events.js:98:17)
                  gyp ERR! stack
                  at Process.ChildProcess._handle.onexit (child_process.js:809:12)
                  gyp
                  ERR! System Linux 4.1.19+gyp ERR! command "nodejs" "/usr/bin/node-gyp" "build" "--fallback-to-build" "--module=/opt/iobroker/node_modules/iobroker.mysensors/node_modules/serialport/build/Release/node-v11-linux-arm/serialport.node" "--module_name=serialport" "--module_path=/opt/iobroker/node_modules/iobroker.mysensors/node_modules/serialport/build/Release/node-v11-linux-arm"

                  ! gyp ERR! cwd /opt/iobroker/node_modules/iobroker.mysensors/node_modules/serialportgyp ERR! node -v v0.10.29
                  gyp ERR! node-gyp -v v0.12.2
                  ! gyp ERR! not ok
                  node-pre-gyp ERR! build error
                  node-pre-gyp
                  ERR! stack Error: Failed to execute 'node-gyp build --fallback-to-build --module=/opt/iobroker/node_modules/iobroker.mysensors/node_modules/serialport/build/Release/node-v11-linux-arm/serialport.node --module_name=serialport --module_path=/opt/iobroker/node_modules/iobroker.mysensors/node_modules/serialport/build/Release/node-v11-linux-arm' (1)node-pre-gyp
                  ERR! stack at ChildProcess. <anonymous>(/opt/iobroker/node_modules/iobroker.mysensors/node_modules/serialport/node_modules/node-pre-gyp/lib/util/compile.js:83:29)node-pre-gyp ERR! stack at ChildProcess.emit (events.js:98:17)
                  node-pre-gyp ERR! stack at maybeClose (child_process.js:755:16)
                  node-pre-gyp ERR! stack at Process.ChildProcess._handle.onexit (child_process.js:822:5)
                  ! node-pre-gyp
                  ERR! System Linux 4.1.19+node-pre-gyp ERR! command "node" "/opt/iobroker/node_modules/iobroker.mysensors/node_modules/serialport/node_modules/.bin/node-pre-gyp" "install" "--fallback-to-build"
                  node-pre-gyp ERR! cwd /opt/iobroker/node_modules/iobroker.mysensors/node_modules/serialport
                  node-pre-gyp ERR! node -v v0.10.29
                  node-pre-gyp ERR! node-pre-gyp -v v0.6.18
                  node-pre-gyp
                  ERR! not ok
                  npm

                  WARN This failure might be due to the use of legacy binary "node"
                  npm WARN For further explanations, please read/usr/share/doc/nodejs/README.Debian

                  ! npm
                  WARN optional dep failed, continuing serialport@2.0.6</anonymous>

                  1 Reply Last reply
                  0
                  • M Offline
                    M Offline
                    Maxtox
                    wrote on last edited by
                    #47

                    Ты мой видео на YouTube смотрел? Там всё показано

                    Arduino MEGA 2560 R3 / ioBroker / DOino Sketch

                    1 Reply Last reply
                    0
                    • BluefoxB Offline
                      BluefoxB Offline
                      Bluefox
                      wrote on last edited by
                      #48

                      @Haba:

                      Подскажите пожалуйста, из-за чего криво может ставится этот драйвер?

                      саму ioBroker поставил и запустил раза с пятого :)

                      Железо Raspberry Pi B, шлюз Arduino Serial. Подключаю на GPIO, т.е. будет использоваться ttyAMA0

                      Установку делаю с админ панели

                      вот лог установки драйвера:

                      ! ````
                      $ ./iobroker add mysensors
                      npm install iobroker.mysensors --production --prefix "/opt/iobroker" (System call)
                      In file included from ../src/serialport.h:5:0, from ../src/serialport.cpp:3:
                      ../node_modules/nan/nan.h:316:47: error: ‘REPLACE_INVALID_UTF8’ is not a member of ‘v8::String’
                      static const unsigned kReplaceInvalidUtf8 = v8::String::REPLACE_INVALID_UTF8;
                      ^
                      ! make: *** [Release/obj.target/serialport/src/serialport.o] Ошибка 1
                      gyp

                      ERR! build error
                      gyp
                      ERR!
                      stack Error: make failed with exit code: 2gyp ERR! stack at ChildProcess.onExit (/usr/share/node-gyp/lib/build.js:267:23)
                      gyp ERR! stack at ChildProcess.emit (events.js:98:17)
                      gyp ERR! stack
                      at Process.ChildProcess._handle.onexit (child_process.js:809:12)
                      gyp
                      ERR! System Linux 4.1.19+gyp ERR! command "nodejs" "/usr/bin/node-gyp" "build" "--fallback-to-build" "--module=/opt/iobroker/node_modules/iobroker.mysensors/node_modules/serialport/build/Release/node-v11-linux-arm/serialport.node" "--module_name=serialport" "--module_path=/opt/iobroker/node_modules/iobroker.mysensors/node_modules/serialport/build/Release/node-v11-linux-arm"

                      ! gyp ERR! cwd /opt/iobroker/node_modules/iobroker.mysensors/node_modules/serialportgyp ERR! node -v v0.10.29
                      gyp ERR! node-gyp -v v0.12.2
                      ! gyp ERR! not ok
                      node-pre-gyp ERR! build error
                      node-pre-gyp
                      ERR! stack Error: Failed to execute 'node-gyp build --fallback-to-build --module=/opt/iobroker/node_modules/iobroker.mysensors/node_modules/serialport/build/Release/node-v11-linux-arm/serialport.node --module_name=serialport --module_path=/opt/iobroker/node_modules/iobroker.mysensors/node_modules/serialport/build/Release/node-v11-linux-arm' (1)node-pre-gyp
                      ERR! stack at ChildProcess. <anonymous>(/opt/iobroker/node_modules/iobroker.mysensors/node_modules/serialport/node_modules/node-pre-gyp/lib/util/compile.js:83:29)node-pre-gyp ERR! stack at ChildProcess.emit (events.js:98:17)
                      node-pre-gyp ERR! stack at maybeClose (child_process.js:755:16)
                      node-pre-gyp ERR! stack at Process.ChildProcess._handle.onexit (child_process.js:822:5)
                      ! node-pre-gyp
                      ERR! System Linux 4.1.19+node-pre-gyp ERR! command "node" "/opt/iobroker/node_modules/iobroker.mysensors/node_modules/serialport/node_modules/.bin/node-pre-gyp" "install" "--fallback-to-build"
                      node-pre-gyp ERR! cwd /opt/iobroker/node_modules/iobroker.mysensors/node_modules/serialport
                      node-pre-gyp ERR! node -v v0.10.29
                      node-pre-gyp ERR! node-pre-gyp -v v0.6.18
                      node-pre-gyp
                      ERR! not ok
                      npm

                      WARN This failure might be due to the use of legacy binary "node"
                      npm WARN For further explanations, please read/usr/share/doc/nodejs/README.Debian

                      ! npm
                      WARN optional dep failed, continuing serialport@2.0.6</anonymous>
                      ```` `
                      Не хватает питона и build-essential

                      1 Reply Last reply
                      0
                      • H Offline
                        H Offline
                        Haba
                        wrote on last edited by
                        #49

                        Maxtox видео смотрел, но посмотрел еще раз :) действитвельно упустил один момент. У меня почему то даже на качестве 720р текст плохо был виден. только при втором просмотре увидел версию nodejs 12.6.

                        Все переустановил еще разок, заработало! Через USB шлюз уже подключил, через GPIO пока еще не успел. Ругается Serial error: Error: Serialport not open, буду настройки проверять.

                        Bluefox , в последнем образе Raspbian уже последние версии стоят, проверял.

                        Кстати, подскажите еще такой момент. При установке уже самого ioBroker вылазит следующее (хотя ставил под рутом):

                        ! Write "./iobroker start" to start the ioBroker
                        ! Cannot create file /usr/bin/iobroker!. Non critical
                        ! –---------------------------------------------------
                        ! You can manually copy file into /usr/bin/. Just write:
                        ! sudo cp /opt/iobroker/node_modules/iobroker/install/iobroker /usr/bin/
                        ! sudo chmod 777 /usr/bin/iobroker
                        ! -----------------------------------------------------
                        ! Cannot copy file to /etc/init.d/iobroker.sh: Error: EACCES: permission denied, open '/etc/init.d/iobroker.sh'
                        ! -----------------------------------------------------
                        ! You can manually copy file and install autostart:
                        ! sudo cp /opt/iobroker/node_modules/iobroker/install/linux/iobroker.sh /etc/init.d/
                        ! sudo chmod 777 /etc/init.d/iobroker.sh
                        ! sudo bash /opt/iobroker/node_modules/iobroker/install/linux/install.sh
                        ! -----------------------------------------------------
                        ! or just start "sudo bash /opt/iobroker/install.sh"
                        ! -----------------------------------------------------

                        Как и написано, ручками эти команды выполняю и запускаю брокера.

                        1 Reply Last reply
                        0
                        • fishka18rusF Offline
                          fishka18rusF Offline
                          fishka18rus
                          wrote on last edited by
                          #50

                          @Vlad_k:

                          Драйвер предназначен для работы с беспроводными устройствами (arduino+nrf24), использующими библиотеку с http://www.mysensors.org/…

                          драйвер в обкатке, предложения(пожелания) не игнорируются :D `

                          Привет!

                          Адаптер для mysensors это действительно круто. Я давно лелеял надежду что кто-нибудь напишет подобную штуку, так как сам совсем не программист. Но, как я понял, данный адаптер в режиме tcp или udp выступает в качестве шлюза для устрйств mysensensors, т.е. работает как сервер и ждет подключений на порт 5003? Разве не логичнее ему получать данные от mysensors gateway запущенном на какой-нибудь esp8266? И есть ли в планах такой режим?

                          1 Reply Last reply
                          0
                          • H Offline
                            H Offline
                            Haba
                            wrote on last edited by
                            #51

                            fishka18rus Не совсем так. Данный драйвер принимает данные (посылает команды) через физический шлюз, выполненный на одном из вариантов Serial, MQTT или Ethernet. Соответственно на чем сделан шлюз (ардуина + usb или esp8266 или сетевой модуль) не важно для ioBroker, будет работать с любой железкой либо через uart, либо через сеть

                            1 Reply Last reply
                            0
                            • H Offline
                              H Offline
                              Haba
                              wrote on last edited by
                              #52

                              Возможность автоматической раздачи id, новым подключаемым узлам и возможность обновления прошивки по воздуху (на основе загрузчика MYSBootloader планируется?

                              1 Reply Last reply
                              0
                              • M Offline
                                M Offline
                                Maxtox
                                wrote on last edited by
                                #53

                                da… v planax est

                                Arduino MEGA 2560 R3 / ioBroker / DOino Sketch

                                1 Reply Last reply
                                0
                                • H Offline
                                  H Offline
                                  Haba
                                  wrote on last edited by
                                  #54

                                  Кто может подказать по такой штуке…

                                  в скетче описал датчики, они появились в Объектах в таком виде:

                                  ~~![](</s><URL url=)http://s019.radikal.ru/i634/1604/fe/567a3f1240f8.png" />

                                  В скетче датчики описаны так:

                                  MyMessage AlmStatus(MyAlm, V_VAR1);  
                                  MyMessage BatStatus(MyBat, V_WATT);
                                  MyMessage NetStatus(MyNet, V_VAR2);
                                  
                                   gw.present(MyAlm, S_CUSTOM, "123", false);
                                   gw.present(MyBat, S_POWER, "123", false);
                                   gw.present(MyNet, S_CUSTOM, "123", false);
                                  
                                  

                                  По картинке видно, что V_VAR1 и V_VAR2 показываются пустыми полями, и по началу не подтягивались и данные.

                                  А для S_POWER добавилась лишняя переменная, которая не была описана.

                                  Чтобы данные с переменных V_VAR1 и V_VAR2 тоже было видно, прописал ручками так:

                                  ~~![](</s><URL url=)http://s017.radikal.ru/i409/1604/d3/89954a1243f8.png" />

                                  Но по идее этот подход не соответсвуют идее разработчика. Как вообще правильно надо описывать датчики в MySensors?

                                  Я предполагал, что драйвер брокера из gw.present вытягивает переменные S_…, а потом уже из сообщений тянет типы переменных V_…. При таком подходе в Объектах было бы только то, что описанно в скетче и ничего лишнего.~~~~

                                  1 Reply Last reply
                                  0
                                  • M Offline
                                    M Offline
                                    Maxtox
                                    wrote on last edited by
                                    #55

                                    @Haba:

                                    Но по идее этот подход не соответсвуют идее разработчика. Как вообще правильно надо описывать датчики в MySensors?

                                    Я предполагал, что драйвер брокера из gw.present вытягивает переменные S_…, а потом уже из сообщений тянет типы переменных V_…. При таком подходе в Объектах было бы только то, что описанно в скетче и ничего лишнего. `

                                    а как вытащить тип переменной из V… ?

                                    пример S_Custom :D

                                    Arduino MEGA 2560 R3 / ioBroker / DOino Sketch

                                    1 Reply Last reply
                                    0
                                    • H Offline
                                      H Offline
                                      Haba
                                      wrote on last edited by
                                      #56

                                      По идее все просто…

                                      gw.present(2, S_CUSTOM, "text", false);

                                      в шлюз придет:

                                      30;2;0;0;23;text

                                      где:

                                      __30 - адрес узла

                                      2 - child-sensor-id - адрес датчика

                                      0 - message-type "presentation"

                                      0 - ack

                                      23 - sub-type "S_CUSTOM"__

                                      т.е. переменную S_… получили из презентации

                                      –--------------------------

                                      теперь будем получать код переменной V…

                                      __MyMessage AlmStatus(2, V_VAR2);

                                      gw.send(AlmStatus.set(-84));__

                                      в шлюз получим:

                                      2016-04-05 11:43:04 warn Serial data received: 30;2;1;0;25;-84

                                      где:

                                      __30 - адрес узла

                                      2 - child-sensor-id - адрес датчика

                                      1 - message-type "set"

                                      0 - ack__

                                      25 - sub-type "V_VAR2"

                                      -84 - значение

                                      В результате дерево объектов можно построить следующим образом:

                                      1. с узла при презентации получаем: арес узла, адреса датчиков, их тип S_… и комментарий, название скетча, версия скетча

                                      2. При отправке сообщений gw.send(MyMessage.set(x)); добавляем в дерево объектов подобъекты типов V_…, к каким добавить объектам S_… определяем по адресу датчика.

                                      1 Reply Last reply
                                      0
                                      • BluefoxB Offline
                                        BluefoxB Offline
                                        Bluefox
                                        wrote on last edited by
                                        #57

                                        @Haba:

                                        По идее все просто…

                                        gw.present(2, S_CUSTOM, "text", false);

                                        в шлюз придет:

                                        30;2;0;0;23;text

                                        где:

                                        __30 - адрес узла

                                        2 - child-sensor-id - адрес датчика

                                        0 - message-type "presentation"

                                        0 - ack

                                        23 - sub-type "S_CUSTOM"__

                                        т.е. переменную S_… получили из презентации

                                        –--------------------------

                                        теперь будем получать код переменной V…

                                        __MyMessage AlmStatus(2, V_VAR2);

                                        gw.send(AlmStatus.set(-84));__

                                        в шлюз получим:

                                        2016-04-05 11:43:04 warn Serial data received: 30;2;1;0;25;-84

                                        где:

                                        __30 - адрес узла

                                        2 - child-sensor-id - адрес датчика

                                        1 - message-type "set"

                                        0 - ack__

                                        25 - sub-type "V_VAR2"

                                        -84 - значение

                                        В результате дерево объектов можно построить следующим образом:

                                        1. с узла при презентации получаем: арес узла, адреса датчиков, их тип S_… и комментарий, название скетча, версия скетча

                                        2. При отправке сообщений gw.send(MyMessage.set(x)); добавляем в дерево объектов подобъекты типов V_…, к каким добавить объектам S_… определяем по адресу датчика. `
                                        Это означает, что пока сенсоры не пошлют данные, объекты не создадутся. А если это output? И данные никогда не придут? Или температура, которая каждые 30 мин обновляется?

                                        1 Reply Last reply
                                        0
                                        • H Offline
                                          H Offline
                                          Haba
                                          wrote on last edited by
                                          #58

                                          если output, то правильно использовать вот эту штуку:

                                          The ack parameter has the following meaning:

                                          Outgoing: 0 = unacknowledged message, 1 = request ack from destination node

                                          Incoming: 0 = normal message, 1 = this is an ack message

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

                                          > Или температура, которая каждые 30 мин обновляется?
                                          Можно проверять есть ли в дереве объектов уже такая переменная у датчика №х, если нет, то добавляем в дерево. Если есть просто обновляем значение у нее.

                                          И потом, можно сделать гибрид :roll:

                                          т.е. оставить все как сейчас + добавить это:
                                          > Можно проверять есть ли уже в дереве объектов такая переменная у датчика, если нет, то добавляем в дерево. Если есть просто обновляем значение у нее.

                                          1 Reply Last reply
                                          0
                                          Reply
                                          • Reply as topic
                                          Log in to reply
                                          • Oldest to Newest
                                          • Newest to Oldest
                                          • Most Votes


                                          Support us

                                          ioBroker
                                          Community Adapters
                                          Donate

                                          666

                                          Online

                                          32.4k

                                          Users

                                          81.5k

                                          Topics

                                          1.3m

                                          Posts
                                          Community
                                          Impressum | Datenschutz-Bestimmungen | Nutzungsbedingungen | Einwilligungseinstellungen
                                          ioBroker Community 2014-2025
                                          logo
                                          • Login

                                          • Don't have an account? Register

                                          • Login or register to search.
                                          • First post
                                            Last post
                                          0
                                          • Home
                                          • Recent
                                          • Tags
                                          • Unread 0
                                          • Categories
                                          • Unreplied
                                          • Popular
                                          • GitHub
                                          • Docu
                                          • Hilfe