How to Connect a Turntable to a TV set with Raspberry Pi

Manual

Jens Getreu


Table of Contents

Hardware procurement
Setting up
Connecting your hardware
Installing the Operating System
Pass-through sound channel from Pre-Amp-output to TV-HDMI-input
Customizing the menu

This manual shows how to connect a turntable to a TV-set and build ab inexpensive multimedia centre with second hand parts.

Hardware procurement

I found the following parts in Ebay and on our local newspaper’s small ads site.

Hardware list Price (second hand)
TV set (4K) >500€
TV stand 80€
2 * USB Power-adapter (4A) 10€
Socket strip with foot switch 12€
Soundbar HW-F350 25€
DVD Burner 12€
Turntable Onkyo CP-1046F 20€
Pre-Amplifier Inakustik Premium 15€
Raspberry PI 4 (new) 40€
Rasberry PI case (new) 10€
SD-card 32GB, Class 10, A1 (new) 10€
Wireless keyboard and mouse 10€
Sum (without TV) 244€

This is how the multimedia centre looks like.

Figure 1. Media-tower with Soundbar HW-F350

Media-tower with Soundbar HW-F350

Figure 2. Turntable Onkyo CP-1046F

Turntable Onkyo CP-1046F

Figure 3. DVD-Burner

DVD-Burner

Figure 4. Rear view of media-tower

Rear view of media-tower

Figure 5. Inakustik Premium Pre-Amplifier and Raspberry Pi 4

Inakustik Premium Pre-Amplifier and Raspberry Pi 4

Setting up

Connecting your hardware

From Via To
Turntable Cinch Pre-Amp
Pre-Amp USB Raspberry Pi
Raspberry Pi HDMI TV
TV Optical Soundbar
Optional: DVD burner USB Raspberry Pi

NB: Your optional DVD burner needs a separate power supply cable! Power supply via USB from Raspberry does not work! Do not connect the DVD-power to the same power adapter as the Raspberry PI.

NB 2: The sound is much better, when the soundbar is mounted on top of the TV.

Installing the Operating System

First Download Raspbian for Raspberry Pi and install it on you SD card.

Pass-through sound channel from Pre-Amp-output to TV-HDMI-input

Start the Raspberry PI and open a console.

  1. Identify the USB-pre-amp device, here device 005 (help: USB-IDs):

    pi@raspberrypi:~ $ lsusb
    Bus 002 Device 001: ID 1d6b:0003 Linux Foundation 3.0 root hub
    **Bus 001 Device 005: ID 0c45:17ef Microdia** 
    Bus 001 Device 004: ID 045e:0745 Microsoft Corp. Nano Transceiver v1.0 for Bluetooth
    Bus 001 Device 003: ID 13fd:3940 Initio Corporation external DVD burner ECD819-SU3
    Bus 001 Device 002: ID 2109:3431 VIA Labs, Inc. Hub
    Bus 001 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub
    
  2. Identify the HDMI playback device, here -P hw:1.1.0:

    pi@raspberrypi:~ $ aplay -l
    ...
    card **1**: ALSA [bcm2835 ALSA], device **1**: bcm2835 IEC958/HDMI [bcm2835 IEC958/HDMI]
      Subdevices: 0/1
      Subdevice #**0**: subdevice #0
    
  3. Identify the capture device, here -C hw:2.0.0 (look for 005):

    pi@raspberrypi:~ $ aplay -l
    ...
    card **2**: USB [PA-005-2 USB], device **0**: USB Audio [USB Audio]
      Subdevices: 1/1
      Subdevice #**0**: subdevice #0
    
  4. Test pass-through:

    alsaloop -v -C hw:2,0,0 -P hw:1,1,0 -t 50000 --thread 2 -A 5
    

Now, you should hear the turntable sound via TV.

Customizing the menu

In order not to type the alsaloop command each time you want to hear a record, we will add 3 items to our Sound & Video sub-menu:

  • Slow down DVD device

  • Turntable Sound Off

  • Turntable Sounc On

Figure 6. Customized menu items 3-5 Slow down…Sound on

Customized menu items 3-5 “Slow down…Sound on”

  1. Add custom menu-entry by creating the file: /usr/share/applications/turntable-sound-on.desktop

    with the following content:

    [Desktop Entry]
    # Copy this file in /usr/share/applications
    Comment=Turntable Sound On
    Name=Turntable Sound On
    Exec=alsaloop -v -C hw:2,0,0 -P hw:1,1,0 -t 50000 --thread 2 -A 5
    Terminal=false
    Type=Application
    Categories=AudioVideo;Player;Recorder;
    Icon=/usr/share/pixmaps/chromium-browser.png
    
  2. Add custom menu-entry by creating the file: /usr/share/applications/turntable-sound-off.desktop

    with the following content:

    [Desktop Entry]
    # Copy this file in /usr/share/applications
    Comment=Turntable Sound Off
    Name=Turntable Sound Off
    Exec=killall alsaloop
    Type=Application
    Terminal=false
    Categories=AudioVideo;Player;Recorder;
    Icon=/usr/share/pixmaps/chromium-browser.png
    
  3. Bonus: add a custom menu entry for slowing down the DVD-burner. Create file: /usr/share/applications/slow_down_dvd_device.desktop with the following content:

    [Desktop Entry]
    # Copy this file in /usr/share/applications
    Comment=Slow down DVD device
    Name=Slow down DVD device
    Exec=eject -x 4 /dev/sr0
    Terminal=false
    Type=Application
    Categories=AudioVideo;Player;Recorder;
    Icon=/usr/share/pixmaps/python2.7.xpm