dotnet / dotnet/iot

IoT I2C, Ft4232H Write-Read transaction with only new start condition, no restart condition

Open
#2,352 9 comments 0 reactions 2 assignees Claimed by @pgrawehr View on GitHub
bug Priority:2 up-for-grabs
Dominant language
C#
Stars
2.4k
Forks
630
Avg merge
11d 3h
Merged PRs (30d)
2

Description

In using the IoT libraries for I2C communication via FT4232H device to I2C slave devices, we have found that an additional I2C Write-Read command would help access more devices on the bus.

When using the TI USB to GPIO dongle, we are able to successfully access I2C devices with a Write-Read sequence. (Allows multi byte read) There are only repeated start conditions, no stop conditions until the end of the I2C transaction.

![Good_I2C_Write-Read_transaction](https://github.com/user-attachments/assets/c2d306d3-51c9-4a9a-b312-f2ebf81b00bd)

However, when we use the IoT Ft232H (FT4232h support included) we find the only command close to this Write-Read function issues a stop command and ends the I2C transaction. (During "restart" portion) This does not allow for proper I2C communication with this device, and others.

![IOT_FT4232H_Write-Read_Fail](https://github.com/user-attachments/assets/145d9b7e-c4f4-4b82-8313-1bc0a9233e96)

Please review and consider a new function or possibly a work around.

Cheers,

Steve

Contributor guide

No contributing guide indexed for this repository

Assessment

This issue has not been assessed yet.

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.