Attempting to make G3 camera hub work on Home Assistant

I’m unsuccessfully trying to make my G3 hub work on Home Assistant. Nothing has worked so far.
These are the things I tried:

  • Removed it from Apple Home, leaving it free to be paired by HA
  • HA discovered it as a HomeKit device and I added it
  • I installed Go2rtc and paired it there

I cannot stream: HLS gives a black screen, Webrtc and Mse both keep on loading state until it times out. Only Mjpeg works, but obviously video is very choppy in that stream protocol.

I also tried pairing it to go2rtc without adding it as a HomeKit device, and same result.

Did anyone around have success making the camera work on Home assistant?

Thanks!

1 Like

Enable the RTSP Lan options in the Aqara app and then try in Home Assistant Settings-Devices & services-Add Integration, search for Generic Camera and see if that works.

I’ve never used a G3 camera but it works very well for the G350 and G5 Pro cameras. No lag and has never failed to show a Live View.

1 Like

Unfortunately, RTSP is not available on the G3…

1 Like

Hello @srl77411
The G3 camera does not support RTSP streaming. This is supported on newer cameras.

3 Likes

Hello @brachetta, in go2rtc provides setting you must find the HomeKit link, which is a very big, long link. That’s your RTSP link for your config page.

I do have a broadcasting URL, but it’s not RTSP. The G3 isn’t capable of RTSPeing (!).
I get MJPEG only at the moment, terrible, choppy, like a slow collection of low-res stills. Webrtc or mse both only load and eventually timeout.

@brachetta

Perhaps this guide will help you.

Thanks, @Raman.V, yes I followed that (left a comment there earlier as well) but I end up with the same result: only Mjpeg stream, which is very low res and super choppy. This method uses as well go2rtc (provided by the webrtc camera add-on under the hood). I don’t get any usable stream for mse or webrtc.
Feeling frustrated. I thought that adding something as ubiquitous as a camera would be more straightforward.

You must create a RTSP broadcast in config settings page.
I have same setting.

The hub G3 doesn’t support RTSP broadcasts

Official RTSP is not supported, but webRTC
camera yes.

I hope that can help you. I have this step-by-step list writer.

Complete Guide: Aqara Camera Hub G3 Setup in Home Assistant via go2rtc (WebRTC)

Phase 1: Preparation and Pairing Reset

  1. Remove from Apple Home (Crucial):
    If the camera was previously added to the Apple Home app on iOS, open the Home app, select the camera, go to its settings, and tap “Remove Accessory”.
    Note: The HomeKit protocol allows only one active controller at a time. If the G3 remains paired with Apple Home, it will reject pairing attempts from go2rtc.

  2. Initial Setup in Aqara Home App:

    • Open the Aqara Home app on your phone.
    • Add the camera and connect it to your local Wi-Fi network (it must be on the exact same network/VLAN as Home Assistant).
    • Update the Aqara G3 firmware to the latest available version.
  3. Locate the HomeKit Setup Code:

    • Look underneath the base of the camera or on the printed card inside the original box.
    • Find the 8-digit setup code next to the house icon (formatted as XXX-XX-XXX or XXXXXXXX). Write it down.

Phase 2: Discover and Pair the Camera in go2rtc

  1. Ensure a File Editing Add-on is Installed:
    In Home Assistant, make sure you have the File Editor or VS Code add-on installed (Settings > Add-ons > Add-on Store).

  2. Access the go2rtc Web UI:

    • Open a new browser tab and navigate to your Home Assistant IP address followed by port 1984 (e.g., http://192.xxx.x.xxx:1984).
    • Or click “go2rtc” in the Home Assistant left sidebar if enabled.
  3. Pairing via the Web UI:

    • On the main go2rtc Web UI dashboard, click the “Add” button at the top.
    • Scroll down to the HomeKit section (or click on mDNS/Devices).
    • Locate your Aqara Camera Hub G3 (e.g., Aqara-G3-XXXX) under local network devices.
    • Click on the camera, enter the 8-digit HomeKit code, and click “Pair”.
  4. Copy the Generated Stream String:

    • Once paired, go2rtc will display an automatically generated URL string starting with homekit://.
    • Example: homekit://127.0.0.1:XXXXX?device_id=XX:XX:XX:XX:XX:XX&pin=XXX-XX-XXX
    • Copy the entire string to your clipboard.

Phase 3: Write Configuration in go2rtc.yaml

  1. Open the Configuration File:
    Open the file named go2rtc.yaml in the /config/ directory using File Editor. (If it doesn’t exist, create it).

  2. Add the Stream Definition:
    Paste the following code block, replacing the homekit://... line with your exact copied string:

streams:
aqara_g3:
- homekit://127.0.0.1:XXXXX?device_id=XX:XX:XX:XX:XX:XX&pin=XXX-XX-XXX

  1. Save and Restart:
    Save the file, then go to Settings > Add-ons > go2rtc (or WebRTC Camera) and click Restart.

Phase 4: Create a Native Home Assistant Camera Entity (Optional)

  1. Open configuration.yaml using File Editor.
  2. Add the following code block at the bottom:

camera:

  • platform: ffmpeg
    name: Aqara G3 WebRTC
    input: rtsp://127.0.0.1:8554/aqara_g3
  1. Save the file.
  2. Go to Developer Tools > YAML > Check Configuration.
  3. If valid, restart Home Assistant (Settings > System > Restart).

Phase 5: Add the Zero-Latency WebRTC Card to Dashboard

  1. Open your Lovelace Dashboard, click the three dots in the top right > Edit Dashboard.
  2. Click “+ Add Card” at the bottom right > select “Manual”.
  3. Paste this YAML configuration:

type: custom:webrtc-camera
url: aqara_g3
mode: webrtc
ui: true

  1. Click Save and then Done.
1 Like

Thank you so much!

See my response here

1 Like