PCB Schematic Design

Hi, I am trying to design a PCB board with a microcontroller and different sensors, But one of the sensors (TMP100) needs to be placed far away from the MCU PCB board.

So I am trying to design a small PCB board exclusively for that sensor. Since the sensor communicates via I2C with the MCU. How do I go about designing this circuit?

Distance between the MCU and sensor is around 25-30 cm long.

In KiCad, it’s usually one PCB for one project, and it’s the easies to just make another project for this PCB. I would just have the sensor, a connector and some extra stuff such a decoupling capacitor and mounting holes.

In the “big” project, you can either use a connector as a schematic symbol for this sensor, or you keep the sensor symbol, but just assign a connector footprint to it instead.

I like the tmp101 (which has an extra address pin if you don’t need the tmp100’s alert pin). I used a lot on high-altitude balloons – a hobby that used to be cool but has fallen out of favor of late.

If you want to standardize on a connector for I2C, there are two de-facto standards: Grove and QWIIC.

The grove connector (from seeed studio) is a 2mm much like the jst-ph series (but not compatible with the ph and with pin-1 on the opposite side). They have many pre-made cables of different lengths, available directly from seeed, or also at mouser.
https://wiki.seeedstudio.com/Grove_System/
https://www.mouser.com/c/tools-supplies/accessories/seeed-studio-accessories/?q=grove

The qwiic system from sparkfun (now also embraced by adafruit) uses a 1mm jst-sh connector. It is nice and small and reasonably easy to solder:
https://www.sparkfun.com/search/results?term=qwiic

Sadly, neither seeed nor sparkfun interleaved power and ground with the signal lines, which would have been trivial to do when they defined the standard. This is a simple way to keep signals cleaner and minimize crosstalk on any ribbon-cable design.

For long-ish runs of i2c, I would modify grove cables by peeling the cables apart and twisting one signal line with ground and the other with vdd.

I think your biggest challenge will be a cable length of 30cm – that is kinda-long for an open-drain i2c bus going over a cable off-board. Cable capacitance will lengthen rise-times. You can use small-ish pull-ups and I would run at 100kHz and not faster.

Edit: my foggy early-morning brain had me read 300cm :slight_smile: Your 30cm should not be a problem.

If you want to get the best time-response for temperature measurement, use a thin laminate (0.8mm is a decent choice) to minimize thermal mass and route around the chip as seen here:
https://www.pi-shop.ch/grove-i2c-high-accuracy-temperature-sensor

This topic was automatically closed 90 days after the last reply. New replies are no longer allowed.