Skip to content
  • MySensors
  • OpenHardware.io
  • Categories
  • Recent
  • Tags
  • Popular
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
Brand Logo
  1. Home
  2. Development
  3. NodeManager
  4. NodeManager: plugin for a rapid development of battery-powered sensors

NodeManager: plugin for a rapid development of battery-powered sensors

Scheduled Pinned Locked Moved NodeManager
223 Posts 23 Posters 72.9k Views 26 Watching
  • 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.
  • G Getz99

    Hi @user2684
    Is it possible to add sensor MG996R Servo in V1.7? I know the list is long for fixes but it would be nice if you could squeeze it in.

    Thanks!

    U Offline
    U Offline
    user2684
    Contest Winner
    wrote on last edited by
    #196

    @getz99 I've added this feature request for this: https://github.com/mysensors/NodeManager/issues/253

    Thanks!

    G 1 Reply Last reply
    0
    • U user2684

      @getz99 I've added this feature request for this: https://github.com/mysensors/NodeManager/issues/253

      Thanks!

      G Offline
      G Offline
      Getz99
      wrote on last edited by
      #197

      @user2684 Thanks, Very much appreciated!

      1 Reply Last reply
      0
      • jsiddallJ Offline
        jsiddallJ Offline
        jsiddall
        Plugin Developer
        wrote on last edited by
        #198

        I grabbed the latest development branch tonight to try this out. I saved the NodeManager.ino as a new name and copied the NodeManagerLibrary.h and NodeManagerLibrary.ino files into the new folder. I enabled USE_DIGITAL_OUTPUT and added a SensorDigitalOutput and SensorRelay child in my sketch and tried to compile. Unfortunately I got these errors:

        In file included from ino:244:0:
        sketch/NodeManagerLibrary.h:549:27: error: 'SR_RX_RSSI' was not declared in this scope
             int _signal_command = SR_RX_RSSI;
                                   ^
        /NodeManagerLibrary.ino: In member function 'virtual void SensorSignal::onLoop(Child*)':
        /NodeManagerLibrary.ino:741:45: error: 'signalReport_t' was not declared in this scope
           int16_t value = transportGetSignalReport((signalReport_t)_signal_command);
                                                     ^
        /NodeManagerLibrary.ino:741:75: error: 'transportGetSignalReport' was not declared in this scope
           int16_t value = transportGetSignalReport((signalReport_t)_signal_command);
                                                                                   ^
        exit status 1
        Error compiling for board Arduino Nano.
        

        All seems to be related to signal reports but even if I disable signal reporting the errors still occur. Guessing I did something wrong so any ideas would be appreciated.

        Thanks!

        U 1 Reply Last reply
        0
        • jsiddallJ jsiddall

          I grabbed the latest development branch tonight to try this out. I saved the NodeManager.ino as a new name and copied the NodeManagerLibrary.h and NodeManagerLibrary.ino files into the new folder. I enabled USE_DIGITAL_OUTPUT and added a SensorDigitalOutput and SensorRelay child in my sketch and tried to compile. Unfortunately I got these errors:

          In file included from ino:244:0:
          sketch/NodeManagerLibrary.h:549:27: error: 'SR_RX_RSSI' was not declared in this scope
               int _signal_command = SR_RX_RSSI;
                                     ^
          /NodeManagerLibrary.ino: In member function 'virtual void SensorSignal::onLoop(Child*)':
          /NodeManagerLibrary.ino:741:45: error: 'signalReport_t' was not declared in this scope
             int16_t value = transportGetSignalReport((signalReport_t)_signal_command);
                                                       ^
          /NodeManagerLibrary.ino:741:75: error: 'transportGetSignalReport' was not declared in this scope
             int16_t value = transportGetSignalReport((signalReport_t)_signal_command);
                                                                                     ^
          exit status 1
          Error compiling for board Arduino Nano.
          

          All seems to be related to signal reports but even if I disable signal reporting the errors still occur. Guessing I did something wrong so any ideas would be appreciated.

          Thanks!

          U Offline
          U Offline
          user2684
          Contest Winner
          wrote on last edited by
          #199

          @jsiddall thanks for this hit, the issue seems to be related to SR_RX_RSSI which is only available with 2.2.0-beta version of the MySensors library, not 2.1.1 which I guess you are using. Something which needs to be fixed on the NodeManager's side, I've opened https://github.com/mysensors/NodeManager/issues/256 for this. Thanks

          1 Reply Last reply
          0
          • jsiddallJ Offline
            jsiddallJ Offline
            jsiddall
            Plugin Developer
            wrote on last edited by jsiddall
            #200

            @user2684 Great, thanks for the quick response.

            UPDATE: Confirmed, all is good with MyS 2.2.0-rc2. Not sure what resolution you had in mind for issue #256 but a note in the installation section of this page:

            https://www.mysensors.org/download/node-manager

            ...stating the required version of MyS for both the stable and dev versions of NodeManager would probably have been enough to keep me out of trouble!

            Thanks again for NodeManager. It does everything I had been doing manually before, using pages of sketch, and shrinks it down to a few simple lines.

            U 1 Reply Last reply
            0
            • jsiddallJ jsiddall

              @user2684 Great, thanks for the quick response.

              UPDATE: Confirmed, all is good with MyS 2.2.0-rc2. Not sure what resolution you had in mind for issue #256 but a note in the installation section of this page:

              https://www.mysensors.org/download/node-manager

              ...stating the required version of MyS for both the stable and dev versions of NodeManager would probably have been enough to keep me out of trouble!

              Thanks again for NodeManager. It does everything I had been doing manually before, using pages of sketch, and shrinks it down to a few simple lines.

              U Offline
              U Offline
              user2684
              Contest Winner
              wrote on last edited by
              #201

              @jsiddall thanks, fixed in the development branch right now. Adding a compatibility table between NodeManager and the MySensors library version sounds like a good idea, I've added https://github.com/mysensors/NodeManager/issues/261 for this. Thanks again

              1 Reply Last reply
              0
              • mar.conteM Offline
                mar.conteM Offline
                mar.conte
                wrote on last edited by mar.conte
                #202

                GHi, the rfm95 is compatible with nodemanager?
                And the esp32 also?

                M.C.

                U 1 Reply Last reply
                0
                • mar.conteM mar.conte

                  GHi, the rfm95 is compatible with nodemanager?
                  And the esp32 also?

                  U Offline
                  U Offline
                  user2684
                  Contest Winner
                  wrote on last edited by
                  #203

                  @mar-conte everything supported by the core MySensors library is supported by NodeManager since using the same code behind the scene but I'll add some default defines in the main sketch to make this configuration easier (https://github.com/mysensors/NodeManager/issues/262). Thanks

                  mar.conteM 1 Reply Last reply
                  0
                  • U user2684

                    @mar-conte everything supported by the core MySensors library is supported by NodeManager since using the same code behind the scene but I'll add some default defines in the main sketch to make this configuration easier (https://github.com/mysensors/NodeManager/issues/262). Thanks

                    mar.conteM Offline
                    mar.conteM Offline
                    mar.conte
                    wrote on last edited by
                    #204

                    @user2684
                    Ok Tanks

                    M.C.

                    1 Reply Last reply
                    0
                    • mar.conteM Offline
                      mar.conteM Offline
                      mar.conte
                      wrote on last edited by mar.conte
                      #205

                      I need help!!!
                      I have e mcp23017 Matrix espander i/o in esp nodemecu board, the mcp receive state sensor from my system wired alarm(pir, sismic etc) ; this signal received i want send to my domoticz controller, is the sensor custom the solution? Can i present 16 input sensors from my node to my controller?
                      Tanks

                      M.C.

                      U 1 Reply Last reply
                      0
                      • mar.conteM mar.conte

                        I need help!!!
                        I have e mcp23017 Matrix espander i/o in esp nodemecu board, the mcp receive state sensor from my system wired alarm(pir, sismic etc) ; this signal received i want send to my domoticz controller, is the sensor custom the solution? Can i present 16 input sensors from my node to my controller?
                        Tanks

                        U Offline
                        U Offline
                        user2684
                        Contest Winner
                        wrote on last edited by
                        #206

                        @mar-conte if using NodeManager, this is still not possible since mcp23017 is not supported by NodeManager yet. Thanks!

                        mar.conteM 1 Reply Last reply
                        0
                        • U user2684

                          @mar-conte if using NodeManager, this is still not possible since mcp23017 is not supported by NodeManager yet. Thanks!

                          mar.conteM Offline
                          mar.conteM Offline
                          mar.conte
                          wrote on last edited by
                          #207

                          @user2684
                          For example using text send if i receive state?

                          M.C.

                          1 Reply Last reply
                          0
                          • U Offline
                            U Offline
                            user2684
                            Contest Winner
                            wrote on last edited by
                            #208

                            Hi, for anybody interested in giving the upcoming NodeManager v1.7 a try or share a feedback, please have a look at https://forum.mysensors.org/topic/9085/nodemanager-v1-7-beta-feedback-needed. Thanks!

                            1 Reply Last reply
                            0
                            • U Offline
                              U Offline
                              user2684
                              Contest Winner
                              wrote on last edited by
                              #209

                              Hi, the new version of NodeManager (v1.7) is now available! For those interested in having a look at the new features, supported sensors and capabilities, I've opened a dedicated thread on the forum here https://forum.mysensors.org/topic/9165/nodemanager-v1-7-now-available
                              Thanks

                              1 Reply Last reply
                              1
                              • grauG Offline
                                grauG Offline
                                grau
                                wrote on last edited by
                                #210

                                @user2684 this project is awesome! Thank you for your work and efforts. Just one question: what exactly is needed for "built-in battery reporting" hardware-wise? is it really "built-in" or do i need additional wiring and resistors for battery reporting? (I'll want to power up my 3.3V Arduino Pro mini with 2 AA cells)

                                1 Reply Last reply
                                0
                                • gohanG Offline
                                  gohanG Offline
                                  gohan
                                  Mod
                                  wrote on last edited by
                                  #211

                                  since you are using 2AA batteries it can report voltage directly, in case you had any voltage regulator or booster it would require external resistors

                                  1 Reply Last reply
                                  1
                                  • grauG Offline
                                    grauG Offline
                                    grau
                                    wrote on last edited by
                                    #212

                                    Thank you very much. BTW: Is it possible to use Nodemanager with two, three or even four door sensors on a single ESP8266 (as Gateway without NRF radio)? Any help very appreciated!

                                    U 1 Reply Last reply
                                    0
                                    • grauG grau

                                      Thank you very much. BTW: Is it possible to use Nodemanager with two, three or even four door sensors on a single ESP8266 (as Gateway without NRF radio)? Any help very appreciated!

                                      U Offline
                                      U Offline
                                      user2684
                                      Contest Winner
                                      wrote on last edited by
                                      #213

                                      @grau the current door sensor implementation (SensorDoor class) leverages attachInterrupt(); not sure how many interrupt pins are there on a ESP8266 but if there are enough it should work

                                      1 Reply Last reply
                                      0
                                      • U user2684

                                        Hi, being a newbie in this wonderful MySensors world, I found myself excited about the flexibility of the overall platform but also somehow implementing the same common functionalities across my sensors over and over again. I decided then to spend some reasonable amount of time to expand the idea behind MyExtention (https://forum.mysensors.org/topic/6062/myextension) into something I have called NodeManager (I know, I'm bad with names!).

                                        NodeManager is intended to take care on your behalf of all those common tasks a MySensors node has to accomplish, speeding up the development cycle of your projects. It should help who is new to MySensors to get up to speed quicker and for those already into the matter to delegate to NodeManager common and boring tasks so to focus on more interesting scenarios.

                                        NodeManager main features are:

                                        • Manage all the aspects of a sleeping cycle by leveraging smart sleep
                                        • Allow configuring the sleep mode and the sleep duration remotely
                                        • Allow waking up a sleeping node remotely at the end of a sleeping cycle
                                        • Allow powering on each connected sensor only while the node is awake to save battery
                                        • Report battery level periodically and automatically
                                        • Calculate battery level without requiring an additional pin and the resistors
                                        • Report battery voltage through a built-in sensor
                                        • Can report battery level on demand
                                        • Allow rebooting the board remotely
                                        • Provide out-of-the-box sensors personalities and automatically execute their main task at each cycle

                                        Specifically on this last point, the idea behind providing built-in the functionalities of most common sensors is to simplify the development especially for somebody new to it.
                                        E.g. if I connect a thermistor to one of the pin, I just need a single line to have it working, as it was leveraging some sort of embedded firmware:

                                        nodeManager.registerSensor(SENSOR_THERMISTOR,A2);
                                        

                                        The following built-in sensors are available:

                                        • SENSOR_ANALOG_INPUT Generic analog sensor, return a pin's analog value or its percentage
                                        • SENSOR_LDR LDR sensor, return the light level of an attached light resistor in percentage
                                        • SENSOR_THERMISTOR Thermistor sensor, return the temperature based on the attached thermistor
                                        • SENSOR_DIGITAL_INPUT Generic digital sensor, return a pin's digital value
                                        • SENSOR_DIGITAL_OUTPUT Generic digital output sensor, allows setting the digital output of a pin to the requested value
                                        • SENSOR_RELAY Relay sensor, allows activating the relay
                                        • SENSOR_LATCHING_RELAY Latching Relay sensor, allows activating the relay with a pulse
                                        • SENSOR_DHT11 DHT11 sensor, return temperature/humidity based on the attached DHT sensor
                                        • SENSOR_DHT22 DHT22 sensor, return temperature/humidity based on the attached DHT sensor
                                        • SENSOR_SHT21 SHT21 sensor, return temperature/humidity based on the attached SHT21 sensor
                                        • SENSOR_SWITCH Generic switch, wake up the board when a pin changes status
                                        • SENSOR_DOOR Door sensor, wake up the board and report when an attached magnetic sensor has been opened/closed
                                        • SENSOR_MOTION Motion sensor, wake up the board and report when an attached PIR has triggered
                                        • SENSOR_DS18B20 DS18B20 sensor, return the temperature based on the attached sensor

                                        I put the package on Sourceforce so to avoid leaving here piece of code which may become obsolete in a short time.

                                        The project is here: https://sourceforge.net/projects/mynodemanager
                                        I've also tried to document everything the best as I could on https://sourceforge.net/p/mynodemanager/wiki

                                        Thanks

                                        RPunktR Offline
                                        RPunktR Offline
                                        RPunkt
                                        wrote on last edited by
                                        #214

                                        @user2684 Hello all of You,
                                        this topic is quite old, but hopefully someone is reading this.
                                        I could not figure out, what to do if the NRF24 is wired to different pins.
                                        I have a board with nrf24 on board, but this are connected like:
                                        // Enable and select radio type attached
                                        #define MY_RADIO_NRF24
                                        #define MY_RF24_CE_PIN 7
                                        #define MY_RF24_CS_PIN 10
                                        #define MY_SOFT_SPI_SCK_PIN 11
                                        #define MY_SOFT_SPI_MOSI_PIN 12
                                        #define MY_SOFT_SPI_MISO_PIN 13
                                        How can this be inplemented in the nodemanager?

                                        U 1 Reply Last reply
                                        0
                                        • RPunktR RPunkt

                                          @user2684 Hello all of You,
                                          this topic is quite old, but hopefully someone is reading this.
                                          I could not figure out, what to do if the NRF24 is wired to different pins.
                                          I have a board with nrf24 on board, but this are connected like:
                                          // Enable and select radio type attached
                                          #define MY_RADIO_NRF24
                                          #define MY_RF24_CE_PIN 7
                                          #define MY_RF24_CS_PIN 10
                                          #define MY_SOFT_SPI_SCK_PIN 11
                                          #define MY_SOFT_SPI_MOSI_PIN 12
                                          #define MY_SOFT_SPI_MISO_PIN 13
                                          How can this be inplemented in the nodemanager?

                                          U Offline
                                          U Offline
                                          user2684
                                          Contest Winner
                                          wrote on last edited by
                                          #215

                                          @rpunkt just use those directives in your sketch, no differences with NodeManager, those will be seen by the MySensors library and applied. Thanks

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


                                          16

                                          Online

                                          11.7k

                                          Users

                                          11.2k

                                          Topics

                                          113.0k

                                          Posts


                                          Copyright 2019 TBD   |   Forum Guidelines   |   Privacy Policy   |   Terms of Service
                                          • Login

                                          • Don't have an account? Register

                                          • Login or register to search.
                                          • First post
                                            Last post
                                          0
                                          • MySensors
                                          • OpenHardware.io
                                          • Categories
                                          • Recent
                                          • Tags
                                          • Popular