Skip to content

[Bug] UPnP renderer (moOde Audio / upmpdcli) not detected, while Chromecast devices are detected #667

Description

@Udo-Josef

Before submitting

  • I have attached my logs below (Terminal + Console), or explained why I cannot get them.
  • I searched the existing issues and this is not a duplicate.
  • I included concrete steps to reproduce.

Platform

Linux

Description

Environment

QBZ version:

  • 2.0.2

Installation methods tested:

  • Flatpak (com.blitzfc.qbz)
  • AppImage

Operating System:

  • EndeavourOS (Arch Linux based)

Network:

  • Wired Ethernet
  • firewalld 2.5.0
  • Same behaviour with firewall enabled and disabled

Renderer:

  • moOde Audio (latest version)
  • upmpdcli enabled
  • MiniDLNA enabled

Problem

QBZ does not detect my moOde Audio UPnP renderer.

However:

  • Chromecast devices are detected correctly.
  • BubbleUPnP (Android) detects the moOde renderer immediately.
  • gssdp-discover also detects the renderer.
  • The moOde web interface is reachable.
  • upmpdcli is running normally.

The issue is identical with both the Flatpak and the AppImage versions.


What I tested

Firewall:

  • firewalld enabled
  • firewalld disabled
  • UFW disabled
  • Same result

Flatpak:

  • Full host filesystem access
  • Network shared
  • No sandbox restrictions affecting discovery

Renderer:

  • upmpdcli.service is active
  • upnpav = 1
  • openhome = 0

Network discovery:

  • SSDP multicast works
  • gssdp-discover works
  • BubbleUPnP discovers the renderer
  • Chromecast devices appear in QBZ

upmpdcli status

upmpdcli listens on:

UDP 1900
UDP 49152
TCP 49149
TCP 49152

Configuration:

friendlyname = Moodeaudio UPNP
avfriendlyname = Moodeaudio UPNP
upnpav = 1
openhome = 0


Observations

QBZ is clearly able to discover devices because Chromecast devices appear.

The problem only affects the moOde/upmpdcli UPnP renderer.

Since BubbleUPnP and gssdp-discover both discover the renderer successfully, this appears to be a compatibility issue between QBZ and the renderer implementation (upmpdcli), or QBZ rejects the renderer during device parsing.


Expected behaviour

QBZ should list the moOde Audio UPnP renderer alongside the Chromecast devices.

Actual behaviour

Only Chromecast devices appear.
The moOde UPnP renderer is never listed.

If further logs or packet captures would help, I'd be happy to provide them.

Additional information

This issue is reproducible on every start of QBZ.
The renderer has never appeared in QBZ, although it is consistently visible to BubbleUPnP and GSSDP.

Additional observation

Initially the renderer appeared to be detected only when firewalld was disabled.

However, after extensive testing (including Flatpak, AppImage, disabling UFW, verifying SSDP traffic and testing with BubbleUPnP), the issue appears to be independent of the installation method.

This initial firewall dependency could not be consistently reproduced and may have been influenced by network interface or multicast behaviour.

Steps to reproduce

  1. Start moOde Audio with upmpdcli enabled.
  2. Start QBZ.
  3. Open the output device selection.
  4. Wait for network discovery.

Actual result:
The moOde UPnP renderer is never listed.

Expected result:
The renderer should appear as an available playback device.

Expected behavior

QBZ should list the moOde Audio UPnP renderer together with the available Chromecast devices.

Actual behaviour

Only Chromecast devices are listed.

The moOde Audio UPnP renderer never appears.

Actual behavior

QBZ successfully discovers Chromecast devices, indicating that network discovery is working.

However, the moOde Audio UPnP renderer (upmpdcli) is never listed as an available playback device, although it is detected by BubbleUPnP and gssdp-discover on the same network.

QBZ version

2.0.2

Installation method

Flatpak

Distribution / macOS version

EndeavourOS (Arch Linux based)

Desktop environment / WM

KDE Plasma 6

Display server

Wayland

GPU

No response

Audio backend

PipeWire

Audio device / DAC

allo usbridge signature + moodeaudio

Logs

  • Terminal log URL:
  • Console log URL:

Screenshots

No response

Additional context

HTTP/1.1 200 OK
SERVER: Debian DLNADOC/1.50 UPnP/1.0 MiniDLNA/1.3.3
LOCATION: http://192.168.178.30:8200/rootDesc.xml

Metadata

Metadata

Assignees

No one assigned

    Labels

    Projects

    Status
    Backlog

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions