Enregistreur audio USB

Globale

Caractéristiques :

– Compatible avec USB Spec à partir de 1.0
– Compatible avec USB Audio Spec à partir de 1.0
– Entrée analogique (ajustable de –3 à+27 dB)
– Entrée S/PDIF Cinch coaxiale
– Entrée numérique optique (TosLink)
– Sortie analogique (plage de 60 dB)
– Taux d’échantillonnage en analogique : 8 à 48 kHz
– Taux d’échantillonnage en numérique : 32, 44,1 et 48 kHz
– Possibilité de fonctionnement en mode full duplex
– Supporte fonctionnement Plug&Play

 

Nombre de cartes-mères actuelles ne possèdent, en raison de leur compacité, qu’un nombre restreint de connecteurs d’extension destinés à recevoir une carte ou une autre. Les puces-son qu’elles intègrent ne conviennent guère, en règle générale, aux enregistrements de qualité. La solution à cette situation est une carte-son externe reliée au système par le biais du port USB.

 

Il est, dans bien des cas, problématique d’intégrer une carte-son externe à un système existant. Il faut, si l’on veut transférer numériquement des données audio vers le PC, que la carte-son soit dotée d’une interface S/PDIF, vu que sinon la seule ressource dont on dispose est d’effectuer de « l’audiograbbing » à partir du lecteur de CD-ROM.

Pire encore, si l’on dispose d’un ordinateur portable et que l’on tient à effectuer des enregistrements, il faudra se contenter de l’entrée microphone sans prétention ou se payer une carte-son PCMCIA au prix astronomique.

Le bus USB (Universal Serial Bus) présent sur tous les PC récents est une interface extrêmement puissante à laquelle on pourra également faire appel pour la transmission de signaux audio.

La réalisation objet de cet article est une carte-son de haut niveau pouvant travailler en mode full duplex, et tournant sous nombre de systèmes d’exploitation, Windows (à partir de Windows 98SE), MacOS ou même Linux.

Avec son UDA1335/1325 Philips propose un circuit intégré qui intègre, outre cette fameuse interface USB, également un convertisseur analogique/numérique (CAN), son complément, un convertisseur numérique/analogique (CNA), une interface I2S sans oublier, bien entendu un microcontrôleur compatible 8052. Il existe plusieurs versions de ce composant : UDA1335 (sans ROM), UDA1325 (progiciel (firmware) N106), UDA1325 (progiciel N104).

Sachant que dans le cas présent le microcontrôleur est toujours utilisé en mode sans ROM (EA=0), la variante de progiciel utilisée n’a pas la moindre importance.Nous avons opté à dessein pour un mode de fonctionnement sans ROM (ROM-less) parce que les progiciels des versions à ROM sont tellement verminés (pleins de bugs) qu’ils ne sont pas utilisables si l’on veut être assuré d’un fonctionnement correct du système.

Nous nous sommes intéressé dès la mise sur le marché de ce composant, nous avons pu identifier, laborieusement il est vrai, les nombreux bugs et partant pu les contourner. Le résultat de ces efforts vaut la peine : cet enregistreur audio USB, alias carte-son USB, fonctionne de façon bien plus stable que la totalité des cartes-son USB du commerce basées elles aussi sur le UDA1325.

Nous utilisons, pour la conversion des données S/PDIF vers I2S, le TDA1315H sachant que ce dernier composant possède déjà 2 entrées S/PDIF. Il est possible, par son biais, de réaliser une commutation entre S/PDIF-RCA (Cinch) et TosLink (optique) sans avoir besoin de périphérique additionnel, opération confiée directement au UDA1325. Il devient possible, dans ces conditions,
de connecter non seulement les lecteurs de CD les plus modernes dotés d’une sortie optique, mais aussi les lecteurs plus anciens ne comportant aucune autre sortie qu’une sortie Cinch. Une EPROM épaulée par son incontournable verrou d’adresse, sans oublier l’indispensable régulateur de tension 3,3 V chargé de l’alimentation du UDA1325 complètent le tableau (de chasse) électronique.

Le schéma :

