I²C Slave Firmware Errata
This document lists known issues, limitations, and recommended workarounds for the WiseEye2 (WE2) I²C slave firmware.
Table of Contents
Overview
The WiseEye2 (WE2) I²C firmware enables host communication for configuration, data access, and control. This errata summarizes current known issues, failure modes, and recovery procedures to help users diagnose and mitigate problems during operation.
Known Issues
| Issue ID | Description | Impact | Workaround | Status |
|---|---|---|---|---|
| I2C-001 | CRC Error / Unresponsive State | Device becomes unresponsive to I²C and sometimes SPI | Hard reset or power cycle | Under investigation |
| I2C-002 | Bus lockup (SCL held low) | Host cannot communicate with WE2 | Hard reset or power cycle | Under investigation |
Fail Modes
I2C-001. CRC Error / Unresponsive State
Frequent access to the I²C slave may cause the WiseEye2 to become unresponsive to I²C commands, and sometimes to SPI as well.
Symptoms: - Repeated CRC errors from invalid packet data received from WE2. - WE2 may still acknowledge its slave address and other bytes, but will send packets filled with 0xFF, resulting in CRC errors. - If this occurs more than three times in succession, the device is likely in an unresponsive state and requires a hard reset or power cycle.
Recovery:
- The device must be rebooted via a hard reset or power cycle.
- For the Rev2 EVK, power cycle the device using GPIO3 of the FT4222. See power_cycle.py for an example script.
I2C-002. Bus Lockup
Frequent access to the I²C slave may result in bus lockup, where WE2 holds SCL low indefinitely. This prevents the I²C host from communicating with the device. In this state, the SPI slave will likely be unresponsive as well.
Note: In normal operation, WE2 may briefly pull SCL low to perform clock stretching, allowing the slave to delay the master while it completes internal processing. The line is released once the device is ready to continue communication. Prolonged SCL low (beyond typical clock stretching duration) indicates a lockup condition.
Symptoms: - WE2 does not release the bus after repeated attempts. - Device is likely in an unrecoverable state and requires a hard reset or power cycle.
Recovery:
- The device must be rebooted via a hard reset or power cycle.
- For the Rev2 EVK, power cycle the device using GPIO3 of the FT4222. See power_cycle.py for an example script.
We are working closely with the Himax team to resolve these issues as soon as possible.
Revision History
| Version | Date | Author | Changes |
|---|---|---|---|
| 0.3.0 | 2025-08-20 | Matthew Thompson | Added fail mode details |