Roonifying my systems

Curiosity got the better of me so I’ve just tried downloading the X86_64 version of Logitech Media Server (LMS) which is the one that I need for my QNAP.

It’s installed perfectly and I had it up and running in 10 minutes.

This is what I did.

  • Downloaded the correct .qpkg package from Qnapstore. Selection depends on what processor you have in your QNAP
  • Installed it manually in the QNAP App Center (click on the install button and browse to your downloaded file)
  • Once installed click on Open to open LMS
  • Skip the account setup stage and the music library setup (not required to use the plugin).
  • Click on settings, and then Plugins.
  • Unticked all plugins and ticked UPNP/DNLA Bridge. This ensures you only run what is necessary
  • Allowed LMS to restart
  • Clicked Settings, for the UPNP/DNLA Bridge
  • In the Extra Command Line Options enter -s ip_address_of_roonserver - This tells LMS where Roon is located
    image (make sure you change the IP address to your Roon Server’s address)
  • Selected the Static Library and clicked on the checkbox to start
  • Once started, clicked on the Generate button on the Configuration File line to create a config file
  • Next you need to edit the config file. To do this you will need to download WinSCP which will allow you to reach area’s on the QNAP that the FileStation app won’t allow.
  • Download WinSCP and install it
    You need to enable SSH access on your QNAP from the control panel
  • Use WinSCP to connect to the QNAP (use your admin login, same as you use to administer the QNAP in a browser).
  • Locate the Config file by browsing in WinSCP. The path is shown in the LMS configuration page
  • When you have found the file in WInSCP right click the file and choose Edit
  • Find the line
    <roon_mode>0</roon_mode>
    and change to
    <roon_mode>1</roon_mode>
  • Save and return to the LMS Config page. Click on the Restart button to restart the bridge

That shoudl be it!

All your UPNP devices should show in the list of players section at the bottom of the page. It’s easier to enable them one by one (click apply and restart the bridge) so you can identify and name them in Roon.

These instructions should work to Roonify any legacy Naim streamer, using lms-to-upnp running within Logitech Media Server

Note: You cannot run LMS and Roon on the same server, so if you have Roon running on your QNAP, you cannot use this method.

3 Likes

Thanks for the detailed instructions - very helpful.
My Qnap has an Arm v7 processor (according to Qfinder). None of the variations from the Qnap shop installed. So I’m left scratching my head.

After a little more research it seems that ready built RPi for HiFi are about the same price as the Audiostore solution ~£300. Obviously a self assembled RPi is about half that, but perhaps at a reduced sound quality?

However, given that the end point is a Unitiqute, perhaps building it from scratch as @Jack has done is the best option.

A combination of @Jack approach using Pi running LMS and installing LMS as per @trickydickie and only using lms 2 upnp ie UPNP/DNLA bridge would provide a tidy solution

This would allow all your Uniqutes to be roonified by one box.
I have found running lms2 upnp on iMac no problem. I note you said you had lms2Upnp working on Mac Mini. It runs on my iMac even when sleeping so no big issue if Mini left on 24/7

I may tinker with LMS on Pi for fun :slightly_smiling_face:

Hope you make progress

CK

1 Like

It’s very easy to get running and very stable. I have it on a Rpi 4, it’s been doing it’s thing silently and no hiccups, the dev did an impressive job coding it.

2 Likes

I’ve had no luck with LMS on my RPi 4… but will keep trying. Any hints would be helpful …
In the meantime I’ve got HiFiberry up and running today.

See if any of this helps…

Login into RPi (assumes a base build of RPi with “2019-09-26-raspbian-buster”)

sudo mkdir UPnPBridge

cd UPnPBridge/

sudo wget https://sourceforge.net/projects/lms-plugins-philippe44/files/UPnPBridge-1.25.1.zip

Check the hash of the downloaded file…

openssl dgst -sha1 UPnPBridge-1.25.1.zip

should be (4230a24df62447a59c56236727b90fed680a7fde)

sudo unzip UPnPBridge-1.25.1.zip
sudo rm UPnPBridge-1.25.1.zip

cd /home/pi/UPnPBridge/Bin
sudo chmod 755 squeeze2upnp-armv6hf-static

I’m assuming this is the correct executable for the RPi4 processor

Launch the executable to create the initial config file…

./squeeze2upnp-armv6hf-static -i config.xml

Wait til it exits (maybe 30 seconds or so)

Launch it again without the “config.xml” parameter…

./squeeze2upnp-armv6hf-static

This should start the executable and you should now be able to configure Roon and get your devices working appropriately

If necessary edit the config.xml file (might be useful to see Weta’s post in Feb 19 on the subject also)

e.g… sudo nano config.xml

1 Like

On first listen I can’t hear a difference between Roon via RPi/HiFiberry and the Naim app. All this on a ‘Qute been fed with a toslink cable from RPi. So I’m very happy. Now to follow @Jack instructions above with another RPi for the ‘Qute in the study.

2 Likes

They are great little devices, and shows you don’t have to spend a lot to get a decent streamer. I use two exclusively for headphones listening with USB Dacs and they sound great and two more run dedicated home made wireless speakers. Used to use one in main rig unitl I got the Atom.

2 Likes

Ok, based on those instructions and the changes to config.xml settings, I have a backup playback route to the SonoreUPnP, running on the RPi2 I use for Asset (running DietPi) and offering excellent same level of functionality.

Just note for the RPi platform you need to use the squeeze2upnp-armv6hf version.
Config.xml changes are

<roon_mode>1</roon_mode>
<sample_rate>192000</sample_rate>

If you set ‘FLAC Compression’ in Roon to off it will send WAV to the Naim player for all PCM formats, and then with 'DSD over PCM v1.0 (DoP), DSD is sent, as is.
And with ‘No MQA Support’ and the MQA Core Decoder enabled, the Roon Core will unfold MQA to a max rate of 24/96
image
image

In the Naim App you get ‘Streaming from LMS’ as source - the SonoreUPnP, has ‘Streamingxxx’ where xxx is the number of tracks bridged over.

So good job, and a useful excercise on a ‘locked down’ Sunday afternoon in Dublin.

1 Like

Simon…thanks for the update on the processor type, should have realized it was ARM! I’ll update my post in case anyone comes back later to use it.

Hope the lock down in Dublin isn’t affecting you too much

Also rather than use the .service script, I just updated my crontab to include a further @reboot command

The -x ensures it uses the correct configuration.xml with changes detailed above

Lockdown is necessary, having the pubs, clubs, restaurants still open didn’t make sense to the public or the workers. Dublin without open pubs, now who would of imagined that? Just shows how serious things are.

At long last I’ve got another Rpi and managed to load and execute the lms2upnp file.
Roon sees my UPnP players but when selected nothing is played despite Roon says it is. I’ve looked at the input settings but nothing seems to get the music playing.
Do you or @simon.pepper, or anyone(e.g. @trickydickie ) else have any suggestions please?
Best
Steve

Check the Config.xml file - it needs to have the Roon mode set to 1
<roon_mode>1</roon_mode>

Also make sure that the sample rate is set to 192k, as the default is 4k
<sample_rate>192000</sample_rate>
[/quote]

1 Like

Thanks for the tip.
Excuse my ignorance but what’s the best way to edit my config file on a RPi?
Ah I see there is tool called Nano - the learning begins!

Yup, within the directory “sudo nano confit.xml”
make the edits
Carl-X and save the changes

1 Like

Thanks for that guide.
But I’m stuck …
First in the terminal, I can’t get nano to run
Second, I have noticed that once I’ve run the script in terminal, and return some time later the instructions need to be entered again. I’m not sure if I need to close terminal or save the instructions?
Third, I’m wondering if nano has not been installed?

All this was late last night - will try afresh this morning after walking the dog.

Nano will be installed by default with the base build of Raspbian Buster.

When you say you can’t get it to run…what response do you get to “sudo nano config.xml”

You only need to enter…"./squeeze2upnp-armv6hf-static" once and you can close the window afterwards. If you reboot the RPi you will have to enter “./squeeze2upnp-armv6hf-static” again unless you set something up to autostart after boot. You could create a service or as Simon has done add an entry to crontab

1 Like

Thanks Jack - day off yesterday. So will tackle it today.

Right I have an ‘error loading config file’. I think that this is because it has not been created, certainly I can’t see it in the file manager.

Scratching my head here as Rpi site not much use. I’m sure I’ve made an elementary mistake, probably running before I can walk with these little beasts.

Stick with it - the performance I get from my RPi2 on DietPi & LPS PSU with the Bridge is very close to the SonoreUPnP Bridge on my UltraRendu with LPS 1.0

1 Like

Hi

I followed the instructions above on Pi and had the same response re config file.
I think it is caused by the config file not being created due to the user not having correct permissions in directory to create file.
I managed to bodge it but am certainly not qualified to explain how to achieve the result correctly.

CK

1 Like