AssetUPNP on Intel Synology - done. Anyone interested?

Posted by: Gummibando on 22 June 2017

After a bit of fiddling with the – officially unsupported – install instructions for the ARM/RaspberryPi Synology variant I managed to modify them to install the current AssetUPNP version on an Intel-based Synology NAS (DS 216+ II) with the most recent DSM version.

Still an unsupported config, but works reliably and totally like a charm.

If anyone is interested, I could distill my install process into a how-to.

Regards, Oliver

Posted on: 22 June 2017 by Mike-B

I did it a while back,  ARM,  but not Raspberry PI.  Yes it works OK,  but after due consideration I deleted it as I had a concern that a future Synology DSM update might be problematic & require some form of rework patch (thinking of the problems with officially 'supported' 3rd party Minimserver after an update)        I would be interested in seeing your install process & how it differs,     but far more interested in persuading me that my concerns over DSM update consequences are unfounded.

Posted on: 23 June 2017 by nbpf
Mike-B posted:

I did it a while back,  ARM,  but not Raspberry PI.  Yes it works OK,  but after due consideration I deleted it as I had a concern that a future Synology DSM update might cause a breakdown (thinking of the problems with officially 'supported' 3rd party Minimserver with updates)        I would be interested in seeing your install process & how it differs,     but far more interested in persuading me my concerns over DSM update consequences are unfounded.

This is for me a reason for not using a NAS for running a UPnP server. Any low power, headless computer running a minimal Linux distribution offers more flexibility, can run 24/7 and does not need to be updated if one does not wish to do so. I run MinimServers on Raspberry Pi and FitPC devices. The FitPC3 is a very solid device. It comes in a black, die-cast aluminium case very similar to Naim's enclosures. With an (internal or external) SSD drive and Minim + upmpdcli, it makes a perfect UPnP server and USB renderer. There is nothing wrong with NASes, of course.  But it seems to me that their role in music playback systems is a bit overestimated. If the main goal is running a UPnP server (and perhaps a UPnP renderer), a NAS is perhaps not the most natural choice.

Posted on: 23 June 2017 by ChrisSU

[@mention:23389351206659471] is this your preference based on any sound quality improvement vs a NAS with onboard server, or is it to allow you to set up and manage your music in a way you prefer? Both valid reasons for doing it, perhaps, but I'm just trying to understand what benefits this might bring to justify the extra expense, time and clutter.

Apologies to the OP for the thread drift.

Posted on: 23 June 2017 by Mike-B

To expand a bit on the thread drift,  ChrisSU does raise a question re SQ improvements with FitPC3 vs NAS & if so how?  I've always assumed media server software was a means of communication between the server & renderer to establish a data stream & that the software as such does not affect SQ.   

I accept the alternatives to NAS are available but the OP & most other forumites do use NAS's & as this is specific to Synology (my NAS) & to get it back on thread,  will the install of Asset on Synology be affected by Synology's regular DSM updates?? 

Posted on: 23 June 2017 by Mr Underhill

Hi Oliver,

Can I suggest you post it in any case. Others may well find it of use in teh future and, if nothing else, Naim will backup your post and you may need to refer to it in a couple of years.

In my case I moved from my NAS to an LPSU powered RPi3 as I found that with LMS it sounded better to my ears.

M

Posted on: 23 June 2017 by Gummibando
Mike-B posted:

To expand a bit on the thread drift,  ChrisSU does raise a question re SQ improvements with FitPC3 vs NAS & if so how?  I've always assumed media server software was a means of communication between the server & renderer to establish a data stream & that the software as such does not affect SQ.   

I accept the alternatives to NAS are available but the OP & most other forumites do use NAS's & as this is specific to Synology (my NAS) & to get it back on thread,  will the install of Asset on Synology be affected by Synology's regular DSM updates?? 

Mike,

it should not. The Asset files are installed in /usr/local, so they should be safe from changes to the base Synololgy system. The only thing that is currently located within in the "system" realm is the init file which auto-starts and stops Asset when the Synology OS starts/stops. After reading a bit through the Synology developer documentation, there is a way to start packages via a script from usr/local, but as I am only a level 1 nerd, I have not yet figured out how this works.

The install in its current form "survives" both a soft restart and a power cycle. The only way to find out if it holds up to a system update is to wait for one. As Synology regularly releases minor updates it should not be a long wait.

