Frigate (card) no two-way audio to unifi doorbell

Hey all,

Short problem, I’ve got a Unifi G4 doorbell pro. I’ve setup Frigate and a Frigate card. But when I press the microphone button on the card you don’t hear anything at the doorbell.

I’ve read and searched many days now and combined many sources, so my setup could be a bit messy by now.

To the technical outline.
• Unifi Dreammachine Pro
• Synology NAS with docker
• Home Assistant in Docker
• Frigate in Docker
• Unifi G4 Doorbell Pro via POE and enabled RSTP(S)

On the Unifi Dream machine
• Forwarded ports 80 and 443 to Synology NAS with Docker

On the Synology NAS
• Created custom domain via External Access → DDNS → Add Synology.me domain.
• Reverse Proxy via Login portal → Advanced → Reverse Proxy ( custom sub domain port 443 to HA Docker IP and port 8123)
• Created Let’s Encrypt Certificate via Security → Certificate → mirrored custom sub domain to cert.

  • So, Im able to visite HA through HTTPS (without warning). Also working through the companion app.
  • Now, I can stream the Frigate card well in the HA app. Here the image is smooth and the sound/microphone button show up. (In desktop browser it sometimes does not show, then it shows a preview image and refreshes each second.)
  • In the companion app I can press the microphone button and it turns red. Also (on my android device) I see the green microphone in use notification in my top right corner.
  • When standing next to the doorbell no sound/voice comes out.

Below are all the settings. What part am I missing :slight_smile: I’ve got a feeling I made a mistake in the Frigate config. But I’m not sure how to fix it.
Also, I don’t know how to debug Frigate or what to look for. Any pointers?

This is my docker-compose.yaml

version: '3'
services:
  #--------------------------------------------------------#
  homeassistant_latest:
    container_name: Home_Assistant_latest_1
    image: ghcr.io/home-assistant/home-assistant:latest
    volumes:
      - /volume2/docker/home_assistant/config:/config
      - /etc/localtime:/etc/localtime:ro
    environment:
      - TZ=Europe/Amsterdam
    restart: always
    privileged: true
    network_mode: host
  #--------------------------------------------------------#
   frigate:
    container_name: frigate
    privileged: true
    restart: unless-stopped
    image: ghcr.io/blakeblackshear/frigate:stable
    shm_size: "64mb" # update for your cameras based on calculation above
    devices:
      - /dev/bus/usb:/dev/bus/usb # Passes the USB Coral, needs to be modified for other versions
#      - /dev/apex_0:/dev/apex_0 # Passes a PCIe Coral, follow driver instructions here https://coral.ai/docs/m2/get-started/#2a-on-linux
#      - /dev/video11:/dev/video11 # For Raspberry Pi 4B
#      - /dev/dri/renderD128:/dev/dri/renderD128 # For intel hwaccel, needs to be updated for your hardware
    volumes:
      - /etc/localtime:/etc/localtime:ro
      - /volume2/docker/frigate/config:/config
      - /volume2/docker/frigate/storage:/media/frigate
      - type: tmpfs # Optional: 1GB of memory, reduces SSD/SD Card wear
        target: /tmp/cache
        tmpfs:
          size: 1000000000
    ports:
      - "8971:8971"
      - "5002:5000" # Internal unauthenticated access. Expose carefully.
      - "8554:8554" # RTSP feeds
      - "8555:8555/tcp" # WebRTC over tcp
      - "8555:8555/udp" # WebRTC over udp
#    network_mode: host
  #--------------------------------------------------------#

Note, would it be better if they shared a network?

In the HA configuration.yaml I’ve added:

media_source: # one tutorial said to add this. 

http:
  use_x_forwarded_for: true
  trusted_proxies:
    -  192.168.0.200

This is the Frigate config.yaml


mqtt:
  enabled: true
  host: 192.168.0.200
  port: 1883
  client_id: frigate

#################

go2rtc:
  streams:
    frigate_voordeur:
      - rtspx://192.168.0.1:7441/SznJFbzrx0tARE0C?video&audio
      - "ffmpeg:frigate_voordeur#audio=opus"
  webrtc:
    candidates:
      - 192.168.0.200:8555
      - stun:8555
  ffmpeg:
    bin: ffmpeg
    volume: -af "volume=30dB"
    output_args:
      record: preset-record-ubiquiti
#################
cameras:
  frigate_voordeur2:
    ffmpeg:
      output_args:
        record: preset-record-ubiquiti
        rtmp: preset-rtmp-ubiquiti # recommend using go2rtc instead
      inputs:
        - path: rtsp://127.0.0.1:8554/frigate_voordeur?video&audio
          input_args: preset-rtsp-restream
#################

detect:
  enabled: False
record:
  enabled: False
birdseye:
  enabled: False
logger:
  default: debug

The Frigate Card Yaml

type: custom:frigate-card
cameras:
  - live_provider: go2rtc
    go2rtc:
      modes:
        - webrtc
    camera_entity: camera.frigate_voordeur
    title: Voordeur
menu:
  buttons:
    microphone:
      enabled: true
      alignment: opposing
      type: toggle
    timeline:
      enabled: false
    cameras:
      enabled: false
    frigate:
      enabled: false
    download:
      enabled: false
    media_player:
      enabled: false
    mute:
      enabled: true
      alignment: opposing
    camera_ui:
      enabled: false
    snapshots:
      enabled: false
    clips:
      enabled: false
  style: overlay
  position: left
  button_size: 80
live:
  controls:
    thumbnails:
      mode: none
  auto_mute: all
  preload: false
dimensions: {}
media_gallery:
  controls:
    thumbnails:
      size: 140
      show_favorite_control: false
      show_timeline_control: false
      show_download_control: false
    filter:
      mode: none
performance:
  style:
    box_shadow: false
    border_radius: false

I don’t think unifi supports two way talk over rtsp backchannel

That might explain a lot. Too bad. Thanks.
Than I’ll have to switch to Scrypted.

Did anyone succeed with this ?

I am also interested in this. I have Unifi Protect integrated into Home Assistant (in addition to having the cameras to Frigate). The integration adds a media player for the G4 Doorbell speaker. If Unifi Protect doesn’t support two way talk over rtsp, would it then be possible to put out the audio to the media player? That is app microphone → HA, HA doorbell media player → doorbell ?