Troubleshooting
Common NDI Receiver issues and how to fix them.
Source Not Discovered
Sources don’t appear in the Web UI
NDI uses mDNS (multicast DNS) for discovery. If sources aren’t showing up:
-
Same network? — Sender and receiver must be on the same network subnet, or connected with a direct Ethernet cable. On a standard network, both devices should share the same subnet (e.g.,
192.168.1.x). On a direct cable, both devices auto-assign link-local addresses (169.254.x.x) — wait ~30 seconds after plugging in -
Firewall — mDNS uses UDP port 5353. Allow it:
sudo ufw allow 5353/udp -
Network switch — Some managed switches block multicast traffic by default. Enable IGMP snooping or allow multicast on the relevant VLANs
-
Wi-Fi isolation — Some access points have “client isolation” enabled, preventing devices from seeing each other. Disable it or use Ethernet
-
NDI SDK installed? — The NDI SDK must be available on the receiver. Run
./ndi-receiver --discoverto test — if it can’t find the SDK, it will tell you
Source appears but won’t connect
- The source may have stopped sending — check that the sending application is running
- Try disconnecting and reconnecting from the Web UI
- Check that no other application has exclusively claimed the NDI source
Display Issues
Screen shows logo but no video
- The receiver is running but not connected to a source. Open the Web UI at
http://ndi-receiver.local:8080to select a source - If a source is configured, it may not be available yet — the receiver will auto-reconnect when it appears
No display output at all
- Check that the display is connected and powered on
- Verify the correct DRM connector is selected:
./ndi-receiver --discoverlists connectors, or check the Web UI - Try specifying the connector explicitly:
./ndi-receiver --connector "HDMI-A-1" - Make sure no desktop environment is claiming the display — NDI Receiver needs direct DRM/KMS access. Run from a TTY (not a terminal inside a desktop)
Video is choppy or dropping frames
- Network bandwidth: NDI 1080p needs ~125 Mbps. Use Gigabit Ethernet, not 100 Mbps
- Wi-Fi: 5GHz is required for reliable NDI. 2.4GHz doesn’t have enough bandwidth
- CPU load: Close other applications. Hardware video decode support is coming soon
- Network congestion: Avoid running NDI alongside large file transfers or streaming
Audio Issues
No audio
- Check that the NDI source is sending audio (not all sources include audio)
- Verify the correct audio device is selected — check the Web UI or set it in the config:
[display] audio_device = "HDMI" - Audio device names are matched by substring —
"HDMI"will match any output with “HDMI” in the name
Audio playing on wrong output
Change the audio device in the Web UI, or specify it on the command line:
./ndi-receiver --audio-device "HDMI"
Web UI Issues
Can’t reach ndi-receiver.local
The .local address uses mDNS (Bonjour). If it doesn’t resolve:
- macOS: mDNS works out of the box — if it’s not resolving, make sure both devices are on the same network or directly connected
- Windows: Install Bonjour Print Services or use the IP address instead
- Linux: Install
avahi-daemonandlibnss-mdns:sudo apt install avahi-daemon libnss-mdns - Direct cable: Wait ~30 seconds for link-local addresses to settle before trying the
.localaddress
You can also find the receiver by browsing for it:
# From macOS
dns-sd -B _ndi._tcp
# From Linux
avahi-browse -rt _http._tcp
Can’t access the Web UI
- Make sure the receiver is running — check with
ps aux | grep ndi-receiver - Try both
http://ndi-receiver.local:8080and the IP address directly - Check the firewall:
sudo ufw allow 8080/tcp - If you changed the port, use the custom port instead
Firewall Ports
| Port | Protocol | Purpose |
|---|---|---|
| 5353 | UDP | mDNS discovery |
| 8080 | TCP | Web UI (configurable) |
| 5960-5970 | TCP | NDI video streams (dynamic range) |
For simplicity, you can allow NDI Receiver through your firewall entirely rather than managing individual ports.
Bootable Image Issues
Image won’t boot
- Make sure you flashed to the correct drive
- Check that your device supports booting from USB/SSD
- Try re-flashing with Balena Etcher
Need to change settings on the image
SSH into the device and edit the config file, or use the Web UI:
ssh root@ndi-receiver.local # password: ndi
nano /etc/ndi-receiver.toml
systemctl restart ndi-receiver
Or use the Web UI at http://ndi-receiver.local:8080.
Changing the hostname
To give your receiver a unique name (recommended when running multiple receivers):
ssh root@ndi-receiver.local # password: ndi
hostnamectl set-hostname my-receiver
systemctl restart avahi-daemon
The receiver is now at http://my-receiver.local:8080. This persists across reboots.
Still Stuck?
Email support@donglecontrol.com with:
- Your device hardware and Linux version
- NDI Receiver version (
./ndi-receiver --version) - Output of
./ndi-receiver --discover - What you’ve tried so far