I've had success with RRDTool in the past using these instructions based on Perl, however the collection method depends on the use of DigiTemp and unfortunately DigiTemp relies on a serial input device vs. direct GPIO access.
I tried the Python script supplied by Adafruit, and it worked well, however I'm not much of a programmer and would still need to learn how to output the results to RRD.
I then stumbled upon luci-app-statistics and found the collectd-mod-onewire plugin. It's an experimental plugin and marked broken in the OpenWrt makefile. I removed the @broken tag and it appeared to compile without issue for the x86_64 target. I tested this in Virtualbox, adding "--fake=10" to the owfs command, however could not get a proper plugin wrapper automatically written to /etc/collectd.conf from the luci-app-statistics UCI file.
I really like the idea of getting this working in luci-app-statistics if possible, but am definitely open to suggestions. Thanks!
I am late here, but very interested in how you compiled the plugin.
My device is a rpi3b+ and i would like to hook up 8x DS18S20 sensors and create a graph of them.
Can you tell me if it is possible to install that package on a raspberry somehow?
I doubt it is possible to build it on such a device...
Sorry for the late reply. It's been some time since I wrote this and I haven't kept up the config.
If you look at the Makefile that was available back then, you'll see where I edited out the @BROKEN flag. $(eval $(call BuildPlugin,onewire,onewire sensor input,onewire,+PACKAGE_collectd-mod-onewire:libow-capi @BROKEN))
My guess is that that line as well as the following lines will need to be added back into the Makefile for compilation:
Thanks a lot for replying.
Did you ever make it work?
I read the doc of collectd-mod-onewire and it seams to me as it can not attach local gpio, it might be designed to handle onewire adapters over serial or usb…
I am thinking of giving collectd-mod-exec a try and execute my python script reading exported gpio files directly like described in this german report…
But thats not really a nice solution in my eyes.
Thanks for jogging my memory. I'm pretty certain I ended up using collectd-mod-exec as well.
If I had to guess at the code I used in conjunction, it was probably a slight modification of the Adafruit Python code linked above to only output readings in Celsius.