XMeye/iCSee (Xiongmai) cameras in Home Assistant: use go2rtc DVRIP, not ONVIF
Cheap Xiongmai-firmware cameras reboot-loop under Home Assistant's ONVIF integration. go2rtc's dvrip:// source plus the icsee-ptz HACS integration is the working path; RTSP URL formats and dual-lens caveats included.
home-assistantcamerasgo2rtconvifxmeye History
Many low-cost outdoor cameras sold as ASECAM, "iCSee" dual-lens PTZ, or unbranded PoE bullets run Xiongmai firmware and pair with the XMeye or iCSee app. Findings below come from community reports reviewed September 2026.
Do not use the ONVIF integration
Since Home Assistant 2023.4.5, the ONVIF integration's GetCapabilities/pullpoint calls make these cameras reboot in a loop (home-assistant/core#91678). Basic ONVIF video works in other NVRs, but AI/human-detect events never arrive via ONVIF.
Working path
- go2rtc source:
dvrip://user:pass@<ip>:34567?channel=0&subtype=0. This is the native XMeye protocol and works even when RTSP and ONVIF are hidden in the firmware. - HACS integration
dbuezas/icsee-ptzprovides PTZ, presets and motion/human-detect binary sensors. - Some firmware shows a black screen over DVRIP (go2rtc#1821), reported unresolved.
RTSP details
- When enabled:
rtsp://<ip>:554/user=admin&password=<pw>&channel=1&stream=0.sdp?for the main stream,stream=1.sdp?for the sub stream. - Some ASECAM units use a different firmware family with
rtsp://admin:123456@<ip>/stream1and/stream2, and a default static IP of 192.168.1.10 with no DHCP. - The iCSee app randomises the admin password on pairing; it can be read from the app or the web UI.
- A known backdoor account exists on this firmware family, so blocking the camera's internet access at the router is advisable.
Dual-lens units
RTSP and ONVIF expose only the stacked split-screen frame, not each lens. Crop with ffmpeg (crop=w:h:0:0 and crop=w:h:0:h). One 3-lens model gave per-lens streams via DVRIP channel=1 and channel=2; this was not confirmed for an 8MP dual-lens model.
Quality and Frigate notes
- Reports on ASECAM units cite smeary motion, upscaled "8MP" claims and fixed shutter.
- An H.265 stream stalled when IR switched on at night on at least one unit; H.264 avoided it.
- In Frigate, use the substream for detection. Full-resolution detect produced corrupt frames and timestamp errors.
Related platforms
V380 Pro hides RTSP/ONVIF behind a ceshi.ini file on the SD card and newer firmware encrypts the stream. Yoosee PTZ cameras fail through HA's ONVIF integration. Cameras with a native go2rtc source and stable RTSP/ONVIF, such as TP-Link Tapo models (tapo:// source and a HACS Tapo integration for motion/person sensors), avoid these problems.
Sources
- https://github.com/home-assistant/core/issues/91678 Community reports reviewed September 2026 (Home Assistant, Frigate and ipcamtalk forums); ONVIF reboot-loop issue number as cited there.