Jump to content
IGNORED

AudioLinux and NUC Troubleshooting and Tuning


rickca
Message added by austinpop

Summary of useful findings and recommendations

 

This section will be a living repository of useful info from this thread. It's very similar to a wiki and will be maintained by a small group of thread moderators.

 

Before you get started please refer to the Audio-Linux website to ensure you have the latest info and the proper versions of the OS. Audio-Linux.com  

 

**** Updated for AL 1.30 menu 118 or later.

 

  "First Run" setup for headless.  

 

Setup your NUC with a keyboard, mouse, and monitor to the NUC BIOS settings.  From the menu note the IP address of the machine to SSH into.  From a MAC the macOS terminal program supports SSH:

324537708_ScreenShot2019-01-28at3_02_19PM.thumb.png.739dc7f9cdb05e04da806c7c66877332.png

 

Then it is simpler to cut and paste into the terminal session. After entering the password for the audiolinuxuser you will be presented with the AL headless menu:

 

1518375894_ScreenShot2019-01-28at3_04_18PM.thumb.png.a7b2867a163f8f014e56e52ff69f94b4.png

 

Option 8 takes you to the command line for the following basic setup.  You will need to be the Root user for this setup and the su command first:

 

su

 

Fix the time zone:  (this is my timezone - look in directory /usr/share/zoneinfo)

 

timedatectl set-timezone America/Chicago
 

Setup and Start NTP daemon (to keep the system time in sync)

 

*** the config file is now properly filled in.

 

Now Start the daemon

 

timedatectl set-ntp true

 

 

NOTE: Sometimes the system takes a little while to get synced up.
 

Set hostname  (this provides a unique name for the machine on your network.  Replace <NAME> with your chosen name)

 

hostnamectl set-hostname <NAME> 
 

Once the above items are set up your machine is ready to be configured for say a Roon bridge/endpoint. That is done using the AL menu.  To return to the menu do the following commands.

 

exit

menu

 

----------------------------------

 

For most of us, the following basic settings are key.

From the configuration menu:

6. START and enable Roonbridge

15. SET Realtime Priority to extreme

16. ENABLE ramroot (reboot after)

 

Return to the main menu and reboot the NUC using 

 

11 Reboot

 

------------------

Roon Server setup is a bit more complex and we will cover it completely a bit later.  The key is where you are booting from and where the Roon database is stored.  In general; say a 32gb OPTANE "SSD".

 

  • You have to partition the SSD into a boot drive and a storage drive.  
  • The transfer the USB stick install to the boot partition.  
  • Reboot from the boot partition.  
  • Do the basic setup. Timezone and name
  • Transfer the Roon Database to the storage drive
  • Start the Roon Server
  • .....

 

----------------- 

The machine will reboot and from the display attached to the NUC you can watch it boot up and load into RAM.  Once the AudioLinux menu is showing the endpoint should be available in Roon.    This completes the basic startup sequence.  The system is ready to start testing.    

 

 

Recommended Posts

First an explanation.

 

After enabling Isolated CPU cores the script will

1) Change the default boot option to "Audiolinux BFQ with audio exclusive CPU cores"

2) Copy all audio systemd services to a version with the "2" suffix, that will start them in specific core(s) with the systemd option CPUAffinity

3) Stop all previous running audio services

 

After reboot, you should start/enable your audio service (in your case Roonbridge) and using the option "SHOW running audio services" you should see that now the name is roonbridge2.

 

Do you see roonbridge2, right?

 

AudioLinux --> https://www.audio-linux.com

developer of AudioLinux realtime OS

Link to comment

This is my output, if I choose core 3 as isolated. I will check if this is a problem about more than one isolated core later.

 

[root@archlinux audiolinux]# ps -T -e -o pid,psr,cmd | grep RoonBridge
 3308   3 /bin/sh /opt/RoonBridge/start.sh
 3313   3 RoonBridge --debug --gc=sgen --server RoonBridge.exe
 3313   3 RoonBridge --debug --gc=sgen --server RoonBridge.exe
 3313   3 RoonBridge --debug --gc=sgen --server RoonBridge.exe
 3313   3 RoonBridge --debug --gc=sgen --server RoonBridge.exe
 3313   3 RoonBridge --debug --gc=sgen --server RoonBridge.exe
 3313   3 RoonBridge --debug --gc=sgen --server RoonBridge.exe
 3313   3 RoonBridge --debug --gc=sgen --server RoonBridge.exe
 3313   3 RoonBridge --debug --gc=sgen --server RoonBridge.exe
 3551   3 RoonBridgeHelper --debug --gc=sgen --server RoonBridgeHelper.exe
 3551   3 RoonBridgeHelper --debug --gc=sgen --server RoonBridgeHelper.exe
 3551   3 RoonBridgeHelper --debug --gc=sgen --server RoonBridgeHelper.exe
 3551   3 RoonBridgeHelper --debug --gc=sgen --server RoonBridgeHelper.exe
 3551   3 RoonBridgeHelper --debug --gc=sgen --server RoonBridgeHelper.exe
 3551   3 RoonBridgeHelper --debug --gc=sgen --server RoonBridgeHelper.exe
 3551   3 RoonBridgeHelper --debug --gc=sgen --server RoonBridgeHelper.exe
 3551   3 RoonBridgeHelper --debug --gc=sgen --server RoonBridgeHelper.exe
 3551   3 RoonBridgeHelper --debug --gc=sgen --server RoonBridgeHelper.exe
 3554   3 /opt/RoonBridge/Bridge/processreaper 3551
 7941   0 grep RoonBridge
[root@archlinux audiolinux]# ps -T -e -o pid,psr,cmd | grep Raat
 8045   0 grep Raat
[root@archlinux audiolinux]# ps -T -e -o pid,psr,cmd | grep RAATServer
 3425   3 RAATServer --debug --gc=sgen --server RAATServer.exe
 3425   3 RAATServer --debug --gc=sgen --server RAATServer.exe
 3425   3 RAATServer --debug --gc=sgen --server RAATServer.exe
 3425   3 RAATServer --debug --gc=sgen --server RAATServer.exe
 3425   3 RAATServer --debug --gc=sgen --server RAATServer.exe
 3425   3 RAATServer --debug --gc=sgen --server RAATServer.exe
 3425   3 RAATServer --debug --gc=sgen --server RAATServer.exe
 3425   3 RAATServer --debug --gc=sgen --server RAATServer.exe
 3425   3 RAATServer --debug --gc=sgen --server RAATServer.exe
 8086   0 grep RAATServer

 

AudioLinux --> https://www.audio-linux.com

developer of AudioLinux realtime OS

Link to comment

https://gist.github.com/imrvelj/c65cd5ca7f5505a65e59204f5a3f7a6d

 

"Of importance is that this module is entirely unnecessary for most users.
It's simply a warning as these are commonly used modules for SAS/SCSI Disk Controllers in server hardware.

It's not recommended that you install these if you don't have such hardware in your system.
If you don't know what they are, don't install them.
Because if you did know what they are you'd know if you needed them to get your disks working."

AudioLinux --> https://www.audio-linux.com

developer of AudioLinux realtime OS

Link to comment
  • 1 month later...

If you have a version before 1.1.1, you should reinstall manually pstate-frequency (because of a bug in a previous version)

yaourt -S pstate-frequency

and reboot

 

Select MPD DAC is working fine here and also LMS. For specific problems of subscribers please contact me.

 

I remember that the menu is not designed for using numbers really, to select an option you should use arrow keys and Enter.

 

AudioLinux --> https://www.audio-linux.com

developer of AudioLinux realtime OS

Link to comment
28 minutes ago, austinpop said:

 

 

Thanks for the fix. I appear to have managed to avoid it, unless... Was this bug only occurring when used in conjunction with isolated cores? I have yet to use that feature, so perhaps that's why I did not see it.

 

I routinely twist maximum allowable torquage double-check frequency any time I reboot, to ensure my governor settings are still active.

 

 

No the fix has nothing to do with Audiolinux configuration, it was only a little bug in the previous version of pstate-frequency

AudioLinux --> https://www.audio-linux.com

developer of AudioLinux realtime OS

Link to comment

A better method is probably using systemd Network device configuration:

https://www.freedesktop.org/software/systemd/man/systemd.link.html

There is the parameter BitsPerSecond

 

Quote

The link files are read from the files located in the system network directory /usr/lib/systemd/network, the volatile runtime network directory /run/systemd/network, and the local administration network directory /etc/systemd/network. Link files must have the extension .link; other extensions are ignored. All link files are collectively sorted and processed in lexical order, regardless of the directories in which they live. However, files with identical filenames replace each other. Files in /etc have the highest priority, files in /run take precedence over files with the same name in /usr/lib. This can be used to override a system-supplied link file with a local file if needed. As a special case, an empty file (file size 0) or symlink with the same name pointing to /dev/null disables the configuration file entirely (it is "masked").

The link file contains a [Match] section, which determines if a given link file may be applied to a given device, as well as a [Link] section specifying how the device should be configured. The first (in lexical order) of the link files that matches a given device is applied. Note that a default file 99-default.link is shipped by the system. Any user-supplied .link should hence have a lexically earlier name to be considered at all.

 

AudioLinux --> https://www.audio-linux.com

developer of AudioLinux realtime OS

Link to comment
  • 3 weeks later...
  • 1 month later...
  • 1 month later...

Here HQPlayer to NAA is working very fine. This is most probably a network configuration problem.

 

You should check that:

1) You have the last version of NAA

2) Your network connection is properly set in audiolinux (both Audiolinux and Jussi NAA image are using the same systemd network)

Type networkctl and be sure that all interfaces are up. If you re using DHCP you should have

 

[Network]
DHCP=yes

 

in the file /etc/systemd/network/auto.network

With this you will have both ipv4 and ipv6 enabled, good if you have selected ipv6 in the hqplayer configuration file.

 

If you have further problems you can contact me directly at [email protected]

AudioLinux --> https://www.audio-linux.com

developer of AudioLinux realtime OS

Link to comment

4 GB could work (8 GB to be on the safe side)

You can remove the applications that you will not use. For example Roon, if you use only HQPlayer

yaourt -S roonserver roonbridge

After you can reinstall with

yaourt -S roonserver roonbridge

 

The same with hqplayer-embedded if you are running Roon

AudioLinux --> https://www.audio-linux.com

developer of AudioLinux realtime OS

Link to comment

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now



×
×
  • Create New...