Usage
CeilSense Pro will give Home Assistant a view of the room: is someone there, how bright is it and how fresh is the air. It can also give signals back with light, sound and speech. This page shows what the sensor will do in daily use and how to build on it with automations.
Planned behavior. The firmware for CeilSense Pro is not written yet. This page describes how it is planned to work, and that can still change at release.
In Daily Use
- Presence will be the main signal.
Presencewill turn on when the radar sees someone, also when that person sits still, and turn off once the room is empty and the timeout has passed. - Light will tell you how bright it is at the ceiling, so lights only switch on when needed.
- Climate will come from the built-in sensors.
SCD41 CO2,SCD41 TemperatureandSCD41 Humidityupdate every 30 seconds. - VOC and NOx will show how the air changes through
SGP41 VOC IndexandSGP41 NOx Index. These are indices, not ppm. - LED ring stays off until you use it.
- Buzzer stays silent until you use it.
- Speaker and microphone are for music, announcements and Home Assistant Assist. See Speaker and Voice.
- Optical smoke sensing is an experimental measurement, not a safety function. See Optical Smoke Sensing.
Do not count on a built-in motion light or CO2 warning. You decide what happens through automations in Home Assistant. The only planned exception is the experimental optical smoke sensing, which uses the LED ring and, if you turn it on, the siren on the buzzer.
Key Entities
| Entity | Use it for | Needs |
|---|---|---|
Presence |
Room occupancy | A radar |
LD2450 Zone 1 Target Count |
Zones with LD2412 + LD2450 | LD2412 + LD2450 |
Polygon Zone 1 Presence |
Zones with LD2460 | LD2460 |
Illuminance |
Light automations | Nothing extra |
SCD41 CO2 |
Ventilation | Nothing extra |
SCD41 Temperature, SCD41 Humidity |
Climate trends | Nothing extra |
SGP41 VOC Index, SGP41 NOx Index |
Air quality trends | Nothing extra |
BMP388 Pressure |
Air pressure | Nothing extra |
LED Ring |
Visual signals | Nothing extra |
Buzzer Test |
Sound signal | Nothing extra |
Speaker |
Music and announcements | Nothing extra |
The entities of the SHT45 follow with release firmware. All entities are explained in Sensor Definitions. Radar and Sensor Modules explains which air sensor to use for what.
Automation Examples
To use an example, go to Settings > Automations & scenes, create an automation and switch to YAML mode.
Note: Entity IDs can differ per installation, because they start with your device name. Check yours on the device page. Replace
light.living_roomand similar IDs with your own devices.
Light On When Occupied and Dark
alias: "Living room: light on when occupied and dark"
triggers:
- trigger: state
entity_id: binary_sensor.ceilsense_pro_presence
to: "on"
conditions:
- condition: numeric_state
entity_id: sensor.ceilsense_pro_illuminance
below: 100
actions:
- action: light.turn_on
target:
entity_id: light.living_room
The threshold is an example. Look at what Illuminance shows in your room when you would want the light on, and use that value.
Light Off When the Room Is Empty
alias: "Living room: light off when empty"
triggers:
- trigger: state
entity_id: binary_sensor.ceilsense_pro_presence
to: "off"
for:
minutes: 5
actions:
- action: light.turn_off
target:
entity_id: light.living_room
Ventilation on High CO2
alias: "Ventilation on high CO2"
triggers:
- trigger: numeric_state
entity_id: sensor.ceilsense_pro_scd41_co2
above: 1000
for:
minutes: 5
actions:
- action: fan.turn_on
target:
entity_id: fan.ventilation
SGP41 VOC Index can trigger an automation the same way, but it is an index and not ppm. Pick a threshold from the trend in your own room.
LED Notification
A short signal on the LED ring when the doorbell rings.
alias: "Doorbell: signal on the LED ring"
triggers:
- trigger: state
entity_id: binary_sensor.doorbell
to: "on"
actions:
- action: light.turn_on
target:
entity_id: light.ceilsense_pro_led_ring
data:
rgb_color: [0, 120, 255]
brightness_pct: 40
- delay:
seconds: 10
- action: light.turn_off
target:
entity_id: light.ceilsense_pro_led_ring
More examples are on LED Ring and Buzzer. For spoken messages, see Speaker and Voice.
Buzzer Signal
The planned firmware has a Buzzer Test button that plays a short melody. An automation can press it.
alias: "Washing machine done: buzzer"
triggers:
- trigger: state
entity_id: binary_sensor.washing_machine_done
to: "on"
actions:
- action: button.press
target:
entity_id: button.ceilsense_pro_buzzer_test
Zones
With LD2412 + LD2450, use the target count of a radar zone. Set up the zone first: see Calibration.
alias: "Desk: lamp on in zone 1"
triggers:
- trigger: numeric_state
entity_id: sensor.ceilsense_pro_ld2450_zone_1_target_count
above: 0
actions:
- action: light.turn_on
target:
entity_id: light.desk_lamp
With an LD2460, use a polygon zone that you drew in the Room Designer.
alias: "Sofa: lamp on in zone 1"
triggers:
- trigger: state
entity_id: binary_sensor.ceilsense_pro_polygon_zone_1_presence
to: "on"
actions:
- action: light.turn_on
target:
entity_id: light.sofa_lamp
Dashboard Ideas
- Presence with a history graph, to see how a room is used through the day
- A CO2 gauge with green, yellow and red ranges
- Temperature and humidity trends
- VOC and NOx trends over a day
- Light level next to the state of your lamps
- The CeilSense card from the SmartHomeShop.io integration