NodeManager: plugin for a rapid development of battery-powered sensors
-
@gohan done but I don't have such a sensor to test the code so if you could give it a try I'd really appreciate it. Available in v1.5-dev4 you can get from here: https://github.com/mysensors/NodeManager/tree/38fd51c99e47b6ec90f4885ff1cb0cfe33857ab4.
Instructions on https://github.com/mysensors/NodeManager/issues/87
Thanks! -
Can you please consider support for MCP23017 IO-Expander And TTP226/TTP229 Touch control sensor modules in I2C mode?
I can help test them both for sure... 😈 😇
Will it be a good idea to have external file based extension to Node Manager?
I will like to extend the configuration child and probably add node authentication through another security-child. Self Healing Network capabilities are next on my list.
-
@gohan done but I don't have such a sensor to test the code so if you could give it a try I'd really appreciate it. Available in v1.5-dev4 you can get from here: https://github.com/mysensors/NodeManager/tree/38fd51c99e47b6ec90f4885ff1cb0cfe33857ab4.
Instructions on https://github.com/mysensors/NodeManager/issues/87
Thanks!@user2684 Sorry for noob question but how do I get data from the sensors?
I have registered sensors like this to test them outnodeManager.setSleep(SLEEP, 10, MINUTES); nodeManager.registerSensor(SENSOR_MOTION, 3); nodeManager.registerSensor(SENSOR_BME280); nodeManager.registerSensor(SENSOR_MCP9808); -
Can you please consider support for MCP23017 IO-Expander And TTP226/TTP229 Touch control sensor modules in I2C mode?
@vikasjee tracking both with https://github.com/mysensors/NodeManager/issues/90 and https://github.com/mysensors/NodeManager/issues/92. Mean while I will order the samples and wait for their delivery, if you have any link with demo code to share, please feel free to do so on the two github issues.
Regarding the external file based extension, this is definitively a good idea. I did spend some time at the beginning trying to identify the best way to package this but my weak programming skills prevented me to identify an optimal solution I'm sure. I did not go for multiple files mainly because I thought during upgrade this would have required overwriting multiple files in multiple projects so I gave up. As a workaround, I also tried to put all NodeManager's files in a dedicated folder or create an arduino library but it didn't work (but don't remember why).
So the only way now to expand the existing code in a clean way is to write in your main sketch an inline class deriving from the Sensor class or the other NodeManager's classes and use registerSensor() providing an instance of this class. But I am of course open to any other better way to achieve the same :-)
-
@user2684 Sorry for noob question but how do I get data from the sensors?
I have registered sensors like this to test them outnodeManager.setSleep(SLEEP, 10, MINUTES); nodeManager.registerSensor(SENSOR_MOTION, 3); nodeManager.registerSensor(SENSOR_BME280); nodeManager.registerSensor(SENSOR_MCP9808);@gohan since you have set a sleep interval of 10 minutes, what you should see in the logs (and in your gateway) is NodeManager starting up, presenting all the child nodes (one of more for each sensor), running SENSOR_BME280's and SENSOR_MCP9808's onLoop() and a bunch of messages set out with the measures and finally going to sleep for 10 minutes and waking up and sending out a V_TRIPPED message if SENSOR_MOTION triggers.
Generally speaking you can get the measures in the serial output, in the controller or by sending the node a REQ message to each of the child ids. Do you see something different?
Thanks -
@gohan never thought about it but it is a good idea to add some "output" capabilities. Tracking this with https://github.com/mysensors/NodeManager/issues/95 but would require some time since it has a few dependencies. Thanks!
-
I've added a rain gauge out-out-the-box sensor for the latest dev release called 1.5-dev5 (https://github.com/mysensors/NodeManager/tree/126812a9d01311640416222be8225fdcca1e7266). This is intended to be the last enhancement for the upcoming v1.5 version but of course I'll wait for some additional days to collect (and fix) any issue all the new sensors might have.
The implementation of the rain gauge sensor has to be different than the one from the build section for a good number of reasons and limitations. All the details here: https://github.com/mysensors/NodeManager/issues/90.
-
@gohan
User2694 say:"Setup MySensorsSince NodeManager has to communicate with the MySensors gateway on your behalf, it has to know how to do it. Place on top of the config.h file all the MySensors typical directives you are used to set on top of your sketch so both your sketch AND NodeManager will be able to share the same configuration. For example:"
link text -
@mar.conte said in NodeManager: plugin for a rapid development of battery-powered sensors:
Should the gateway have the right nodemamager sketch?
Just to confirm what already discussed: a node/sensor with NodeManager running does not require a gateway with NodeManager on it. Generally speaking, there are two situations in which you may want use NodeManager on a gateway as well (available starting from v1.5):
- It as to run on a Sonoff device which requires to be configured as a gateway
- The gateway has sensors attached to it so you may want to use NodeManager's capabilities to configure your sensors in an easy way
There is also a third situation: you are just lazy and have NodeManager already open in the arduino IDE so you just configure the gateway's settings in config.h and upload the sketch :P