Well the genuine Leonardo has arrived and pushing the encoder now navigates the screen entry fields. Rotating the encoder has little effect other than crashing the Arduino. This all with no Buffalo I2C connection.
Next I added the spark fun level converter and this hangs the Arduino even without Buffalo connection.
So I ditched the level converter and connected the I2C directly, and had some activity.
The Buffalo stops outputting sound, but the Arduino changes from 'NoLock' to '44000' so I assume some two way control is happening.
Rotating the encoder now has no effect at all so not much chance of changing the settings.
The encoder is a cheap ebay that is just described as 20 position and has indeed 20 detents, that's all I know.
New encoder on order
RS
Oh yes the Arduino volume automatically ramps following boot up, faster when not connected to the Buffalo, slower when connected, I expect its due to getting the I2C writes made.
I tried some variation in the encoder interrupt.
// attachInterrupt(0, rotEncoder, FALLING); // ISR for rotary encoder on pin 2
// attachInterrupt(0, rotEncoder, RISING); // ISR for rotary encoder on pin 2
// attachInterrupt(0, rotEncoder, HIGH); // ISR for rotary encoder on pin 2
// attachInterrupt(0, rotEncoder, LOW); // ISR for rotary encoder on pin 2
attachInterrupt(0, rotEncoder, CHANGE); // ISR for rotary encoder on pin 2 Original not working
Overall some success but no banana yet
Tony