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 73.0k 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.
  • U Offline
    U Offline
    user2684
    Contest Winner
    wrote on last edited by
    #166

    Version 1.5 of NodeManager is finally available here!
    https://github.com/mysensors/NodeManager

    I've done my best to implement most of the requests received so far since unfortunately I'm expecting starting from June very little spare time to spend here so I tried to hurry up a bit :-) The result is a pretty long change log and a total of 26 between ad-hoc and generic out-of-the-box sensors supported up to this release:

    • Added support for ACS712 current sensor
    • Added support for HC-SR04 distance sensor
    • Added support for BMP085/BMP180 temperature and pressure sensor
    • Added support for Sonoff smart switch
    • Added support for Rain Gauge sensor
    • Added support for MCP9808 temperature sensor
    • Added forecast output to all Bosch sensors
    • Added I2C address auto-discovery for all Bosch sensors
    • Added support for running as a gateway
    • Added option to retrieve the latest value of a sensor from outside NodeManager
    • Remote reboot now does not need a reboot pin configured
    • A heartbeat is now sent also when waking up from a wait cycle
    • When waking up for an interrupt, only the code of the sensor expecting that interrupt is executed
    • Added capability to retrieve the time from the controller
    • Optimized battery life for DS18B20 sensors
    • SLEEP_MANAGER has been deprecated (now always enabled) and setMode() replaces setSleepMode()
    • New mode ALWAYS_ON to let the node staying awake and executing each sensors' loop
    • ESP8266WiFi.h has to be included in the main sketch if MY_GATEWAY_ESP8266 is defined
    • Added receiveTime() wrapper in the main sketch
    • Fixed the logic for output sensors
    • Added common gateway settings in config.h

    I've added upgrade instructions as well in the documentation. Generally speaking to upgrade it is safe to just replace the existing NodeManager.h and NodeManager.cpp files but with this release I had to do some minor changes to the main sketch as well, as documented in the release notes.

    Thanks everybody for all the advice and for reporting any issue always in a constructive way :-)

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

      Hi, only for those having problems with a too high utilization of the dynamic memory preventing NodeManager to run smoothly (e.g. generating random data / outputting garbage characters / rebooting, etc), a quick fix is to decrease from 255 to a small number like 5 or 10 the size of the Sensor* _sensors array. This saves more than 20% on a pro mini which is huge. Of course you also need to change every cycle in NodeManager.cpp which is using that 255.

      This of course will be also fixed in the next release. Very silly mistake I know to initialize such a big array but I couldn't image 255 pointers were consuming so much :-)

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

        Hi, i wanted to know in which section of the sketch I turn on and turn off a led when the node controls the battery because at night the led me starts the pir; Now I've put the digitalwrite after nodemanger.loop

        M.C.

        U gohanG 2 Replies Last reply
        0
        • mar.conteM mar.conte

          Hi, i wanted to know in which section of the sketch I turn on and turn off a led when the node controls the battery because at night the led me starts the pir; Now I've put the digitalwrite after nodemanger.loop

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

          @mar.conte NodeManager does not control any led so I think you are free to place your code where you think is most appropriate for your needs. Thanks

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

            Hi, i wanted to know in which section of the sketch I turn on and turn off a led when the node controls the battery because at night the led me starts the pir; Now I've put the digitalwrite after nodemanger.loop

            gohanG Offline
            gohanG Offline
            gohan
            Mod
            wrote on last edited by
            #170

            @mar.conte put a capacitor on the PIR vcc/gnd and increase the size until it is stable.

            mar.conteM 1 Reply Last reply
            0
            • gohanG gohan

              @mar.conte put a capacitor on the PIR vcc/gnd and increase the size until it is stable.

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

              @gohan
              Good idea Tanks

              M.C.

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

                Hi, I've added a "How to contribute" section in the documentation of the dev release in case anybody is interested to contribute to this project: https://github.com/mysensors/NodeManager/tree/development#contributing.

                I'm not a git expert so I hope those instructions to have some sense :)

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

                  Pretty big enhancement in the development branch of NodeManager if anybody is interested. I spent quite a good amount of time working on the core code to introduce mainly two features opening up the door to a good list of enhancements.

                  The first one is a sort of countdown utility. Can be based on the number of sleeping cycles or minutes. It detects automatically a sleeping node and instead of using millis sum up the sleep interval and reports when the time is over. This approach has been used to:

                  • Allow different sensors reporting at different timeframes (e.g. by configuring a specific sensor to report every e.g. 5 minutes or 10 sleeping cycles instead of at the end of each cycle)
                  • For output sensors optionally use the input value as an elapsed time (e.g. the output will be turned on and the input value will be used as a timer to turn it off automatically). For example by sending 3 to a relay, it will be turned on and after 3 minutes turned off automatically. Useful if you already know for how long the output should stay on.
                  • For output sensors optionally set a safeguard (e.g. after a relay is set to on, turn it off automatically after 1 hour). Useful if e.g. you are controlling a boiler and you are afraid something could prevent the command to turn it off to reach the board.
                  • Add timeframe option for reporting battery level (e.g. instead of reporting every 10 sleeping cycles, report every 1 hour regardless of how long is the sleeping cycles).

                  The other big change is a an complete remote API. With the current version you could send to NodeManager's service child id a limited list of commands to change the behavior of the board remotely, mainly to alter the duration of the sleep cycle. In the development release instead, almost every function of both NodeManager AND of every sensor can be invoked remotely. This is done by sending a V_CUSTOM message with a function_id and optional value to pass along to the service child id or each sensor's child id. More details here: https://github.com/mysensors/NodeManager/tree/development#communicate-with-nodemanager-and-its-sensors

                  This development branch is available here: https://github.com/mysensors/NodeManager/tree/development

                  1 Reply Last reply
                  3
                  • gohanG Offline
                    gohanG Offline
                    gohan
                    Mod
                    wrote on last edited by
                    #174

                    Do you think it may be possible to add the function to use a digital pin to power a PIR sensor to turn it on only when setting it armed? (to save a little power)

                    U 1 Reply Last reply
                    0
                    • rakeshpaiR Offline
                      rakeshpaiR Offline
                      rakeshpai
                      wrote on last edited by
                      #175

                      Why does the power manager use two pins to power the sensor? Could we just use one pin for Vcc, and assume that the GND is permanently connected?

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

                        But i'm trying to test a Pir of panasonic EKMB1201113 papirs series cost a bit but they have low power consumption
                        1 to 100 microampers in sleep mode, just connect a 100 kohm resistance in pulldown and it is very precise up to 12 meters

                        link text

                        M.C.

                        1 Reply Last reply
                        0
                        • gohanG gohan

                          Do you think it may be possible to add the function to use a digital pin to power a PIR sensor to turn it on only when setting it armed? (to save a little power)

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

                          @gohan interesting use case. I personally prefer to have the arm/disarm logic on the controller but I can understand there are also different situations. I've opened https://github.com/mysensors/NodeManager/issues/138 for this. Thanks for the suggestion!

                          1 Reply Last reply
                          0
                          • rakeshpaiR rakeshpai

                            Why does the power manager use two pins to power the sensor? Could we just use one pin for Vcc, and assume that the GND is permanently connected?

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

                            @rakeshpai said in NodeManager: plugin for a rapid development of battery-powered sensors:

                            Why does the power manager use two pins to power the sensor? Could we just use one pin for Vcc, and assume that the GND is permanently connected?

                            I usually use the power pins when either I need to save power or I do not have vcc/gnd pins available on the arduino board. But yes, you're right, there are other scenarios to consider. I've opened https://github.com/mysensors/NodeManager/issues/139 for this. Thanks

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

                              saving pins is always good :D

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

                                Hello how can i enter the commands type 254; 200; 2; 0; 48; BATTERY in a lua script of domoticz?

                                M.C.

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

                                  Hello how can i enter the commands type 254; 200; 2; 0; 48; BATTERY in a lua script of domoticz?

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

                                  @mar.conte said in NodeManager: plugin for a rapid development of battery-powered sensors:

                                  Hello how can i enter the commands type 254; 200; 2; 0; 48; BATTERY in a lua script of domoticz?

                                  Sorry, I don't use domoticz so I cannot help with that. I hope somebody else here will have an answer for you :-)

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

                                    Guys, @hek has been so kind to offer a dedicated section within the forum for NodeManager so feel free to open new topics directly under https://forum.mysensors.org/category/43/nodemanager. I hope this can facilitate new users to better find the answers they are looking for and you guys to follow the discussions in a smoother way without the need to jump here and there along the same long thread.

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

                                      Hello All,
                                      I've just released on GitHub (https://github.com/mysensors/NodeManager) a hotfix (v1.5.1) for NodeManager in order to include the memory optimization improvements already part of the development version.
                                      This is to allow saving up to 20% of memory on a pro mini and prevent the board to crash or become unpredictable when approaching the memory limit. No new features or enhancements have been added to this hotfix.
                                      If instead interested in testing out the development version or contribute please refer to https://github.com/mysensors/NodeManager/tree/development and https://github.com/mysensors/NodeManager/milestone/7.
                                      Thanks

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

                                        Hello, NodeManager's version 1.6 is almost ready. Plenty of new things and fixes are about to be available but I'd need some diverse testing before officially releasing it.

                                        The first step would be to ensure that what was working with the current version is still working with this new release :)

                                        All the new things are instead detailed here https://github.com/mysensors/NodeManager/issues?utf8=✓&q=milestone%3Av1.6 is%3Aclosed label%3Afixed and in the associated PRs.

                                        The code is available at https://github.com/mysensors/NodeManager/tree/development.

                                        Whoever is willing to give it a try, please report any issue directly on github whenever there is already an issue open or on https://forum.mysensors.org/topic/7266/nodemanager-v1-6-dev-comments-and-issues otherwise.

                                        Ideally I'm targeting mid August for releasing a stable v1.6.

                                        Many thanks!

                                        1 Reply Last reply
                                        2
                                        • G Offline
                                          G Offline
                                          Getz99
                                          wrote on last edited by
                                          #185

                                          @user2684
                                          Hello,
                                          I'm using NM for all my projects and I really like it!
                                          Will NodeManager support APDS-9960 RGB and Gesture Sensor in the future?

                                          Thanks

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


                                          17

                                          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