Le récepteur S/PDIF est activé en mode matériel (hardware mode). Il reçoit ses données directement de K1 (Cinch) ou de IC1 (Toslink), lignes de signal qui attaquent directement, comme l’illustre le schéma de la figure 1, selon le cas, soit la broche IECIN0 soit la broche IECIN1.
En cas de présence d’un signal sur l’une des 2 entrées, la PLL (Phase Locked Loop = boucle à verrouillage de phase) du récepteur essaie de se verrouiller sur le dit signal. Le niveau appliqué à la broche 7 de IC2, IECSEL, détermine l’entrée utilisée.
Après verrouillage de la PLL, les 3 LED D1 à D3 visualisent le taux d’échantillonnage (sample rate).

On dispose alors à la sortie I2S du signal audio numérique qui arrive au UDA1325 par le biais des bornes DA, WS et BCK de ce dernier. Le composant met également à disposition, par le biais des condensateurs de découplage C28 et C29, une entrée
analogique, sous la forme des lignes VINR et VINL. La sélection de l’entrée se fait par l’intermédiaire du pilote d’enregistrement de Windows. Nous y reviendrons un peu plus loin.
Les données d’enregistrement d’audio numérique arrivent, par le biais du canal Wave In, au PC au travers du port USB, les  données de reproduction audio étant elles transmises du PC vers le canal Wave Out. Le réglage du volume se fait à l’aide du
DSP dont est doté le UDA1325.

Après une conversion numérique/analogique on dispose, au travers des condensateurs de découplage C37 et C38, sur K4, du
signal à un niveau de 0 dBu. On pourra brancher à cet endroit une entrée Ligne (Line) mais aussi un casque d’écoute à haute impédance provenant, par exemple, d’un baladeur CD (Discman).
Le bus d’adresses/de données de la CPU 80C52 intégrée dans le UDA1325 est, comme cela est le cas avec de type d’unités centrales intégrées, relié directement, par le biais du verrou IC4, à l’EPROM IC5. PSEN est le signal d’échantillonnage (strobe) de lecture à destination de l’EPROM.

Le signal ALE différencie les données des adresses au niveau de P0. Nous avons forcé la ligne d’adresse A15 à la tension d’alimentation positive de manière à pouvoir utiliser, pour l’EPROM, tout autant une 27C256 qu’une 27C512. Il faudra veiller, en cas d’utilisation d’une 27C512, à ce que le code soit « mirorisé » (se retrouve en double) à compter de l’adresse 0x8000.

Les lignes RD et WR n’étant pas accessibles de l’extérieur, il est totalement impossible de connecter des composants externes au bus de la CPU. Au coeur de la puce, les signaux RD et WR servent à l’adressage de différents registres matériels. Il ne nous
paraît pas judicieux d’entrer ici dans le détail du fonctionnement interne de ce composant complexe qu’est le UDA1325.

 

La source du signal d’horloge est un quartz de 48 MHz, ce qui se traduit par une horloge CPU de 24 MHz. Le réseau LC constitué par C32 et L1 force le quartz à osciller à 48 MHz et non pas à 16 MHz. Le condensateur pris à la broche VREFDA (broche 40) du UDA1325 remplit une double fonction : d’une part il assure une impulsion de remise à zéro (reset) correcte pour le microcontrôleur et de l’autre fournit une tension de référence à l’intention du CNA interne.

Le transistor T2 assure la commutation de la résistance R10 prise dans la ligne D+ de la liaison USB, ce qui permet à l’hôte de détecter une connexion USB et l’amène à tenter d’effectuer une initialisation du périphérique.
L’alimentation de notre carte peut se faire tout aussi bien par le biais du port USB que de façon autonome. Comme les paramètres de configuration diffèrent selon le mode adopté, le cavalier JP1 permet une commutation de la ligne d’adresse A14 (opération qui se fera impérativement montage hors-tension !).

schémaLe progiciel (firmware) :

Le progiciel proposé par Philips ne supporte ni une commutation de la source de signal à enregistrer ni le rehaussement de la sensibilité d’entrée en mode de fonctionnement analogique. Ces « déficiences » constituèrent une raison supplémentaire de développement d’un progiciel propre.

