Skip to content

ESP32- S2: Investigate unexpected I2C / wifi problems #4401

Closed
@dhalbert

Description

@dhalbert

It is not clear why the fix in pr #4387 prevents i2c_driver_delete() from interfering with wifi. Rather than continue to discuss that in a closed PR, I'm opening a new issue about this for further discussion.


@dhalbert I think we can get the idf patch in v4.3 since its a pre-release at the moment.

I agree, it would be good to PR upstream, but I am still somewhat bothered by the whole thing because I don't see why the IDF fix works. I did some more experiments yesterday and re-read a bunch of our code and their code. I came to no new conclusion. I haven't gotten feedback from igrr about it. Also I inquired with FreeRTOS: https://forums.freertos.org/t/vsemaphoredelete-immediately-after-xsemaphoretake/11956.

Ideally I would like to reproduce this in a simple ESP-IDF program, because they might ask for a test case, but I don't have any experience writing one. I could submit a PR and see what happens, but the fix seems a bit superstitious. There are other examples of Take followed by Delete in the ESP-IDF, mostly in test code. There are also a couple of examples of Take-Give-Delete. Do you have an intuition about this?

Originally posted by @dhalbert in #4387 (comment)

Metadata

Metadata

Assignees

No one assigned

    Labels

    espressifapplies to multiple Espressif chips

    Type

    No type

    Projects

    No projects

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions