
Vaisala GMP252
CARBOCAP CO2 probe for greenhouses, agriculture and HVAC, with temperature and pressure compensation.
The Vaisala GMP252 is a CARBOCAP CO2 probe that measures carbon dioxide from 0 to 10 000 ppm in greenhouses, agriculture, refrigeration and HVAC. This Modbus RTU template reads the CO2 concentration, probe temperature and status, and lets you set the pressure, temperature, humidity and oxygen compensation, the filtering factor and the serial settings from ModbusCloud.
- Protocol
- Modbus RTU
- Connection
- RS485, 19200 baud
- Registers
- 25, read and write
- Brand
- Vaisala
- Key readings
- CO2 concentration · Measured temperature · Compensation temperature · Device status · CO2 status · Error code
- Available commands
- Pressure compensation · Temperature compensation · Humidity compensation · Oxygen compensation · CO2 filtering factor · Modbus address and serial settings
- Compatible models
- GMP252 · GMP251
- Last updated
Registers (25)
25 read, 17 write
| Name | Unit | Access | Address (Hidden until you enter your email) | Function (hidden) | Type (hidden) |
|---|---|---|---|---|---|
| Measured CO2 Value | ppm | Read | |||
| Compensation Temperature | °C | Read | |||
| Measured Temperature | °C | Read | |||
| Measured CO2 Value (Integer) | ppm | Read | |||
| Measured CO2 Value (Integer x10) | ppm | Read | |||
| Device Status | Read | ||||
| CO2 Status | Read | ||||
| Error Code | Read | ||||
| Power-up Pressure Compensation | hPa | Read and write | |||
| Power-up Temperature Compensation | °C | Read and write | |||
| Power-up Humidity Compensation | %RH | Read and write | |||
| Power-up Oxygen Compensation | % | Read and write | |||
| Volatile Pressure Compensation | hPa | Read and write | |||
| Volatile Temperature Compensation | °C | Read and write | |||
| Volatile Humidity Compensation | %RH | Read and write | |||
| Volatile Oxygen Compensation | % | Read and write | |||
| Pressure Compensation Mode | Read and write | ||||
| Temperature Compensation Mode | Read and write | ||||
| Humidity Compensation Mode | Read and write | ||||
| Oxygen Compensation Mode | Read and write | ||||
| CO2 Filtering Factor | Read and write | ||||
| Modbus Address | Read and write | ||||
| Serial Speed | Read and write | ||||
| Serial Parity | Read and write | ||||
| Serial Stop Bits | Read and write |
Loading registers…
Send your device list
If a device is not in the library yet, we build the template for free as soon as we have the register data.
Use cases
- Show the CO2 level of each greenhouse compartment on a dashboard and keep 365 days of history.
- Get an email, in-app or webhook alert when CO2 drops below or rises above the level the crop needs.
- Raise an alert when Device Status or Error Code is not 0, for example on a low supply voltage or a dirty or wet sensor.
- Set pressure, temperature, humidity or oxygen compensation remotely when conditions at the probe differ from the defaults.
- Raise the CO2 filtering from the portal when occasional spikes in the reading need to be averaged out.
Installation
Connect pin 4 (RS-485+, black wire) and pin 2 (RS-485-, white) of the Vaisala M12 cable to the RS485 port of the ModbusCloud Gateway, and pin 3 (blue) to ground. Terminate a long bus at both ends with 120 Ω.
Power the probe with 12 to 30 V DC on pin 1 (brown). Leave pin 5 (gray) open, because pin 5 on ground forces analog output.
Make sure the probe is in Modbus mode with address 240, 19200 baud, no parity, 8 data bits and 2 stop bits. Use Vaisala Insight to change this if needed.
In ModbusCloud, add a Modbus device on the gateway with these settings and import the Vaisala GMP252 template.
Wait about 2 minutes for warm-up, then check that Measured CO2 Value shows a plausible level and Device Status reads 0.
Things to watch for
The probe does not answer on the RS485 bus. What should I check?
Check 19200 baud, no parity, 8 data bits and 2 stop bits at address 240. Many masters default to 1 stop bit. Check that RS-485+ is on pin 4 and RS-485- on pin 2, and swap them if nothing answers. Pin 5 must not be connected to ground, because that keeps the probe in analog mode. A probe ordered with analog output has to be switched to Modbus first, for example with Vaisala Insight.
Why does the CO2 value look wrong right after power-up?
The probe starts within 12 seconds but needs about 2 minutes to warm up, and the CO2 reading rises to its correct value in that time. CO2 Status shows 2 or 256 while the measurement is not ready. If values stay odd, check the compensation settings, because a wrong pressure or temperature compensation shifts the reading.
Which CO2 value should I use on a GMP251?
The GMP251 measures up to 20 % CO2, which is 200 000 ppm. The plain integer value stops at 32 767 ppm, so use Measured CO2 Value or the integer value scaled by 10, which goes up to about 320 000 ppm. On a GMP252 all three show the same level.
How do I update the pressure compensation without wearing out the probe?
Write values that change, such as the air pressure from a weather station, to the volatile compensation registers. They are cleared at reset and then take the power-up value again. The power-up registers are stored in EEPROM, which allows about 30 000 writes, so only use them for permanent settings. Read the value back after writing, because the probe can refuse a value outside its range.
Writing a mode or the filtering factor returns an error. Why?
The probe only accepts writes as a write multiple request (function code 16). The 32-bit compensation values are always written that way. If writing a single 16-bit setting such as a compensation mode, the filtering factor or the address returns an error, change that setting with Vaisala Insight. Writing registers in ModbusCloud is off by default and is enabled per gateway on request.
Want to see how it works?