En raison d’une erreur au niveau du pilote audio de Windows 98, cette commutation d’entrée ne fonctionne qu’à partir de Windows 98SE (Second Edition). Il vous suffira de faire un tour dans les propriétés système de votre machine pour découvrir quelle est la version de Windows sous laquelle tourne votre machine.

La première version de Windows 98 se contente de valider que les signaux analogiques. La seule solution consiste à passer à la version SE98 de Windows, réactualisation que l’on peut télécharger sans le moindre problème depuis Internet (et cela en toute légalité même) pour quelques poignées d’euros seulement.
Le progiciel remplit 4 fonctions majeures :
– Pilotage du noyau (core) USB
– Traitement des demandes (request) de l’interface USB 1.0 Std (GETDescriptor par exemple)
– Traitement des demandes de classe de l’USB Audio 1.0 (le volume par exemple)
– Pilotage des périphériques embarqués sur la puce comme le convertisseur de taux d’échantillonnage ou le CAN.
Dans ce cadre, la matériel centré sur le DMA (Direct Memory Access) se charge, sans la moindre intervention extérieure, de la transmission de données d’audio numérique de sorte que l’on n’a pas besoin de logiciel pour cela.

En USB, les périphériques audio travaillant avec ce port sont des extensions dites coumpount, ce qui signifie qu’elles comportent plusieurs interfaces. Dans le cas présent il s’agit des 3 interfaces Control, Wave Out et Wave In.

Pour chacune de ces interfaces, Windows installe un pilote (driver) spécifique. Il est très facile ainsi d’intégrer de nouvelles interfaces dans la liste des descripteurs (HID par exemple).

1

Structure du descripteur de configuration d’un périphérique audio USB :

 

Interface0 pipe (control)
AC Control audio (Topologie)
Interface (alt0) pipe
Interface (alt1) pipe (waveout)
ACInterface audio (streamformat)
Endpoint ISO
ACEndpoint audio (samplerates)
Interface (alt0) pipe
Interface (alt1) pipe (wavein)
ACInterface audio (streamformat)
Endpoint ISO
ACEndpoint audio (samplerates)

2

Dessin des pistes et sérigraphie de l’implantation des composants de la platine de l’enregistreur Audio USB

3 4

Liste des composants :

Résistances :
R1 = 75 Ω
R2 = 470 Ω
R3 = 680 Ω
R4,R19 à R23 = 1 Ω
R5 à R7 = 4kΩ7
R8,R9,R11 à R14 = 22 kΩ
R10 = 1kΩ5
R15,R16 = 22 Ω
R17,R18 = 220 kΩ
R24,R25,R28 = 10 kΩ
R26,R27 = 100 Ω

Condensateurs :
C1,C32 = 10 nF céramique RM5
C2,C9,C13,C18,C20,C22,C24,C36 = 10 μF/25 V radial RM5
C3 = 2nF2 céramique RM5
C4,C6,C7,C14 à C17,C19,C21,C23,C25 à
C27,C33,C35 = 100 nF (CMS1206)
C5,C8,C10,C41 à C44,C46 = 100 nF céramique RM5
C11,C12 = 22 pF
C28,C29,C34,C37,C38 = 47 μF/25 V radial
C30,C31,C39,C40 = 10 pF
C45 = 10 μF/63 V radial
C47 = 470 μF/25 V radial

Inductances :
L1 = 1μH5
L2 = 47μH
L3 à L8 = BLM31A601S (Murata CMS1206 chez Farnell 581-094)

Semi-conducteurs :
D1 à D3 = LED 3 mm
D4 = 1N4002
T1 = BC547B
T2 = BC557B
IC1 = TORX173
IC2 = TDA1315H/N2 (Philips)
IC3 = UDA1325H/N106 (Philips)
IC4 = 74HC573
IC5 = 27C512-10 (EPROM programmée : EPS 012013-21)
IC6 = LE33CZ (ST, chez Farnell par exemple) ou LP2950CZ-3.3 (National Semiconductor)
IC7 = 7805

