The BAE0910 is a Multifunction 1-wire slave device that has many appealing features:
Out of the box it has:
Non-volatile Memory (1K)
PWM variable voltage output (4 x 16bit)
ADC (8 bit 0-5V)
Counter (32 bit)
Alarm thresholds for most of the parameters
Even more interesting, the device can be flashed programmed (via 1-wire) to change it's properties.
Pascal Baerten offers the tools and documentation to "roll your own" multifunction device.
The BAE910 is available for purchase from it's designer.