Popeye

Popeye est mon serveur NAS / multimedia / infrastructure. Il est volontairement compact mais très costaud en fonctionnalité, d'où le nom Popeye en référence au personnage de dessin animé svelte et costaud.
Popeye
Agrandir
Popeye

V1

10/2007 : Première carte mère mini itx achetée sur un site d'enchère en ligne auprès d'un revendeur anglais. Elle provient d'une machine industrielle qui scannait des objets. Le bundle était composé d'un boitier métallique sur lequel était vissé la CM, une alimentation de 70 W, un écran LCD 2×20 grand caractère et un scanner de code barre.

Caractéristiques :

  • Carte mère : VIA EPIA 500
  • Processeur : VIA C3@500 MHz
  • Ram : 128 Mo
  • Disque : 320 Go IDE
  • LAN : 100 Mbit/s
  • Distribution : Debian GNU/Linux i386

Le boitier est construit à partir d'une boite métallique achetée en magasin d'électronique : la boite de l'alimentation a été adaptée et vissée à l'aide d'une équerre, le connecteur 220 V déporté sur la façade arrière du boitier.

Façade avant
Agrandir
Façade avant
Façade arrière
Agrandir
Façade arrière

Pour gagner de la place dans le boitier, j'ai réduit la longueur de la nappe IDE. J'ai déplacé le connecteur femelle afin qu'elle soit la plus courte possible : 4 cm. En remontant la nappe, j'ai, par erreur, installé l'un des connecteurs à l'envers et ne l'ai constaté qu'après avoir branché le disque sur la CM : il n'était pas reconnu par le bios. Par chance, ni le port IDE, ni le disque n'ont subit de dégâts suite à cette bourde. En re-démontant le connecteur et en le mettant dans le bon sens, tout fonctionnait comme attendu. :whew:

Nappe IDE raccourcie
Agrandir
Nappe IDE raccourcie

J'ai fixé le disque dur à l'aide de très gros élastique afin d'absorber les vibrations. Les supports de ces élastiques étaient constitués d'une tige filetée pliée en U à l'aide d'un brûleur à gaz de camping. Ce système de fixation n'est pas facile d'utilisation mais permet d'exploiter au maximum la place du boitier tout en limitant le bruit.

Suspension du disque
Agrandir
Suspension du disque

Pour rendre l'ensemble plus discret et améliorer mon WAF, j'ai fabriqué un support métallique aux dimensions du boitier pour le suspendre sous le bureau.

Support sous le bureau
Agrandir
Support sous le bureau

06/2008 : j'ai superposé à l'aide de plaques métallique mon nouveau disque dur (1 To en SATA) avec l'actuel (320 Go IDE) afin d'optimiser l'espace disponible. J'ai conservé le système de suspension avec les élastiques.

Aperçu des tiges filetées
Agrandir
Aperçu des tiges filetées
Ensemble monté
Agrandir
Ensemble monté

06/2008 : les températures élevées :hot: à l'intérieur du boitier m'ont conduit à ouvrir la façade avant avec une grille et un ventilateur Noctua de 80 mm. Le boitier de l'alimentation a également été percé pour améliorer la circulation de l'air 8-).

Essai d'un ventilateur supplémentaire de refroidissement
Agrandir
Essai d'un ventilateur supplémentaire de refroidissement
Vue du dessus avec la façade remplacée
Agrandir
Vue du dessus avec la façade remplacée
Aperçu de la grille de remplacement
Agrandir
Aperçu de la grille de remplacement

08/2008 : la carte Ethernet d'origine étant une 100 Mbit/s, pour m'amuser un peu avec de la configuration réseau, j'ai ajouté une carte réseau Gbit au format PCI : une D-Link DGE-528T.

Carte réseau D-Link DGE-528T
Agrandir
Carte réseau D-Link DGE-528T

J'ai dû adapter le système de fixation et le boitier car celui est loin d'être standard ;) : j'ai fait une ouverture à la dremel dans la face arrière et percé un trou dans le bracket de la carte réseau pour visser l'ensemble (à droite sur la photo ci dessous).

Vue de derrière avec la nouvelle carte Gb
Agrandir
Vue de derrière avec la nouvelle carte Gb

2e monture

11/2009 : je profite d'un changement de carte mère de Mimosa pour récupérer la carte mère Via EPIA SP130000 et le boitier.

J'ai repris la carte Gb et l'ai installée sur un riser PCI gauche : celle ci est maintenant parallèle à la CM et me permet de gagner de la place verticalement afin de pouvoir installer les disques dur suspendus au dessus.

Riser PCI gauche
Agrandir
Riser PCI gauche
Montage de la carte Gb horizontalement
Agrandir
Montage de la carte Gb horizontalement

Pour fixer le tout, j'ai ajouté un cadre métallique pour suspendre les disques durs via des élastiques et remplacer la façade avant par une grille afin d'améliorer la circulation d'air.

Suspension des disques
Agrandir
Suspension des disques

L'ensemble monté est très compact, il n'y a pas beaucoup d'espace pour la circulation d'air…

Vue de devant sans la grille
Agrandir
Vue de devant sans la grille
Vue de derrière
Agrandir
Vue de derrière

Caractéristiques :

  • Réception : Numérique hertzien (DVB-T)
  • Tuners : 2
  • Connectique : USB 2.0

03/2010 : j'ai installé un dongle USB Pinnacle PCTV 2000e : cette carte reçoit la télévision via une antenne rateau à la norme DVB-T via un double tuner.

Le service mythbackend qui tournait sur Olive a également été déplacé sur Popeye afin qu'il prenne une place centrale dans mon infrastructure.

Dongle USB Pinnacle PCTV 2000e double tuner dvb-t
Agrandir
Dongle USB Pinnacle PCTV 2000e double tuner dvb-t

Voici les logs du noyau :

[   11.669176] dvb-usb: found a 'Pinnacle PCTV 2000e' in cold state, will try to load a firmware
[   11.750393] usb 1-1: firmware: direct-loading firmware dvb-usb-dib0700-1.20.fw
[   12.323901] dvb-usb: found a 'Pinnacle PCTV 2000e' in warm state.
[   12.324161] dvb-usb: will pass the complete MPEG2 transport stream to the software demuxer.
[   12.324425] DVB: registering new adapter (Pinnacle PCTV 2000e)
[   12.642151] usb 1-1: DVB: registering adapter 0 frontend 0 (DiBcom 7000PC)...
[   12.851189] dvb-usb: will pass the complete MPEG2 transport stream to the software demuxer.
[   12.851493] DVB: registering new adapter (Pinnacle PCTV 2000e)
[   13.046972] usb 1-1: DVB: registering adapter 1 frontend 0 (DiBcom 7000PC)...
[   13.260600] input: IR-receiver inside an USB DVB receiver as /devices/pci0000:00/0000:00:14.0/usb1/1-1/rc/rc0/input15
[   13.261157] rc rc0: IR-receiver inside an USB DVB receiver as /devices/pci0000:00/0000:00:14.0/usb1/1-1/rc/rc0
[   13.261437] dvb-usb: schedule remote query interval to 50 msecs.
[   13.261460] dvb-usb: Pinnacle PCTV 2000e successfully initialized and connected.
[   13.262131] usbcore: registered new interface driver dvb_usb_dib0700

03/2010 : j'ai installé le LCD initialement destiné au NSLU2 sur la façade avant. Un bargraphe représentant l'évolution du load ainsi qu'un bandeau déroulant avec l'uptime sont affichés via LCDd.

Ajout du lcd en façade
Agrandir
Ajout du lcd en façade
En marche
Agrandir
En marche

07/2010 : malheureusement, le boitier est trop petit et l'ensemble chauffe beaucoup :hot:? Les disques durs sont à 50°C. J'ai dû installer un ventilateur supplémentaire suspendu au dessus de l'ensemble en attendant de trouver mieux. De la même manière, le switch ethernet était posé sur la freebox, je les ai installé verticalement pour qu'ils améliorer la circulation d'air :cold:.

Il fait chaud !
Agrandir
Il fait chaud !

Nouveau boitier : Smart Teck EZ Plug. Le système de rack pour les disques dur est très pratique. Côté flux d'air, il est équipé d'un ventilateur de 80 mm en façade en aspiration et de 2 petits de 60 mm à l'arrière en extraction.

Face avant ouverte avec les racks de disque
Agrandir
Face avant ouverte avec les racks de disque
Vue de côté
Agrandir
Vue de côté
3 ventillos : 1x80mm + 2x60mm
Agrandir
3 ventillos : 1x80mm + 2x60mm

Malgré les ventillateurs, les températures restents trop élevées et les 2 ventillateurs de 60 mm bruyant. En effet, les racks de disques durs ne permettent pas une bonne circulation de l'air et ces derniers restent à une température de 50°C environ.

Je ne suis pas satisfait et renvoi le boitier. Retour à la case départ…

07/2010 : nouvel essai avec un Silverstone - Sugo SG05B. Ce boitier est plus simple que le précédent : il ne dispose pas de rack, l'alimentation est au plus grosse en volume, par contre, il est équipé que d'un ventilateur en aspiration de 120 mm en façade, l'alim en possède également un en aspiration monté sur sa face inférieure.

Façade avant
Agrandir
Façade avant
Vue arrière
Agrandir
Vue arrière

J'ai enlevé le berceau intérieur destiné à supporter un lecteur DVD et un dd 2.5“ et l'ai remplacé par une fixation des disques durs via des plaques de métal afin de les empiler verticalement. Le tout est suspendu avec de la ficelle à rôti et gros élastique.

Boitier avec suspension des disques
Agrandir
Boitier avec suspension des disques
Gros plan
Agrandir
Gros plan