Posted on: 23 June 2017 by Mike-B

OK thanks for the info Gummibando.   Like I said in my first post I did install Asset & then chose to uninstalled for fear of a DSM update rendering it inoperable at an inconvenient time.     I liked Asset when I used it on a buddies QNAP/Linn & ditto when it was on my Synology,  but did I like it that much better than Synology's 'Media Serve' ??? in the cold light of day it's just different & smarter with the browsing options,  but would I like as much if it went belly up & needed a reinstall or a patch.???    

Posted on: 23 June 2017 by Gummibando
nbpf posted:
Mike-B posted:

I did it a while back,  ARM,  but not Raspberry PI.  Yes it works OK,  but after due consideration I deleted it as I had a concern that a future Synology DSM update might cause a breakdown (thinking of the problems with officially 'supported' 3rd party Minimserver with updates)        I would be interested in seeing your install process & how it differs,     but far more interested in persuading me my concerns over DSM update consequences are unfounded.

This is for me a reason for not using a NAS for running a UPnP server. Any low power, headless computer running a minimal Linux distribution offers more flexibility, can run 24/7 and does not need to be updated if one does not wish to do so. I run MinimServers on Raspberry Pi and FitPC devices. The FitPC3 is a very solid device. It comes in a black, die-cast aluminium case very similar to Naim's enclosures. With an (internal or external) SSD drive and Minim + upmpdcli, it makes a perfect UPnP server and USB renderer. There is nothing wrong with NASes, of course.  But it seems to me that their role in music playback systems is a bit overestimated. If the main goal is running a UPnP server (and perhaps a UPnP renderer), a NAS is perhaps not the most natural choice.

What is the point of your reply? I offered a receipt for a strawberry cake and then you shift the discussion to if a gas or an electrical oven is better.

The reason for me to have a NAS is that it fits my use case perfectly. My NAS is a low power, headless computer with a small Linux distribution which offers maximum flexibility, can run 24/7 and I can choose to not run updates as I wish. I really don't care what the housing looks like as the NAS is hidden away from plain sight in my networking cupboard. With its redundant internal drives and external automatically backup-ed drive it not only makes for a perfect UPNP server, but also holds all my family photos, videos or relevant personal documents in fault-tolerant way. It runs the management software for my enterprise-grade WiFi hardware in a Docker container, it serves some files for a very specific networking setup in my house, it r. Et cetera.

All this in a convenient package that took me about 1 minute to install the drives and about 15 minutes to get the system running with a super-easy-to-use UI. The thing is, running the UPNP server is not the main goal of my NAS, but only one of many functions it provides.

Posted on: 23 June 2017 by nbpf
ChrisSU posted:

[@mention:23389351206659471] is this your preference based on any sound quality improvement vs a NAS with onboard server, or is it to allow you to set up and manage your music in a way you prefer? Both valid reasons for doing it, perhaps, but I'm just trying to understand what benefits this might bring to justify the extra expense, time and clutter.

Apologies to the OP for the thread drift.

I have not compared NAS devices vs. FitPC or Raspberry Pi from the point of view of sound quality. In fact I have not even carefully compared my FitPC3 with a Raspberry Pi. It is not that I am not interested in sound quality, of course. But I find it very difficult to make careful comparisons.

I am planning to compare a Raspberry Pi with a Hifiberry Digi+ Pro hat with BNC spdif connector running MinimServer and upmpdcli against a Core later this year.

My reasons for preferring a small dedicated computer rather than a NAS for running a UPnP server are minimality, flexibility and usability.

Minimality: I do not like the idea to start with a system running a lot of applications and deselect those components that I do not need. I prefer to install a minimal system (no desktops, no window managers, no servers apart from UPnP and ssh, ...) and only add components that I actually need. There is nothing wrong doing it the other way round, but I prefer doing it this way. Another advantage of minimal installations is that one can easily keep images of a running system and recover should a disk failure occur. I never had one, luckily. But it can always happen. On a Raspberry Pi, making images of the system is particularly simple: just switch off the Pi, take out the micro SD card and make a dd copy of it. With minimal installations, this is also very fast. I like to run my systems on small SSD drives. NAS usually come with pre-installed systems, I am not sure that one can select the system's drive to be a small SSD.

Flexibility: with a small computer, I do not risk running into the problems pointed out by the OP. I can choose a computing platform that supports the UPnP servers that I am interested in deploying. I do not need to be concerned with the consequences of OS updates since I have full control on those updates. I can easily compile components from sources if I fancy to do so. I can install tools for data synchronization and backup, configure the device to run ans an access point ...

Usability: Small computers are ... small, fanless, less intrusive, more portable than NAS devices. They are nicer than NASes, in my view. I can take a Raspberry Pi with me on holiday and have a full fledged UPnP server and replay system. On a Pi or on a FitPC, I can run a UPnP server and a UPnP renderer. I can connect them directly to a DAC v1 or (via USB -> SPDIF brigde) to a Naim DAC. For this use case, I do not need any wired connections: a RPi with a Hifiberry Digi+ Pro with BNC connector offers the same functionalities of a Core with much better support for classical music through the UPnP server and with support for Qobuz, Tidal, etc. built in the renderer.

I am far from arguing that NAS are bad UPnP servers or that they are not useful, of course! They are indeed great devices. And it goes without saying that others may find NAS devices more convenient than small computers for running UPnP servers.

I just want to draw the attention to the fact that the problems pointed out by the OP are a consequence of running UPnP servers on a NAS. This is doable, of course. But it is neither a necessary nor, in many circumstances, a very natural choice.

Posted on: 23 June 2017 by alan33
Gummibando posted:
[The Intel Synology] runs the management software for my enterprise-grade WiFi hardware in a Docker container

Hi gummi -

I'm happy enough with MinimServer on my Synology but agree that it would be useful to find your strawberry cake recipe for installing Asset here on the forum. I encourage you to post the steps!

If your enterprise grade WiFi hardware control and management software is for the Ubiquiti units, I'd appreciate a sketch of what was involved to get that running in the Docker container.

Your thoughts on in-home wifi access performance, including seamless handoff to the strongest access point and, if possible, observations on creating separate internal networks each with isolated connectivity to their own internal resources and joint access to internet through your ISP modem / router would be a total bonus!!! (I tried with a managed switch, but my router does not support what I came to think of as a "layered" vlan beneath the structure it uses to separate the tv from the Ethernet).

Seems like you know what you're doing and have a use case similar to my own in the sense that your Intel Synology is really just a tiny headless low power Linux box hiding in the basement and providing a huge variety of functionality for your family. Thanks in advance for any pointers  

Regards, alan

Posted on: 23 June 2017 by nbpf
Gummibando posted:
nbpf posted:
Mike-B posted:

I did it a while back,  ARM,  but not Raspberry PI.  Yes it works OK,  but after due consideration I deleted it as I had a concern that a future Synology DSM update might cause a breakdown (thinking of the problems with officially 'supported' 3rd party Minimserver with updates)        I would be interested in seeing your install process & how it differs,     but far more interested in persuading me my concerns over DSM update consequences are unfounded.

This is for me a reason for not using a NAS for running a UPnP server. Any low power, headless computer running a minimal Linux distribution offers more flexibility, can run 24/7 and does not need to be updated if one does not wish to do so. I run MinimServers on Raspberry Pi and FitPC devices. The FitPC3 is a very solid device. It comes in a black, die-cast aluminium case very similar to Naim's enclosures. With an (internal or external) SSD drive and Minim + upmpdcli, it makes a perfect UPnP server and USB renderer. There is nothing wrong with NASes, of course.  But it seems to me that their role in music playback systems is a bit overestimated. If the main goal is running a UPnP server (and perhaps a UPnP renderer), a NAS is perhaps not the most natural choice.

What is the point of your reply? I offered a receipt for a strawberry cake and then you shift the discussion to if a gas or an electrical oven is better.

The reason for me to have a NAS is that it fits my use case perfectly. My NAS is a low power, headless computer with a small Linux distribution which offers maximum flexibility, can run 24/7 and I can choose to not run updates as I wish. I really don't care what the housing looks like as the NAS is hidden away from plain sight in my networking cupboard. With its redundant internal drives and external automatically backup-ed drive it not only makes for a perfect UPNP server, but also holds all my family photos, videos or relevant personal documents in fault-tolerant way. It runs the management software for my enterprise-grade WiFi hardware in a Docker container, it serves some files for a very specific networking setup in my house, it r. Et cetera.

All this in a convenient package that took me about 1 minute to install the drives and about 15 minutes to get the system running with a super-easy-to-use UI. The thing is, running the UPNP server is not the main goal of my NAS, but only one of many functions it provides.

My reply was an answer to Mike-B who seemed to have (had) concerns running Asset on a Synology. My remark has been that NASes are not necessarely the most obvious choice for running UPnP servers. I have not argued that you should not use a NAS or that you should not run Asset on your NAS, of course! Best, nbpf

Posted on: 23 June 2017 by nbpf
Mike-B posted:

...

I accept the alternatives to NAS are available but the OP & most other forumites do use NAS's & as this is specific to Synology (my NAS) & to get it back on thread,  will the install of Asset on Synology be affected by Synology's regular DSM updates?? 

If Asset uses system libraries, it can obviously be affected by system upgrades. That does not mean that it will be affected by a specific upgrade, of course. If Asset has been installed in a sandbox it will likely not be affected by system upgrades.

Posted on: 23 June 2017 by Gummibando
nbpf posted:
Mike-B posted:

...

I accept the alternatives to NAS are available but the OP & most other forumites do use NAS's & as this is specific to Synology (my NAS) & to get it back on thread,  will the install of Asset on Synology be affected by Synology's regular DSM updates?? 

If Asset uses system libraries, it can obviously be affected by system upgrades. That does not mean that it will be affected by a specific upgrade, of course. If Asset has been installed in a sandbox it will likely not be affected by system upgrades.

It does not. It is self-contained. Only the automatic start/stop functionality currently relies on the base system.

Posted on: 23 June 2017 by Gummibando

nbpf,

dammit. I changed the paths from absolute to relative while typing, This happens when you (e.g. Me) copy and paste. Can you please delete your post containing my post. I will repost it with the corrected path (already deleted the original one). Would not be good to fiddle with the system root bin folder

Cheers, Oli

Posted on: 23 June 2017 by nbpf
Gummibando posted:

nbpf,

dammit. I changed the paths from absolute to relative while typing, This happens when you (e.g. Me) copy and paste. Can you please delete your post containing my post. I will repost it with the corrected path (already deleted the original one). Would not be good to fiddle with the system root bin folder

Cheers, Oli

Post deleted. Best, nbpf

Posted on: 23 June 2017 by Gummibando

ATTENTION!

The original post contained a small but significant error due to my inability to copy and paste correctly. If you already read the original post, forget what you saw there. The erroneous original post has been deleted, the corrected version is below.

"These aren't the droids you're looking for." *wields hand*

Thanks to nbpf for pointing out my mistake. So, again …

 

There you go. I tried to comment every step as good as possible.

This was installed from a Mac using the latest macOS, As I have actively used a Windows machine last time some 15 years ago, you have to adapt the SSH/terminal connection part yourself. I have no idea what the weapon of choice is for SSH connections from a Windows machine nowadays. Also, this applies to the most recent DSM version (6.1.2).
Actions are plain text, command line prompts in <code> style and comments are italic.
 

If not already active, enable the SSH service on the Synology NAS via the Diskstation Manager under Control Panel > Terminal & SNMP > Terminal.

Logout from DSM.

Open Terminal.app.

ssh admin@address_of_diskstation

Enter the admin password.

cd /usr/local/bin

This changes to a folder where user based installs can/should be made.

sudo -i

Esther the admin password (has to be done again to gain root privileges).

You are now the root user. Be careful, you can now break things.

mkdir asset

This creates the directory to install AssetUPNP.

chmod 777 asset

Change the folder permissions for the created folder.

cd asset

Change into the created folder.

wget http://www.dbpoweramp.com/install/AssetUPnP-Linux-x64.tar.gz

This downloads the AssetUPNP install archive from the dbpoweramp website. The URL above is for the Intel 64-Bit variant. If you have a 32-bit Synology NAS, the URL would be http://www.dbpoweramp.com/install/AssetUPnP-Linux-x86.tar.gz. These are the URLs for the respective "latest" version for Linux from the website.

Wait for the download to complete.

tar -zxvf *.gz

This extracts the downloaded archive file.

rm *.gz

This removes the downloaded archive file. You can delete it as it is no longer needed.

Now something weird happened. After looking at the extracted files via ls -la, all the extracted files had a user and group id of "1000". I don't know if this is normal or happened only on my system. So I had to change the user/group to root. If your extracted files show "root root" user/group, you can skip the next step.

chown -R root:root bin

This changes the user and group of the folder "bin" (containing all the Asset files) to "root" (the system user with the highest privileges).

cd bin

Change into the Asset bin folder

./AssetUPnP &

This starts the AssetUPNP server. The "&" at the end "detaches" the command line from the process running. Otherwise closing the Terminal.app window on macOS would kill (quit) the Asset process.
Now AssetUPNP should be running and the config page should be available at http://address_of_diskstation:45537. The address should also be visible in the command line readout.

On the Asset config page, the "Watched media folders" entry should be the Synology volume name followed by the shared folder name. As an example, in my case it is /volume1/audio.
 
Hope this helps.
I have to post the actions to setup the autostart feature in another installment as I'm currently typing on an iPad and the forum formatting features are a pain to use with a touchscreen device.

Take care, Oli

Posted on: 23 June 2017 by Gummibando

"Esther the admin password (has to be done again to gain root privileges)."

This obviously means "Enter the …". The 15 minute article edit time window was already expired.

Esther is the name of my daughter and the iPad auto-correction apparently learned that I type the name of my daughter much more often than Enter. Good iPad

Posted on: 23 June 2017 by nbpf
Gummibando posted:
nbpf posted:
Mike-B posted:

...

I accept the alternatives to NAS are available but the OP & most other forumites do use NAS's & as this is specific to Synology (my NAS) & to get it back on thread,  will the install of Asset on Synology be affected by Synology's regular DSM updates?? 

If Asset uses system libraries, it can obviously be affected by system upgrades. That does not mean that it will be affected by a specific upgrade, of course. If Asset has been installed in a sandbox it will likely not be affected by system upgrades.

It does not. It is self-contained. Only the automatic start/stop functionality currently relies on the base system.

I hope it is self contained but I do not see why this should be the case. The directory obtained by extracting AssetUPnP-Linux-x64.tar.gz  contains very little infrastructure and a large executable. I do not see any reason why this executable should not use system libraries. Self contained subsystems are usually implemented using some kind of sandboxes. That does not appear to be the case here.

Posted on: 24 June 2017 by Gummibando

Now for the auto start/stop part.

 

If not already active, enable the SSH service on the Synology NAS via the Diskstation Manager under Control Panel > Terminal & SNMP > Terminal.

Logout from DSM.

Open Terminal.app.

ssh admin@address_of_diskstation

Enter the admin password.

sudo -i

Enter the admin password again to gain root privileges.

You are now the root user. Be careful, you can now break things.

 

## If you are still root user from the install process from the earlier post, you can skip the part above and start here.

 

cd /etc/init

This switches to the directory where – simply speaking – the system startup mechanism of the Synology base Linux system looks for stuff to start while booting.

vi asset.conf

This opens the "vi" command line text editor with a new empty file named "asset.conf".

Unfortunately, vi seems to be the only available text editor on the Synology base Linux system. It is, to be diplomatic, not the most intuitive piece of software.

In the vi window, you should see a blinking prompt at the top left corner and the readout "asset.conf" [New File] at the bottom.

Press the a key on your keyboard.

This switches to insert/append mode.

The bottom readout should now be ––INSERT––

Now copy the following three lines of text from below and paste it into your empty document in the vi text editor.

start on started synonetd
stop on runlevel [06]
exec /usr/local/bin/asset/bin/AssetUPnP

This basically tells when to start Asset (when the base system starts), when to stop Asset (when the NAS reboots) and where the actual Asset binary file to start is located.

Press the ESC (Escape) key on your keyboard.

The bottom readout ––INSERT–– should disappear.

Enter :wq on your keyboard.

This should appear in the bottom readout. This is the vi command sequence to write (save) the file and quit.

vi closes and you should be back in the directory view.

You can check the created file by using ls -l asset.conf. It should have a filesize of 88 bytes.

Reboot the system via reboot. After it comes back online, the Asset server should be started alongside all other services.

 

This should be it.

Cheers, Oli

Posted on: 24 June 2017 by Gummibando

OMG. Am I the last person on earth to see that the Asset config page HTTP port number (45537) is basically "ASSET" in nerd writing?