Skip to content

[API v2]: Add support for I2C Output Components #749

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

Merged
merged 26 commits into from
May 21, 2025

Conversation

brentru
Copy link
Member

@brentru brentru commented May 13, 2025

This pull request enhances core I2C functionality by adding support for I2C output devices.

The following I2C Output Devices are supported by this pull request:

  • 7-Segment LED numeric matrix with Adafruit I2C backpack (HT16K33)
  • 14-Segment LED alphanumeric display with Adafruit I2C backpack (HT16K33)
  • Character Displays with "i2c / SPI character LCD backpack - STEMMA QT / Qwiic"

Pull Request Notes

  • Added a new factory I2cFactoryOutput for creating I2C output drivers, including support for devices like LED backpacks and character LCDs (src/components/i2c/controller.cpp).
  • Added Handle_I2cDeviceOutputWrite to process I2C output write messages, supporting operations like writing to LED backpacks or character LCDs (src/components/i2c/controller.cpp).
  • Introduced CreateI2cOutputDrv function to create i2c output drivers from the factory (src/components/i2c/controller.cpp).
  • Updated RemoveDriver(), Handle_I2cDeviceAddOrReplace() to include i2c output drivers.
  • Added derived class for handling writing to I2C output drivers (src/components/i2c/drivers/drvOutputBase.h)
    • Added three i2c output drivers for 7-segment display, quad alphanumeric display and character LCD (src/components/i2c/drivers/drvOutput7Seg.h, src/components/i2c/drivers/drvQuadAlphaNum.h, src/components/i2c/drivers/drvOutCharLcd.h)

Addresses #742

@brentru brentru requested a review from tyeth May 13, 2025 19:43
@brentru brentru marked this pull request as ready for review May 13, 2025 19:43
@brentru
Copy link
Member Author

brentru commented May 13, 2025

@tyeth This pull request is ready for review at your convenience.

@brentru
Copy link
Member Author

brentru commented May 21, 2025

This is very similar to #749 and @tyeth has already reviewed it. Their requested feedback and changes have already been implemented within this PR from the V1 PR.

@brentru brentru merged commit 0059343 into migrate-api-v2 May 21, 2025
38 checks passed
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

Successfully merging this pull request may close these issues.

2 participants