Pour diminuer le bruit de souffle du ventilateur de 120 mm, j'ai installé un adaptateur entre la prise d'alimentation du ventilateur et la carte mère sur lequel se trouve une résistance sur le câble rouge (+5V) permettant de diminuer la tension d'alimentation, ainsi il tourne moins vite. L'avantage des grands ventilateurs est que même à vitesse réduite, ils restent efficaces. A contrario, les petits doivent tourner vite pour la même efficacité et, plus ils tournent vite, plus ils sont bruyants.

Résistance sur l'alimentation du ventilateur
Agrandir
Résistance sur l'alimentation du ventilateur

Le tout est désormais silencieux et les disques sont revenus à 35°C environ.

12/2010 : les récepteurs IR et télécommande de la première Xbox ne sont pas cher et peuvent être adaptés pour fonctionner sur le port USB d'un PC.

Récepteur IR d'Xbox + télécommande
Agrandir
Récepteur IR d'Xbox + télécommande

Le connecteur du dongle USB est une version modifiée de l'USB avec les 4 fils traditionnels (VCC, GND, D+ et D-) auxquels s'ajoutent une fil pour piloter le retour de force des manettes de jeu. Il est possible de souder un câble USB “normal” directement sur le circuit imprimé en ne connectant que les 4 fils habituels.

Brochage du récepteur
Agrandir
Brochage du récepteur

Assignation des broches :

  1. Rouge = +5V
  2. Blanc = Data -
  3. Vert = Data +
  4. Jaune = Retour de force ⇒ Inutilisé
  5. Noir = Masse, 0V DC

J'ai également dessoudé le récepteur infrarouge et l'ai installé au bout de plusieurs centimètres de fils afin de le déporter et le rendre plus discret. Une fois terminé, le récepteur est reconnu par le noyau avec le module lirc_atiusb. En configurant lirc, je pilote mpd via irexec et mpc (client en ligne de commande pour mpd) pour jouer de la musique pour le garage. :music:

Fichier de mapping des touches :

/etc/lirc/lircd.conf
begin remote
 
  name  Xbox_Remote
  bits            8
  eps            30
  aeps          100
 
  one             0     0
  zero            0     0
  gap          163983
  toggle_bit_mask 0x0
 
      begin codes
          left                     0xA9
          up                       0xA6
          right                    0xA8
          down                     0xA7
          enter                    0x0B
          1                        0xCE
          2                        0xCD
          3                        0xCC
          4                        0xCB
          5                        0xCA
          6                        0xC9
          7                        0xC8
          8                        0xC7
          9                        0xC6
          0                        0xCF
          menu                     0xF7
          display                  0xD5
          rewind                   0xE2
          ffwd                     0xE3
          play                     0xEA
          pause                    0xE6
          stop                     0xE0
          skip-                    0xDD
          skip+                    0xDF
          title                    0xE5
          info                     0xC3
          back                     0xD8
      end codes
 
end remote

Configuration d' irexec :

~/.lircrc
# play button
begin
prog = irexec
button = play
delay = 2
config = mpc toggle
end
 
# right button
begin
prog = irexec
button = right
delay = 2
config = mpc next
end
 
# skip+ button
begin
prog = irexec
button = skip+
delay = 2
config = mpc next
end
 
# skip- button
begin
prog = irexec
button = slip-
delay = 2
config = mpc prev
end
 
# rewind button
begin
prog = irexec
button = rewind
delay = 2
config = mpc prev
end
 
[...]
 
# up button
begin
prog = irexec
button = up
delay = 2
config = mpc volume +7
end
 
# down button
begin
prog = irexec
button = down
delay = 2
config = mpc volume -7
end

06/2011 : uptime de 320 jours !

Uptime 320 jours
Agrandir
Uptime 320 jours

Il est temps de faire des mises à jours logicielles et matérielles.

Upgrade CM + DD

06/2011 : changement de la CM et des disques.

Caractéristiques :

  • Processeur : Intel Atom 330@1.6 GHz
  • Ram : 2×1 Go
  • Disques :
    • Samsung - Spinpoint F3 : 1 To, 7200 t/min, 32 Mo, Serial ATA 2.0
    • Western digital - Caviar Black : 1 To, 7200 t/min, 32 Mo, Serial ATA 2.0
    • Western digital - Caviar Black : 1 To, 7200 t/min, 64 Mo, Serial ATA 3.0
  • LAN :
    • 100 Mbit/s intégré à la CM
    • 1 Gbit/s avec une carte PCI D-Link DGE-528T
  • Distribution : Debian GNU/Linux i386

Le serveur tourne toujours sous Debian, les disques sont montés en raid5 avec du lvm et formaté en XFS pour la partition de donnée et ext3 pour le reste.

Côté boitier, j'ai dû revoir le système de fixation : sur les pattes métallique de fixations des disques, j'ai percé des nouveaux des trous pour le 3e disque. Le poids des 3 disques durs est devenu alors trop important pour être supporté par les élastiques et ils touchent désormais la CM. Après plusieurs essais, j'ai alors remplacé les élastiques par des profilés en forme de cornière métalliques posés sur le châssis du boitier sur lesquels sont fixés les disques avec des vis + écrous papillon. Ainsi il n'y a plus d'abaissement de l'ensemble. Par contre, le montage / démontage est devenu plus complexe : il n'y a pas de place pour passer les doigts, l'ensemble est plutôt lourd et ne doit surtout pas reposer sur la CM…

J'ai également ajouté des patins de feutres aux points de contacts entre les profiles et le boitier pour réduire le bruit de résonnance émis par la rotation des disques.

Système de fixation 100% métal
Agrandir
Système de fixation 100% métal
Vue du dessus
Agrandir
Vue du dessus

L'ensemble monté est encore plus compact qu'avec les 2 disques. Le ventilateur de 120 mm en façade force bien un flux d'air qui permet de maintenir une température raisonnable autour de 35°C.

Vue gauche
Agrandir
Vue gauche
Vue droite
Agrandir
Vue droite

Voici un graphe des températures des 3 disques durs au cours de l'année 2016. On constate que la température est plutôt constante autour de 32°C et 37°C (dépendant du modèle de disque). Le saut en avril correspond à un passage d'aspirateur ;).

Evolution de la température des disques durs au cours de l'année 2016
Agrandir
Evolution de la température des disques durs au cours de l'année 2016

08/2013 : j'ai ajouté un dongle usb Wifi TP-link afin d'en faire Access Point Wifi.

Le démon hostapd permet de gérer l'interface réseau et de configurer aisément la sécurité en WPA2 et et un filtrage sur adresse mac.

Clé USB Wifi TP-Link
Agrandir
Clé USB Wifi TP-Link

Brancher la clé USB et consulter les logs du noyau pour vérifier sa reconnaissance :

sudo dmesg
...
[ 4532.631263] usb 1-5.4.2: new high-speed USB device number 5 using xhci_hcd
[ 4532.754387] usb 1-5.4.2: New USB device found, idVendor=0cf3, idProduct=9271
[ 4532.754403] usb 1-5.4.2: New USB device strings: Mfr=16, Product=32, SerialNumber=48
[ 4532.754413] usb 1-5.4.2: Product: USB2.0 WLAN
[ 4532.754421] usb 1-5.4.2: Manufacturer: ATHEROS
[ 4532.754429] usb 1-5.4.2: SerialNumber: 12345
[ 4532.963060] usb 1-5.4.2: ath9k_htc: Firmware ath9k_htc/htc_9271-1.4.0.fw requested
[ 4532.963114] usb 1-5.4.2: firmware: failed to load ath9k_htc/htc_9271-1.4.0.fw (-2)
[ 4532.963201] usb 1-5.4.2: Direct firmware load for ath9k_htc/htc_9271-1.4.0.fw failed with error -2
[ 4532.963206] usb 1-5.4.2: ath9k_htc: Firmware htc_9271.fw requested
[ 4532.963230] usb 1-5.4.2: firmware: failed to load htc_9271.fw (-2)
[ 4532.963292] usb 1-5.4.2: Direct firmware load for htc_9271.fw failed with error -2
[ 4532.963295] usb 1-5.4.2: no suitable firmware found!
[ 4532.963529] usb 1-5.4.2: ath9k_htc: USB layer deinitialized
[ 4532.963602] usbcore: registered new interface driver ath9k_htc

Ici, le firmware n'est pas installé car il est non-free. Pour l'installer :

sudo apt install firmware-atheros

Débrancher et rebrancher la carte :

sudo dmesg
...
[ 4784.790658] usb 1-5.4.2: new high-speed USB device number 7 using xhci_hcd
[ 4784.913336] usb 1-5.4.2: New USB device found, idVendor=0cf3, idProduct=9271
[ 4784.913352] usb 1-5.4.2: New USB device strings: Mfr=16, Product=32, SerialNumber=48
[ 4784.913362] usb 1-5.4.2: Product: USB2.0 WLAN
[ 4784.913370] usb 1-5.4.2: Manufacturer: ATHEROS
[ 4784.913378] usb 1-5.4.2: SerialNumber: 12345
[ 4784.917554] usb 1-5.4.2: ath9k_htc: Firmware ath9k_htc/htc_9271-1.4.0.fw requested
[ 4784.918922] usb 1-5.4.2: firmware: direct-loading firmware ath9k_htc/htc_9271-1.4.0.fw
[ 4785.214673] usb 1-5.4.2: ath9k_htc: Transferred FW: ath9k_htc/htc_9271-1.4.0.fw, size: 51008
[ 4785.471483] ath9k_htc 1-5.4.2:1.0: ath9k_htc: HTC initialized with 33 credits
[ 4785.799849] ath9k_htc 1-5.4.2:1.0: ath9k_htc: FW Version: 1.4
[ 4785.799854] ath9k_htc 1-5.4.2:1.0: FW RMW support: On
[ 4785.799857] ath: EEPROM regdomain: 0x809c
[ 4785.799859] ath: EEPROM indicates we should expect a country code
[ 4785.799861] ath: doing EEPROM country->regdmn map search
[ 4785.799863] ath: country maps to regdmn code: 0x52
[ 4785.799865] ath: Country alpha2 being used: CN
[ 4785.799867] ath: Regpair used: 0x52
[ 4785.822811] ieee80211 phy0: Atheros AR9271 Rev:1
[ 4785.828926] ath9k_htc 1-5.4.2:1.0 wlxf81a671b0c56: renamed from wlan0

L'ensemble de l'installation et Popeye sont montés sur une étagère en hauteur dans le garage depuis plusieurs années. Voici un aperçu de l'installation :

Installation dans le garage

popeyefreeboxbaie de brassageswitch Gigabitcarte wificarte double tuner TNTLCD - HD44780récepteur infrarougeinjecteur POE

Cliquer sur les différentes zones de l'image pour aller directement sur la page de description

Description des éléments :

Non visible :

Liste des services :

06/2016 : depuis plusieurs mois, les logs se remplissent d'erreurs sur la communication SATA, j'ai changé les nappes, intervertit les connecteurs, essayé différentes options de noyau pour abaisser la vitesse du bus mais rien à faire :'( .

[83368.466693] ata3.00: exception Emask 0x10 SAct 0x0 SErr 0x400000 action 0x6 frozen
[83368.466739] ata3.00: irq_stat 0x08000000, interface fatal error
[83368.466765] ata3: SError: { Handshk }
[83368.466789] ata3.00: failed command: WRITE DMA EXT
[83368.466820] ata3.00: cmd 35/00:e8:ff:5a:4c/00:01:1f:00:00/e0 tag 4 dma 249856 out
[83368.466823]          res 50/00:00:fe:5a:4c/00:00:1f:00:00/e0 Emask 0x10 (ATA bus error)
[83368.466889] ata3.00: status: { DRDY }
[83368.466917] ata3: hard resetting link
[83368.784115] ata3: SATA link up 1.5 Gbps (SStatus 113 SControl 310)
[83368.785584] ata3.00: configured for UDMA/100
[83368.785609] ata3: EH complete

L'USB est également devenu instable, de nombreuses erreurs noyaux sont loguées et finissent pas bloquer Popeye :

[508921.204450] pin.pl          D f3ff8f74     0  1807   1790 0x00000000
[508921.204460]  f3ff8d50 00200082 c102e5dc f3ff8f74 00000000 00000000 c102d2b9 c1484ac0
[508921.204475]  f3ff8f00 c1484ac0 f3ff8d50 c12c4721 b9cb27bb 0001ce3e 0001ce3e f4274470
[508921.204490]  0001ce3e c1484ac0 f3ff8f04 c1484ac0 00000000 002744a4 f79c0ac0 f79c0ac0
[508921.204505] Call Trace:
[508921.204513]  [<c102e5dc>] ? pick_next_task_fair+0xa5/0xad
[508921.204522]  [<c102d2b9>] ? finish_task_switch+0x6d/0x94
[508921.204530]  [<c12c4721>] ? __schedule+0x594/0x5a4
[508921.204538]  [<c102adde>] ? test_tsk_need_resched+0xa/0x13
[508921.204547]  [<c12c4eab>] ? __mutex_lock_common.isra.5+0xdd/0x12d
[508921.204555]  [<c12c4dc2>] ? mutex_lock+0x15/0x21
[508921.204565]  [<f89265c0>] ? acm_write_bulk+0x5a/0x5a [cdc_acm]
[508921.204574]  [<c11d5af2>] ? tty_port_close_start+0xec/0x149
[508921.204584]  [<f892773c>] ? acm_tty_close+0x2a/0x7b [cdc_acm]
[508921.204592]  [<c11d030a>] ? tty_release+0x169/0x3f7a
[508921.204600]  [<c102d2b9>] ? finish_task_switch+0x6d/0x94
[508921.204608]  [<c12c4721>] ? __schedule+0x594/0x5a4
[508921.204615]  [<c12c8674>] ? do_page_fault+0x32f/0x35e
[508921.204625]  [<c10ced03>] ? fput+0xd5/0x160
[508921.204634]  [<c10ccb18>] ? filp_close+0x52/0x58
[508921.204641]  [<c10ccb74>] ? sys_close+0x56/0x89
[508921.204649]  [<c12c9fdf>] ? sysenter_do_call+0x12/0x12

Cela se traduit par un blocage des processus utilisant l'USB, une augmentation du load et finalement une pénurie de ressources. J'ai atteint un load de 35 en 24h avec une charge CPU à ~0 et impossible de se connecter en ssh :dead: .

Augmentation du load à cause du blocage de l'USB
Agrandir
Augmentation du load à cause du blocage de l'USB

⇒ Changement de carte mère !

CM double Lan

06/2016 : j'ai trouvé une nouvelle carte mère avec 2 cartes réseaux intégrées à un prix raisonnable =).

