Skip to content
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

Is there a library for the PCA9554 io_expander? (BSP-507) #335

Open
karunt opened this issue May 31, 2024 · 4 comments
Open

Is there a library for the PCA9554 io_expander? (BSP-507) #335

karunt opened this issue May 31, 2024 · 4 comments

Comments

@karunt
Copy link

karunt commented May 31, 2024

Found a library for the TCA9554 io_expander, but is there also one for the PCA9554 expander? Using it on an Adafruit Qualia board with ESP32-S3 to connect a 40 pin LCD display. The SPI interface for the LCD display is connected to the PCA9554 expander. But I'm unable to find a library for the PCA9554 expander. So my question is if I can use the TCA9554 library instead. If yes, any modifications I need to make? From what I understand, and my understanding is basic at best, the only difference between the two io_expanders is the minimum supply voltatge setting (1.65 for the TCA9554 and 2.3 for the PCA9554). If that has to be changed somewhere in the TCA9554 library to be able to use it for the PCA9554 expander, where should that be changed?

@github-actions github-actions bot changed the title Is there a library for the PCA9554 io_expander? Is there a library for the PCA9554 io_expander? (BSP-507) May 31, 2024
@Lzw655
Copy link
Collaborator

Lzw655 commented Jun 1, 2024

Hi @karunt,

I have reviewed the datasheets for both the PCA9554 and TCA9554. They share the same I2C address and command bytes. So, I think you can use the TCA9554 library directly to control the PCA9544. And please notice the hardware decides the actual I2C address.

  • The I2C address and command types of TCA9554:
    image
    image

  • The I2C address and command types of PCA9554:
    image
    image

@karunt
Copy link
Author

karunt commented Jun 1, 2024

@Lzw655 Thanks. What about the difference in supply voltage range between the 2 expanders? Does that have to be modified somewhere in the TCA9554 library so it doesn't create any issues for the PCA9554 expander?

@Lzw655
Copy link
Collaborator

Lzw655 commented Jun 1, 2024

Sorry, I don't know much about hardware, but I believe there is no need to modify the software side, as both chips do not have any voltage-setting registers.

@tore-espressif
Copy link
Collaborator

@karunt Is there anything else? Or can we close this issue?

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

3 participants