No announcement yet.

Help Vortexbox with Lynx AES16e PCI

  • Filter
  • Time
  • Show
Clear All
new posts

  • Help Vortexbox with Lynx AES16e PCI

    Hoping the great minds here give me something to chew.

    My Sonore Music server (2011) has Vortexbox 1.5 and Lynx AES16e card installed.

    Aiming to upgrade to Votexbox 2.4 but worried it wont recognise the Lynx card (as no driver is available for Linux on their website).

    Reached out to Rodriguez (Sonore owner) and said it would need lots of work on code to make the Lynx work.

    Anyone with some thoughts?

    PS i managed to build a Vortexbox USB boot drive and successfully installed it on my NUC to test my limited tech skills.

    Looking to run Tidal via its latest version of Squeezebox in my Sonore server.

  • #2
    Here is a link to the latest opensound driver but you are looking at a huge uphill battle to get this working. it's very complicated.

    I would stick with what you have.


    • #3
      Thanks Agilis. I tried the driver but it is giving some kernel error.
      Essentially OSS could not be compiled.
      Any other thoughts?


      • #4
        Just as an update, i installed newer Vortexbox versions (2.3 and 2.4). Tried to install the OSS driver/package but it would not compile and showing some ELF error.

        Trawling through the web, i installed some 32 bit packages which apparently assist but still no joy. Some suggest diwngrading the kernel to earlier version but not sure.

        Anyone tried installing OSS drivers on linux and make it work?


        • #5
          The error message was somewhat like below

          "Relinking the OSS kernel module failed....
          lib/modules/4.15.1-2-ARCH/kernel/lib/ts_kmp.ko.xz is not a valid ELF object /lib/modules/4.15.1-2-ARCH/kernel/lib/ts_kmp.ko.xz is not a valid ELF object /lib/modules/4.15.1-2-ARCH/kernel/lib/lz4/lz4_compress.ko.xz is not a valid ELF object /lib/modules/4.15.1-2-ARCH/kernel/lib/lz4/lz4_compress.ko.xz is not a valid ELF object /lib/modules/4.15.1-2-ARCH/kernel/lib/lz4/lz4_compress.ko.xz is not a valid ELF object /lib/modules/4.15.1-2-ARCH/kernel/lib/lz4/lz4_compress.ko.xz is not a valid ELF object /lib/modules/4.15.1-2-ARCH/kernel/lib/lz4/lz4hc_compress.ko.xz is not a valid ELF object


          • #6
            VortexBox developer
            Hi, After a lot of learning and reading, I managed to get Lynx working with Vortexbox 2.4 via Linux command. Needed to install the development packages and blacklist the existing audio devices. Used the driver attached here..
            I am able to play music using the following command in Linux/Fedora "ossplay -d/dev/oss/lynxtwo0/pcm4 02.wav" specifying the exact device name.
            My next challenge is setting up the standard Vortexbox Player. I tried adding "/dev/oss/lynxtwo0/pcm4" in Audio Device Output but it won't work or get recognised as a player in Squeezelite
            Any idea you can throw please?



            • #7
              What does the output of the command "aplay -L" display? Mine is below.


              Discard all samples (playback) or generate zero samples (capture)


              HDA Intel, STAC9227 Analog

              Default Audio Device


              HDA Intel, STAC9227 Analog

              Default Audio Device


              HDA Intel, STAC9227 Analog

              Front speakers


              HDA Intel, STAC9227 Analog

              2.1 Surround output to Front and Subwoofer speakers


              HDA Intel, STAC9227 Analog

              4.0 Surround output to Front and Rear speakers


              HDA Intel, STAC9227 Analog

              4.1 Surround output to Front, Rear and Subwoofer speakers


              HDA Intel, STAC9227 Analog

              5.0 Surround output to Front, Center and Rear speakers


              HDA Intel, STAC9227 Analog

              5.1 Surround output to Front, Center, Rear and Subwoofer speakers


              HDA Intel, STAC9227 Analog

              7.1 Surround output to Front, Center, Side, Rear and Woofer speakers


              HDA Intel, STAC9227 Digital

              IEC958 (S/PDIF) Digital Audio Output


              • #8
                After lots of research, I managed to get the Lynx card working. OSS conflicts with ALSA hence had to blacklist it.. However, I had to install ALSA-OSS emulation for LMS to work. Now trying to get MPD working side by side with LMS. Thanks for all the support here.


                • #9
                  You have done some amazing work here. Maybe post a step by step of what you did for other Lynx users.


                  • #10
                    Yeah sure... happy to share.
                    1. Wiped the machine first. Used GParted via USB to recreate partitions to complete this step.
                    2. Installed VB 2.4 using the USB installer route. For some reason 2.3 did not have Clonezilla on USB live hence went direct to 2.4
                    3. Once installed, perform the remaining tasks incl DNF update as instructed by VB install guide.
                    4. Install SSH on a seperate windows desktop to access VB linux backend - user is root, password is Vortexbox (VB port is normally 22)
                    5. On windows desktop, download kernel-devel....fc23.....rpm package (development package of Fedora 23) from Fedora kernel repository. I downloaded from the web then Used Winscp to transfer the file in the VB machine (at /root)
                    6. Install the development package using the command sudo dnf install kernel-devel...fc23....rpm
                    7. Blacklist other sound drivers. Create a file disable-sound.conf at the directory /etc/modprobe.d/
                    To find all devices to be blacklisted' run command lsmod | grep 'snd'
                    Add the lines blacklist xxxx in the disable-sound.conf file for each device found (e.g blacklist snd_pcm, etc...)
                    Note you can use vi editor to edit the file or create it in windows and transfer it to the above directory using winscp.
                    8. reboot machine.
                    9. Transfer the OSS driver package at /root as per the above post and install it - sudo dnf install ......rpm
                    10. The oss-linux compilation should take longer meaning it is being compiled. Note you may see ELF type error messages - just ignore them.
                    11. Test oss is successfully installed by running the command osstest. Note, let each Lynx channel play to see which one works for you... i found my Lynx played for channel 5
                    Update your mpd cong file at /etc/mpd.conf. Add the specific device player fir OSS in the config file.

                    Now OSS is installed. You can play a music file using the command ossplay xxx.wav.
                    12. Install alsa-oss emulator plugin package to allow squuezelite see the sound device. Just google to find the plugin for Fedora 23 (forgot the exact location)
                    13. Update the config file at /etc/asound.conf . Replace type alsa to oss everywhere. E,g pcm.|default { type oss.....
                    14. Reboot.
                    15. Go to VB homepage, then configure players. Add a player Squeezeslave set device name as oss. Submit.
                    16. Go to lms. If the player is squeezeslave, then you are good to play via lms.

                    Note, i am hoping i captured all the steps correctly as i tried so many things to make it work. Use at your own risk. Gpart will wipe your machine hence backup before trying.
                    i went further and installed mpd player. Again some configs to change but it works. I find mpd sound slightly clearer than lms.
                    Good luck and well worth the pain.
                    Dave the Rave
                    Junior Member
                    Last edited by Dave the Rave; 03-30-2019, 10:29 PM.


                    • #11
                      I had to rebuild my Vortexbox server as all of a sudden Squeezelite stopped and could not be revived. Rebuilt the instructions hence sharing for anyone interested.
                      BTW, i installed mpd player as well coexisting with LMS.

                      Format harddisk (using Gparted)

                      Download Vortexbox 2.4 iso image
                      Build USB using Rufus

                      Install Vortexbox onto HDD

                      Complete installations
                      dnf -y update

                      cd /etc/modprob.d; edit blacklist.conf
                      blacklist snd_hda_codec_realtek
                      blacklist snd_hda_codec_generic
                      blacklist snd_hda_intel
                      blacklist snd_hda_codec
                      blacklist snd_hda_core
                      blacklist snd_hwdep
                      blacklist snd_seq
                      blacklist snd_seq_device
                      blacklist snd_pcm
                      blacklist snd_timer
                      blacklist c_realtek
                      blacklist snd_hda_core

                      sudo dnf install kernel-devel-4.8.13-100.fc23.x86_64.rpm

                      sudo dnf install oss-linux-v4.2-2017.x86_64.rpm

                      Find which device oss is installed
                      ossinfo | grep /dev/dsp

                      sudo dnf install mpd mpc

                      vi /etc/mpd.conf
                      audio_output {
                      type "oss"
                      name "My OSS Device"
                      device "/dev/oss/lynxtwo0/pcm0"
                      music_directory "/storage/music"
                      playlist_directory "/storage/music/playlist"
                      db_file "/var/lib/mpd/mpd.db"
                      log_file "/var/log/mpd/mpd.log"
                      state_file "/var/lib/mpd/mpdstate"

                      sudo systemctl enable mpd
                      sudo systemctl start mpd
                      mpc update

                      sudo dnf install alsa-plugins-oss-1.1.1-1.fc23.x86_64.rpm

                      vi /etc/asound.conf
                      pcm.oss {
                      type oss
                      device /dev/dsp

                      pcm.!default {
                      type oss
                      device /dev/dsp

                      ctl.oss {
                      type oss
                      device /dev/mixer

                      ctl.!default {
                      type oss
                      device /dev/mixer

                      Manual run squeezelite0
                      ln -sf /dev/oss/lynxtwo0/pcm0 /dev/dsp
                      systemctl enable squeezelite0.service
                      systemctl restart squeezelite0.service

                      systemctl utilities
                      systemctl list-units --type=service
                      systemctl daemon-reload
                      systemctl status mpd.service -l

                      Auto run ln command to autostart squeezelite0

                      Auto run squeezelite
                      vi /etc/systemd/system/mystartup.service
                      Description=Description of the systemd service

                      ExecStart=/bin/ln -sf /dev/oss/lynxtwo0/pcm0 /dev/dsp


                      chmod 664 mystartup.service
                      systemctl daemon-reload
                      systemctl enable mystartup.service
                      systemctl start mystartup.service