version 2.0.0
big pile of changes:
- overdrive for onewire, even for atmega328 @ 16 Mhz (arduino uno)
- rework / clean handling of timing-constants with user defined literals.
- extend const-correctness to all onewire-slaves and unify naming of functions across similar devices
- include tests into each device-example and add a lot of get()/set() for internal device-states
- full support for ds2423, ds2450 and ds2503/5/6
- fix and enhance ds2431, ds2433, ds2502, ds2890, probably every slave got a rework
- new timing-method with nanosecond-resolution and without guessing, micros(), delay() or similar arduino-fn
- rework send() and recv(), much more efficient -> less time without interrupts (no missing time with millis())! AND code is more compact (ds2433.cpp shrinks from 176 to 90 LOC)
- offline calibration by watching the bus (examples/debug/calibrate_by_bus_timing)
- you need to calibrate your architecture if not already done
- it helps if you have a logic analyzer
- branch for online calibration was abandoned because it took to much resources (DS18B20-Sketch compiled to 8434 & 482 bytes instead of 7026 & 426 bytes now)
- debug-pin shows state by issuing high-states - see explanation in "features"
- teensy3.2 tested: cleaned warnings, fixed port access, cleaned examples
- sensors with emulated memory use memset and static_asserts to secure implementation
- a lot of cleanup
- no return value for hub.search() or item.duty() needed anymore
- returns 1 if error occured in the following functions: recv(buf[]), send(), awaitTimeslot(), sendBit(), checkReset(), showPrescence(), recvAndProzessCmd()