Running Frigate NVR on Raspberry Pi 4 Without a Google Coral TPU


Frigate NVR is one of the best self-hosted camera solutions available. It provides AI-powered object detection (person, car, animal) without any cloud service. Most guides recommend a Google Coral TPU for hardware acceleration, but Frigate runs fine on a Raspberry Pi 4 CPU if you configure it correctly.

The Key: Low FPS on the Detect Stream

The most important setting for CPU-based detection is the frame rate on your detect stream. You do not need to analyse every frame – for a security camera, detecting a person within a few seconds is fast enough.

cameras:
  garage:
    ffmpeg:
      inputs:
        - path: rtsp://user:password@camera_ip:554/stream2
          roles:
            - detect
        - path: rtsp://user:password@camera_ip:554/stream1
          roles:
            - record
    detect:
      width: 1280
      height: 720
      fps: 1        # 1 frame per second is enough for detection

With fps: 1, Frigate analyses one frame per second. This is more than sufficient for detecting people or cars entering a zone, while keeping CPU usage manageable.

Two Separate Streams

Use two RTSP streams from your camera:

  • Sub-stream (low resolution) for detection – keeps CPU usage low
  • Main stream (high resolution) for recording – full quality clips saved on events

Most IP cameras support two simultaneous RTSP streams on different channels.

Detector Configuration

For CPU-based detection:

detectors:
  cpu1:
    type: cpu
    num_threads: 3

Limit to 3 threads to leave headroom for other services.

Record Only on Detection

On a 4G or limited bandwidth connection, continuous recording is expensive. Configure Frigate to record only when something is detected:

record:
  enabled: false           # disabled by default

detections:
  retain:
    days: 14

Use Home Assistant to enable detection via a switch, triggered by your camera’s motion alarm. This way the RTSP stream is only processed when motion is actually happening.

Performance Expectations

On RPi 4 with the above settings:

  • CPU usage during detection: 20–40%
  • CPU usage at idle: 2–5%
  • Detection latency: 1–3 seconds

Without a Coral TPU, you will not get real-time tracking of fast-moving objects. But for security camera use – detecting someone entering your property – 1fps with 1–3 second latency is more than adequate.

Integration with Home Assistant

Frigate integrates directly with Home Assistant. Install the Frigate integration, point it to http://localhost:5000, and all your cameras and detection events appear as entities. You can build automations like “send a notification when a person is detected at the garage camera”.

Conclusion

A Google Coral TPU improves performance significantly, but it is not required for a functional Frigate setup. With 1fps detect stream and CPU-based inference, a Raspberry Pi 4 handles Frigate well alongside other services.