Hi guys, I have been using an ESP32 for prototyping for the last few months, and have never had any problems with the I2c bus until now.
All of a sudden the I2c bus just completely stopped working all together. I have tried a few different modules with different example sketches that I know were previously before on the same board.
It looks like the ESP32 is not pulling the bus low, when a module is connected I have vcc on both the SDA and SCL pins. I know from previous experience when everything is working correctly I could measure about ~1v with fluctuations on my multimter (unfortunately I dont have an ocsilloscope at hand) but now I just have a constant VCC from the pullups on the module.
Has anyone had any experioence with this? Anything I should check out?
(Naturally I have ordered a new ESP32 board, its just super annoying that I cant make any progress this weekend)
Also, how exactly does it work on the ESP32, are the I2c pins connected directly to the processor, are are the lines pulled low with a fet?
Make a small test sketch without Wire.h and make those pins high and low for some time. Using the normal pinMode() and digitalWrite(). Measure the output voltage.
Found the problem, poor connection where the header pins are soldered to the board. I had to scrape the tracks and solder directly to them, as the solder pads are a bit damaged from having pins removed and resoldered countless times.
This board has taken tonns of abuse, I have been prototyping on this board for months, removed pins, soldered wires, re soldered pins, uploaded over 1000 different sketches to it. Im surprised it has lasted this long to be honest.
I am also beginning to have problems with the CH340 USB interface chip not always being recognised by my PC. I think its time for a new one, definitley got my 10 buck worth out of it