this new Version of the Hub needs testing besides teensy/atmega with ds9490 as master
this branch offers:
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 interupts (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()
this new Version of the Hub needs testing besides teensy/atmega with ds9490 as master
this branch offers: