Jump to content
IGNORED

Tidal Connect on Raspberry (how-to)


Recommended Posts

Please find below a recap of the steps required to install and run Tidal connect on a raspberry.

I did this on top of a raspberry pi4 running Moode, but conceptually this should work on any raspberry with Debian.

The starting point is coming from this thread on raspberrypi.org:

https://www.raspberrypi.org/forums/viewtopic.php?t=297771

 

  1. Connect to the raspberry using ssh and launch the installation as indicated in https://github.com/shawaj/HiTide
  2. Modify file "/usr/ifi/ifi-tidal-release/pa_devs/devices" to configure your own audio device
    The info to be used can be gathered using command "aplay -l"
    For example, I modified the row of  device #1 to enter the info of my USB dac
    device#1=LA-QXD1: USB Audio (hw:2,0)

  3. Modify file "/lib/systemd/system/ifi-streamer-tidal-connect.service" in order to

    • modify as you like  the name you want to give to the service  using parameters "-f" and "--model name"

    • specify the device audio to b used by the Tidal Connect service by adding the parameter "--playback-device".
      The value for playback-device needs to be exactly the same inserted at point 2
      .......................................
      ExecStart=/usr/ifi/ifi-tidal-release/bin/tidal_connect_application \
                      --tc-certificate-path "/usr/ifi/ifi-tidal-release/id_certificate/IfiAudio_ZenStream.dat" \

                      -f "Fero Tidal Streamer" \
                      --codec-mpegh true \
                      --codec-mqa false \

                      --model-name "Fero Tidal Streamer" \
                      --disable-app-security false \
                      --disable-web-security false \
                      --enable-mqa-passthrough false \
                      --log-level 3 \
                      --enable-websocket-log "0"\

                      --playback-device "LA-QXD1: USB Audio (hw:2,0)"
      ......................................

  4. Configure the service for automatic startup at boot:
    systemctl enable ifi-streamer-tidal-connect.service

 

Usage Notes

 

To start the service, use command:

systemctl start ifi-streamer-tidal-connect.service

 

To stop the service, use command:

systemctl stop ifi-streamer-tidal-connect.service
 

To verify service status use command:
systemctl status ifi-streamer-tidal-connect.service

 

Please note that when you start the service, "it locks the audio device in exclusive mode", so that if you attempt to access the device in some other way (e.g. with MPD) you will get an error as long as the Tidal connect service will not be stopped.

 

....I know this is somehow annoying, but the benefits are:

 

1) as interface, you will use Tidal app, simply selecting where you want the output to go in "Sound Output"

FeroTodalConnect.thumb.jpg.bb447073a091138a8e3b5a9606ceb62c.jpg
 

2) for those using Tidal, sound quality is exceptional IMHO!!!!

Link to comment
  • 4 months later...

Thanks Franz for the useful recap.

 

Just to point out that it's not necessary to stop the service to free up a shared audio port on Raspberry, disconnecting the Tidal connection from the iOS device does the job done.

 

For DAC MQA capable the service setup is the following:

 

ExecStart=/usr/ifi/ifi-tidal-release/bin/tidal_connect_application \

                                --tc-certificate-path "/usr/ifi/ifi-tidal-release/id_certificate/IfiAudio_ZenStream.dat" \

                                -f "Topping D90 MQA Streamer" \

                                --codec-mpegh true \

                                --codec-mqa true \

                                --model-name "Topping D90 MQA Streamer" \

                                --disable-app-security false \

                                --disable-web-security false \

                                --enable-mqa-passthrough true \

                                --log-level 3 \

                                --enable-websocket-log "0" \

                                --playback-device "D90 MQA: USB Audio (hw:1,0)"

 

Link to comment
  • 2 weeks later...

Hi all. I played with it today and I can't make it work with my Hegel H390. It is connected to the RPi (4B) with Moode and the install from the top of this post and seems that Tidal Connect is running, but I hear no output sound. The app shows correct streamer name (Adam-Pi as per screenshot below) and it connects to the RPi. I am attaching a few screenshots with my current settings. I tried to play with (hw:y,z) parameters, but with no luck. I made a second setup with Volumio and I managed to get it to work flawlessly and even control hardware volume on my H390. The snag there is that Volumio is a subscription service and this one is free.

 

Can you please advise if you see any obvious fixes to the issue? 

 

Today is the first time in my life I set up a Raspberry Pi  (4B) and manipulated files in it including permissions and editing the contents. I am a complete newbie and I would appreciate if you provide even most obvious steps.

 

Thank you.

Adam

 

 

Capture.thumb.JPG.3026638743b23e89290818dd0bcb4899.JPG

 

The only device I have connected is Hegel. It is attached to the USB 2.0 port. I have no idea what the others on the list are doing here. 

 

 

Capture4.JPG.3cafdad2644f7eeb961f1a41da322e74.JPG

 

I tried setting (hw:2,0) and (hw:1,0) and finally (hw:0,0) with no success.

 

Capture2.thumb.JPG.fee6e777d6f7fc8991ac2064b4d6e4ab.JPG

 

I tried setting (hw:2,0) and (hw:1,0) and finally (hw:0,0) with no success.

 

Capture3.thumb.JPG.a9d7ce1545f715aa78f66962be734158.JPG

Link to comment
51 minutes ago, ralong said:

Try a clean install. Then just don't touch the config files. Worked for me.

 

Also show Your print after command:

sudo systemctl status ifi-streamer-tidal-connect.service
 

I tried the clean install and it didn't work either. RPi Tidal Connect was visible in the Tidal app, I was able to connect, but there was no sound in the amp. It seems like Raspberry Pi sees my amp, can output sound and control volume, but the Tidal Connect streamer on RPi cannot direct it correctly to my amp.

 

 

Link to comment

Thank you. I noticed the issue as soon as I posted the pic. I got it fixed now. I can hear the music and controls over playing, skipping etc seem to work, but at first with a bit of a lag. I guess I can live with that. 

I noticed though that volume control doesn't work over Tidal Connect. It does work when I try to change volume from the Moode web interface. Not sure if that can be fixed though. It was working perfectly on Volumio.

Link to comment

Hi,

I will start by confessing that I am completely ignorant of Linux. So I'm sorry if I ask some stupid "obvious" answer question.

I did a fresh install, (Pi 4 + RPI hat DAC), on Moode Audio 7.3.
I used the command "curl -sSL https://raw.githubusercontent.com/shawaj/HiTide/main/install.sh | sudo bash"
Everything went well.
The TIDAL app has the option to choose "Tidal Connect".
The sound comes out with excellent quality on both the RCA outputs and the 3.5 jack output.
But when I reboot Moode this option disappears and I don't know how to start Tidal Connect again.
Using the command "systemctl start ifi-streamer-tidal-connect.service" asks for root password which I have no idea what it is.
Can anyone help with this?

Captura de Ecrã (404).png

Captura de Ecrã (403).png

Link to comment
  • 1 month later...

Thanks for the guide....

I've used this to create a little streaming Pi, a couple of troubleshoot tips incase anyone else has the same issues I did.

----

This service requires LIBCURL3, if you update things like PHP or HTTP services on your Pi you may inadvertently install v4. This will stop Tidal Connect working. 

 

Uninstall v4 : 

sudo apt-get remove --auto-remove libcurl4-openssl-dev

 

Install v3: 

sudo apt-get install libcurl3 -y

---

If you have issues with your USB DAC and pi playing nice; There's a bunch of out of date info out there...

The easiest way I found is to set the USB DAC to be the default device in "/usr/share/alsa/alsa.conf"

 

aplay -l 

sudo nano /usr/share/alsa/alsa.conf

 

Change "0" of below to the HW # of the usb card

defaults.ctl.card 0

defaults.pcm.card 0

 

---OR if that doesn't work---

Create the file "/etc/modprobe.d/alsa-base.conf" and write into it:
 

# This sets the index value of the cards but doesn't reorder.
options snd_usb_audio index=0
options snd_bcm2835 index=1

# Does the reordering.
options snd slots=snd-usb-audio,snd-bcm2835

 

 

----

Extra TIP:

manually run the service as a command in terminal to troubleshoot, also a great way to get a proper list of your audio devices as it will spit out an error and list of actual device names if you put something wrong in the --playback-device flag

 

/usr/ifi/ifi-tidal-release/bin/tidal_connect_application --tc-certificate-path /usr/ifi/ifi-tidal-release/id_certificate/IfiAudio_ZenStream.dat -f MusicPi --codec-mpegh true --codec-mqa true --model-name MusicPi --disable-app-security false --disable-web-security false --enable-mqa-passthrough true --log-level 3 --enable-websocket-log 0 --playback-device 'Audioengine D1: USB Audio (hw:1,0)'

 

Link to comment
  • 3 months later...

Hi All,

 

I am also somewhat of a newbie and am running into some problems. Any help would be truly appreciated!

 

I have followed the instructions and the script appears to have installed all the way. However, i am getting error messages.

 

I am able to connect to tidal connect from the app, but no sound comes out. (both the moode internet radio stations as well as spotify connect work - so i know the rest of the setup is ok)

 

Any idea how to trouble shoot next? Thank you in advance for any help!

 

Here are some facts:  moode 7.6.1

 

aplay -l print:

image.png.cc654a2e95bc5c5cd12d09bb0c0a0faf.png

 

systemctl status ifi-streamer-tidal-connect.service print:

image.thumb.png.8ec95ebd6000808ded7bdad3aaa03288.png

 

 

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...