NodeManager v1.7 now available!
It took a few months but finally NodeManager v1.7 is here!
With this release the entire NodeManager's architecture has been reviewed, mainly to improved the overall user experience and optimize the code so to use the memory in a more efficient manner. If coming from the previous release, you will find NodeManager way easier to use and more powerful now.
Last but nost least the number of built-in sensors has no reached 52 (yes, fifty-two, including support for LCD displays), which can be enabled by just uncommeting a single line. For these sensors NodeManager will take care of importing the required library, presenting them to the gateway/controller, executing periodically the main function of the sensor, all without an additional line of code.
Collaboration for this release has been also great with 15 PRs from other users of the community who I want to really thank.
NodeManager v1.7 can be downloaded directly from Github https://github.com/mysensors/NodeManager.
Please read the README file carefully before starting so to get a sense on how to use it or what has changed from the previous releases.
The full release notes for this version are listed below:
- Reviewed the entire NodeManager's architecture with children now automatically created from within each sensor
- Optimized the code so to use the memory in a more efficient manner
- Improved the overall user experience, also with sensors' patterns in the main sketch
- Sensors can now be enabled by uncommenting the corresponding USE_* define and requiring a single line to be created and initialized
- NodeManager's advanced features can be enabled/disabled by setting the corresponding FEATURE_* define
- Simplified the configuration of each sensor, now without the need of getting the sensor back through a nasty casting
- Merged config.h into the main sketch so to centralize the configuration in a single place
- Added time-aware capability, with or without an attached RTC
- Intra-sensor communication now possible with the possibility for the user to nicely hook into the sensor's code
- Battery and signal reports are now available through the regular sensors SensorBattery and SensorSignal
- Remote API interaction for all the sensors has been moved into the regular sensor SensorConfiguration
- Fixed bug preventing negative temperatures to be reported for all the sensors
- Added ability for each sensor to report only when value is above or below a configured threshold
- Addded support for SD card reader
- Added support for RFM95 radio
- Added supoport for MySensors Sensebender Gateway and Sensebender Micro boards
- Added support for generic LCD devices through an abstract Display class
- SensorDimmer now supports both V_STATUS and V_PERCENTAGE
- SensorPulseMeter now supports running on batteries
- SensorDs18B20 optimized and now supporting V_ID
- SensorSwitch (now renamed into SensorInterrupt) now catches interrupt in a more reliable way
- SensorLatchingRelay now specialized and renamed into SensorLatchingRelay1Pin and SensorLatchingRelay2Pins
- Added support for HD44780 i2c LCD
- Added support for MG996R Servo sensor
- Added support for VL53L0X laser time-of-flight distance sensor
- Added support for SensorPlantowerPMS particulate matter sensors
- Added support for SHT31 temperature and humidity sensor
- Added support for SI7021 temperature and humidity sensor
- Added support for for Neopixel LED
- Added support for Chirp Sensor soil moisture sensor
- Added support for SparkFun RGB and Gesture Sensor
- Added support for TTP226/TTP229 Touch control sensor
Getz99 last edited by
As you know I´m a fan of NodeManager!
Hi, I've downloaded the latest version of NodeManager, V1.7. Works really well based on what I've experienced so far. I especially appreciate the option of presenting results from nodes locally via LCD displays. I have tried making a simple node with a temperature DS18B20 and a display SSD1306, and it works well, but I would like to change the presentation of the child to another format/name that I choose myself, Is this possible? For me, it looks like the child is presented as a MAC address.!
@getz99 thanks for the feedback! By default each sensor/child prints on the screen its description and for a DS18B20 is its address, this is why you see that strange string Of course you can change it in before() with:
ds18b20.children.get(1)->setDescription("Whatever you like");
Getz99 last edited by
@user2684 Thanks for your explanation, works great now!