스마트홈 재실 감지, 있는데 없다고 뜨거나 그 반대라면
Gearhola7분 읽기

목차6개 절펼치기 ▾접기 ▴
이 글은 2026년 8월 기준으로 각 방식의 공식 문서를 확인해 정리했습니다.
재실 감지가 자꾸 틀리는 이유는 센서 종류마다 다릅니다. 모션 센서는 움직임을, 기기 트래커는 폰이나 공유기 연결 상태를, 밀리미터파 레이더(mmWave)는 몸의 미세한 흔들림을 봅니다. 셋 다 "사람이 있다"고 말하지만 판단 기준이 다르다 보니, 가만히 앉아 있을 때·폰이 절전 모드일 때·커튼이 흔들릴 때처럼 방식마다 틀리는 지점이 따로 있습니다.
전제조건 / 먼저 확인할 것
고치기 전에 두 가지부터 나눠야 합니다. 센서나 트래커가 애초에 잘못된 값을 보내는 경우와, 값은 맞는데 자동화가 그 값을 놓치는 경우는 원인도 확인법도 다릅니다.
재실 감지가 틀렸을 때 먼저 볼 것
- 개발자 도구 > 상태에서 그 센서·트래커의 원시 값이 실제 상황과 맞는지
- 값은 맞는데 조명·알림만 안 움직인다면 자동화의 트리거와 모드 설정부터 확인
값 자체가 틀렸다면 아래에서 쓰고 있는 방식을 찾아 원인을 보면 됩니다. 값은 맞는데 자동화가 안 따라온다면 "흔히 막히는 지점"의 마지막 사례부터 보는 편이 빠릅니다.

