CO2METER COM CM1107N Dual Beam NDIR CO2 Sensor Module User Manual

October 30, 2023
CO2METER COM

CO2METER COM CM1107N Dual Beam NDIR CO2 Sensor Module

Product Information

Product Name: Dual Beam NDIR CO2 Sensor Module
Item No.: CM1107N
Part No.: CU-1107N
Version: V0.5
Date: August 3, 2022

Revisions

No. Version Content Date
1 V0.2 UART protocol check sum, the correct content is Cumulative sum
of data = 256-(HEAD+LEN+CMD+DATA)%256 2017.12.17
2 V0.2 UART protocol 4.2 Note, Modifying the description as Auto

calibration is default closed, if want to open, then the default
calibration cycle is 7 days.| 2017.12.17
3| V0.2| |
4| V0.3| |
5| V0.4| Modifying the font to be Arial, updating the company name to be
Cubic Sensor and Instrument Co.,Ltd| 2018.09.19
6| V0.5| Update protocol description and packing information| 2021.06.18

Applications

  • HVAC industry
  • IAQ monitor
  • Air purifier
  • Automotive
  • IoT devices
  • Intelligent agriculture
  • Cold-chain

Description

The CM1107N is a dual beam (single light source, dual channel) NDIR CO2 sensor based on non-dispersive infrared (NDIR) technology. It can detect CO2 concentration of indoor air with higher accuracy and superior long-term stability. It is widely used for ventilation systems, air purifiers, air conditioners, intelligent agriculture, storage, and cold-chain applications.

Features

  • NDIR technology with independent intellectual property
  • Dual beam detection for superior stability and better accuracy
  • High accuracy, long-term stability, long life (>10 years)
  • Temperature calibration within the whole measurement range
  • Signal output PWM/UART/I2C
  • Small size and compact structure, easy to install

Working Principle

The main components of an NDIR CO2 sensor are an infrared source, a sampling chamber, two filters, and two detectors. The infrared light is directed by the infrared source passing through the gas chamber towards the detector. CO2 molecules inside the gas chamber will only absorb a specific wavelength of the light. The filter allows only the specific wavelength corresponded to pass through it. One detector measures the intensity of infrared light that is related to the intensity of CO2 and can be described through the Lambert- Beer’s Law. The other detector is for reference. The change in sensor signal reflects the change in gas concentration.

Specifications

Dual Beam NDIR CO2 Sensor Specification

Target gas| Carbon Dioxide (CO2)
Operating principle| Non-dispersive infrared (NDIR)
Measurement range| 0-5000ppm
Working temperature|
Working humidity| 0-95%RH (non-condensing)
Storage temperature|
Storage humidity| 0-95%RH (non-condensing)
Accuracy|
Sampling frequency| 1s
Time to first reading| 30s
Power supply| DC 4.5V~5.5V
Working current|

Product Usage Instructions

  1. Make sure the sensor is properly installed and connected to the power supply.
  2. The sensor will take 30 seconds to provide the first reading.
  3. The measurement range of the sensor is 0-5000ppm of Carbon Dioxide (CO2).
  4. The working temperature and accuracy of the sensor are not specified in the manual.
  5. The sampling frequency of the sensor is 1s.
  6. The sensor can output signals in PWM/UART/I2C format.
  7. The default calibration cycle of the sensor is 7 days, but it can be modified to be auto-calibrated.
  8. The sensor can be used in various applications such as HVAC industry, IAQ monitor, air purifier, automotive, IoT devices, intelligent agriculture, and cold-chain.

Revisions

No. Version Content Date

1

| ****

V0.2

| UART protocol “check sum”, the correct content is “Cumulative sum of data = 256-(HEAD+LEN+CMD+DATA)%256”| ****

2017.12.17


2

| ****

V0.2

| UART protocol “4.2 Note”, Modifying the description as Auto calibration is default closed, if want to open, then the default calibration cycle is 7 days.| ****

2017.12.17


3

| ****

V0.2

| Modifying the font to be Arial, updating the company name to be Cubic Sensor and Instrument Co.,Ltd| ****

2018.09.19


4

| ****

V0.3

| UART Communication Protocol “4.1 Note”, modifying the description of status bit I2C Communication Protocol “2.2 Note”, modifying the description of status bit| ****

2019.07.11


5

| ****

V0.4

| ****

Add the 4.2.4 check the ABC status and ABC cycle

| ****

2020.01.06


6

| ****

V0.5

| ****

Update protocol description and packing information

| ****

2021.06.18

Dual Beam NDIR CO 2 Sensor Module

Applications

  • HVAC industry
  • IAQ monitor
  • Air purifier
  • Automotive
  • IoT devices
  • Intelligent agriculture
  • Cold-chain

Description

CM1107N is a dual beam (single light source, dual channel) NDIR CO2 sensor, based on non-dispersive infrared (NDIR) technology, which can detect CO2 concentration of indoor air. With higher accuracy, superior long term stability, it is widely used for ventilation system, air purifier, air conditioner, intelligent agriculture, storage and cold-chain, etc.

Features

  • NDIR technology with independent intellectual property
  • Dual beam detection for superior stability and better accuracy
  • High accuracy, long term stability, long life (>10years)
  • Temperature calibration within whole measurement range
  • Signal output PWM/UART/I2C
  • Small size and compact structure, easy to install

Working Principle
The main components of an NDIR CO2 sensor are an infrared source, a sampling chamber, two filters and two detectors. The infrared light is directed by the infrared source passing through the gas chamber towards the detector.CO2 molecules inside the gas chamber will only absorb a specific wavelength of the light. The filter allows only the specific wavelength corresponded to pass through it. One detector measures the intensity of infrared light that is related to the intensity of CO2 and can be described through the Lambert- Beer’s Law. The other detector is as for reference. The change in sensor signal reflects the change in gas concentration.
CO2METER-COM-CM1107N-Dual-Beam-NDIR-CO2-Sensor-
Module-02

Specifications

Dual Beam NDIR CO 2 Sensor Specification

Target gas| Carbon Dioxide (CO2)
Operating principle| Non-dispersive infrared (NDIR)
Measurement range| 0-5000ppm
Working temperature| -10°C ~ 50°C
Working humidity| 0-95%RH (non-condensing)
Storage temperature| -30°C ~ 70°C
Storage humidity| 0-95%RH (non-condensing)
Accuracy| ± (30ppm+3% of reading)(0-5000ppm, 0℃~50℃, 50±10%RH)
Sampling frequency| 1s
Time to first reading| ≤30s
Power supply| DC 4.5V~5.5V
Working current| <50mA @1s
Dimensions| W33 H21.7 D12.7mm(without pin)
Weight| 6.3g
Signal output| UART_TTL (3.3V/5V electrical level) PWM

I2C (3.3V electrical level)

PWM output| Output high level minimum duration: 2ms (0ppm)
Output high level maximum duration: 1002ms (5000ppm)
Alarm output| Reserved
Life span| ≥10 years

Dimensions and Connector

Dimensions (Unit mm, tolerance ±0.2 mm)

I/O Connector Pinout

CON5 CON4

Pin| Name| Description| Pin| Name| Description
1| +3.3V| Power supply output (+3.3V/100mA)| 1| +5V| Power supply input voltage,
2| RX/SDA| UART-RX (Receiving)/I2C data, compatible with 3.3V and 5V communication| 2| GND| Power supply input (GND)
3| TX/SCL| UART-TX        (Sending)/I2C        clock,        3.3V communication| 3| A| Alarming
4| R/T| UART/ I2C Switch (Output mode exchange TTL level @3.3V High level or floating is UART communication mode, low level is I2C communication mode)| 4| PWM| PWM output
5| CA| Manual calibration| | |

Typical Application Circuit

Application scene: UART_TTL 3.3V serial port output

CO2METER-COM-CM1107N-Dual-Beam-NDIR-CO2-Sensor-
Module-05

Description of Calibration

  1. Auto calibration (Closed by default, if open please refer to the protocol) Rough installing and influence of transportation might result in reducing of sensor measuring accuracy and baseline drift, sensor will correct the drift by the built-in self-correcting logic. Powering on the sensor for 7 days continuously, it will record the lowest CO2 concentration measurement value during the 7 days, which will be regarded as baseline (400ppm) when sensor implements auto calibration after the 7 days working. In order to ensure correct auto calibration, please make sure working environment of the sensor can reach to outdoor fresh air level (400ppm) during the 7 days auto baseline correction cycle.
    Note : For more detailed information on sensor auto-calibration, please contact Cubic

  2. Manual calibration: Rough installing and influence of transportation might result in a reducing of sensor reading accuracy and baseline drift. If need to recover accuracy quickly after installing, users can do manual calibration. Please place the sensor in an environment where outdoor atmospheric CO2 levels can reach 400 ppm and ensure the CO2 concentration in this environment is stable before calibration. The CA pin of sensor should be well connected at least 2 seconds when doing the manual calibration. Sensor will activate the calibration program after 6 seconds. In addition, sensor also can do manual calibration by sending command, please refer to the communication protocol for more details

PWM and Alarm Output

PWM output

  • Measurement range: 0-5000ppm
  • PWM cycle: 1004ms
  • Positive pulse width: (PPM/5)+2ms
  • PWM output schema:

CO2METER-COM-CM1107N-Dual-Beam-NDIR-CO2-Sensor-
Module-06

Note Connect the pin of PWM to the oscilloscope. Add a pull-up resistor around 5K-10K between the pin of PWM and power supply.

Alarm Output
If the CO2 concentration rises up to more than 1000ppm, the alarming will be triggered and output high level. When the CO2 concentration goes down to below 800ppm, the alarming will stop and output low level.

Product Installation

  1. In order to ensure airflow diffusion into the sensor inner, make sure the minimum distance between the area of waterproof filter and the other components is 1.5 mm, otherwise, quick response time of the sensor will be affected. Reference as below
    CO2METER-COM-CM1107N-Dual-Beam-NDIR-CO2-Sensor-
Module-08

  2. To avoid the influence of stress on sensor, please soldering by hand as much as possible when mounting the sensor to the PCB. Reference as below:

CO2METER-COM-CM1107N-Dual-Beam-NDIR-CO2-Sensor-
Module-09

UART Communication Protocol

  1. General Statement
  2. The data in this protocol is all hexadecimal data. For example, “46” for decimal [70].
  3. Baud rate: 9600, Data Bits: 8, Stop Bits: 1, Parity: No, Flow control: No.
  4. [xx] is for single-byte data (unsigned, 0-255); for double data, high byte is in front of low byte.
  5. Format of Serial Communication Protocol

Sending format of upper computer:

Start Symbol| Length| Command| Data 1| | Data n.| Check Sum
---|---|---|---|---|---|---
HEAD| LEN| CMD| DATA1| …| DATAn| CS
11H| XXH| XXH| XXH| …| XXH| XXH

Detail description on protocol format:

Protocol Format Description

Start Symbol| Sending by upper computer is fixed as [11H], module respond is fixed as [16H]
Length| Length of frame bytes= data length +1 (including CMD+DATA)
Command| Command
Data| Data of writing or reading, length is not fixed
Check Sum| Cumulative sum of data = 256-(HEAD+LEN+CMD+DATA)%256

 Command Table of Serial Protocol

Item No. Function Name Command

1| Read measured result of CO2| 0x01
2| Open/ Close ABC and set ABC parameter| 0x10
3| Calibrate concentration value of CO2| 0x03
4| Read software version| 0x1E
5| Read the serial number of the sensor| 0x1F

Detail Description of Protocol

Read Measured Result of CO2
Send: 11 01 01 ED
Response: 16 05 01 DF1- DF4 [CS] Function: Read measured result of CO2 (Unit: ppm)
Note :CO2 measured result = DF1*256+DF2;
DF3: status bit

Bit7 Bit6 Bit5 Bit4 Bit3 Bit2 Bit1 Bit0
Reserved 1: Drift

0: Normal

| 1: Light Aging

0: Normal

| 1: Non- calibrated

0: Calibrated

| 1: Less than Measurement Range

0: Normal

| 1: Over Measurement Range

0: Normal

| 1: Sensor Error

0: Operating normal

| 1: Preheating

0: Preheat complete

DF4 is reserved

Example: Response: 16 05 01 02 58 00 00 8A

Explanation: Hex is converted to decimal: 02 is 02; 58 is 88 CO2 concentration=02*256+88 = 600ppm

Open/Close ABC and Set ABC Parameter
Send : 11 07 10 DF1 DF2 DF3 DF4 DF5 DF6 CS
Response : 16 01 10 D9
Explanation :

  • DF1: Reserved, default 100 (0x64)
  • DF2: Open/close auto calibration (0: open; 2: close, default close)
  • DF3: Calibration cycle (1-30 days optional, default is 7 days)
  • DF4: High base value (2 bytes)
  • DF5: Low base value (2 bytes)
  • DF6: Reserved, default is 100 (0x64)
    Note : The default value of DF4 and DF5 is 400, that is DF4: 01; DF5: 90

Open ABC and Set Calibration Cycle
When ABC function is closed and if want to re-open ABC function, then set the DF2=0.
Example : Send below command to open ABC function and set the calibration cycle
Send : 11 07 10 64 00 07 01 90 64 78
Response : 16 01 10 D9

Close ABC
The ABC function is default closed. If want to close the ABC function after open it, then set the DF2=2.
Send : 11 07 10 64 02 07 01 90 64 76
Response : 16 01 10 D9

Change the Calibration Cycle
If want to change the calibration cycle to 10 days, then set the DF3=0A.
Send: 11 07 10 64 00 0A 01 90 64 75
Response: 16 01 10 D9

Check ABC Status and ABC Cycle
To check the ABC status, then check the DF2, 0 means open; 2 means close
To check the ABC cycle, then check the DF3 (DF3 range can be 1-30 days, default is 7 days)
Send : 11 01 0F DF
Response : [ACK] 07 0F [DF1][DF2][DF3][DF4][DF5][DF6][CS]

Calibration of CO2 Concentration
Send : 11 03 03 DF1 DF2 CS
Response : 16 01 03 E6
Function : Calibration of CO2 concentration

Note

  1. Calibration target value = DF1*256+DF2 Unit: PPM, range (400-1500ppm)
  2. Before calibration, please make sure CO2 concentration in current ambient is calibration target value. Keeping this CO2 concentration for two 2 minutes, then begin calibration.

Example :

  • When need to calibrate CO2 concentration of the sensor to 600ppm, send command
  • Send : 11 03 03 02 58 8F
  • Hex is converted to decimal: 02 is 02; 58 is 88
  • CO2 concentration =02*256+88 = 600ppm

Read Software Version
Send : 11 01 1E D0
Response : 16 0C 1E DF1-DF11 CS
Function : Read software version
Note :DF1-DF10: stand for ASCII code of software version, DF11 is reserved.
Example :
When the sensor version is CM V0.0.20, respond data as follows:
Hexadecimal converted to ASCII code:
Note : when 20 converted to ASCII code, it equals to blank space.

Read the Serial Number of the Sensor
Send : 11 01 1F CF
Response : 16 0B 1F (SN1) (SN2) (SN3) (SN4) (SN5) [CS] Function : Read the serial number of the sensor
Note : Read the serial number of the sensor. SNn: 0~9999, 5 integer form 20-digit number.

I2C Communication Protocol
Timing Diagram Introduction

Common Description

  • This protocol is based on standard I2C timing sequence, the clock frequency is 10kHz~400kHz.
  • Use big-endian format, the most significant bit to be sent first.

I2C Sequence Diagram Introduction

Item Min Parameter Type Max Unit
fiscal (SCL clock frequency) 10 400 KHz
tHD.STA (hold time of the starting bit) 0.6 us
tSU.STA (setup time of the starting 0.6 us
tHD.DAT (hold time of the data) 0 ns
tSU.DAT (setup time of the data) 250 ns
tSU.STO (setup time of the stop bit) 4 us

Note : SCL clock frequency is generated by the master device with the range 10khz~400khz.

CO2METER-COM-CM1107N-Dual-Beam-NDIR-CO2-Sensor-
Module-11

Basic Data Transmission Formats

S SA W A D A D D A/~A P

Picture 2: The general data format sends from the master device to the slave

S SA R A D A D D A/~A P

Picture 3: The general data format received from the slave device to the master device The meaning of the symbol in picture 1.2 and picture 1.3:

  • S: start condition
  • SA: slave address
  • W: write bit
  • R: read bit
  • A: acknowledge bit
  • ~A: not acknowledge bit
  • D: data, each data is 8bit
  • P: stop condition

Shadow : The signal generated from the master device
No Shadow : The signal generated from the slave device

Timing Diagram

CO2METER-COM-CM1107N-Dual-Beam-NDIR-CO2-Sensor-
Module-12 CO2METER-COM-CM1107N-Dual-
Beam-NDIR-CO2-Sensor-Module-13

Notes: The performance of the MCU which is used in the sensor is not very high. If use I/O port to simulate IIC master device, it is suggested to reserve a period before and after ACK signal (such as 100 us), after sending every byte (8 bit) to leave enough time for the SCM to process the data. Within requirements of speed, it is recommended to lower the reading speed as much as possible.

Measuring Function

Format of Command
Format of Sending : [CMD][DF0]……[DFn] [CMD] Command number, for distinguishing different command.
[DF0] … [DFn] The command with parameter item and optional items

Format of Response: [CMD][DF0]……[DFn][CS]
[CMD] Command number
[DF0]… [DFn] Effective data
[CS] Data check bit = -([CMD]+ [DF0]+……[DFn]) Only use the lowest bit

Statement of Measuring Command
The slave address is 0x31, the data command of the slave device is as below:

Item No. Function Name Command

1| Read measured result of CO2| 0x01
2| Open/ Close ABC and set ABC parameter| 0x10
3| Calibrate concentration value of CO2| 0x03
4| Read software version| 0x1E
5| Read the serial number of the sensor| 0x1F

Measuring Result

The master device should send command of measuring result.
Send : 0x01
Response : [0x01][DF0][DF1] [DF2][CS] Note :

  1. Sensor starts measuring result status once receiving the command 0x01. After this, all the data which I2C read will be such status format data, until the sensor receives new command or re-powering on.
  2. Data format, master device receives DF0 first, and then receives CS at last.

Remark| Status Bite| Decimal Effective Value Range| Relative Value
---|---|---|---
CO2 measuring result| [DF0] [DF1]| 0 ~ 5,000 ppm| 0 ~ 5,000 ppm

CO2 measuring result: D F 0 *256+D F 1 , Fixed output is 550ppm during preheating period.
Status bit:

Bit7 Bit6 Bit5 Bit4 Bit3 Bit2 Bit1 Bit0
Reserved 1: Drift

0: Normal

| 1: Light Aging

0: Normal

| 1: Non- calibrated

0: Calibrated

| 1: Less than Measurement Range

0: Normal

| 1: Over Measurement Range

0: Normal

| 1: Sensor Error

0: Operating normal

| 1: Preheating

0: Preheat complete

Example : The master device reads some data: Read 3 bit.
0x01 0x03 0x20 0x00 0xDC
CO2 measuring result = (0x03 0x20) h e x a d e c i m a l = (800) d e c i m a l = 800 ppm
Status bit: 0x00 means working normally
[CS]= -(0x01+0x03+0x20+0x00) Only keep the lowest bite.

Auto Zero Specification Setting

Send : 0x10 [DF0] [DF1] [DF2] [DF3] [DF4] [DF5] Response : [0x10] [DF0] [DF1] [DF2] [DF3] [DF4] [DF5] [CS] Format description

  1. Sensor will be auto calibration specification setting status after receiving command 0x10. After this, all the data which I2C read are the data in this status format, until sensor receives new command or repowering on.
  2. Data format, the master will receive [DF0] firstly, and receive [CS] at last. The result is calculated by high bit in front

Remark Data Byte           Decimal Effective Value Range Relative Value

Wrong code accelerate value| [DF0]| By default: 100| 100
Zero setting switch| [DF1]| 0 or 2| 0: Open, 2: Close
Calibration period| [DF2]| 1 ~ 30| 1 ~ 30
Calibration concentration value| [DF3] [DF4]| 400 ~ 1500| 400 ~ 1500
Reserved byte| [DF5]| By default: 100| 100

Calibration
The master device should send command of zero setting.
Send : 0x03 [DF0] [DF1] Response : [0x03] [DF0] [DF1] [CS] Note :

  1. Sensor starts zero setting status once receiving command 0x03. After this, all the data which I2C read will be such status format data, until the sensor receives new command or re-powering on.
  2. Data format, master device receives DF0 first, and then receives CS at last. The result is calculated by high bit in front: [DF0] * 256 + [DF1].

Remark| Data Bite| Decimal Effective Value Range| Relative value
---|---|---|---
Adjust value| [DF0] [DF1]| 400 ~ 1,500| 400 ~ 1,500 ppm

Read the Serial Number of the Sensor
Send : 0x1F
Response: [0x1F] [DF0] [DF1] [DF2] [DF3] [DF4] [DF5] [DF6] [DF7] [DF8] [DF9] [CS] Note:

  1. Sensor starts device code output status once receiving the command 0x1F. After this, all the data which I²C read will be such status format data, until the sensor receives new command or re-powering on.
  2. Data format, the master device receives [DF0] first, and then receives [CS] at last. High bit in front.

Remark| Data Bit| Decimal Effective Value Range| Relative Value
---|---|---|---
Integer type 1| [DF0] [DF1]| 0 ~ 9999| 0 ~ 9999
Integer type 2| [DF2] [DF3]| 0 ~ 9999| 0 ~ 9999
Integer type 3| [DF4] [DF5]| 0 ~ 9999| 0 ~ 9999
Integer type 4| [DF6] [DF7]| 0 ~ 9999| 0 ~ 9999
Integer type 5| [DF8] [DF9]| 0 ~ 9999| 0 ~ 99993. The five-integer types constitute serial number of 20 digits.

Read Software Version
Send : 0x1E
Response: [0x1E] [DF0] [DF1] [DF2] [DF3] [DF4] [DF5] [DF6] [DF7] [DF8] [DF9] [CS] Note:

  1. Sensor starts software version output status once receiving the command 0x1E. After this, all the data which I2C read will be such status format data, until the sensor receives new command or re-powering on.
  2. Data format, the master device receives DF0 first, and then receives CS at last. [DF0 ] …… [DF9 ] is ASCII.

Communication Diagram

Diagram 1: The master device read two bytes continuously from the slave device. The slave machine address: 0x31 = 0110001 (the machine address is 7 bit) + read/write bit(1bit)
The slave data address: 0x01 = 00000001

  • Step 1: The master device sends the address of the slave device+ write bit: 0110001+0 → 01100010 (0x62); at this time, the master device is in sending status.

  • Step 2: The master device sends the slave data address: 0x01
    CO2METER-COM-CM1107N-Dual-Beam-NDIR-CO2-Sensor-
Module-14

  • Step 3: The master device sends the slave machine address+ read bit: 0110001+1 → 01100011 (0x63); at this time, the master device is in receiving status.

  • Step 4: The master device sends answer bit after receiving a one-bit data and the slave continuously sends the next data. If the master device sends the no-answer bit after receiving a one-bit data, then the communication will stop.

CO2METER-COM-CM1107N-Dual-Beam-NDIR-CO2-Sensor-
Module-15

Packing Information

CO2METER-COM-CM1107N-Dual-Beam-NDIR-CO2-Sensor-
Module-16 CO2METER-COM-CM1107N-Dual-
Beam-NDIR-CO2-Sensor-Module-17

Note : every 3 trays are packed by a plastic vacuum bag.

Sensor per Tray| Tray Qty| Sensor per Carton| Carton Dimensions| Packing Material
---|---|---|---|---
70 pcs| 9 layers| 630 pcs| W395 L310 H200 mm| Anti-static PS

Support
The quickest way to obtain technical support is via email. Please include a clear, concise definition of the problem
and any relevant troubleshooting information or steps taken so far, so we can duplicate the problem and quickly
respond to your inquiry.
Warranty
The sensor comes with a 90 day warranty starting from the date it was shipped to the buyer. For more
information visit our website: https://www.co2meter.com/pages/terms- conditions
Contact Us
If this manual does not help you solving your problem please contact us using the information below.
Support@co2meter.com
(877) 678 – 4259 (M-F 9:00am–5:00pm EST)
CO2Meter, Inc.
131 Business Center Drive A-3, Ormond Beach, FL 32174
(386) 872 – 7665

References

Read User Manual Online (PDF format)

Read User Manual Online (PDF format)  >>

Download This Manual (PDF format)

Download this manual  >>

Related Manuals