Caractéristiques :

  • Carte mère : Gigabyte GA-N3150N-D3V
  • Processeur : Intel Celeron N3150@1.6 GHz
  • Carte graphique : Intel HD Graphics
  • Connecteurs disques : 4×SATA 3.0
  • Ram : 2×2 Go
  • Disques :
    • Samsung - Spinpoint F3 : 1 To, 7200 t/min, 32 Mo, Serial ATA 2.0
    • Western digital - Caviar Black : 1 To, 7200 t/min, 32 Mo, Serial ATA 2.0
    • Western digital - Caviar Black : 1 To, 7200 t/min, 64 Mo, Serial ATA 3.0
  • LAN :
    • 2×1 Gbit/s intégrés à la CM
  • Distribution : Debian GNU/Linux i386

J'ai opté pour une CM avec 2 cartes réseaux intégrées pour libérer le port PCI précédemment occupé par la carte réseau Gb afin d'y mettre un jour une autre carte (peut être une carte DVB-S ?).

Banc d'essai :

Test de la carte mère Gigabyte GA-N3150N-D3V
Agrandir
Test de la carte mère Gigabyte GA-N3150N-D3V

Quelques photos du serveur remonté. J'ai mis un repère de couleur (rouge / jaune) sur les cartes réseaux ainsi que sur les câbles correspondant pour ne pas les mélanger :

  • jaune vers la box internet sur le réseau en 100 Mbits
  • rouge sur le réseau Gbit
Vue arrière de la carte mère Gigabyte GA-N3150N-D3V
Agrandir
Vue arrière de la carte mère Gigabyte GA-N3150N-D3V

Le processeur est censé pouvoir fonctionner en 64bit, il faut que je me motive à reinstaller ma Debian complétement pour le prendre en compte.

07/2017 : j'ai enfin pris le temps de ré-installer Popeye : je suis passé sur une Debian 9 Stretch en amd64.

