Bubbleupnp and upmpdcli on same server

332 views
Skip to first unread message

John Swartz

unread,
Jan 1, 2022, 7:44:21 PM1/1/22
to BubbleUPnP
I am pretty new to networked media, but not to networking or programming generally.

I have set up bubbleupnp and upmdcli up on the same raspberry pi 4 server. Using the bubbleupnp android app, I can do most things as expected. However, I cannot control volume. Further, the renderer doesn't show up in the bubbleupnp renderers list for configuration.

If I had to guess, it's because one, or both of these programs isn't configured to transmit its discovery packets to the network loopback device, so they're essentially blind to each other but not to external devices.

Maybe it's something else? Has anybody else (more) successfully run a setup like this?

Thanks in advance, and sorry for my imprecise networking language.

Tim Barker

unread,
Jan 2, 2022, 12:36:10 AM1/2/22
to BubbleUPnP
I've had the same problem for ages, after an upgrade following a move to using upmpdcli which worked ok at first.  I suspect it is simply that the 2 do not talk to each other properly perhaps due to network firewall issues or something to do with setup though I hsven't found out what.  I just live with it but it is a pita requiring manual volume control on the playback device.

Love to see a workaround if there is one...

Tim Barker

--
You received this message because you are subscribed to the Google Groups "BubbleUPnP" group.
To unsubscribe from this group and stop receiving emails from it, send an email to bubbleupnp+...@googlegroups.com.
To view this discussion on the web visit https://groups.google.com/d/msgid/bubbleupnp/9a349619-e758-4f17-82fd-48e326470ee9n%40googlegroups.com.

Bubblesoft

unread,
Jan 3, 2022, 5:32:07 AM1/3/22
to BubbleUPnP
I'm a bit confused by your explanation.

- First, what is your renderer brand and model ?
- "the renderer doesn't show up in the bubbleupnp renderers list for configuration":  do you mean the renderer is not listed in the 'BubbleUPnP Server' renderers tab ?
- are you using 'BubbleUPnP Server' to make an OpenHome renderer from your UPnP renderer (but it would require that the answer is no to previous question) ?
- " Using the bubbleupnp android app, I can do most things as expected": which renderer are you contolling ? The OpenHome one managed by BubbleUPnP Server or
directly the UPnP renderer ?

Bubblesoft

unread,
Jan 3, 2022, 5:35:05 AM1/3/22
to BubbleUPnP
Hhmmm sorry I missed that the renderer was upmpdcli.

However, upmpdcli can be both a UPnP and an OpenHome renderer by itself, or an OpenHome renderer wrapped by BubbleUPnP Server (if configured as such).
So which one are you controlling (what is its name in Android BubbleUPnP) ?

John Swartz

unread,
Jan 3, 2022, 10:14:39 AM1/3/22
to Bubblesoft, BubbleUPnP
- First, what is your renderer brand and model ?
-- it's a Raspberry Pi 4 with a Hifiberry DAC HD2 with MPD and umpdcli, and this same device and network interface is also running bubbleupnp

- "the renderer doesn't show up in the bubbleupnp renderers list for configuration":  do you mean the renderer is not listed in the 'BubbleUPnP Server' renderers tab ?
-- correct

- are you using 'BubbleUPnP Server' to make an OpenHome renderer from your UPnP renderer (but it would require that the answer is no to previous question) ?
-- attempting, but not possible due to the situation described in the previous question

- " Using the bubbleupnp android app, I can do most things as expected": which renderer are you contolling ? The OpenHome one managed by BubbleUPnP Server or
directly the UPnP renderer ?
-- i am gathering from this line of questions that i am probably misunderstanding what exactly the situation is. i suppose that i was in fact controlling the upnp renderer (mpd+upmpdcli) directly from the UBubblepnp app from my phone/other devices directly.

Thanks for your help! I'd like to see if we can solve this mainly for the sake of the raspberry pi community overall. In the meantime, I switched to using gmrender-resurrect, which does not have any of the issues I described.

You received this message because you are subscribed to a topic in the Google Groups "BubbleUPnP" group.
To unsubscribe from this topic, visit https://groups.google.com/d/topic/bubbleupnp/4jHnxzTZ5DY/unsubscribe.
To unsubscribe from this group and all its topics, send an email to bubbleupnp+...@googlegroups.com.
To view this discussion on the web visit https://groups.google.com/d/msgid/bubbleupnp/80c0062b-b298-4d89-8cbd-220d5c00791fn%40googlegroups.com.

Marmite Sandwich

unread,
Jan 3, 2022, 12:07:29 PM1/3/22
to BubbleUPnP
Dunno if this helps, but I have a similar setup to the one that John describes, except that the Pi is a 3B, and the BubbleUPnP server is running on a Windows PC. Upmpdcli is set up in the config to be an Openhome renderer, and therefore the Pi renderer is not checked in the BubbleUPnP server to create an Openhome renderer. Various other renderers are set up in the server to create an Openhome renderer, because they do not have this functionality and I want it. I use Android BubbleUPnP and Windows Upplay to manage the queue(s) and this works for me. For devices where an Openhome renderer is created by the server, both the Openhome renderer and the non-Openhome renderer show up in the list of renderers, and you have to be careful not to use both at the same time.
Regards, Marmite.

Richard

unread,
Jan 5, 2022, 7:39:03 AM1/5/22
to BubbleUPnP

I’ve been using upmpdcli on a pi, with a DAC attached, for years now, and it’s been rock solid, a really good, affordable setup. 

Are you attempting to use it with something like Moode Audio or Volumio?  If so, you should find it relatively straightforward to start the rendering capabilities of upmpdcli from its interface.   If you haven’t, you may need to modify the contents ‘upmpdcli.conf’ to get it running, but this isn’t too complex and good instructions are provided here: https://www.lesbonscomptes.com/upmpdcli/.  Once you think you’ve got upmpdcli running you can check its status, connecting to the Pi with SSH and then entering ‘systemctl status upmpdcli’



On Monday, 3 January 2022 at 15:14:39 UTC grapho...@gmail.com wrote:

Bubblesoft

unread,
Jan 5, 2022, 9:01:43 AM1/5/22
to BubbleUPnP

In Android BubbleUPnP, upmpdcli can be listed as 3 different renderers, with names:

- "UpMpd"  :this is upmpdcli as standalone OpenHome renderer
- "UpMpd-UPnP/AV"  -> upmpdcli as a regular UPnP AV renderer. This one only show up by default with recent versions of upmpdcli
- "UpMpd-UPnP/AV (OpenHome)" -> upmpdcli as an OpenHome renderer wrapped by BubbleUPnP Server

Now from your description, you did not have the third one in that list.
Not sure why upmdcli is not appearing in BubbleUPnP Server in the renderer tab, as an UPnP AV renderer.
If you are not seeing "UpMpd-UPnP/AV"  in Android BubbleUPnP it could be be that your upmpdcli install is not running the UPnP AV version of the renderer.
Look into /etc/upmpdcli.conf if  "upnpav=1".
Using an up to date version of upmpdcli might also help.

John Swartz

unread,
Jan 5, 2022, 10:02:41 AM1/5/22
to Bubblesoft, BubbleUPnP
Interesting, I was not aware that upmpdcli should announce itself as a renderer, or of the upnpav config variable.

In any case, it did not show up anywhere, neither on my Android phone nor in the bubbleupnp renderers list.

As I mentioned, I switched to using the gmrender-resurrect renderer and it worked straight away. I'll give upmpdcli another try when I have some time to spare and report back here.

Thanks for the info everybody!

--
You received this message because you are subscribed to a topic in the Google Groups "BubbleUPnP" group.
To unsubscribe from this topic, visit https://groups.google.com/d/topic/bubbleupnp/4jHnxzTZ5DY/unsubscribe.
To unsubscribe from this group and all its topics, send an email to bubbleupnp+...@googlegroups.com.

