Skip to content

ADC Causes I2C Bus Contention #213

@mpkarpov-ui

Description

@mpkarpov-ui

MIDAS (once in a while) reports an I2C error seemingly caused by I2C bus contention between the ADC and the GPS chips. The ADC chip that we use has the capability to perform an automatic sequence of reading channels sequentially, and then perform a single batch read to get all ADC values.

This would reduce the amount of transactions on the I2C bus, likely eliminating the issue.

> [251628][E][Wire.cpp:491] requestFrom(): Unfinished Repeated Start transaction! Expected address do not match! 20 != 66
[382844][E][Wire.cpp:491] requestFrom(): Unfinished Repeated Start transaction! Expected address do not match! 20 != 66
[398117][E][Wire.cpp:491] requestFrom(): Unfinished Repeated Start transaction! Expected address do not match! 20 != 66
[502126][E][Wire.cpp:491] requestFrom(): Unfinished Repeated Start transaction! Expected address do not match! 20 != 66
[1380578][E][Wire.cpp:491] requestFrom(): Unfinished Repeated Start transaction! Expected address do not match! 20 != 66

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions