Product Introduction:The X-SSG-A1101-RS485 ten in one environmental and air quality sensor adopts a high-speed processor and integrates CO2, formaldehyde TVOC, Laser dust PM2.5, PM10, PM1.0 particulate matter, temperature, humidity, air pressure, light intensity, and noise detection are integrated, and environmental quality data detection and reporting are achieved through RS485 bus communication. Adopting a rotating buckle method for ceiling installation, the operation is simple.|
sensor data |
Measurement Resolution |
measurement range |
measurement accuracy |
|
Carbon dioxide eCO2 |
1ppm |
400 ~ 60,000ppm |
±30ppm |
|
TVOC |
1ug/m3 |
0 ~ 60,000ug/m³ |
± 50ug/m3 |
|
Formaldehyde CH2O |
1ug/m3 |
0~1000ug/m ³ |
± 25% |
|
PM2.5 |
1ug/m3 |
0~1000ug/m ³ |
± 10% |
|
PM10 |
1ug/m3 |
0~1000ug/m ³ |
±10% |
|
PM1.0 |
1ug/m3 |
0 ~ 1,000ug/m³ |
±10% |
|
temperature |
0.01℃ |
-40 ~ 85℃ |
±0.2℃ |
|
Humidity |
0.01% |
0 ~ 100% |
±1%RH |
|
air pressure |
1Pa |
30,000 ~ 110,000Pa |
±12Pa |
|
illuminance |
1Lux |
0 ~ 60,000Lux |
±5% |
|
Noise |
1dB |
30 ~ 90dB |
±3dB |
Attention: The CH2O value output by the module is the equivalent value of TVOC. Customers should pay attention when purchasing and using it.
Working voltage:
DC5V±0.2V @150mA
Work environment:
Working temperature -10~60 ℃, working humidity: 5~95% RH (non condensing)
Communication method:
Modbus RTU 485 interface
Preheating time:
Less than 3 minutes,In theory, semiconductor VOC sensors are more stable as the power on time increases
Service life:
3 years (in the air)
Appearance dimension diagram:

I, standard 4-wire interface
II, 2-wire+USB power supply interface
As shown in the above figure,This product comes with two physical interfaces: "standard 4-wire interface" and "2-wire+USB power supply". Please indicate according to actual needs when purchasing.
This product defaults to 5V DC power supply. If you need a special voltage (6-36V), you can contact us to customize.
wiring definition
1) "Standard 4-wire" interface type:
|
Serial number |
Name |
Remarks |
|
RS485 |
Yellow |
RS485 | A |
|
RS485 | B |
Green |
RS485 | B |
|
DC+ |
Red |
Default 5V DC power supply, special voltage needs to be customized |
|
GND |
Black |
Grounding wire |
"2-wire+USB power supply" Interface type:
2)
|
Serial Number |
Name |
Remark |
|
A |
Red (A) |
RS485_A |
|
B |
Black (B) |
RS485_B |
|
U |
Micro USB |
DC 5V power supply |
Attention: The colors in the table above are for general instructions. Please refer to the label on the product for specific wiring.
IV. RS485 Communication Protocol
Communication Parameters
ModBus RTUParameters:
9600/8/N/1
Factory default address:0x01
Return data time: less than 100ms
Communication protocol
1)Read address command
Direction: User application ->Sensor module; Response required: Yes
Request message format:
|
Byte number |
Data |
Description |
|
0 |
0xFE |
Broadcast Address |
|
1 |
0x11 |
Report Slave Address Function Code |
|
2 |
0x00 |
Fixed |
|
3 |
0x00 |
Fixed |
|
4 |
0x00 |
Fixed |
|
5 |
0x01 |
Fixed |
|
6 7 |
CRC-L CRC-H |
CRC Check |
Response Message Format:
|
Byte Number |
Data |
Description |
|
0 |
0x01 |
Slave Address |
|
1 |
0x11 |
Report Slave Address Function Code |
|
2 |
0x02 |
Byte Count |
|
3 |
version |
Firmware Version |
|
4 |
address |
Current Address |
|
5 6 |
CRC-L CRC-H |
CRC Check |
Example: Send Command:FE 11 00 00 01 28 06
Return Data: 01 11 02 12 01 70 5C
Explanation: 0x12 in the returned data represents version number V1.2, 0x01 represents device address 01
2)Modify Address Command. The default factory address for the module is0x01, and the address range can be changed to:1~247
Direction: User Application ->Sensor Module; Response required: Yes
Request message format:
|
Byte number |
Data |
Description |
|
0 |
address |
Current address |
|
1 |
0x06 |
Function code |
|
2 |
0x00 |
Fixed |
|
3 |
0x00 |
Fixed |
|
4 |
0x00 |
Reserved |
|
5 |
new address |
New Address |
|
6 7 |
CRC-L CRC-H |
CRC Check |
Response Message Format:
|
Byte Number |
Data |
Description |
|
0 |
address |
Address before modification |
|
1 |
0x06 |
Function code |
|
2 |
0x00 |
Fixed |
|
3 |
0x00 |
Fixed |
|
4 |
0x00 |
Reserved |
|
5 |
new address |
Modified address |
|
6 7 |
CRC-L CRC-H |
CRC Check |
For example: The current address is 0x01, and the preset address is 0x02
Send Command:01 06 00 00 02 08 0B
Return Data: 01 06 00 00 02 08 0B
Change the current address from 0x02 to 0x01
Send Command:02 06 00 00 01 48 39
Return Data: 02 06 00 00 00 00 01 48 39
3)Read Data Command
Direction: User Applications ->Sensor Module; Response required: Yes
Request message format:
|
Byte number |
Data |
Description |
|
0 |
address |
Current address |
|
1 |
0x03 |
Function code |
|
2 3 |
0x00 MM |
Register start address |
|
4 5 |
0x00 NN |
Number of sensors to be read |
|
6 7 |
CRC-L CRC-H |
CRC Check |
Response Message Format:
|
Byte Number |
Data |
Description |
|
0 |
address |
Current Address |
|
1 |
0x03 |
Function Code |
|
2 |
NN * 2 |
Data Length Sensor data (air pressure occupies 4 bytes, with 2 stored) |
|
3 |
xx xx...... |
Equipment; Each other sensor data occupies 2 bytes, i.e. 1 register) |
|
3+NN*2 4+NN*2 |
CRC_L CRC_H |
CRC verification |
Note: The return sensor data can be changed based on the register address and data length.
The register address (0x00MM) and corresponding sensor data are described as follows: air pressure occupies 4 bytes (2 registers), and each other sensor data occupies 2 bytes (1 register).
|
Register Address |
Sensor Data |
Number of registers occupied |
|
0x0000 |
eCO2 |
1 |
|
0x0001 |
TVOC |
1 |
|
0x0002 |
CH2O |
1 |
|
0x0003 |
PM2.5 |
1 |
|
0x0004 |
Humidity |
1 |
|
0x0005 |
Temperature |
1 |
|
0x0006 |
PM10 |
1 |
|
0x0007 |
PM1.0 |
1 |
|
0x0008 |
Illuminance (Lux) |
1 |
|
0x0009 |
MCU temperature |
1 |
|
0x000A |
Noise (dB) |
1 |
|
0x000B |
Air pressure (Pa) |
2 |
Instructions:
① The minimum number of sensors is 00 01 and the maximum is 00 0B. When the MM value is 00, the maximum NN value can be 0B, and all sensor values can be read. When NN is 01, only eCO can be read separately2 When NN is 02, eCO can be read2 The number of TVOC
According to, and so on.
② The address at the front of the register can read data from sensors behind it when increasing the data length, but the address at the back of the register cannot read data from sensors before this address.
③ One register holds 2 bytes of data, while air pressure occupies 4 bytes, making it 2 registers. Therefore, when reading air pressure, it is necessary to read both consecutive registers, and each other sensor data occupies 2 bytes, making it 1 register.
Details are as follows:
|
00MM00NN |
Readable data |
|
00000001 00000002 ...... |
Read CO from the starting address 00002 data Read CO from the starting address 00002 , TVOC data ...... |
|
0000000D 00010001 00010002 ...... 00010007 0001000C 00020001 00020002 ...... 000B0001 |
Read CO from the starting address 00002 , TVOC , CH2O , PM2.5 , Humidity, temperature, PM10 , PM1.0, Illuminance, MCU temperature, noise data, air pressure data Read TVOC data from the starting address 0001 Read TVOC and CH2O data from the starting address 0001 ...... Retrieve TVOC, CH2O, PM2.5, humidity, temperature, PM10, PM1.0 data from the starting address 0001 Take TVOC, CH2O, PM2.5, humidity, and temperature from the starting address 0001, PM10 , PM1.0, Illuminance, MCU temperature, noise data, air pressure data Read CH2O data from starting address 0002 Read CH2O and PM2.5 data from the starting address 0002 ...... Read air pressure data from starting address 000B (2 registers) |
For example, the address of the module is 0x01,
User sent:01 03 00 00 00 09 85 CC, can read out data from 9 sensors;
User sent:01 03 00 00 00 0B 04 0D11 sensor data (including MCU temperature) can be read out;
User sent:01 03 00 00 00 0D 84 0F, which can read out data from 12 sensors (with air pressure occupying 2 registers);
User sent:01 03 00 0B 00 02 B5 C9, Only read air pressure data (occupying 2 registers).
4)Read a frame of data
5) Return data format as follows:
|
Byte number |
Data |
Description |
|
0 |
0x01 |
Message header |
|
1 |
0x03 |
Function code |
|
2 |
0x1A |
data length |
|
3 4 |
CO2_H CO2_L |
CO2 data |
|
5 6 |
TVOC_H TVOC_L |
TVOC data |
|
7 8 |
CH2O_H CH2O_L |
CH2O data |
|
9 10 |
PM2.5_H PM2.5 L |
PM2.5 data |
|
11 12 |
Humi_H Humi_L |
Humidity data |
|
13 14 |
Temp_H Temp_L |
temperature data |
|
15 16 |
PM10_H PM10_L |
PM10 data |
|
17 18 |
PM01_H PM01_L |
PM1.0 data |
|
19 20 |
Lux_H Lux_L |
Illuminance (Lux) data |
|
21 22 |
MCU_TEMP_H MCU_TEMP_L |
MCU temperature data |
|
23 24 |
dB_H dB_L |
Noise (dB) data |
|
25 |
Pa_byte[3] |
|
|
26 |
Pa_byte[2] |
Barometric pressure data (Pa) |
|
27 |
Pa_byte[1] |
|
28 Pa_byte[0] |
||
|
29 CRC16_L 30 CRC16 H _ |
CRC16 verification |
|
|
6)System parameter configuration 7) System parameters can be obtained or modified by reading or writing to the register addresses in the table below. 8)Note: This is an advanced feature, please use it carefully to avoid system parameter errors that may affect sensor functionality or data accuracy. |
||
|
Register Address |
Length (in bytes) |
system parameters |
|
0x0100 |
4 |
Sensor Map Byte 1 (front): Is it an external temperature and humidity sensor |
|
0x0110 |
2 |
Byte 2: Sensor data user calibration bitmap, see“sensing Module bitmap ” |
|
Byte 1 (front): Corresponding to custom indicator items for dedicated serial port screens |
||
|
0x0111 |
2 |
The sensor number Byte 2: Light transmittance of the photosensitive cover of the illuminance sensor (0-100), 0 indicates no photosensitive cover, 100 indicates no loss |
|
0x0118 |
2 |
CO2 Calibration value, int16 |
|
0x0119 |
2 |
TVOC calibration value, int16 |
|
0x011A |
2 |
CH2O calibration value, int16 |
|
0x011B |
2 |
PM2.5 calibration value, int16 |
|
0x011C |
2 |
Humidity calibration value (100 times), int16 |
|
0x011D |
2 |
Temperature calibration value (100 times), int16 |
|
0x011E |
2 |
PM10Calibration value, int16 |
|
0x011F |
2 |
PM1.0Calibration value, int16 |
|
0x0120 |
2 |
Illuminance (Lux)Calibration value, int16 |
|
0x0121 |
2 |
MCU temperatureCalibration value, int16 |
|
0x0122 |
2 |
Noise (dB)Calibration value, int16 |
|
0x0123 |
2 |
atmospheric pressureCalibration value, int16 |
Note:
All user calibration values are signed integers, negative numbers indicate negative offsets, and the offset must be subtracted;
The user calibration values for temperature and humidity are magnified by 100 times in Celsius, for example: 250 indicates the need to add 2.5 degrees Celsius; -110 indicates the need to subtract 1.1 degrees Celsius.
For example, the address of the module is 0x01,
User sent:01 03 01 10 00 01 84 33, Read the external temperature and humidity sensor label and sensor data user calibration bitmap; User sent:01 06 01 10 00 02 04 0D, turn on the temperature and humidity user calibration switch;
User sends:01 03 01 1D 00 01 15 F0, read the temperature and humidity calibration values;
User sent:01 06 01 1D 00 FA 98 73, set the temperature user calibration value to 250, which is+2.5 degrees; User sent:01 06 01 1D 80 6E F8 1C, set the temperature user calibration value to -110, which is -1.1 degrees.
4.3 Computer Reading RS485 Data
The sensor module can be connected to the computer through a "485 to serial port" adapter to detect communication and view data. The computer can use ModBus testing tools (such as ShortBus Modbus Scanner, as shown in the figure below) to directly read data; Standard serial tools such as "Serial Assistant" can also be used to obtain data by sending query messages.

V. Calculation methods for various sensor data
. CO2 (ppm)=CO2H256+CO2L
. TVOC (ug/m3)=TVOCH_H * 256+TVOC_L
. CH2O (ug/m3)=CH2OH_H * 256+CH2O_L
. PM2.5 (ug/m3) = PM2.5_H * 256 + PM2.5_L
. PM10 (ug/m3) = PM10_H * 256 + PM10_L
. PM1.0 (ug/m3)=PM01:H * 256+PM01_ L_L
. Illuminance (Lux)=Lux_SH * 256+Lux_L
. Noise (dB)=dB_SH * 256+dB_L
. Temperature and humidity returned by the interface (100 times the actual data):
. Positive temperature (℃)=(Temperature_SH * 256+Temperature_L)/100, for example: T=(0x09d0)/10=2512/100=25.12 ℃
. Negative temperature (℃)
Method 1: Simply convert to a signed int type, for example: T=0xfc83/10=-893/100=-8.93 ℃
Method 2: If it is greater than 0x7fff (32767)
Then it is a negative number T=(0xfc83-65536)/10=(64643-65536)/10=-893/100=-8.93 ℃
. Humidity (% RH)=(Humidity_H * 256+Humidity_L)/100
Air pressure (Pa)=Pa-byte [3] * 224 + Pa_byte[2] * 216 + Pa_byte[1] * 28 + Pa_byte[0]
. According to air pressure calculation, altitude
is measured in Pa. Theoretically, for every 9 meters increase in altitude, atmospheric pressure decreases by 100 Pa. The standard atmospheric pressure at sea level is 101325 Pa, therefore, the following formula can be used to calculate the approximate altitude based on the pressure value (Pa):
1 , Simplified altitude formula=(101325 – Pa)/100 * 9
In addition to altitude, there are many factors that affect air pressure (such as temperature). The following formula is relatively more accurate, especially at high altitudes:
2. Calibration altitude formula=44330 * (1 – (Pa/101325)0.1903)
For example, if the measured air pressure value is 99882Pa, the altitude calculated by the two formulas is:
. Simplified altitude=(101325 – 99882)/100 * 9=129.8 meters
Calibration version altitude=44330 * (1- (99882/101325)0.1903) =120.84 meters
VI. Precautions
The first power on use requiresPreheat for more than 3 minutes
The installation position of the sensor should be at least 15-20cm above the ground, otherwise there may be large dust particles or even flocculent substances contaminating the ground, causing the fan to become entangled and stall. It is recommended to use equipment with appropriate pre filtering treatment.
. This product is a precision instrument. Please do not open the casing. Normal operation does not require knowledge of the internal conditions of the equipment. If the equipment is damaged, it must be inspected and repaired by professional personnel. Before inspection and repair, please confirm that the external power supply has been cut off..
The sensor data ensures consistency between individual products at the factory and does not use third-party testing instruments or data as comparison standards. If the user wishes the final measurement results to be consistent with a third-party testing device, the user can perform data fitting and calibration based on the actual collected results.
. This sensor is suitable for ordinary indoor environments. If the user's device is used in the following actual environments, the sensor may experience a decrease in data consistency due to excessive dust, oil, or water accumulation. For example, if the annual dust concentration exceeds 300 micrograms per cubic meter for more than 50% of the time, or exceeds 500 micrograms per cubic meter for more than 20% of the time; Oil fume environment; High water mist environment; Outdoor, etc.
VII. Sensor module bitmap
|
bit |
sensor module |
|
0x01 |
illuminance |
|
0x02 |
Temperature, humidity, and air pressure |
|
0x04 |
dust |
|
0x08 |
air quality |
|
0x10 |
Noise |
Product Purchase:https://item.taobao.com/item.htm?ft=t&id=675637355531
Leave a Reply