Roland TD-11

2021-05-15

When I first connected my Roland TD-11 via high-speed USB to Linux (Ubuntu) the experience was terrible and it was not possible to play. The problem and setup is identical to this post. The first note was exactly in time, all the rest completely out of sync, with a 5-30 seconds delay to the others. Absolutely laggy.

I was unsure where the problem came from:

  • The way I was connecting everything
  • The USB cable
  • The driver
  • pulseaudio or ALSA & respective configurations.

The headphones are connected to the TD-11 module, the module to the laptop via high-speed USB B-Type (in my case to an USB SS port). I was sure the above setup worked as I did not have any issues in Windows.

The module/driver also did not seem to be the problem as the device is immediately recognized after being plugged:

usb 1-1: new high-speed USB device number 35 using xhci_hcd
usb 1-1: New USB device found, idVendor=0582, idProduct=0151, bcdDevice= 0.01
usb 1-1: New USB device strings: Mfr=1, Product=2, SerialNumber=0
usb 1-1: Product: TD-11
usb 1-1: Manufacturer: Roland

Also running pactl list sinks to have a better ideas on audio devices:

[...]
	Name: alsa_output.usb-Roland_TD-11-00.analog-stereo
	Description: TD-11 Analogue Stereo
	Driver: module-alsa-card.c
	Sample Specification: s32le 2ch 44100Hz
	Channel Map: front-left,front-right
	Owner Module: 25
	Mute: no
	Volume: front-left: 65536 / 100% / 0.00 dB,   front-right: 65536 / 100% / 0.00 dB
	        balance 0.00
	Base Volume: 65536 / 100% / 0.00 dB
	Monitor Source: alsa_output.usb-Roland_TD-11-00.analog-stereo.monitor
	Latency: 0 usec, configured 0 usec
	Flags: HARDWARE DECIBEL_VOLUME LATENCY 
	Properties:
		alsa.resolution_bits = "32"
		device.api = "alsa"
		device.class = "sound"
		alsa.class = "generic"
		alsa.subclass = "generic-mix"
		alsa.name = "USB Audio"
		alsa.id = "USB Audio"
		alsa.subdevice = "0"
		alsa.subdevice_name = "subdevice #0"
		alsa.device = "0"
		alsa.card = "1"
		alsa.card_name = "TD-11"
		alsa.long_card_name = "Roland TD-11 at usb-0000:00:14.0-1, high speed"
		alsa.driver_name = "snd_usb_audio"
		device.bus_path = "pci-0000:00:14.0-usb-0:1:1.0"
		sysfs.path = "/devices/pci0000:00/0000:00:14.0/usb1/1-1/1-1:1.0/sound/card1"
		udev.id = "usb-Roland_TD-11-00"
		device.bus = "usb"
		device.vendor.id = "0582"
		device.vendor.name = "Roland Corp."
		device.product.id = "0151"
		device.product.name = "TD-11"
		device.serial = "Roland_TD-11"
		device.string = "front:1"
		device.buffering.buffer_size = "705600"
		device.buffering.fragment_size = "352800"
		device.access_mode = "mmap+timer"
		device.profile.name = "analog-stereo"
		device.profile.description = "Analogue Stereo"
		device.description = "TD-11 Analogue Stereo"
		module-udev-detect.discovered = "1"
		device.icon_name = "audio-card-usb"
	Ports:
		analog-output: Analogue Output (priority: 9900)
	Active Port: analog-output
	Formats:
		pcm

The snd_usb_audio supports TD-11, for I think 8 years at the time of writing this. The USB ID is indexed (0151).

At this point it can only be configuration.

SOLUTION

I did not spend much time with ALSA or pulseaudio in order to fix this problem after all, instead I went straight to Jack as also suggested from the above linked post and tried it out!

sudo apt install qjackctl

Launch qjacktl after and click on the Connect button of the UI. I use to connect the Interface 2 together.

Jack

Immediately, even without starting the jack server, the lag will disappear and you’d already be capable of playing with background music from anywhere. So problem solved!

When I want to record myself using Audacity I only need to use TD-11 as microphone and speaker.

Audacity

Click on record and you should see movement. IF THIS DOES NOT HAPPEN, try switching to another channel and press Rec again.

Unfortunately recording from Audacity while also listening to music from YouTube or Spotify and playing the TD-11 does not work and I haven’t spent much time on trying to work this out yet.

Anyway that’s a separate issue. Although, importing an MP3 in Audacity and Record yourself over is possible and that’s what I’m currently doing. I haven’t still tried to plug a USB device in the module and press the Rec along with all the above configuration.

After all, it was a brief and exciting trip!