Marmite Sandwich

unread,
Jan 5, 2022, 12:29:42 PM1/5/22
to BubbleUPnP
Extracted from my copy of upmpdcli.conf:
# <var name="friendlyname" type="string"><brief>"Friendly Name" for the
# UPnP Media Renderer.</brief><descr>This will be displayed by most Control
# Points to identify the Renderer. Some OpenHome Control Points may display
# the 'ohproductroom' value instead.</descr></var>
friendlyname = RasPiWesto

# <var name="upnpav" type="bool" values="1"><brief>Enable UPnP AV services
# (0/1).</brief><descr>This is set by default, but it may useful to switch
# it off with some OpenHome Control Points which are too easily confused by
# the presence of UPnP AV services.</descr></var>
upnpav = 0

# <var name="openhome" type="bool" values="1"><brief>Enable OpenHome services
# (0/1).</brief><descr>This defaults to 1, as OpenHome queuing is superior
# for most usages. There should be little reason to turn it
# off.</descr></var>
#openhome = 1

also:
# <grouptitle>OpenHome parameters</grouptitle>

# <var name="ohproductroom" type="string"><brief>The name of the room where
# the Product is located.</brief><descr>Set to “Main Room” by default,
# displayed in place of the "friendly name" by some control points.
# ProductRoom is used to group the Product with other related Products in
# the same physical room (e.g. a source with a pre-amp). Products which are
# physically linked must always share the same ProductRoom
# name.</descr></var>
ohproductroom = WestoLounge

These renderer names appear respectively as RasPiWesto in BubbleUPnP for Android and Upplay for Windows and as WestoLounge in Linn Kazoo for all platforms. Hope this helps.
Regards,
Marmite

Tim Barker

unread,
Jan 22, 2022, 6:36:43 PM1/22/22
to John Swartz, BubbleUPnP
I'm not sure this has been followed up and answered but I think I've found the answer or at least a work around.  After several attempts at trying to find a workaround using ALSA plugins and many, many Google queries using the obvious keywords I finally came across a comment/announcement via the Raspberry Pi forum that Raspbian would be using the PulseAudio sound server with all new releases from Dec2020.

After installing this server, at least this seemed to be necessary with the the smaller version of Buster that I was using, and making further adjustments that seem to be necessary, voilà, I have a Raspberry3+ system running PulseAudio, BubbleUPnP, upmpdcli, minidlna and mpd with working volume control from within my Android Bubble App.  Now to get my other working the same way.

Adjustments I needed from the standard install included changs to mpd.conf

Changing the Alsa def in mpd.conf to
audio_input {
   type      "pulse"
   name    "Output"
   device   "hw:2,0"
   volume  "software"
}
hw:2,0 being my external usb soundcard.

Changing a line in /etc/pulse/system.pa from
"load-module module-native-protocol-unix"
to
"load-module module-native-protocol-unix auth-anonymous=1"

Creating a service file for pulseaudio (mine was in /etc/systemd/system) called pulseaudio.service though I think it might be better elsewhere(?).  Contents are
____________
[Unit]
Description=Pulseaudio sound server
After=avahi-daemon.service network.target

[Service]
Type=forking
ExecStart=/usr/bin/pulseaudio --realtime --no-cpu-limit --system --disallow-exit --daemon
ExecReload=/bin/kill pulseaudio

[Install]
WantedBy=multi-user.target
______________

Then enabling and starting the service and restarting mpd.  Seemed to work and think that was all I did.  

Tim.

On Sun, 2 Jan 2022, 10:44 am John Swartz, <grapho...@gmail.com> wrote:
--
You received this message because you are subscribed to the Google Groups "BubbleUPnP" group.
To unsubscribe from this group and stop receiving emails from it, send an email to bubbleupnp+...@googlegroups.com.
To view this discussion on the web visit https://groups.google.com/d/msgid/bubbleupnp/9a349619-e758-4f17-82fd-48e326470ee9n%40googlegroups.com.
Reply all
Reply to author
Forward
0 new messages