모션 센서가 정지 상태를 못 잡는 이유
지그비나 와이파이로 붙이는 모션 센서는 적외선으로 움직임 자체를 봅니다. 사람이 책상에 앉아 모니터만 보고 있으면 몸은 그 자리에 있어도 적외선 변화가 없어서, 얼마 지나지 않아 "없음"으로 바뀝니다.
Zigbee2MQTT는 이 시간차를 occupancy_timeout 값으로 조정합니다. 기본값은 90초입니다. 그런데 아카라 계열(RTCGQ11LM) 센서 문서에는 이렇게 적혀 있습니다.
After detecting a motion the sensor ignores any movements for exactly 60 seconds. occupancy_timeout should not be set to lower than 60 seconds.
센서 자신이 감지 후 60초 동안은 새 움직임을 아예 무시한다는 뜻이라, 타임아웃 값을 60초보다 짧게 줄여도 소용이 없습니다. 화장실이나 서재처럼 오래 정지하는 공간이라면 타임아웃을 넉넉히 늘리거나, 문 센서 같은 보조 신호를 자동화 조건에 같이 넣는 쪽이 구조적으로 맞습니다.
기기 트래커, 사람이 아니라 폰을 보는 방식
기기 트래커(device tracker)는 폰이나 공유기에 붙은 기기의 연결 상태로 사람 유무를 판단합니다. 홈어시스턴트 공식 문서는 이 방식을 두 갈래로 설명합니다.
One way is to run an app on your phone to send detailed location information. Another way to detect presence is by checking which devices are connected to the network.
문제는 이 방식이 "사람"이 아니라 "기기"를 추적한다는 데 있습니다. 폰이 절전 모드로 들어가 와이파이 연결이 끊기거나 배터리 절약 설정 때문에 위치 갱신이 늦어지면, 사람은 분명 집에 있는데 상태만 not_home으로 남습니다. 정확한 메뉴 이름은 OS 버전마다 다르니, 컴패니언 앱이 배터리 최적화 예외 목록에 들어 있는지부터 직접 확인하는 편이 빠릅니다.
커튼이 흔들렸는데 mmWave가 사람으로 착각한다면
mmWave(밀리미터파 레이더)는 전파를 쏘아 몸의 미세한 떨림까지 잡아내므로, 앞선 두 방식과 달리 가만히 앉아 있어도 계속 "있음"으로 유지됩니다. 대신 전파가 반사되는 모든 것에 반응한다는 게 새로운 약점입니다.
Aqara FP2 매뉴얼은 설치할 때 피해야 할 것을 이렇게 못 박습니다.
커튼, 선풍기, 에어컨, 화분 등과 같이 움직이는 모든 물체는 재실 센서 FP2의 정확도에 영향을 미치는 간섭원이 될 수 있습니다.
같은 문서는 벽 쪽 가장자리를 설정하지 않으면 신호가 튕겨 나가 없는 사람을 만들어낼 수 있다고도 안내합니다. 직접 만드는 쪽을 택했다면 ESPHome의 LD2410 컴포넌트가 비슷한 구조입니다. 정지 대상과 이동 대상을 따로 인식하는 값이 있고, 감지 구간별 민감도를 실시간 신호 세기로 보며 조정하는 엔지니어링 모드도 제공합니다.1
WiFi로 사람을 본다는 프로젝트, 검증은 따로 필요합니다
GitHub에서 별 수만 개를 받은 RuView라는 프로젝트는 와이파이 신호(CSI)만으로 사람 자세와 재실을 감지한다고 홍보했습니다. 실제로 설치해 본 사람들 사이에서는 신호처리 없이 고정된 값만 돌려준다는 지적이 나왔고, 방에 아무도 없어도 재실 상태가 그대로 유지되는 사례도 있었습니다. 별 개수나 활발한 커밋 기록은 코드가 실제로 신호를 처리하는지와는 별개입니다.
흔히 막히는 지점
지그비 모션 센서인데, 앉아서 일만 하면 몇 분 뒤 불이 꺼진다. 위에서 본 occupancy_timeout 만료입니다. 센서 자체가 일정 시간 동안 새 움직임이 없으면 없음으로 보고하므로, 몸을 크게 움직이지 않는 공간에서는 이게 정상 동작입니다. 타임아웃을 늘리거나, 문 센서나 좌석 압력 센서 같은 보조 입력을 자동화 조건에 추가합니다.
폰은 분명 집에 있는데 기기 트래커만 계속 not_home으로 바뀐다. 대개 폰의 절전 기능이 백그라운드 위치 갱신을 막아서 생깁니다. 컴패니언 앱을 배터리 최적화 대상에서 빼고, 집에 있을 때는 공유기 연결만으로도 재실 판단이 되도록 라우터 기반 트래커를 같이 걸어 두면 한쪽이 늦어도 다른 쪽이 보완합니다.
mmWave 센서를 새로 달았는데 밤에 아무도 없을 때도 재실로 뜬다. 위 매뉴얼대로 가장자리와 간섭원을 설정하지 않았을 가능성이 큽니다. 앱의 자동 구성 기능으로 커튼이나 선풍기 위치를 학습시키고, 벽까지의 거리를 가장자리로 지정하면 반사로 생기는 허위 표적이 줄어듭니다.
센서 값은 맞게 바뀌는데 자동화가 한 번 실행된 뒤로는 반응이 없다. 홈어시스턴트 자동화는 기본값이 single 모드라, 실행 중에 새 트리거가 들어와도 새로 시작하지 않고 경고만 남깁니다. 모션 센서처럼 짧은 간격으로 계속 트리거되는 자동화라면 restart 모드로 바꾸거나, single 모드를 유지한 채 경고만 끄고 지연을 넣어 일정 간격으로만 실행되게 만드는 쪽이 문서가 권하는 방향입니다.
정리
방식을 바꾸기 전에 지금 쓰는 센서의 원시 값부터 보는 게 순서입니다. 값이 이미 틀렸다면 위 세 방식 중 해당 원인을 확인하고, 값은 맞는데 자동화가 안 따라온다면 모드 설정부터 봅니다. 그래도 잦은 오작동이 남는다면 두 방식을 겹쳐 쓰는 쪽(모션 센서 + 문 센서, 기기 트래커 + mmWave)이 한쪽의 약점을 다른 쪽으로 메우는 가장 현실적인 답입니다.
각주
-
ESPHome 공식 문서의 LD2410 mmWave 레이더 센서 컴포넌트 페이지. ↩
함께 읽기
시작하기2026년 8월 13일 · 6분지그비 스위치 사려는데, 허브부터 고민이라면지그비 스위치는 왜 허브가 꼭 있어야 하는지, 와이파이 스위치는 몇 개부터 공유기가 버거워지는지를 클리앙 커뮤니티 사례와 zigbee2mqtt·스마트싱스 공식 문서로 짚었습니다. 허브를 살지 말지 판단하는 기준까지 정리했습니다.
시작하기2026년 8월 13일 · 7분중성선 없는 벽스위치, 되는 집과 안 되는 집중성선이 없는 2선식 벽스위치에도 IoT 스위치를 달 수 있는지, 조명의 최소 부하와 종류, 회로 성격으로 판단하는 기준을 정리했습니다. 커뮤니티에서 반복되는 고장·오작동 사례와 세입자도 배선 없이 쓸 수 있는 우회 방법까지 함께 다룹니다.
