====== Yoga AD-100 ====== The chip is from [[http://www.cmedia.com.tw|C-Media]] and appears to be the [[http://www.cmedia.com.tw/product/CM102_feature.htm|CM102A]]. You can download the {{hw:technical_brief_-_cmi102.pdf|Technical Brief}} or {{hw:cm102_oem_datasheet_rev_1.5.pdf|Data Sheet}}. {{hw:yoga-ad-100.jpg?75}} I picked up a [[http://www.google.com/search?q=Yoga+%22AD-100%22+usb|Yoga AD-100]] //Virtual 5.1 Channel USB Adapter// from [[http://www.jaycar.com.au|Jaycar]]. It's a standard USB-Audio chip ([[http://www.qbik.ch/usb/devices/showdev.php?id=3132|0x0d8c/0x0001]]) running at 12Mbps with a stereo audio socket. It has a reasonably beefy ampliier on-chip, at maximum volume it can over-drive headphones easily, and put out a respectable volume from a pair of small un-powered speakers. A switch on the side triggers a shutdown of the output stage of the chip, leaving the USB interface and decoder running. Using my [[e:power monitoring board]], I measured the current draw of the AD-100. Plugged in to USB, but with the switch off it draws 12mA. With the switch on it jumps to 49mA, but that includes the blue LED. Plugging in a pair of amplified speakers has no effect of power use, while a pair of 8ohm 2 Watt unpowered speakers takes it to 55mA to 80mA, depending on what music is playing. It appears the onboard 0.5 Watt amplifier is //good enough// for smaller speakers. For volumes above what it's able to drive, a good amp will give much better sound than most amplified PC speakers. ===== C-Media blurb ===== CM102A/CM102S USB Audio Controller\\ Features * USB v2.0 full speed operatible. * Fully compliant with USB audio device class specification v2.0 * USB bus powered 500mA operation with suspend mode support * Single 12MHz crystal input with on-chip PLL and embedded USB transceiver * USB audio function topology has 1 input terminal, 1 output terminal, and 1 feature unit * Alternate zero bandwidth setting for releasing bandwidth on USB bus during inactive operation * Isochronous transfer using adaptive synchronization with internal PLL * High performance 48KHz sampling rate for audio playback * Embedded high performance 16 bit audio DAC * Embedded class AB power amplifier for speaker driving and enable/disable control pin * Volume control input with simple external VR circuit * Embedded power on reset block * Single 5V external power supply with internal power regulation * 3.3V IO with 5V tolerance; 3.3V core logics design * Compatible with Win98 SE / Win ME / Win 2000 / Win XP, and Mac OS 9 / OS X without additional driver * 18 pin PDIP (CM102)or SOP (CM102S) package ===== Kernel messages ===== usb 3-1: new full speed USB device using ohci_hcd and address 4 usbaudio: device 4 audiocontrol interface 0 has 0 input and 1 output AudioStreaming interfaces usbaudio: valid output sample rate 48000 usbaudio: device 4 interface 1 altsetting 1: format 0x80000010 sratelo 48000 sratehi 48000 attributes 0x00 usbaudio: registered dsp 14,3 usbaudio: registered mixer 14,0 ===== lsusb -v ===== Bus 003 Device 020: ID 0d8c:0001 C-Media Electronics, Inc. Device Descriptor: bLength 18 bDescriptorType 1 bcdUSB 1.10 bDeviceClass 0 (Defined at Interface level) bDeviceSubClass 0 bDeviceProtocol 0 bMaxPacketSize0 8 idVendor 0x0d8c C-Media Electronics, Inc. idProduct 0x0001 bcdDevice 0.10 iManufacturer 1 iProduct 2 iSerial 0 bNumConfigurations 1 Configuration Descriptor: bLength 9 bDescriptorType 2 wTotalLength 110 bNumInterfaces 2 bConfigurationValue 1 iConfiguration 0 bmAttributes 0x80 MaxPower 500mA Interface Descriptor: bLength 9 bDescriptorType 4 bInterfaceNumber 0 bAlternateSetting 0 bNumEndpoints 0 bInterfaceClass 1 Audio bInterfaceSubClass 1 Control Device bInterfaceProtocol 0 iInterface 0 AudioControl Interface Descriptor: bLength 9 bDescriptorType 36 bDescriptorSubtype 1 (HEADER) bcdADC 1.00 wTotalLength 40 bInCollection 1 baInterfaceNr( 0) 1 AudioControl Interface Descriptor: bLength 12 bDescriptorType 36 bDescriptorSubtype 2 (INPUT_TERMINAL) bTerminalID 1 wTerminalType 0x0101 USB Streaming bAssocTerminal 0 bNrChannels 2 wChannelConfig 0x0003 Left Front (L) Right Front (R) iChannelNames 0 iTerminal 0 AudioControl Interface Descriptor: bLength 10 bDescriptorType 36 bDescriptorSubtype 6 (FEATURE_UNIT) bUnitID 13 bSourceID 1 bControlSize 1 bmaControls( 0) 0x03 Mute Volume bmaControls( 1) 0x00 bmaControls( 2) 0x00 iFeature 0 AudioControl Interface Descriptor: bLength 9 bDescriptorType 36 bDescriptorSubtype 3 (OUTPUT_TERMINAL) bTerminalID 3 wTerminalType 0x0301 Speaker bAssocTerminal 0 bSourceID 13 iTerminal 0 Interface Descriptor: bLength 9 bDescriptorType 4 bInterfaceNumber 1 bAlternateSetting 0 bNumEndpoints 0 bInterfaceClass 1 Audio bInterfaceSubClass 2 Streaming bInterfaceProtocol 0 iInterface 0 Interface Descriptor: bLength 9 bDescriptorType 4 bInterfaceNumber 1 bAlternateSetting 1 bNumEndpoints 1 bInterfaceClass 1 Audio bInterfaceSubClass 2 Streaming bInterfaceProtocol 0 iInterface 0 AudioStreaming Interface Descriptor: bLength 7 bDescriptorType 36 bDescriptorSubtype 1 (AS_GENERAL) bTerminalLink 1 bDelay 1 frames wFormatTag 1 PCM AudioStreaming Interface Descriptor: bLength 11 bDescriptorType 36 bDescriptorSubtype 2 (FORMAT_TYPE) bFormatType 1 (FORMAT_TYPE_I) bNrChannels 2 bSubframeSize 2 bBitResolution 16 bSamFreqType 1 Discrete tSamFreq[ 0] 48000 Endpoint Descriptor: bLength 9 bDescriptorType 5 bEndpointAddress 0x06 EP 6 OUT bmAttributes 9 Transfer Type Isochronous Synch Type Adaptive Usage Type Data wMaxPacketSize 0x00c0 1x 192 bytes bInterval 1 bRefresh 0 bSynchAddress 0 AudioControl Endpoint Descriptor: bLength 7 bDescriptorType 37 bDescriptorSubtype 1 (EP_GENERAL) bmAttributes 0x00 bLockDelayUnits 0 Undefined wLockDelay 0 Undefined