Потеря сигнала с модулей i2c при подключении к esp32


короче перед тем как перепаивать штатные резисторы на 10кОм, я решил поменять скорость и оно сразу стало находить все три модуля без накопления как было раньше это как бы меня устраивает, но если подключить только один модуль или два то esp в сериал выводит что нашла сотню датчиков на шине)

и да напряжение ровно 3.3

но эти же модули с arduino прекрасно работают, думаю вряд ли в этом дело

и если мне скорость менять то как нужно записать это в моей основной программе я проверяю их в setup

ads0.setGain(GAIN_TWO);
ads1.setGain(GAIN_TWO);
ads2.setGain(GAIN_TWO);

while (!ads0.begin(0x48) || !ads1.begin(0x4A) || !ads2.begin(0x4B)) {
  Serial.println("F");
  delay(1000);
}

Думаю, что лог. уровни 0и 1 для AVR и ESP всёже разные.

После расчетов получил что сопротивление должно быть в районе 1кОм, перепаял штатные smd резисторы на модулях теперь определяется и один и два и все три модуля без перебоев, питание оставил такое же 3.3 вольта

:scream:
На всех модулях ? Это 330 общее в линии - какие тогда там токи сейчас текут ???

3± мА, esp до 40 норм по даташиту

Ну ладно линии по несколько метров, ну лан куча помех, но неужто перепаять 6 резисторов по два раза проще чем убрать один и убедится в работе(опровергнуть) теории?

без резисторов не работало

Што-то странное. У меня i2c на таких завитых соплях работало с первыми попавшимися резисторами…

Спасибо. Но 40мА это ток выхода вроде, а по входу там не более 12, а у вас выходит 10мА. Как то так.

По моим прикидкам получалось 14-15кОм на каждом из трёх

каких трех?

1 лайк

У вас же три модуля ?

так он вместо всех впаял всего два резистора, по килоому

Невнимательно читаете.

А разве при работе с i2c не рекомендуется убирать подтяжку у всех модулей, кроме одного? ))

Тут сам производитель указывает 1-10к. По протоколу вроде ниже 1.8к не рекомендуют. А уж поклонники метеостанций(и я в том числе) чихать хотели :grinning:

Если работает, почему бы и не чихнуть…