Page 1 of 1

Problem with using two microphones

Posted: Thu Jun 18, 2015 3:38 am
by myth0s
Hi,

First off, thanks for reading this. I hope your experience will help me solve my problem!

All right, so here's what I'd would like to do:
Plug two USB microphones from Tenx Technology into my Raspberry Pi and use them to record audio (I will place them in different rooms).


Long story short:
When I plug the two microphones directly into the Raspberry PI's USB ports, one of them (always the same one) refuses to work. If I plug a USB hub (nb: this USB hub is not a powered hub) into the Raspberry PI and plug my microphones into the hub, they both work.

As you can expect, I would very much like to plug both microphones directly into my PI. How can I debug why one of my microphone does not work when plugged directly?

lsusb -t and arecord -l display when both are plugged through the hub and working

Code: Select all

lsusb -t
/:  Bus 01.Port 1: Dev 1, Class=root_hub, Driver=dwc_otg/1p, 480M
    |__ Port 1: Dev 2, If 0, Class=hub, Driver=hub/5p, 480M
        |__ Port 1: Dev 3, If 0, Class=vend., Driver=smsc95xx, 480M
        |__ Port 5: Dev 39, If 0, Class=hub, Driver=hub/4p, 480M
            |__ Port 1: Dev 41, If 0, Class=audio, Driver=snd-usb-audio, 12M
            |__ Port 1: Dev 41, If 1, Class=audio, Driver=snd-usb-audio, 12M
            |__ Port 2: Dev 40, If 0, Class=audio, Driver=snd-usb-audio, 12M
            |__ Port 2: Dev 40, If 1, Class=audio, Driver=snd-usb-audio, 12M

arecord -l
**** List of CAPTURE Hardware Devices ****
card 1: TP6920 [TP6920], device 0: USB Audio [USB Audio]
  Subdevices: 1/1
  Subdevice #0: subdevice #0
card 2: TP6920_1 [TP6920], device 0: USB Audio [USB Audio]
  Subdevices: 1/1
  Subdevice #0: subdevice #0

The long story, with everything I tried so far:
I plugged the first USB microphone, it worked great. There's a built-in LED to let me guess if it's working or not. If it lights up, it's a good sign (but no guarantee) that the device should be working.

I then plugged the second microphone. The LED lit up for a second, and then shut down. I immediately thought it was power-related, so I unplugged both microphones, waited a bit and re-connected only the second microphone, but the same thing happened.