Divers :
JP1 = embase mâle à 1 rangée de 3 contacts + cavalier
K1 = embase Cinch encastrable telle que, par exemple, T-709G (Monacor)
K2 = embase USB de type B encastrable
K3,K4 = embase jack 3,5 mm stéréo
X1 = quartz 48 MHz 3ème harmonique résonance parallèle

Il faut, si l’on veut qu’un périphérique USB soit reconnu par le système d’exploitation comme étant un appareil audio, que le descripteur de configuration une série de descripteurs ayant trait aux interfaces et Endpoint spécifiques de l’Audio Class (AC).
Selon la taille de la topologie et le nombre de paramètres de configuration (Interface Alternate Settings) la quantité de données recueillie a vite fait d’atteindre le kilooctet. On définit, dans le descripteur AC-Control, les caractéristiques de la carte-son (entrées, sorties, liaisons, réglages).
Le DDK de Microsoft comporte un outil baptisé grapher.exe. Cet outil permet, de définir facilement une topologie USB. Chaque canal (pipe) audio doit disposer d’un paramètre dit Alternate Setting 0 pour éviter les pertes inutiles de bande passante lors de la clôture du canal.

Implantation des composants :

Un premier coup d’œil au dessin des pistes de la platine double face à trous métallisés représenté en figure 2 aura vite fait de nous apprendre que nous nous trouvons en présence, dans le cas de IC2 et de IC3 (de même d’ailleurs de celui de certains des composants passifs), de composants CMS.

Vu le nombre important de pattes des dits composants il est difficile de parler de jeu d’enfant en ce qui concerne la mise en place des composants.

Si vous n’avez pas encore eu l’occasion de vous faire la main sur ce genre de composants nous vous recommandons de faire appel à un « spécialiste » en la matière vu que l’on a vite fait de « griller » l’un de ces composants coûteux surtout si l’on
utilise un fer à souder ordinaire. Une station à souder spécialement prévue pour les composants CMS telle celle présentée dans le cadre des 2 articles « Les CMS ? Pas de panique ! » sera d’un immense secours dans le cas présent. Le coût d’une telle station de
soudage est important de sorte que l’achat d’un tel équipement ne se justifie que si l’on doit implanter souvent des composants CMS.

Comme d’habitude, une fois que les 2 circuits intégrés et les 21 condensateurs et selfs CMS auront été soudés correctement en place, il sera temps de s’intéresser à l’implantation des composants classiques. Après l’étape délicate de la mise en place des CMS, cette opération ne présente aucune difficulté, tant que l’on ne fait pas d’erreur au niveau de la polarité des condensateurs électrochimiques.

Les circuits intégrés DIL, l’EPROM et le verrou, pourront être mis sur support. Les LED ne seront montées que plus tard, lorsque l’on saura exactement où elles devront se trouver sur le boîtier.

La dernière étape de l’opération de soudage consiste à la mise en place des embases et connecteurs : 2 embases mini-DIN, les embases TosLink, Cinch et USB. Dès lors que votre platine ressemble comme une goutte d’eau à celle représentée sur la photo, et que vous vous serez assuré de l’absence de pont de soudure ou de toute autre erreur de montage, vous pouvez estimer que
l’étape de mise en place des composants est terminée avec succès.

A  BC

Courbes de mesure :

La première courbe de mesure, la courbe A, représente l’évolution de l’amplitude lorsque les CAN et CNA sont montés en série. Nous avons utilisé, pour cette mesure, un pilote multimédia ASIO spécial de Cubase VST/32, pilote qui permet un fonctionnement en mode full duplex vu qu’il retarde le signal du générateur de mesure une petite seconde.

La bosse en extrémité de la boucle est sans doute due au filtre de sortie; la fiche de caractéristiques ne souffle mot ce sujet. Si l’on ne mesure que le CNA cette bosse ne dépasse pas 0,5 dB de hauteur. La courbe B rend le facteur distorsion + bruit en relation  avec la fréquence.

