Skip to main content

1 - Le matériel et les pilotes ALSA, FFADO, ...


[RÉSOLU] Focusrite Scarlett 2i2, Raspberry Pi B 2.

Bonjour,
je débute sur linux
je cherche à faire fonctionner la Scarlett 2i2 et un clavier maître Alesis QX25 sur un Rapsberry Pi pour les utiliser avec Pure data Le but étant de pouvoir utiliser tout cela comme pédale d’effet pour une guitare.

Le problème : l’entrée audio émet un gros bruit (bruit rouge, m’a-t-on dit)
la sortie fonctionne ainsi que les contrôles midi du clavier.


Distribution Raspbian GNU/LINUX 8.0 (Jessie)

Copy to clipboard
0 [ALSA ]: bcm2835 - bcm2835 ALSA bcm2835 ALSA 1 [QX25 ]: USB-Audio - QX25 Alesis QX25 at usb-3f980000.usb-1.4, full speed 2 [USB ]: USB-Audio - Scarlett 2i2 USB Focusrite Scarlett 2i2 USB at usb-3f980000.usb-1.5, high speed


aplay -l :
Copy to clipboard
**** Liste des Périphériques Matériels PLAYBACK **** carte 0: ALSA [bcm2835 ALSA], périphérique 0: bcm2835 ALSA [bcm2835 ALSA] Sous-périphériques: 8/8 Sous-périphérique #0: subdevice #0 Sous-périphérique #1: subdevice #1 Sous-périphérique #2: subdevice #2 Sous-périphérique #3: subdevice #3 Sous-périphérique #4: subdevice #4 Sous-périphérique #5: subdevice #5 Sous-périphérique #6: subdevice #6 Sous-périphérique #7: subdevice #7 carte 0: ALSA [bcm2835 ALSA], périphérique 1: bcm2835 ALSA [bcm2835 IEC958/HDMI] Sous-périphériques: 1/1 Sous-périphérique #0: subdevice #0 carte 2: USB [Scarlett 2i2 USB], périphérique 0: USB Audio [USB Audio] Sous-périphériques: 1/1 Sous-périphérique #0: subdevice #0


arecord -l :
Copy to clipboard
**** Liste des Périphériques Matériels CAPTURE **** carte 2: USB [Scarlett 2i2 USB], périphérique 0: USB Audio [USB Audio] Sous-périphériques: 1/1 Sous-périphérique #0: subdevice #0


Visiblement Scarlett 2i2 fonctionne sur linux, j’ai visité les différentes pages sur le site. Il y a peut-être une spécificité sur le Raspberry Pi ?

Sur /usr/share/alsa/cards/USB-Audio.conf il y a une ligne au sujet de la Scarlett 2I2 mais je ne sais pas si cela a à voir avec mon problème.

Copy to clipboard
… # If a device does not use the first PCM device for digital data, the device # number for the iec958 device can be changed here. USB-Audio.pcm.iec958_device { # "NoiseBlaster 3000" 42 # The below don't have digital in/out, so prevent them from being opened. "Blue Snowball" 999 "HP Digital Stereo Headset" 999 "Logitech Speaker Lapdesk N700" 999 "Logitech USB Headset" 999 "Logitech Wireless Headset" 999 "Plantronics GameCom 780" 999 "Plantronics USB Headset" 999 "Plantronics Wireless Audio" 999 "SB WoW Headset" 999 "Scarlett 2i2 USB" 999 "Sennheiser USB headset" 999 "USB Device 0x46d:0x992" 999 } …


Si quelqu’un à une idée je suis tout ouïe.

Vincent
Salut Jacques,

J’utilise la carte depuis plus d’un an sur windows xp (il n’y a pas d’alimentation séparée) avec Asio et Asio4all, il m’est arrivé d’avoir des ronflettes plus ou moins fortes avec des câbles défectueux mais qui n’avaient rien à voir avec le bruit ici qui est continu, constant, régulier et très fort. J’utilise exactement les mêmes éléments sur le Raspberry.

Je met ici les spécifications de Scarlett, il y a peut-être des éléments qui pourraient parler, notamment dans la partie « Digitale Performance » j’imagine, mais je n’ai pas de connaissances dans ces domaine (une bonne occasion de connaître).

