1
\$\begingroup\$

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?)

\$\endgroup\$
4

2 Answers 2

1
\$\begingroup\$

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.

schematic diagram

So, the MCU interface voltage can safely be between 1.8 and 5 V.

\$\endgroup\$
3
  • \$\begingroup\$ Hi, How do you know the OP's board has that specific 1.8V LDO? I don't recognise the logo in the photo, but this is a different 1.8V LDO with the same 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\$
    – SamGibson
    Nov 13, 2019 at 18:06
  • \$\begingroup\$ @SamGibson The markings on the devices (on the photo and on the board in my hands) read “65K5”. When I google for photos of the devices SC6206B / XC6206 the markings read “65K5” and “662K”, respectively. Most likely there is a SC6206B on the photo and on my board. May be next charge will be fitted with a cheaper one. The SGP30 consumes up to 49mA. The dropout voltage of the SC6206B is specified to 36mV / 10mV for an output current of 10mA / 80mA. I am aware the the higher voltage corresponds to the lower current. I’ll measure the voltage when I write the driver for the device. \$\endgroup\$
    – hermannk
    Nov 13, 2019 at 19:15
  • \$\begingroup\$ Hi, "SC6206B / XC6206 the markings read “65K5” and “662K”" Ah yes, you're being misled since people often use the 3.3V XC6206 version, which is marked "662K". Here is the datasheet and you can see (p14) that "65K5" can also mean a 1.8V XC6206 version. It does not confirm that it's a SC6206B, meaning that its datasheet is not guaranteed to apply. That's my point - we don't know which of the the varying Vdropout values across 1.8V LDOs applies, without knowing the correct datasheet. "up to 49mA" See the "20%" footnote in the datasheet. \$\endgroup\$
    – SamGibson
    Nov 13, 2019 at 19:25
2
\$\begingroup\$

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.

Oblique top view of CJMCU-30 SGP30 sensor 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.

\$\endgroup\$
0

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge that you have read and understand our privacy policy and code of conduct.

Not the answer you're looking for? Browse other questions tagged or ask your own question.