-
Notifications
You must be signed in to change notification settings - Fork 64
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Cannot change I2C address of the Adafruit Mini I2C STEMMA QT Gamepad #93
Comments
Was able to recreate this. The issue is the hardwired value of Adafruit_Seesaw/Adafruit_seesaw.h Lines 202 to 204 in c3e7b8f
That's the correct location for SAMD based seesaw firmware: However, for ATtiny based seesaw firmware, the location is the end of EEPROM, which is determined dynamically: So this library is reading/writing to the incorrect EEPROM location for any ATtiny based seesaw product. |
Thanks I can change the I2C address now. Adafruit_seesaw ss; |
In the document, one should be able to change the I2C address by calling setI2CAddr().
The default address of Adafruit Mini I2C STEMMA QT Gamepad is 0x50.
However, I have try using setI2CAddr() as well as try calling EEPROMWrite8(SEESAW_EEPROM_I2C_ADDR, newAddress) directly and then call ss.begin(newAddress).
Calling ss.begin(newAddress) would return false.
The function can actually store the new address to EEPROM. I have verified this by calling getI2CAddr(), even after the replug the power cable.
But, the I2C address that can used to ss.begin() must still be the old one, 0x50.
Look like the gamepad does not use or care the I2C address from EEPROM.
more detail on this post https://forums.adafruit.com/viewtopic.php?t=205373
Thanks a lot
Matt
The text was updated successfully, but these errors were encountered: