NodeManager: plugin for a rapid development of battery-powered sensors
-
Hello All,
NodeManager v1.6 is finally available! Download and upgrade instructions can be found as always on https://github.com/mysensors/NodeManager
First of all I want to thank everybody contributing to the project, especially those who have submitted pull requests to the repository.
In v1.6 we have 36 out-of-the-box sensors as well as a good number fixes and enhancements. The most notable are for sure the capability to customize any sensor remotely through a brand new remote API and a more flexible and effective way to configure reporting intervals and sleep cycles:
- Introduced new remote API to allow calling almost ALL NodeManager's and its sensors' functions remotely
- Reporting interval configuration is now indipendent from the sleep cycle
- Reporting interval can be customized per-sensor
- All intervals (measure/battery reports) are now time-based
- Added support for BMP280 temperature and pressure sensor
- Added support for RS485 serial transport
- Added support for TSL2561 light sensor
- Added support for DHT21 temperature/humidity sensor
- Added support for AM2320 temperature/humidity sensor
- Added support for PT100 high temperature sensor
- Added support for MH-Z19 CO2 sensor
- Added support for analog rain and soil moisture sensors
- Added support for generic dimmer sensor (PWM output)
- Added support for power and water meter pulse sensors
- Radio signal level (RSSI) is now reported automatically like the battery level
- SensorRainGauge now supports sleep mode
- SensorSwitch now supports awake mode
- SensorLatchingRealy now handles automatically both on and off commands
- SensorMQ now depends on its own module
- Added safeguard (automatic off) to SensorDigitalOutput
- Any sensor can now access all NodeManager's functions
- DHT sensor now using MySensors' DHT library
For those who have previously forked the repository, please ensure to merge the updated development branch first before submitting any new PR.
Thanks!
-
Hello All,
NodeManager v1.6 is finally available! Download and upgrade instructions can be found as always on https://github.com/mysensors/NodeManager
First of all I want to thank everybody contributing to the project, especially those who have submitted pull requests to the repository.
In v1.6 we have 36 out-of-the-box sensors as well as a good number fixes and enhancements. The most notable are for sure the capability to customize any sensor remotely through a brand new remote API and a more flexible and effective way to configure reporting intervals and sleep cycles:
- Introduced new remote API to allow calling almost ALL NodeManager's and its sensors' functions remotely
- Reporting interval configuration is now indipendent from the sleep cycle
- Reporting interval can be customized per-sensor
- All intervals (measure/battery reports) are now time-based
- Added support for BMP280 temperature and pressure sensor
- Added support for RS485 serial transport
- Added support for TSL2561 light sensor
- Added support for DHT21 temperature/humidity sensor
- Added support for AM2320 temperature/humidity sensor
- Added support for PT100 high temperature sensor
- Added support for MH-Z19 CO2 sensor
- Added support for analog rain and soil moisture sensors
- Added support for generic dimmer sensor (PWM output)
- Added support for power and water meter pulse sensors
- Radio signal level (RSSI) is now reported automatically like the battery level
- SensorRainGauge now supports sleep mode
- SensorSwitch now supports awake mode
- SensorLatchingRealy now handles automatically both on and off commands
- SensorMQ now depends on its own module
- Added safeguard (automatic off) to SensorDigitalOutput
- Any sensor can now access all NodeManager's functions
- DHT sensor now using MySensors' DHT library
For those who have previously forked the repository, please ensure to merge the updated development branch first before submitting any new PR.
Thanks!
Hi,
thanks again for your great work!
As I said, I will try to include my Chirp module into 1.7 via a github branch/fork. You wrote in your explanation of "contributing to the code", that it is not allowed, to change config.h. But how should I include the lines for the chirp sensor?
And in wich way can the documentation be modified? (chirp sensor paramaters)Best regards
Betonmoewe
-
Hi,
thanks again for your great work!
As I said, I will try to include my Chirp module into 1.7 via a github branch/fork. You wrote in your explanation of "contributing to the code", that it is not allowed, to change config.h. But how should I include the lines for the chirp sensor?
And in wich way can the documentation be modified? (chirp sensor paramaters)Best regards
Betonmoewe
@betonmoewe if I wrote that config.h cannot be changed, I wrote something wrong :-) You can change whatever of course, just keep changes to config.h and the main sketch to the minimum since those can only be upgraded manually and not just by replacing the files. To add a new sensor, have a look at one of the existing sensors. Documentation can be updated as well by changing the README file. Should you have any doubt or issue feel free to open a new thread on https://forum.mysensors.org/category/43/nodemanager. Thanks!
-
@vikasjee realistically it will take a while unfortunately :( I'm now spending most of my little spare time on https://github.com/mysensors/NodeManager/pull/229 which is kind of difficult to fix. Only after I will go through the (long) list of fixes/requests queued for v1.7 :)
-
@vikasjee FYI the blocking issue which was slowing down v1.7 development has been solved now (https://forum.mysensors.org/topic/6534/nodemanager/133). Still a long way to get there but at least a bit closer now :)
Thanks -
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!
@getz99 I've added this feature request for this: https://github.com/mysensors/NodeManager/issues/253
Thanks!
-
@getz99 I've added this feature request for this: https://github.com/mysensors/NodeManager/issues/253
Thanks!
-
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!
-
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!
@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
-
@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.
-
@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.
@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
-
@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-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
-
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 -
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@mar-conte if using NodeManager, this is still not possible since mcp23017 is not supported by NodeManager yet. Thanks!
-
@mar-conte if using NodeManager, this is still not possible since mcp23017 is not supported by NodeManager yet. Thanks!
-
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!