The MT6701 is an easy to program magnetic rotary position sensor with a high-resolution 12-bit analog, PWM, UVW, ABZ. With SPI and I2C output is 14 bit. They should provide magnetic button ...
A better I2C master library, originally by Wayne Truchsess. See http://dsscircuits.com/index.php/articles/66-arduino-i2c-master-library On most Arduino boards, SDA ...