Qingping

The Qingping integrationIntegrations connect and integrate Home Assistant with your devices, services, and more. [Learn more] lets you monitor Qingping environmental sensors directly over Bluetooth Low Energy. No cloud account or hub is required: the devices broadcast their readings and Home Assistant listens passively.

Use cases

  • Air quality: combine the CO₂, PM2.5, and PM10 readings of an Air Monitor Lite with automations to ventilate a room and keep particle levels low.
  • Instrument storage: track temperature and humidity for instruments with the LEE GUITARS Thermo-Hygrometer and get an alert when conditions leave the safe range.
  • Occupancy and access: use the Motion & Ambient Light Sensor and the Door/Window Sensor for presence-driven lighting and door-open notifications.
  • Multi-room climate: place Temp RH monitors in several rooms and compare conditions at a glance on a dashboard.

Supported devices

Prerequisites

This integration requires a working Bluetooth setup, either a local Bluetooth adapter or an ESPHome Bluetooth proxy.

Configuration

To add the Qingping device to your Home Assistant instance, use this My button:

Manual configuration steps

If the above My button doesn’t work, you can also perform the following steps manually:

  • Browse to your Home Assistant instance.

  • Go to Settings > Devices & services.

  • In the bottom right corner, select the Add Integration button.

  • From the list, select Qingping.

  • Follow the instructions on screen to complete the setup.

The Qingping integration will automatically discover devices once the Bluetooth integration is enabled and functional.

Supported functionality

Sensors

All devices provide the following diagnostic sensors:

  • Battery: the device battery percentage.
  • Signal strength: the Bluetooth signal strength (disabled by default).

Depending on the model, the devices provide the following sensors:

  • Temperature and Humidity: temperature and relative humidity (CGDN1, CGD1, CGC1, CGM1, CGG1, CGG3, CGF1W, CGP23W, CGP1W, CGP22C).
  • Pressure: the atmospheric pressure (CGP1W).
  • Carbon dioxide: the CO₂ concentration in ppm (CGDN1, CGP22C).
  • PM2.5 and PM10: particulate matter concentrations in µg/m³ (CGDN1).
  • Illuminance: the ambient light level (CGPR1).

Binary sensors

Depending on the model, the devices provide the following binary sensors:

  • Motion: motion detected (CGPR1).
  • Light: ambient light detected (CGPR1).
  • Door: a door or window is open (CGH1).
  • Problem: the door has been left open (CGH1).

Examples

In the following examples, replace the entity names with those of your devices.

Turn on ventilation when the CO₂ level is high

automation:
  - alias: Ventilate when CO₂ is high
    triggers:
      - trigger: numeric_state
        entity_id: sensor.co2_temp_rh_1234_carbon_dioxide
        above: 1000
        for:
          minutes: 5
    actions:
      - action: switch.turn_on
        target:
          entity_id: switch.ventilation

Get notified when a door is left open

automation:
  - alias: Door left open
    triggers:
      - trigger: state
        entity_id: binary_sensor.door_window_sensor_1234_door
        to: "on"
        for:
          minutes: 10
    actions:
      - action: notify.notify
        data:
          message: The door has been open for 10 minutes

Data updates

The devices broadcast their readings in Bluetooth advertisements, and Home Assistant passively listens for them. Bluetooth-only devices send an advertisement at least once every few seconds, even when running on battery. Devices with Wi-Fi broadcast about once a second while powered over USB. The integration does not poll and never connects to the device, so no data leaves your network and the device battery is not drained by Home Assistant. EntitiesAn entity represents a sensor, actor, or function in Home Assistant. Entities are used to monitor physical properties or to control other entities. An entity is usually part of a device or a service. [Learn more] update whenever a new advertisement is received.

On battery, devices with Wi-Fi save power by keeping their radio off most of the time and broadcast only around their scheduled network connections. Their updates arrive in bursts and can be spaced further apart. Once a device has been seen, its entities keep their last value instead of becoming unavailable, and resume updating with the next advertisement. For steady updates over Bluetooth, keep these devices powered over USB.

Known limitations

The integration is passive and read-only. It reports the values the devices broadcast, but cannot change device settings, alarm thresholds, or display content. Those features require the Qingping app.

The default device name comes from the Bluetooth advertisement. You can change the display name in Home Assistant, but the integration cannot change the name broadcast by the device.

Troubleshooting

Device is not discovered

Make sure the device is awake and broadcasting, your Bluetooth adapter or proxy is in range of the device, and the Bluetooth integration is set up and working. If the device has Wi-Fi and runs on battery, plug it into power, or press and hold the button on the device to enter pairing mode: it then broadcasts rapidly for about 30 seconds and can be discovered.

Values stop updating

The device saves battery by pausing broadcasts; entities keep the last value and resume when the next advertisement arrives. If the device has Wi-Fi and runs on battery, plug it into power for steady updates. If values stay stale for a long time, check the device’s battery.

Motion or door events are delayed

Events are delivered in the next advertisement, so a short delay of a few seconds is normal. Longer gaps usually mean the device is out of range.

Removing the integration

This integration follows standard integration removal. No extra steps are required.

To remove an integration instance from Home Assistant

  1. Go to Settings > Devices & services and select the integration card.
  2. From the list of devices, select the integration instance you want to remove.
  3. Next to the entry, select the three dots menu. Then, select Delete.