How HDHomeRun emulation works
Whenhdhomerun is enabled, tuliprox:
- Advertises each virtual device over SSDP (UPnP multicast discovery).
- Responds to SiliconDust proprietary discovery (UDP broadcast on port 65001).
- Serves the HDHomeRun HTTP API on a dedicated port per device (automatically assigned or explicitly configured).
- Exposes a lineup that points to the target’s stream URLs.
Configuring hdhomerun in config.yml
Add thehdhomerun block to your config.yml:
config.yml
Top-level fields
| Field | Default | Description |
|---|---|---|
enabled | false | Enable HDHomeRun emulation |
auth | false | Require lineup authentication |
ssdp_discovery | true | Advertise via SSDP/UPnP multicast |
proprietary_discovery | true | Respond to SiliconDust UDP broadcast discovery |
devices | — | List of virtual device definitions |
Device fields
| Field | Default | Description |
|---|---|---|
name | auto-generated | Internal identifier (must be unique) |
friendly_name | HDHomeRun | Display name shown in media servers |
manufacturer | SiliconDust | Reported manufacturer string |
model_name | HDTC-2US | Reported model name |
model_number | HDTC-2US | Reported model number |
firmware_name | hdhomeruntc_atsc | Reported firmware name |
firmware_version | — | Reported firmware version |
device_id | auto-generated | 8-character hex device ID (auto-generated if empty) |
device_udn | auto-generated | UUID for UPnP (auto-generated if empty) |
device_type | — | UPnP device type string |
port | auto-assigned | HTTP port for this device’s HDHomeRun API |
tuner_count | 1 | Number of virtual tuners to report |
If
device_id or device_udn are left empty, tuliprox generates stable values
derived from the device name. Set them explicitly if you need reproducible
values across restarts.Wiring to a target
Add anhdhomerun output to the target in source.yml and reference the device by name:
source.yml
HDHomeRun output fields
| Field | Description |
|---|---|
device | Name of the device defined in the hdhomerun config block |
username | Credential used by the media server when fetching the lineup |
use_output | Which output type to use for stream URLs: m3u or xtream |
Full example
Discovering the device in media servers
Once tuliprox is running withhdhomerun.enabled: true, media servers on the same network segment will discover it automatically during their next HDHomeRun scan.
Plex
- Go to Settings → Live TV & DVR.
- Click Set Up Plex DVR.
- Plex scans the network for HDHomeRun devices and should list
tuliprox HD. - Select it and proceed through the channel scan.
Emby
- Go to Dashboard → Live TV.
- Click + to add a tuner device.
- Select HDHomeRun and click Search.
- Emby discovers the virtual device automatically.
Jellyfin
- Go to Dashboard → Live TV.
- Under Tuner Devices click Add.
- Select HDHomeRun as the type.
- Leave the URL blank to use auto-discovery, or enter
http://192.168.1.41:5004explicitly.
TVHeadend
- Open Configuration → DVB Inputs → TV Adapters.
- TVHeadend auto-detects HDHomeRun devices on the LAN.
- The virtual tuliprox device should appear as a network adapter.