Cette fois encore, les convertisseurs sont montés en série, les distorsions étant principalement dues au CAN. Les valeurs sont pratiquement 2 fois supérieures à ce que la fiche de caractéristiques donne comme maximum (mesure en numérique).

La courbe C illustre la réponse en fréquence du CNA à pleine modulation (0 dB), mesurée à l’aide d’un signal de 997 Hz échantillonné à une fréquence de 46 kHz.

Le signal de sortie se situe à quelque 0,66 V. La somme distorsion + bruit est, à une bande passante de 22 kHz, de l’ordre de 0,008%. Aucune des harmoniques situées à l’intérieur de la bande passante audio ne dépasse –90 dB. Bien que le bruit augmente au-delà de 20 kHz (ce qui est typique de la mise en forme du bruit, le noise shaping, dans le cas des convertisseurs Delta-Sigma) les distorsions ne vont pas au-delà de 0,03%, lorsque l’on augmente à 80 kHz la bande passante à laquelle la mesure est faite.

Valeurs de mesure (alimentation via le bus) :

Consommation de courant (via le bus)   96 mA
Consommation de courant (autonome)  109 mA
CNA
Tension de sortie nominale (0 dB)          0,66 V
Plage de fréquences (–3 dB)                 23,9 kHz (fech = 48 kHz)
Amplitude (20 kHz)                                 +0,38 dB (fech = 48 kHz)
Impédance de sortie                              110 W
Rapport signal/bruit                               >96 dBA
DHT+B (THD+N) (1 kHz)                        0,008% (B = 22 kHz)
,03% (B = 80 kHz)
Diaphonie                                             >100 dB (1 kHz)
87 dB (20 kHz)

CAN
Sensibilité d’entrée maximum               58 mV
Sensibilité d’entrée minimum                1,42 V
Impédance d’entrée                             12 kW
DHT+B (THD+N) (1 kHz, –0,5 dBFs)     0,02% (B = 24 kHz)
Diaphonie                                             >69 dB (1 kHz)
47 dB (20 kHz)

Mode d’emploi :

Le cavalier JP1 est mis en position extPwr (external Power, comme vous l’avez sans doute déduit de vous-même) et l’alimentation assurée par un module d’alimentation. La consommation de courant devrait se situer aux alentours de 110 mA. Mais il est également possible, contrairement à ce qui avait été le cas de la mini-carte-son USB décrite dans le n° 294 (décembre 2002), d’envisager une alimentation de ce montage à l’aide d’un hub USB à condition bien entendu d’avoir mis le cavalier dans la position correspondante.

On devrait découvrir un signal de quelque 4 MHz sur la broche 11 de IC4; si tel n’est pas le cas il faudra examiner l’oscillateur
centré sur X1, à la recherche d’erreurs de soudure ou d’implantation de composants.
Les utilisateurs de Windows 98SE/Me devront, avant de passer à l’installation, installer les patchs correspondants proposés par
Microsoft.

Les raisons et le mode opératoire sont expliqués dans un encadré.

Plug&Play simplifie très sensiblement l’installation de l’enregistreur audio. Dès que l’appareil est connecté à un port USB du PC Windows le reconnaît automatiquement et installe les pilotes pour l’enregistreur audio USB, SNDREC10.INF pour le mode autonome et SNDREC11.INF pour le mode à alimentation par le bus (les fichiers sont placés dans le répertoire INF). Il est bon d’avoir à portée de main le CD-ROM d’installation de Windows 98SE au cas où l’on en aurait besoin.
Une fois l’installation effectuée et après avoir redémarré l’ordinateur l’appareil est reconnu et le gestionnaire de matériel est redémarré une seconde fois. Cette fois on a installation des pilotes pour USB Audio.
Si l’on a installé les patches le gestionnaire PnP découvre la présence, dans le dossier des pilotes, de nouvelles versions de VDM Audio.

