Welcome! This directory contains step-by-step guides for installing, building, and using the HF-PCAL95555 library – a hardware-agnostic C++ driver for the PCA9555 and PCAL9555A 16-bit I/O expanders.
The driver auto-detects which chip variant is connected and enables features accordingly. Standard PCA9555 features work on both chips; PCAL9555A-only features (pull resistors, drive strength, input latch, interrupt mask/status, output mode) degrade gracefully on a PCA9555.
📚 Documentation Structure
Getting Started
- 🛠️ Installation – How to integrate the driver into your project
- ⚡ Quick Start – Minimal working example to get you running
- 🔌 Hardware Setup – Wiring diagrams and pin connections
Integration
- 🔧 Platform Integration – Implement the CRTP I2C interface for your platform
- ⚙️ Configuration – Configuration options and Kconfig settings
Reference
- 📖 API Reference – Complete API documentation (43 methods)
- 💡 Examples – Detailed example walkthroughs (comprehensive test + LED animation)
Troubleshooting
- 🐛 Troubleshooting – Common issues and solutions
💡 Need Help?
- 🐛 Found a bug? Check the Troubleshooting guide
- ❓ Have questions? Review the API Reference
- 📝 Want to contribute? See the contributing guidelines in the main README