Since the device was happy to power one of them (microphone #1), it should have been able to power any of them two. I read somewhere that shutting down the Raspberry PI and waiting a bit might solve some power issues, so I shutdown the Raspberry PI waited 5 minutes, rebooted and plugged only the problematic microphone, but no luck. It was still not working.

So I thought it might be port(s). I tried a variety of ports. A microphone into port 1, the other into port 2. Switch them. Tried all of the port with only the problematic microphone. Nothing worked. So it was not port related, I think.

At that point, I suspected hardware issues. So I tried the problematic microphone on both Mac and Windows. Turns out it works great.

Since I knew the microphone can work, that it's not port nor power related, I gave a look into dmseg. There, I found some errors:

Code: Select all

dmesg
[  574.665316] usb 1-1.5: new full-speed USB device number 27 using dwc_otg
[  575.165129] usb 1-1.5: device not accepting address 27, error -32
[  575.245337] usb 1-1.5: new full-speed USB device number 28 using dwc_otg
[  575.347579] usb 1-1.5: device descriptor read/all, error -32
[  575.425357] usb 1-1.5: new full-speed USB device number 29 using dwc_otg
[  575.845137] usb 1-1.5: device not accepting address 29, error -32
[  575.925409] usb 1-1.5: new full-speed USB device number 30 using dwc_otg
[  576.157309] usb 1-1.5: device descriptor read/8, error -32
[  576.286082] usb 1-1.5: device descriptor read/8, error -32
[  576.395381] usb 1-1-port5: unable to enumerate USB device
or very similar:

Code: Select all

Jun 18 03:14:36 raspberrypi kernel: [ 1985.674241] usb 1-1.4: new full-speed USB device number 42 using dwc_otg
Jun 18 03:14:36 raspberrypi kernel: [ 1985.775069] usb 1-1.4: device descriptor read/all, error -32
Jun 18 03:14:36 raspberrypi kernel: [ 1985.854227] usb 1-1.4: new full-speed USB device number 43 using dwc_otg
Jun 18 03:14:36 raspberrypi kernel: [ 1985.934236] usb 1-1.4: device descriptor read/64, error -32
Jun 18 03:14:36 raspberrypi kernel: [ 1986.124226] usb 1-1.4: device descriptor read/64, error -32
Jun 18 03:14:36 raspberrypi kernel: [ 1986.314260] usb 1-1.4: new full-speed USB device number 44 using dwc_otg
Jun 18 03:14:36 raspberrypi kernel: [ 1986.336407] usb 1-1.4: device descriptor read/8, error -32
Jun 18 03:14:37 raspberrypi kernel: [ 1986.465151] usb 1-1.4: device descriptor read/8, error -32
Jun 18 03:14:37 raspberrypi kernel: [ 1986.654276] usb 1-1.4: new full-speed USB device number 45 using dwc_otg
Jun 18 03:14:37 raspberrypi kernel: [ 1987.074054] usb 1-1.4: device not accepting address 45, error -32
Jun 18 03:14:37 raspberrypi kernel: [ 1987.074311] usb 1-1-port4: unable to enumerate USB device
I don't know why, but I decided to plug them both into a USB hub (* important: the USB has no external power aid.)
To my big surprise, both worked!

Here's dmesg output when connecting both microphone through the hub:

Code: Select all

[ 2999.254410] usb 1-1.5.2: new full-speed USB device number 56 using dwc_otg
[ 2999.383662] usb 1-1.5.2: New USB device found, idVendor=1130, idProduct=6920
[ 2999.383703] usb 1-1.5.2: New USB device strings: Mfr=1, Product=2, SerialNumber=3
[ 2999.383723] usb 1-1.5.2: Product: TP6920
[ 2999.383741] usb 1-1.5.2: Manufacturer: TP6920
[ 2999.383758] usb 1-1.5.2: SerialNumber: 0621
[ 2999.407267] usb 1-1.5.2: Warning! Unlikely big volume range (=6096), cval->res is probably wrong.
[ 2999.407314] usb 1-1.5.2: [5] FU [Mic Capture Volume] ch = 1, val = 0/6096/1

[ 3014.874577] usb 1-1.5.1: new full-speed USB device number 57 using dwc_otg
[ 3015.005024] usb 1-1.5.1: New USB device found, idVendor=1130, idProduct=6920
[ 3015.005067] usb 1-1.5.1: New USB device strings: Mfr=1, Product=2, SerialNumber=3
[ 3015.005088] usb 1-1.5.1: Product: TP6920
[ 3015.005107] usb 1-1.5.1: Manufacturer: TP6920
[ 3015.005123] usb 1-1.5.1: SerialNumber: 0621
[ 3015.026388] usb 1-1.5.1: Warning! Unlikely big volume range (=6096), cval->res is probably wrong.
[ 3015.026435] usb 1-1.5.1: [5] FU [Mic Capture Volume] ch = 1, val = 0/6096/1
I would like to use both microphones plugged directly into my Raspberry PI. What should I do now? I'm a bit confused!

Re: Problem with using two microphones

Posted: Thu Jun 18, 2015 2:20 pm
by myth0s
Forgot to include Pi and distro info:

HW: Raspberry Pi 2
Image: RASPBIAN Debian Wheezy Release date:2015-05-05
Kernel: Linux raspberrypi 3.18.11+ #781 PREEMPT Tue Apr 21 18:02:18 BST 2015 armv6l

Re: Problem with using two microphones

Posted: Thu Jun 18, 2015 8:15 pm
by myth0s
I don't understand nothing. I did a reboot (just a simple reboot!) and now there's only one microphone available through the hub.

There's no failure to be seen in dmesg or /var/log/syslog :?

I see that both microphones have the same SerialNumber. Could that be a problem?

[ 4.029265] usb 1-1.5.1: Product: TP6920
[ 4.035057] usb 1-1.5.1: Manufacturer: TP6920
[ 4.055655] usb 1-1.5.1: SerialNumber: 0621