Il faut veiller à ne pas écraser par une opération ultérieure ces nouvelles versions. Si l’installation s’est faite correctement on devrait trouver dans le gestionnaire système l’appareil Audio USB dans la rubrique Audio Vidéo, Contrôleur de manette. Il est possible dès lors d’enregistrer et de reproduire des données audio par n’importe quel logiciel de son supportant les pilotes multimédia de Windows. L’un des avantages de l’enregistreur Audio USB par rapport à la mini-carte-son USB est qu’il permet une sélection par menu de la source d’entrée.

Il est possible, dans le menu Wave In du paramétrage de l’enregistrement, de choisir, parmi les 3 entrées proposées, Digital Audio Interface pour l’entrée S/PDIF coaxiale, SPDIF Interface pour l’entrée optique et Line pour l’entrée analogique. Dans le cas
des entrées numériques les LED visualisent le taux d’échantillonnage, le niveau n’étant bien entendu pas réglable lui.

Le réglage de niveau de l’entrée ligne bat la plage d’amplification du préamplificateur interne qui va de –3 à +27 dB (dans le cas de la mini-carte-son il n’était possible de définir que 2 niveaux et cela matériellement et non pas par logiciel).

carte

Déverminage de Windows :

Windows, par le biais de Sndvol32.exe, ne pilote pas correctement les appareils audio USB servant à l’enregistrement ou à la reproduction sachant que ce système d’exploitation (SE) ne différencie pas des appareils portant la même dénomination.
Cette situation peut avoir des conséquences diverses.

Après l’installation de l’appareil Audio et le redémarrage du SE on ne dispose plus d’une possibilité de réglage du volume du lecteur de CD. La dénomination du régleur de volume est erronée et si l’on se trouve en présence de plus d’un unique sélecteur
d’entrée les 2 se trouvent baptisés USB Audio Device et ne peuvent pas être commandés séparément.

Le matériel tel que cette carte-son qui supporte l’enregistrement et la reproduction en mode full duplex est représentée de façon erronée lui aussi. Les options Line In et Mic sont visualisées sous la forme de USB Audio Device, il est impossible de choisir l’un des sélecteurs d’entrée.

Le potentiomètre de volume maître de la reproduction est identifié en tant que USB Audio Device. Il existe, sous la dénomination Q269601.EXE et Q280127.EXE, des programmes de réparation (bug fix) de ces imperfections, programmes disponibles sur le site :

www.media-assistance.com/English/index english.html
www.pcsound.philips.com/driverfiles/patch269601usa8/269601 usa8.exe (pour Windows 98SE uniquement).

Sur le site Web de Microsoft http://support.microsoft.com/?scid=KB;en-us:280127 on trouvera également le patch pour Windows Me.

Si l’on procède à l’installation des programmes de réparation après l’installation de l’enregistreur Audio USB audio ou que l’on rencontre des problèmes de visualisation des appareils audio on pourra tenter de les éliminer par une suppression du USB Audio Device du Registry en s’aidant de l’outil RegEdit.

Cette opération requiert un minimum d’expérience sachant qu’une modification erronée à ce niveau, qu’il s’agisse d’une adjonction ou d’une suppression, peut avoir des conséquences fatales quant à la stabilité voire au fonctionnement du système.
Le premier pas consiste à chercher la Key HKEY_LOCAL_MACHINEEnumUSB.

Si le système est (ou a été) connecté à plusieurs appareils USB, ces derniers sont classés par identificateur fabricant (Vendor ID) et identificateur produit (Product ID).

L’entrée d’identification de l’enregistreur Audio USB commence par VID_0C7D….

On interrompt ensuite la liaison USB vers l’appareil et on vire toutes les Keys du Registry concernant l’appareil en question.

On quitte RegEdit et on reconnecte l’enregistreur Audio USB au port USB.

Tous les pilotes sont à nouveau installés. L’installation ne pose par contre pas le moindre problème sous Windows XP, MacOS et, bien évidemment diront ses défenseurs irréductibles, Linux.

Laisser un commentaire

Votre adresse de messagerie ne sera pas publiée. Les champs obligatoires sont indiqués avec *

*

Ce site utilise Akismet pour réduire les indésirables. En savoir plus sur comment les données de vos commentaires sont utilisées.