Version: 1.2.6
Last Updated: February 7, 2026
- System Requirements
- Installation via HACS
- Manual Card Installation (only if problems)
- Detector Add-on Setup
- Coral USB Setup
- First Configuration
- Dashboard Setup
- Verification
| Component | Requirement |
|---|---|
| Home Assistant | 2024.1+ |
| Python | 3.11+ |
| Storage | 50 GB free |
| RAM | 2 GB available |
| Component | Recommendation |
|---|---|
| Home Assistant | 2024.12+ |
| Storage | 200+ GB SSD |
| RAM | 4+ GB available |
| Hardware | Google Coral USB Accelerator |
- ✅ Any RTSP-capable IP camera
- ✅ Home Assistant Camera Entities
- ✅ Ring Doorbell (via ring-mqtt Add-on)
- ✅ Frigate Cameras
- ✅ Generic Cameras (MJPEG, HLS)
- Open HACS in the Home Assistant sidebar
- Click the ⋮ (three-dot menu) in the top right corner
- Select Custom repositories
- In the popup:
- Repository:
https://github.com/brainAThome/Opening_RTSP-Recorder - Category: Select Integration from dropdown
- Repository:
- Click Add
- Close the popup
- In HACS, click + Explore & Download Repositories (bottom right)
- Search for "RTSP Recorder"
- Click on the result "Opening RTSP Recorder"
- Click Download (bottom right)
- Select the newest version
- Click Download again to confirm
Important: Restart is required!
- Go to Settings → System → Restart
- Click Restart
- Wait 1-2 minutes until HA is fully restarted
- Go to Settings → Devices & Services
- Click + Add Integration (bottom right)
- Search for "RTSP Recorder"
- Click on it and follow the setup wizard
⚠️ Without this step the Dashboard Card will NOT work!
After installation, the browser cache must be completely cleared. A normal "F5" is NOT enough!
How to do a Hard-Refresh:
| Device | Key Combination |
|---|---|
| Windows/Linux | Ctrl + Shift + R (press all 3 keys at once) |
| Mac | Cmd + Shift + R (press all 3 keys at once) |
| iPhone/iPad | Settings → Safari → Clear History and Website Data |
| Android | Chrome: ⋮ → Settings → Privacy → Clear browsing data |
| Home Assistant App | Close app completely (not just minimize!) and reopen |
After Hard-Refresh:
- Reload the Home Assistant page (F5)
- The card should now work!
🔧 Troubleshooting: "Custom element doesn't exist" Error
If you see this error after installation:
Configuration Error
Custom element doesn't exist: rtsp-recorder-card
Possible causes and solutions:
1. Browser cache not properly cleared
- Close ALL browser tabs with Home Assistant
- Open a new tab
- Press Ctrl + Shift + R (or Cmd + Shift + R on Mac)
- Try again
2. The JS file is missing in the www folder
Check if the file exists:
- Install the File Editor Add-on (if not present)
- Open File Editor
- Navigate to:
/config/www/ - Look for:
rtsp-recorder-card.js
If the file is NOT there → See "Manual Card Installation" below
3. Lovelace Resource not registered
- Go to Settings → Dashboards
- Click the ⋮ (three-dot menu) in the top right
- Select Resources
- Check if
/local/rtsp-recorder-card.jsis in the list - If NOT: Click + Add Resource
- URL:
/local/rtsp-recorder-card.js - Type: Select JavaScript Module
- URL:
- Click Create
- Hard-Refresh (Ctrl + Shift + R)
💡 When do you need this? Only if automatic installation (v1.2.6+) didn't work.
- Go to: https://github.com/brainAThome/Opening_RTSP-Recorder/releases
- Click on the latest version (e.g., v1.2.6)
- Under "Assets" click on rtsp-recorder-v1.2.6.zip
- Save the file to your computer
- Extract the ZIP file (Right-click → "Extract All" on Windows)
There are several ways - choose the easiest one for you:
-
Install File Editor (if not present):
- Settings → Add-ons → Add-on Store
- Search "File Editor"
- Install and start
- Enable "Show in sidebar"
-
Create www folder (if not present):
- Open File Editor (in sidebar)
- Click the folder icon 📁 at the top
- Navigate to
/config/ - If no
wwwfolder exists: Click ⋮ → New Folder → Name:www
-
Upload file:
- Navigate into the
wwwfolder - Click ⋮ → Upload File
- Select the file
rtsp-recorder-card.jsfrom the extracted ZIP - Done!
- Navigate into the
- Install the Samba Share Add-on if not present
- Connect from your PC to
\\homeassistant\config\(Windows) orsmb://homeassistant/config(Mac) - Create the
wwwfolder if not present - Copy
rtsp-recorder-card.jsinto thewwwfolder
# Connect via SSH to your Home Assistant
ssh root@homeassistant.local
# Create www folder if not present
mkdir -p /config/www
# Download the file directly
cd /config/www
wget https://github.com/brainAThome/Opening_RTSP-Recorder/raw/main/www/rtsp-recorder-card.jsAfter copying, the file MUST be registered as a Lovelace Resource:
- Go to Settings → Dashboards
- Click the ⋮ (three-dot menu) in the top right
- Select Resources
- Click + Add Resource (bottom right)
- Fill in:
- URL:
/local/rtsp-recorder-card.js - Type: Select JavaScript Module
- URL:
- Click Create
DON'T FORGET: Clear browser cache with Ctrl + Shift + R (or Cmd + Shift + R on Mac)
The Detector Add-on enables AI analysis with Coral USB EdgeTPU support.
⚠️ This step is optional but recommended for AI object detection and face recognition!
- Go to Settings → Add-ons
- Click Add-on Store (bottom right)
- Click the ⋮ (three-dot menu) in the top right
- Select Repositories
- Add:
https://github.com/brainAThome/Opening_RTSP-Recorder - Click Add then Close
- Click ⋮ → Check for updates (page will refresh)
- Scroll down - you'll now see the "Opening RTSP Recorder" section
- Click on "RTSP Recorder Detector"
- Click Install and wait (this may take 5-10 minutes)
- After installation, go to the Configuration tab
- If you have Coral USB, ensure it's connected
- The add-on auto-detects Coral - no special config needed
- Click Start
- Enable Start on boot (toggle)
- Enable Watchdog (optional, restarts add-on if it crashes)
- Wait for the add-on to start (check the Log tab)
⚠️ The Detector URL varies per installation! You MUST find your correct URL!
- Go to the Info tab of the Detector add-on
- Find the Hostname - it looks like:
a861495c-rtsp-recorder-detector - Your Detector URL is:
Example:
http://[HOSTNAME]:5000http://a861495c-rtsp-recorder-detector:5000
Common Mistakes to Avoid:
- ❌
http://local-rtsp-recorder-detector:5000- This does NOT work! - ❌
http://localhost:5000- This does NOT work from HA! - ✅
http://[your-slug]-rtsp-recorder-detector:5000- This is correct!
- Go to Settings → Devices & Services
- Find RTSP Recorder and click Configure
- Enter the Detector URL you found in step 4.5
- Click Submit
The Detector add-on automatically detects Coral USB if connected.
- Plug in the Coral USB Accelerator
- Restart the Detector add-on
- Check the Log for:
INFO: Coral USB EdgeTPU detected INFO: Using EdgeTPU delegate
- Open the Detector add-on Log tab
- Look for "Coral" or "EdgeTPU" in the startup messages
- In the RTSP Recorder card, go to Performance tab to see Coral stats
| Problem | Solution |
|---|---|
| Coral not detected | Unplug/replug USB, restart add-on |
| Permission denied | Restart entire Home Assistant |
| Slow inference (>500ms) | Coral not working, check logs |
When you first add the integration, you'll be guided through:
-
Basic Settings
- Storage Path:
/media/rtsp_recorder/ring_recordings - Thumbnail Path:
/config/www/thumbnails - Detector URL: (from step 4.5)
- Storage Path:
-
Add Cameras
- Name: e.g., "Wohnzimmer"
- Motion Sensor: Select from dropdown
- Camera Entity or RTSP URL
-
Analysis Settings (optional)
- Auto-analyze: Enable/Disable
- Analysis interval
| Setting | Recommended Value | Description |
|---|---|---|
| Retention Days | 7 | How long to keep recordings |
| Recording Duration | 30 seconds | Length of each recording |
| Snapshot Delay | 2 seconds | When to capture thumbnail |
| Auto-Analyze | Enabled | Automatically analyze new recordings |
💡 Tip for Beginners: Follow each step exactly. Screenshots in your Home Assistant may look slightly different - that's normal!
Why a separate dashboard? The RTSP Recorder Card needs a lot of space. A dedicated dashboard prevents conflicts with your other cards.
- Click Settings in the left sidebar (the gear icon ⚙️)
- Click Dashboards
- Click + Add Dashboard (bottom right)
- A popup appears:
- Title:
RTSP Recorder - Icon: Click the icon field and search
cctv, select the camera icon - Leave "Show in sidebar" enabled ✓
- Title:
- Click Create
✅ Result: "RTSP Recorder" now appears in your left sidebar with a camera icon.
-
Click your new "RTSP Recorder" dashboard in the left sidebar
-
You'll see an empty page with text like "Empty page starts here"
-
Click the pencil ✏️ (Edit button) in the top right
⚠️ Don't see a pencil? Click the three dots ⋮ top right → Edit Dashboard -
A blue bar appears at the top - you're now in Edit Mode!
⚠️ Do this BEFORE adding the card! Otherwise the card will appear too small.
What is Panel Mode? Normally Home Assistant shows multiple cards side by side (like tiles). Panel mode shows only ONE card in full screen - perfect for the RTSP Recorder Card!
How to enable Panel Mode:
-
You're in Edit Mode (blue bar at top)
-
At the top you'll see the tab "Default View" with a small pencil ✏️ next to it
┌─────────────────────────────────────────────────────────────┐ │ Default View ✏️ │ + │ └─────────────────────────────────────────────────────────────┘ -
Click this small pencil ✏️ (NOT the one in the top right!)
-
A popup "Edit View" opens
-
Scroll down in the popup until you see "View Type"
-
Click the dropdown (probably says "Masonry" or "Sections")
-
Select "Panel (1 card)"
-
Click Save at the bottom of the popup
✅ Result: Panel mode is now active.
-
You're still in Edit Mode
-
Click + Add Card (bottom right)
-
A popup with many card types appears
-
Scroll all the way down in the list
-
Click "Manual" (at the very bottom, under "Custom")
💡 Alternative: Type "rtsp" in the search box - if the card is installed correctly, it will appear
-
You'll see a YAML editor with example code
-
Delete EVERYTHING in the editor
-
Copy the following code and paste it:
type: custom:rtsp-recorder-card
base_path: /media/rtsp_recorder/ring_recordings
thumb_path: /local/thumbnails- Click Save (top right of popup)
✅ Result: The RTSP Recorder Card now appears in full screen!
- Click Done in the top right
- The blue bar disappears
- You're now viewing your finished RTSP Recorder Dashboard!
If the card doesn't look right or shows errors:
Windows/Linux:
- Press Ctrl + Shift + R (all three keys at once)
Mac:
- Press Cmd + Shift + R
On Phone/Tablet:
- Close the Home Assistant app completely
- Reopen it
| Problem | What You See | Solution |
|---|---|---|
| Card is too small/narrow | Card only takes 1/3 of width | Panel mode not active! See step 7.3 |
| "Custom element doesn't exist" | Error message instead of card | Lovelace Resource missing! See Step 2.5 above |
| Card shows "No recordings" | Empty timeline | Normal! Wait for first motion event |
| Card loading forever | Only spinning wheel | Check if integration is properly installed |
| White screen | Nothing visible | Check browser console (F12) for JS errors |
💡 The most common error: "Custom element doesn't exist: rtsp-recorder-card"
This means the JavaScript file was not registered as a Lovelace Resource. Solution: Go to Step 2.5 "Register Dashboard Card" and follow the instructions.
When everything works, you'll see:
- ✅ The card fills the entire screen
- ✅ Top: Tab bar (Timeline, Live, Analytics, Menu)
- ✅ Middle: Video player or thumbnail grid
- ✅ Bottom: Status bar with recording info
🎉 Done! Your RTSP Recorder Dashboard is set up!
- Go to Settings → Devices & Services
- Find RTSP Recorder
- It should show "Configured" with no errors
- Open RTSP Recorder card
- Click "Menue" / "Menu" tab
- Check Performance section
- You should see "Coral: ✓" if Coral is detected
- Trigger motion on a configured sensor (walk past the camera)
- You should see:
- "Recording in progress" in the card footer
- New recording appears in the timeline after ~30 seconds
| Issue | Solution |
|---|---|
| Card shows "No recordings" | Wait for motion trigger, or check storage path |
| "Detector not available" | Check Detector URL (step 4.5) |
| Card not loading | Clear browser cache (Ctrl+Shift+R) |
| No thumbnails | Check thumb_path points to /local/thumbnails |
- 📖 User Guide - All features explained
- 🧠 Face Recognition - Train person recognition
- ⚙️ Configuration - All options
- 🔧 Troubleshooting - Problem solving
For problems: GitHub Issues