Hi, i am building an ESP32-s3 smartwatch that I hope to have GPS, heart rate, accelerometer and gc9a01 display.
The ATGM336h is quite a new GPS IC, so I am a little unsure if I got it right.
I am most unsure on my gc9a01(just the raw display) wiring, my esp32-s3 setup, and the i2c compatibility of the max30102 with my esp32 because I am confused on if its 1.8v i2c and whether I can pull it up to 3.3 and still use it.
For all components I have tried my best to follow the reference designs from existing breakouts, but a lot where pretty weak (excepting the esp32)
If the max30102 is 1.8v i2c logic, would one option be to switch to using max30101? it has identical footprint to the max30102 and I believe it is 3.3v i2c logic compatible.
Yes, this is exactly what had me really confused, but the fact that it explicitly states the1.26v max voltage of the i2c pins makes me think they are excluded from the “all other pins can take 6v”
The max30101 is a bit clearer with its i2c pin max voltages.
1.26V (0.7*VDD) is not the maximum voltage for the I2C pins.
This term is only the Input High Voltage or VIH
Any input voltage greater than VIH is guaranteed to be recognized as a logic '1', and any input voltage less than VIL is guaranteed to be recognized as a logic '0'.
What is the reason for not using a simple voltage-level translator?
Or as srnet said:
use the actual components and test the connections on a breadboard type setup.
Try using the MAX30102 by connecting the I2C pins to 3.3V to clear up any doubts.
In case you use a voltage translator, the design will be something like that: Schematic.pdf (77,4 KB)
Ah thanks, that makes sense to me now. The reason I am not using a logic converter is simply because the space on my smartwatch PCB is incredibly tight, so I have try and avoid it. I only have a small amount of experience with SMD, so I am avoiding using small packages.
I’ve built a similar ESP32-S3 project, and I’d say watch the I2C voltage levels closely—MAX30102 typically expects 1.8V, so using level shifters is the safest route instead of pulling up to 3.3V. For the GC9A01, double-check the SPI pin assignments and make sure you’re using proper voltage logic—some raw displays don’t tolerate 3.3V well without a buffer.