library with more comfortable functions than just basic functionality f. onewire


I'm already using the onewire-library by Jim Studt that can be installed through the library manager.
Now this library does all the bitbanging and delivers basic functions. Community thank you very much for that.

What I'm looking for is a library that delivers functions for DS18B20-temperature sensors like

Scan Onewire-Bus for DS18S20-slaves and store ROM-IDs in an easy to handle format.
Easy to handle means store the whole 8byte ROM-ID in a single variable.
Remember 8byte (not 4 byte) So how do you handle an ID 8bytes long easily in arduino-C?

read out temperature from sensor with ROM-ID xy

I'm wondering why everybody is re-inventing the wheel new on the level of functionality as described above. There is nothing special about a command like "read out Temperature-value from Device with ROM-ID xy" but it would encapsulate ALL things that must be done to make a onewire-bus work but encapsulate anything that is of no interest regardless of what you are doing with the temperatures. Except very special cases where a special coding-solution is requiered.

So far I have found the Arduino-Temperature-Control-Library from Tim Burton on GitHub.

Jim Thank you so much for coding and publishing your onewire-library but without documentation what functions are provided I find it easier to create my own than to read through your examples.

I'm very aware of that all contributors here do work without earning money for it. So I thank you all for all your effort. But somehow some more effort into documentation would have the effect of less effort for the community as a whole.

So if somebody has coded a onewire-library AND added documentation I would appreciate it very much if she / he posts a link

best regards


Yes, that Miles Burton is the correct library which does everything you asked for.

What problems are you having? Show your code so we can help.

Remember 8byte (not 4 byte) So how do you handle an ID 8bytes long easily in arduino-C?

"uint64_t", a.k.a. "unsigned long long int"