USB DAC with microphone that works?


#1

Hey there,

Did any one has luck using USB audio with microphone on HiKey960? I tried these USB audio dongles, but none of them seems to work:


Should I change anything in the configuration? HDMI audio works fine.

I’m surprised that audio USB devices treated as input (at least according to logcat):

02-12 23:07:51.173 2495 2573 I InputReader: Device added: id=11, name=‘USB PnP Audio Device’, sources=0x00000101

Any help is highly appreciated.

  • jx

#2

I would suggest to have a look at this thread first: HFP Client SCO audio routing?
There is a discussion about USB sound cards.


#3

I can tell you with authority that a Vantec NBA-200U will work. Microphone, line-in, and all. Can’t say for anything else.

However you must consider something about USB sound devices, which is their default mixer settings. The Android USB audio HAL does not interact with the device’s mixer, so if you want a setting for it that is not default, you will need to set it yourself. You will need to add “tinymix” to your build in order to be able to adjust the mixer.

You also need to ask yourself if Android wants to actually do something with that microphone. You can have a sound card with a microphone that works perfectly well, but if nothing is actually capturing sound from it, then that won’t do you much good. You can add also “tinycap” to your build, then you can capture audio from the usb card to a wav file to confirm that it is actually working.


#4

Hi everyone,
I recently got my hands on Hikey-960 and had a successful build with Linaro 4.9.
Then, I tested Android to Hikey USB tethering and it didn’t work.
I am able to connect Hikey with ethernet port over USB 2/3.
Some of the things tested and did not work.

  1. https://wiki.gentoo.org/wiki/Android_USB_Tethering
  2. https://github.com/linaro-swg/device-linaro-hikey

Also, how do I root Hikey-960?
Any help would be really appreciated.

Thanks


#5

I’m afraid you’ll have to go into more detail. This tutorial helps you configure an Gentoo Linux workstation to share the modem of a connected Android device. I can’t see how this applies to hikey960 (which has no modem).

These instructions are for the original hikey (a.k.a. hikey620) nor for hikey960. There is an ongoing thread about OP-TEE and hikey960 (although I’m not sure it is fully working at this point):

The default builds have root access enabled by default but IIRC it can only be accessed by ADB and a couple of other authorized programs.

I’ve never need more myself but…

You could try putting SELinux into permissive mode and seeing if that is enough. Whether this works depends on whether root access is controlled by SELinux or by checks in the su binary itself (if it is in the su binary you would need to patch the source).

Alternatively if you need a more general root manager you can probably install Magisk, it supports install-via-fastboot so you don’t need TWRP or anything like that.


#7

Thanks Daniel, for quick response.

https://wiki.gentoo.org/wiki/Android_USB_Tethering
The setting changes worked for Debian - DragonBoard 410. (using menuconfig)
Building Android for 410 and will test it.
Does DragonBoard 410 has a modem?

That was silly of me. Thanks for correcting it.

I will try a default build for USB tethering.
Any alternatives to WiFi-ADB?

Need to research SELinux. Any material is helping!!!

Magisk partially worked. I was able to patch the boot image using Magisk Manager and re-flash it.
But BusyBox/SuperSu/Terminal “su” didn’t work.

Best,


#8

No.

The Android docs are pretty comprehensive:
https://source.android.com/security/selinux/