Copy to clipboard
Focusrite Scarlett 2i2 Specifications: Mic *Frequency Response 20Hz ­ 20kHz +/­ 0.1 dB *THD+N ­ 100dB (minimum gain, ­1 dBFS input with 20 Hz ­ 20 kHz filter) *Equivalent Input Noise (EIN): ­127 dB: measured at maximum gain with 150 Ohm termination (20 Hz ­ 20 kHz filter) *Gain Range ­4 dB to + 46 dB *Max Input Level +4dBu Line *Frequency Response 20Hz ­ 20kHz +/­ 0.1dB *THD+N ­91dB (measured at minimum gain with ­1 dBFS input and 20 Hz ­ 20 kHz filter) *Noise ­104 dBu (measured at minimum gain, with a 20 Hz ­ 20 kHz filter) *Signal to Noise Ratio > 100dB *Gain Range ­ 21 dB to +29 dB *Max Input Level +20dBu Instrument *Frequency Response 20Hz ­ 20kHz +/­ 0.1dB *THD+N ­72dB (measured at minimum gain with ­1dBFS signal and 20 Hz ­ 20 kHz filter) *Noise ­87dBu (20Hz/20kHz bandpass filter) *Gain Range ­4dB to +46 dB *Max Input Level +4dBu Analogue Output Performance *Nominal Output Level 0dBFS = 10dBu, balanced *Frequency Response 20Hz ­ 20kHz +/­ 0.2dB *THD+N ­100dB (measured with ­1dBFS input and 20Hz ­ 20 kHz filter, unweighted) *Output Impedance < 10Ω *Power Output into 150Ω 15mW *Power Output into 50Ω 30mW __Digital Performance *Clock sources Internal clock only *A­D Dynamic Range 105dB 'A­weighted' (all inputs). Converter chipset A­D dynamic range 114dB *D­A Dynamic Range 104dB 'A­weighted' (all outputs). Converter chipset D­A dynamic range 114dB *Supported sample rates 44.1 KHz, 48 KHz, 88.2 KHz, 96 KHz__ Crosstalk *Input to Input Better than 90dB *Output to Output Better than 90dB *Input to Output Better than 85dB Input Metering *Ring LED lit Green Signal present (­24 dBFS) *Ring LED lit Red Signal overload (0dBFS), peak held for approximately 1 second


J’espère que cela de donne de l’inspiration

Vincent
Hello Vincent !

Alors, si tu es sûr de la fiabilité des entrés de la carte, il ne reste qu'Alsa en cause dans la chaîne de tests.
Mais Alsa reconnaît bien la carte et la fait fonctionner au poil en sortie. Bref je n'y crois toujours pas à 100%...

Nan, nan, ça ne me dit rien la capture d'écran. Juste des spécif's techniques sans particularité...
De toute façon, tu te branches sur l'entrée combo jack/XLR, je suppose ? Tu es donc en analogique jusqu'aux convertisseurs ADAC. M'étonnerait quand même qu'il y ait incompatibilité entre les fréquences d'échantillonnage de la carte et celles du Raspberry, non ? Et juste en entrée ?...

Une idée : avec la carte connectée, si tu lances Audacity sans jackd, quels sont les choix proposés pour les périph's d'E/S ?
Audacity

A+
Jacques
Salut Jacques,

les choix pour les périfériques e/s :

en lecture
  • Scarlett 2i2 USB:Audio (hw1:0)
  • sysdefault
  • front
  • surround40
  • dmix

en Enregistrement :
  • Scarlett 2i2 USB:Audio (hw1:0)
  • sysdefault
2016 01 16 113343 1824x984 Scrot
sinon effectivement je pense qu’il y a une incompatibilité avec le Raspberry, ou au moins une particularité qui n’est pas bien configurer par Alsa. Le genre de truc « Clock sources Internal clock only » m’incite à aller voir du côté horloge et fréquence du Raspberry.

Sinon je crois qu’il y a des convertisseurs de fréquences.

Vincent
Hello Vincent !

Aaaah oui, en effet !
Bon. Ca dépassait un peu le cadre habituel, on a quelques excuses à avoir un peu tardé....
Je n'avais pas trouvé ces liens dans mes recherches alors, sincèrement, bravo !
Je viens de vérifier, je n'ai pas non plus de fichier /boot/cmdline.txt...

Je n'ai pas tout lu mot à mot mais alors, au final qui est responsable : la Scarlett, le Raspberry, Alsa ?
J'ai cru comprendre de ces lectures que c'était lié au port USB du Raspberry ?
A ton avis ?

Ce serait bon de le savoir pour noter la solution dans l'article consacré à la Scarlett, si le problème venait d'elle.
S'il s'agit du Raspberry, ça restera très marginal, un "résolu" ajouté en éditant le titre de ton 1er post suffira sans doute.

Tu nous raconteras la suite de tes expérimentations "pedalboard" ?
Content pour toi,

A+
Jacques
Salut Jacques,

au final c’est Raspberry ou plutôt un bug dans la version du noyau Raspbian (Debian), le système installé sur le Raspberry Pi. Ici le bout de texte explicatif du pourquoi de la chose :
The fiq_fsm handler is incorrectly performing transfers to high-speed isoc OUT endpoints. It appears that it's blindly transferring data every microframe instead of strided per 2^(n-1) microframes. With Isoc IN endpoints, you can request data every microframe and the device just responds as-and-when.

This is why nrpacks=1 worked - one isochronous transfer per URB which hid the bug.

Without FIQ support, microframe jitter will cause variations in timing of the OUT packets which will probably cause sample rate skew. I'll look at implementing strided transfer support.

En gros on voit un peu le truc…

cela ne touche donc que l’entrée usb audio du Raspberry Pi. Ni Scarlett, ni Alsa. je pense que «  isoc OUT endpoints » fait référence au « system on chipset » d’où le fichier /boot/cmdline.txt n’existe que sur ce genre de système.

C’est maintenant que peut commencer les choses amusantes, rendre le RP « headless » et tenter de faire des patchs Pure data intéressants.

à plus

Vincent
J’ai un peu de mal à mettre résolu dans le titre !
France
@Sooncacq : je l'ai mis. Il te fallait éditer le premier message de ce fil de discussion pour que ça fonctionne. Merci d'avoir penser au "résolu" !
Page: 2/2
1  2