Does anyone have a schematic or detailed specification for the CJMCU-30 SGP30 Gas Sensor (TVOC/eCO2, triangle format) board?
I simply cannot find any for it, not even the information about interface voltage levels (is it 1.8V/3.3V/5V I2C?)
Electrical Engineering Stack Exchange is a question and answer site for electronics and electrical engineering professionals, students, and enthusiasts. It only takes a minute to sign up.
Sign up to join this communityDoes anyone have a schematic or detailed specification for the CJMCU-30 SGP30 Gas Sensor (TVOC/eCO2, triangle format) board?
I simply cannot find any for it, not even the information about interface voltage levels (is it 1.8V/3.3V/5V I2C?)
The regulator is an SC6206B-65K5. It has an input range of 1.85 ... 6 V. The dual MOSFET is a 2N7002DW with the drain-pins towards SDA and SCL. And, of course, the "103" is a quad 10k resistor array. The capacitor next to the regulator decouples the supply voltage (between VCC and GND). The two capacitors at the sensor decouple the supply voltage of the SGP30.
So, the MCU interface voltage can safely be between 1.8 and 5 V.
65K5
top code in the photo. I suspect that the board manufacturer will fit whichever 1.8V LDO is cheapest in the Shenzhen market that day. In your suggested LDO datasheet (or my example above) many specs are given with a 1V i/p to o/p voltage difference. The datasheet above also shows dropout at 60mA from 350mV (typ) to 780mV (max). So stating 1.85V min supply seems a mistake, doesn't it?
\$\endgroup\$
Summary: You can use the Adafruit schematic as a guide for your board, with minor changes.
Does anyone have a schematic or detailed specification for the CJMCU-30 SGP30 Gas Sensor (TVOC/eCO2, triangle format) board?
Unfortunately, as you've found, it's common not to get schematics from generic resellers on Amazon, eBay, AliExpress etc.
When I buy a board for experimentation from one of those places, I always expect to have to reverse-engineer the board and make my own schematics. If schematics and support are important to you, then vendors such as Adafruit, Poulu etc. provide those for their own boards.
The good news is that for your board, I doubt that much reverse-engineering is needed due to its similarity with the AdaFruit board and its user manual, which Nick kindly linked in a comment under your question.
I simply cannot find any for it, not even the information about interface voltage levels (is it 1.8V/3.3V/5V I2C?)
On the Adafruit board, they have a 1.8V regulator in a SOT23-5 package, and two BSS138 MOSFETs for level-shifting. The external I2C bus is using whatever external supply voltage you provide to the board, and there are 10k pull-ups from those signals to that external supply voltage which they call "VIN". Those MOSFETs then do the level-shifting to 1.8V logic for the SGP30 sensor.
Therefore that board has 1 x SOT23-5 regulator, and 2 x SOT23-3 MOSFETs.
On your board, from looking at the photos on the page you linked, the regulator is the SOT23-3 device. I believe the two MOSFETs are in the single SOT23-6 package, and they perform the same level-shifting function as the two BSS138 devices on the Adafruit board.
(Image source: Amazon seller page for Topsame CJMCU-30 SGP30 Multi Pixel Gas Sensor Indoor Air Measurement TVOC/eCO2)
If you follow the PCB tracks (which is difficult to do on the photos), I believe you'll find two pins from the SOT23-6 package going to the external I2C signals, two pins going to the internal I2C signals (i.e. to the sensor) and two pins going to the 1.8V output from the voltage regulator.
Therefore that board has 1 x SOT23-3 regulator, and 1 x SOT23-6 package, containing two MOSFETs.
Functionally, both boards implement the common I2C level-shifting approach shown in the NXP Application Note AN10441: Level shifting techniques in I2C-bus design.
To answer your question about the interface voltage levels: Just like the Adafruit board, on your board the external I2C signals are pulled-up to whatever voltage you supply to your board (which is marked "VCC" on your board) using resistors in the resistor pack marked 103
. You may need to add additional external I2C pull-up resistors, depending on the length, speed and voltage of the external I2C bus.
For various reasons, I would only use a supply voltage (and therefore an external I2C bus voltage) of around 3V or higher, so the 3.3V or 5V that you mentioned should work.