Voici mes différentes notes vis à vis de la configuration du NFS pour être compatible OS X ou les optimisations mise en oeuvre (RAID, Réseau, scaling de fréquence, affinité d'IRQ…)

02/2018 : après 7 ans de bon et loyaux service ma carte double tuner TNT a rendu l'âme. Elle présentait déjà des signes de faiblesse depuis 2 ans car le changement de fréquence ne s'effectuait plus correctement : il fallait donner l'ordre 2 fois. A ce titre, j'avais modifié et recompilé le backend de Mythtv pour ajouter un double changement de fréquence.

La fin de vie de cette carte a provoqué des plantages du noyau avec une augmentation du nombre de process bloqué sur des ressources USB, j'ai eu un load de 164 :dead:. J'ai mis quelques temps à comprendre d'où ça venait…

Load de 164...
Agrandir
Load de 164...

Caractéristiques :

02/2018 : le renouveau est dans une carte USB de marque Hauppauge, modèle WinTV-dualHD. Elle est bi-tuner et compatible DVB-T, DVB-T2 (la prochaine norme de diffusion de la télévision hertzienne) et DVB-C.

Hauppauge WinTV-dualHD
Agrandir
Hauppauge WinTV-dualHD

Voici les logs du noyau lors de son branchement :

Feb 23 20:45:50 popeye kernel: usb 1-5.1: new high-speed USB device number 12 using xhci_hcd
Feb 23 20:45:50 popeye kernel: usb 1-5.1: New USB device found, idVendor=2040, idProduct=0265
Feb 23 20:45:50 popeye kernel: usb 1-5.1: New USB device strings: Mfr=3, Product=1, SerialNumber=2
Feb 23 20:45:50 popeye kernel: usb 1-5.1: Product: dualHD
Feb 23 20:45:50 popeye kernel: usb 1-5.1: Manufacturer: HCW
Feb 23 20:45:50 popeye kernel: usb 1-5.1: SerialNumber: 0013963409
Feb 23 20:45:50 popeye kernel: em28xx 1-5.1:1.0: New device HCW dualHD @ 480 Mbps (2040:0265, interface 0, class 0)
Feb 23 20:45:50 popeye kernel: em28xx 1-5.1:1.0: DVB interface 0 found: isoc
Feb 23 20:45:50 popeye kernel: em28xx 1-5.1:1.0: chip ID is em28174
Feb 23 20:45:51 popeye kernel: em28xx 1-5.1:1.0: EEPROM ID = 26 00 01 00, EEPROM hash = 0xefe5c2c8
Feb 23 20:45:51 popeye kernel: em28xx 1-5.1:1.0: EEPROM info:
Feb 23 20:45:51 popeye kernel: em28xx 1-5.1:1.0:         microcode start address = 0x0004, boot configuration = 0x01
Feb 23 20:45:51 popeye kernel: em28xx 1-5.1:1.0:         AC97 audio (5 sample rates)
Feb 23 20:45:51 popeye kernel: em28xx 1-5.1:1.0:         500mA max power
Feb 23 20:45:51 popeye kernel: em28xx 1-5.1:1.0:         Table at offset 0x27, strings=0x0e6a, 0x1888, 0x087e
Feb 23 20:45:51 popeye kernel: em28xx 1-5.1:1.0: Identified as Hauppauge WinTV-dualHD DVB (card=99)
Feb 23 20:45:51 popeye kernel: tveeprom: Hauppauge model 204109, rev B3I6, serial# 13963409
Feb 23 20:45:51 popeye kernel: tveeprom: tuner model is SiLabs Si2157 (idx 186, type 4)
Feb 23 20:45:51 popeye kernel: tveeprom: TV standards PAL(B/G) NTSC(M) PAL(I) SECAM(L/L') PAL(D/D1/K) ATSC/DVB Digital (eeprom 0xfc)
Feb 23 20:45:51 popeye kernel: tveeprom: audio processor is None (idx 0)
Feb 23 20:45:51 popeye kernel: tveeprom: has no radio, has IR receiver, has no IR transmitter
Feb 23 20:45:51 popeye kernel: em28xx 1-5.1:1.0: dvb set to isoc mode.
Feb 23 20:45:51 popeye kernel: usbcore: registered new interface driver em28xx
Feb 23 20:45:51 popeye kernel: em28xx 1-5.1:1.0: Binding DVB extension
Feb 23 20:45:51 popeye kernel: i2c i2c-11: Added multiplexed i2c bus 12
Feb 23 20:45:51 popeye kernel: si2168 11-0064: Silicon Labs Si2168-B40 successfully identified
Feb 23 20:45:51 popeye kernel: si2168 11-0064: firmware version: B 4.0.2
Feb 23 20:45:51 popeye kernel: si2157 12-0060: Silicon Labs Si2147/2148/2157/2158 successfully attached
Feb 23 20:45:51 popeye kernel: dvbdev: DVB: registering new adapter (1-5.1:1.0)
Feb 23 20:45:51 popeye kernel: em28xx 1-5.1:1.0: DVB: registering adapter 0 frontend 0 (Silicon Labs Si2168)...
Feb 23 20:45:51 popeye kernel: em28xx 1-5.1:1.0: DVB extension successfully initialized
Feb 23 20:45:51 popeye kernel: em28xx: Registered (Em28xx dvb Extension) extension
Feb 23 20:45:51 popeye kernel: em28xx 1-5.1:1.0: Registering input extension
Feb 23 20:45:51 popeye kernel: Registered IR keymap rc-hauppauge
Feb 23 20:45:51 popeye kernel: rc rc0: 1-5.1:1.0 IR as /devices/pci0000:00/0000:00:14.0/usb1/1-5/1-5.1/1-5.1:1.0/rc/rc0
Feb 23 20:45:51 popeye kernel: input: 1-5.1:1.0 IR as /devices/pci0000:00/0000:00:14.0/usb1/1-5/1-5.1/1-5.1:1.0/rc/rc0/input19
Feb 23 20:45:51 popeye kernel: em28xx 1-5.1:1.0: Input extension successfully initialized
Feb 23 20:45:51 popeye kernel: em28xx: Registered (Em28xx Input Extension) extension

Finalement je l'ai rendu car trop d'instabilités :

  • une fois sur 2, le signal n'est pas reçu correctement : je n'arrive pas à déterminer si c'est lié à un bug dans les drivers ou si c'est matériel :'(;
  • le 2e tuner n'est pas encore reconnu en version 4.14 du noyau, mais devrait arriver rapidement…

Caractéristiques :

  • Réception : Numérique hertzien (DVB-T)
  • Tuners : 1
  • Connectique : USB 2.0

03/2018 : en remplacement de la clé précédente, j'ai testé le dongle USB utilisé dans mes expériences de réception radio pour recevoir la TNT et elle marche bien. Comme cette carte est mono tuner, à la différence des précédentes, j'en ai ajouté une 2e pour revenir au confort de pouvoir enregistrer plusieurs chaines simultanément.

RTL2832
Agrandir
RTL2832

Voici les logs du noyau lors de son branchement :

Jul 08 22:38:27 popeye kernel: dvb_usb_v2: 'Realtek RTL2832U reference design:1-5.1' successfully deinitialized and disconnected
Jul 08 22:40:40 popeye kernel: usb 1-5.1: new high-speed USB device number 12 using xhci_hcd
Jul 08 22:40:40 popeye kernel: usb 1-5.1: New USB device found, idVendor=0bda, idProduct=2838
Jul 08 22:40:40 popeye kernel: usb 1-5.1: New USB device strings: Mfr=1, Product=2, SerialNumber=3
Jul 08 22:40:40 popeye kernel: usb 1-5.1: Product: RTL2838UHIDIR
Jul 08 22:40:40 popeye kernel: usb 1-5.1: Manufacturer: Realtek
Jul 08 22:40:40 popeye kernel: usb 1-5.1: SerialNumber: 00000001
Jul 08 22:40:40 popeye kernel: usb 1-5.1: dvb_usb_v2: found a 'Realtek RTL2832U reference design' in warm state
Jul 08 22:40:40 popeye kernel: usb 1-5.1: dvb_usb_v2: will pass the complete MPEG2 transport stream to the software demuxer
Jul 08 22:40:40 popeye kernel: dvbdev: DVB: registering new adapter (Realtek RTL2832U reference design)
Jul 08 22:40:40 popeye kernel: i2c i2c-10: Added multiplexed i2c bus 11
Jul 08 22:40:40 popeye kernel: rtl2832 10-0010: Realtek RTL2832 successfully attached
Jul 08 22:40:40 popeye kernel: usb 1-5.1: DVB: registering adapter 0 frontend 0 (Realtek RTL2832 (DVB-T))...
Jul 08 22:40:40 popeye kernel: r820t 11-001a: creating new instance
Jul 08 22:40:40 popeye kernel: r820t 11-001a: Rafael Micro r820t successfully identified
Jul 08 22:40:40 popeye kernel: rtl2832_sdr rtl2832_sdr.1.auto: Registered as swradio0
Jul 08 22:40:40 popeye kernel: rtl2832_sdr rtl2832_sdr.1.auto: Realtek RTL2832 SDR attached
Jul 08 22:40:40 popeye kernel: rtl2832_sdr rtl2832_sdr.1.auto: SDR API is still slightly experimental and functionality changes may follow
Jul 08 22:40:40 popeye kernel: Registered IR keymap rc-empty
Jul 08 22:40:40 popeye kernel: rc rc0: Realtek RTL2832U reference design as /devices/pci0000:00/0000:00:14.0/usb1/1-5/1-5.1/rc/rc0
Jul 08 22:40:40 popeye kernel: input: Realtek RTL2832U reference design as /devices/pci0000:00/0000:00:14.0/usb1/1-5/1-5.1/rc/rc0/input19
Jul 08 22:40:40 popeye kernel: rc rc0: lirc_dev: driver dvb_usb_rtl28xxu registered at minor = 0
Jul 08 22:40:40 popeye kernel: usb 1-5.1: dvb_usb_v2: schedule remote query interval to 200 msecs
Jul 08 22:40:40 popeye kernel: usb 1-5.1: dvb_usb_v2: 'Realtek RTL2832U reference design' successfully initialized and connected

06/2020 : depuis plusieurs semaines, le wifi saute et ne revient pas. Les logs ne sont pas parlant, il faut que je désactive l'interface réseau, relance hostapd etc… Pas très confortable.

Depuis plusieurs années, je n'utilisais plus le wifi de la box car je ne le trouvais pas satisfaisant en terme de débit ni en terme de sécurité. De plus, lorsque j'ai installé cette clé, il n'était pas possible de désactiver le serveur DHCP intégré à la freebox. Je n'avais jamais remit en cause cet état de fait, j'ai retesté avec le wifi de la livebox v4 : quel changement ! Super stabilité, débit bien plus important qu'avec le dongle =).

J'ai donc debranché ma clé USB puis abandonné le subnet en 10.0.3.X dédié au Wifi et finalement changé les règles de routage pour ne plus la référencer.

07/2020 : l'alimentation commence à siffler ce qui ne présage rien de bon, c'était peut être à cause de cela que le Wifi ne marchait plus. Visuellement, aucun condensateur n'est gonflé. Je l'ai donc changé en optant pour un modèle PicoPsu : elle est comporée d'un bloc externe comme les ordinateurs portables associé à un mini module de la taille du connecteur ATX de la carte mère.

Alimentation PicoPsu
Agrandir
Alimentation PicoPsu

Une fois montée sur la carte mère, le module est à peine plus haut qu'une barette de RAM !

PicoPsu sur la carte mère
Agrandir
PicoPsu sur la carte mère

J'ai mesuré la consommation électrique de l'ensemble : 24 W en instantannée. En ajoutant la box (livebox v5), mon installation consomme 0.7 KWH avec des pics à 55W.

En changeant l'alimentation, j'ai refait le support des disques durs afin de pouvoir les manipuler plus facilement. Il fallait maintenir les disques avec les 2 mains, les insérer par le dessus du boitier puis passer 4 petites vis sur les 2 traverses metalliques :/

Pour commencer, j'ai ajouté 2 équerres metalliques perpendiculairement aux disques. J'ai troué le chassis du boitier afin de pouvoir y mettre des tiges filetées traversant les équerres.

Support de disques
Agrandir
Support de disques

Lorsque les tiges filetées sont passées dans le bloc de disques et le boitier, il ne reste plus qu'à les visser avec un écrou. Dans la solution précédente, il fallait tenir les disques d'une main et visser d'une autre. Désormais, le serrage final s'effectue sans peine.

Dans le boitier
Agrandir
Dans le boitier

Ce système permet de manipuler les disques de manière plus serreine et présente moins de risques de les faire tomber sur la carte mère pendant les opérations de maintenance.

  • realisations/popeye
  • Dernière modification : 2024/09/12 20:33