# Linux BenchTools - Peripheral Types Configuration
# This file defines all peripheral types and their specific characteristics
#
# ICÔNES : Font Awesome 6.4.0 (https://fontawesome.com/icons)
# Format : Nom de l'icône sans préfixe (ex: "keyboard" pour "fa-keyboard")
# Classes disponibles : fas (solid), far (regular), fab (brands)
# Exemple d'utilisation HTML : <i class="fas fa-keyboard"></i>
# Référence complète : https://fontawesome.com/v6/search

peripheral_types:
  # ========================================
  # USB PERIPHERALS
  # ========================================
  - id: usb_clavier
    nom: Clavier USB
    type_principal: USB
    sous_type: Clavier
    icone: keyboard
    caracteristiques_specifiques:
      - nom: layout
        label: Disposition
        type: select
        options: [AZERTY, QWERTY, QWERTZ, Autre]
        requis: false
      - nom: retroeclairage
        label: Rétroéclairage
        type: boolean
        requis: false
      - nom: mecanique
        label: Mécanique
        type: boolean
        requis: false
      - nom: type_switches
        label: Type de switches
        type: text
        requis: false

  - id: usb_souris
    nom: Souris USB
    type_principal: USB
    sous_type: Souris
    icone: mouse
    caracteristiques_specifiques:
      - nom: dpi
        label: DPI
        type: number
        requis: false
      - nom: boutons
        label: Nombre de boutons
        type: number
        requis: false
      - nom: sans_fil
        label: Sans fil
        type: boolean
        requis: false

  - id: usb_cle
    nom: Clé USB
    type_principal: Stockage
    sous_type: Clé USB
    icone: plug
    caracteristiques_specifiques:
      - nom: capacite_go
        label: Capacité (Go)
        type: number
        requis: true
      - nom: usb_version
        label: Version USB
        type: select
        options: [USB 2.0, USB 3.0, USB 3.1, USB 3.2, USB 4.0]
        requis: false
      - nom: vitesse_lecture_mb
        label: Vitesse lecture (MB/s)
        type: number
        requis: false
      - nom: vitesse_ecriture_mb
        label: Vitesse écriture (MB/s)
        type: number
        requis: false

  - id: usb_disque_externe
    nom: Disque dur externe / SSD
    type_principal: Stockage
    sous_type: Disque dur externe
    icone: hard-drive
    caracteristiques_specifiques:
      - nom: capacite_go
        label: Capacité (Go)
        type: number
        requis: true
      - nom: type_disque
        label: Type de disque
        type: select
        options: [HDD, SSD, SSD NVMe]
        requis: false
      - nom: usb_version
        label: Version USB
        type: select
        options: [USB 2.0, USB 3.0, USB 3.1, USB 3.2, USB 4.0, Thunderbolt]
        requis: false
      - nom: vitesse_lecture_mb
        label: Vitesse lecture (MB/s)
        type: number
        requis: false
      - nom: vitesse_ecriture_mb
        label: Vitesse écriture (MB/s)
        type: number
        requis: false
      - nom: alimentation_externe
        label: Alimentation externe requise
        type: boolean
        requis: false

  - id: usb_lecteur_carte
    nom: Lecteur de cartes mémoire
    type_principal: Stockage
    sous_type: Lecteur de carte
    icone: sd-card
    caracteristiques_specifiques:
      - nom: types_cartes
        label: Types de cartes supportées
        type: text
        requis: false
      - nom: usb_version
        label: Version USB
        type: select
        options: [USB 2.0, USB 3.0, USB 3.1, USB 3.2]
        requis: false
      - nom: slots_disponibles
        label: Nombre de slots
        type: number
        requis: false

  - id: usb_webcam
    nom: Webcam USB
    type_principal: Video
    sous_type: Webcam
    icone: camera
    caracteristiques_specifiques:
      - nom: resolution
        label: Résolution
        type: select
        options: [720p, 1080p, 1440p, 4K]
        requis: false
      - nom: fps
        label: FPS
        type: number
        requis: false
      - nom: microphone_integre
        label: Microphone intégré
        type: boolean
        requis: false

  - id: usb_hub
    nom: Hub USB
    type_principal: USB
    sous_type: Hub
    icone: sitemap
    caracteristiques_specifiques:
      - nom: nombre_ports
        label: Nombre de ports
        type: number
        requis: true
      - nom: alimentation_externe
        label: Alimentation externe
        type: boolean
        requis: false
      - nom: usb_version
        label: Version USB
        type: select
        options: [USB 2.0, USB 3.0, USB 3.1, USB 3.2]
        requis: false

  - id: usb_wifi
    nom: Adaptateur Wi-Fi USB
    type_principal: USB
    sous_type: Adaptateur WiFi
    icone: wifi
    caracteristiques_specifiques:
      - nom: norme_wifi
        label: Norme Wi-Fi
        type: select
        options: [Wi-Fi 4 (802.11n), Wi-Fi 5 (802.11ac), Wi-Fi 6 (802.11ax), Wi-Fi 6E, Wi-Fi 7]
        requis: false
      - nom: bandes
        label: Bandes
        type: select
        options: [2.4 GHz, 5 GHz, 2.4/5 GHz (dual-band), 2.4/5/6 GHz (tri-band)]
        requis: false
      - nom: debit_max_mbps
        label: Débit max (Mbps)
        type: number
        requis: false
      - nom: usb_version
        label: Version USB
        type: select
        options: [USB 2.0, USB 3.0, USB 3.1, USB 3.2]
        requis: false

  - id: usb_zigbee
    nom: Dongle ZigBee
    type_principal: USB
    sous_type: ZigBee
    icone: network-wired
    caracteristiques_specifiques:
      - nom: protocole
        label: Protocole
        type: select
        options: [ZigBee 3.0, ZigBee Pro, Thread]
        requis: false
      - nom: firmware_version
        label: Version firmware
        type: text
        requis: false
      - nom: coordinateur
        label: Peut être coordinateur
        type: boolean
        requis: false
      - nom: nombre_max_devices
        label: Nombre max de devices
        type: number
        requis: false
      - nom: usb_version
        label: Version USB
        type: select
        options: [USB 2.0, USB 3.0]
        requis: false

  - id: usb_fingerprint
    nom: Lecteur d'empreintes digitales
    type_principal: USB
    sous_type: Lecteur biométrique
    icone: fingerprint
    caracteristiques_specifiques:
      - nom: type_capteur
        label: Type de capteur
        type: select
        options: [Optique, Capacitif, Ultrason, Thermique]
        requis: false
      - nom: resolution_dpi
        label: Résolution (DPI)
        type: number
        requis: false
      - nom: nombre_empreintes_max
        label: Nombre d'empreintes max
        type: number
        requis: false
      - nom: compatible_fido
        label: Compatible FIDO/U2F
        type: boolean
        requis: false
      - nom: usb_version
        label: Version USB
        type: select
        options: [USB 2.0, USB 3.0, USB 3.1, USB 3.2]
        requis: false

  # ========================================
  # BLUETOOTH
  # ========================================
  - id: bt_clavier
    nom: Clavier Bluetooth
    type_principal: Bluetooth
    sous_type: Clavier
    icone: keyboard
    caracteristiques_specifiques:
      - nom: norme_bluetooth
        label: Norme Bluetooth
        type: select
        options: [Bluetooth 2.0, Bluetooth 2.1, Bluetooth 3.0, Bluetooth 4.0, Bluetooth 4.1, Bluetooth 4.2, Bluetooth 5.0, Bluetooth 5.1, Bluetooth 5.2, Bluetooth 5.3, Bluetooth 5.4]
        requis: false
      - nom: layout
        label: Disposition
        type: select
        options: [AZERTY, QWERTY, QWERTZ, Autre]
        requis: false
      - nom: retroeclairage
        label: Rétroéclairage
        type: boolean
        requis: false
      - nom: batterie_mah
        label: Capacité batterie (mAh)
        type: number
        requis: false
      - nom: autonomie_heures
        label: Autonomie (heures)
        type: number
        requis: false

  - id: bt_souris
    nom: Souris Bluetooth
    type_principal: Bluetooth
    sous_type: Souris
    icone: mouse
    caracteristiques_specifiques:
      - nom: norme_bluetooth
        label: Norme Bluetooth
        type: select
        options: [Bluetooth 2.0, Bluetooth 2.1, Bluetooth 3.0, Bluetooth 4.0, Bluetooth 4.1, Bluetooth 4.2, Bluetooth 5.0, Bluetooth 5.1, Bluetooth 5.2, Bluetooth 5.3, Bluetooth 5.4]
        requis: false
      - nom: dpi
        label: DPI
        type: number
        requis: false
      - nom: boutons
        label: Nombre de boutons
        type: number
        requis: false
      - nom: batterie_mah
        label: Capacité batterie (mAh)
        type: number
        requis: false

  - id: bt_audio
    nom: Périphérique audio Bluetooth
    type_principal: Audio
    sous_type: Bluetooth
    icone: headphones
    caracteristiques_specifiques:
      - nom: norme_bluetooth
        label: Norme Bluetooth
        type: select
        options: [Bluetooth 2.0, Bluetooth 2.1, Bluetooth 3.0, Bluetooth 4.0, Bluetooth 4.1, Bluetooth 4.2, Bluetooth 5.0, Bluetooth 5.1, Bluetooth 5.2, Bluetooth 5.3, Bluetooth 5.4]
        requis: false
      - nom: type_audio
        label: Type
        type: select
        options: [Casque, Écouteurs, Haut-parleur, Barre de son]
        requis: false
      - nom: reduction_bruit
        label: Réduction de bruit
        type: boolean
        requis: false
      - nom: autonomie_heures
        label: Autonomie (heures)
        type: number
        requis: false
      - nom: codec
        label: Codec
        type: text
        requis: false

  - id: audio_haut_parleur
    nom: Haut-parleur
    type_principal: Audio
    sous_type: Haut-parleur
    icone: volume-up
    caracteristiques_specifiques:
      - nom: puissance_w
        label: Puissance (W)
        type: number
        requis: false
      - nom: connectique
        label: Connectique
        type: select
        options: [Jack 3.5mm, RCA, USB, Bluetooth, Autre]
        requis: false

  - id: bt_dongle
    nom: Dongle Bluetooth
    type_principal: Bluetooth
    sous_type: Dongle
    icone: bluetooth
    caracteristiques_specifiques:
      - nom: version_bluetooth
        label: Version Bluetooth
        type: text
        requis: false
      - nom: norme_bluetooth
        label: Norme Bluetooth
        type: select
        options: [Bluetooth 2.0, Bluetooth 2.1, Bluetooth 3.0, Bluetooth 4.0, Bluetooth 4.1, Bluetooth 4.2, Bluetooth 5.0, Bluetooth 5.1, Bluetooth 5.2, Bluetooth 5.3, Bluetooth 5.4]
        requis: false
      - nom: norme_usb
        label: Norme USB
        type: select
        options: [USB 2.0, USB 3.0, USB 3.1, USB 3.2, Autre]
        requis: false
      - nom: portee_m
        label: Portée (mètres)
        type: number
        requis: false

  # ========================================
  # RÉSEAU
  # ========================================
  - id: reseau_wifi
    nom: Adaptateur Wi-Fi
    type_principal: Réseau
    sous_type: Wi-Fi
    icone: wifi
    caracteristiques_specifiques:
      - nom: norme_wifi
        label: Norme Wi-Fi
        type: select
        options: [Wi-Fi 4 (802.11n), Wi-Fi 5 (802.11ac), Wi-Fi 6 (802.11ax), Wi-Fi 6E, Wi-Fi 7]
        requis: false
      - nom: bandes
        label: Bandes
        type: select
        options: [2.4 GHz, 5 GHz, 2.4/5 GHz (dual-band), 2.4/5/6 GHz (tri-band)]
        requis: false
      - nom: debit_max_mbps
        label: Débit max (Mbps)
        type: number
        requis: false

  - id: reseau_ethernet
    nom: Carte réseau Ethernet
    type_principal: Réseau
    sous_type: Ethernet
    icone: network-wired
    caracteristiques_specifiques:
      - nom: vitesse
        label: Vitesse
        type: select
        options: [10 Mbps, 100 Mbps, 1 Gbps, 2.5 Gbps, 5 Gbps, 10 Gbps]
        requis: false
      - nom: interface
        label: Interface
        type: select
        options: [PCI, PCIe, USB]
        requis: false

  # ========================================
  # STOCKAGE
  # ========================================
  - id: stockage_ssd
    nom: SSD
    type_principal: Stockage
    sous_type: SSD
    icone: hard-drive
    caracteristiques_specifiques:
      - nom: capacite_go
        label: Capacité (Go)
        type: number
        requis: true
      - nom: interface
        label: Interface
        type: select
        options: [SATA, NVMe, M.2, PCIe]
        requis: false
      - nom: facteur_forme
        label: Facteur de forme
        type: select
        options: [2.5", M.2 2280, M.2 2260, M.2 2242, PCIe]
        requis: false
      - nom: vitesse_lecture_mb
        label: Vitesse lecture (MB/s)
        type: number
        requis: false
      - nom: vitesse_ecriture_mb
        label: Vitesse écriture (MB/s)
        type: number
        requis: false

  - id: stockage_hdd
    nom: HDD
    type_principal: Stockage
    sous_type: HDD
    icone: hard-drive
    caracteristiques_specifiques:
      - nom: capacite_go
        label: Capacité (Go)
        type: number
        requis: true
      - nom: vitesse_rotation_rpm
        label: Vitesse rotation (RPM)
        type: select
        options: [5400, 7200, 10000, 15000]
        requis: false
      - nom: facteur_forme
        label: Facteur de forme
        type: select
        options: [2.5", 3.5"]
        requis: false
      - nom: interface
        label: Interface
        type: select
        options: [SATA, SAS]
        requis: false

  # ========================================
  # VIDÉO / AFFICHAGE
  # ========================================
  - id: video_gpu
    nom: Carte graphique
    type_principal: Video
    sous_type: GPU
    icone: memory
    caracteristiques_specifiques:
      - nom: gpu_model
        label: Modèle GPU
        type: text
        requis: false
      - nom: vram_go
        label: VRAM (Go)
        type: number
        requis: false
      - nom: interface
        label: Interface
        type: select
        options: [PCIe 3.0, PCIe 4.0, PCIe 5.0]
        requis: false
      - nom: tdp_w
        label: TDP (W)
        type: number
        requis: false

  - id: video_ecran
    nom: Écran / Moniteur
    type_principal: Video
    sous_type: Écran
    icone: desktop
    caracteristiques_specifiques:
      - nom: taille_pouces
        label: Taille (pouces)
        type: number
        requis: false
      - nom: resolution
        label: Résolution
        type: select
        options: [1920x1080, 2560x1440, 3840x2160, 5120x2880, 7680x4320]
        requis: false
      - nom: frequence_hz
        label: Fréquence (Hz)
        type: number
        requis: false
      - nom: dalle
        label: Type de dalle
        type: select
        options: [IPS, VA, TN, OLED]
        requis: false

  # ========================================
  # CÂBLES
  # ========================================
  - id: cable_usb
    nom: Câble USB
    type_principal: Câble
    sous_type: USB
    icone: link
    caracteristiques_specifiques:
      - nom: type_connecteur_1
        label: Connecteur 1
        type: select
        options: [USB-A, USB-B, USB-C, Mini-USB, Micro-USB]
        requis: false
      - nom: type_connecteur_2
        label: Connecteur 2
        type: select
        options: [USB-A, USB-B, USB-C, Mini-USB, Micro-USB]
        requis: false
      - nom: longueur_m
        label: Longueur (m)
        type: number
        requis: false
      - nom: usb_version
        label: Version USB
        type: select
        options: [USB 2.0, USB 3.0, USB 3.1, USB 3.2, USB 4.0]
        requis: false

  - id: cable_hdmi
    nom: Câble HDMI
    type_principal: Câble
    sous_type: HDMI
    icone: link
    caracteristiques_specifiques:
      - nom: longueur_m
        label: Longueur (m)
        type: number
        requis: false
      - nom: version_hdmi
        label: Version HDMI
        type: select
        options: [HDMI 1.4, HDMI 2.0, HDMI 2.1]
        requis: false
      - nom: support_4k
        label: Support 4K
        type: boolean
        requis: false

  - id: cable_displayport
    nom: Câble DisplayPort
    type_principal: Câble
    sous_type: DisplayPort
    icone: link
    caracteristiques_specifiques:
      - nom: longueur_m
        label: Longueur (m)
        type: number
        requis: false
      - nom: version_dp
        label: Version DisplayPort
        type: select
        options: [DisplayPort 1.2, DisplayPort 1.4, DisplayPort 2.0]
        requis: false

  - id: cable_ethernet
    nom: Câble Ethernet
    type_principal: Câble
    sous_type: Ethernet
    icone: link
    caracteristiques_specifiques:
      - nom: longueur_m
        label: Longueur (m)
        type: number
        requis: false
      - nom: categorie
        label: Catégorie
        type: select
        options: [Cat5, Cat5e, Cat6, Cat6a, Cat7, Cat8]
        requis: false

  # ========================================
  # CARTES D'EXTENSION
  # ========================================
  - id: pcie_audio
    nom: Carte son PCIe
    type_principal: Audio
    sous_type: PCIe
    icone: volume-up
    caracteristiques_specifiques:
      - nom: canaux
        label: Canaux
        type: text
        requis: false
      - nom: qualite_audio
        label: Qualité audio
        type: text
        requis: false

  # ========================================
  # RASPBERRY PI / MICROCONTRÔLEURS
  # ========================================
  - id: raspberry_pi
    nom: Raspberry Pi
    type_principal: Microcontrôleur
    sous_type: Raspberry Pi
    icone: microchip
    caracteristiques_specifiques:
      - nom: modele
        label: Modèle
        type: select
        options: [Pi Zero, Pi Zero W, Pi 3, Pi 4, Pi 5, Pi Pico]
        requis: false
      - nom: ram_mb
        label: RAM (MB)
        type: number
        requis: false
      - nom: cpu
        label: CPU
        type: text
        requis: false

  - id: arduino
    nom: Arduino
    type_principal: Microcontrôleur
    sous_type: Arduino
    icone: microchip
    caracteristiques_specifiques:
      - nom: modele
        label: Modèle
        type: select
        options: [Uno, Mega, Nano, Leonardo, Due, MKR]
        requis: false
      - nom: microcontroleur
        label: Microcontrôleur
        type: text
        requis: false

  - id: esp32
    nom: ESP32 / ESP8266
    type_principal: Microcontrôleur
    sous_type: ESP
    icone: microchip
    caracteristiques_specifiques:
      - nom: modele
        label: Modèle
        type: select
        options: [ESP32, ESP8266, ESP32-S2, ESP32-C3]
        requis: false
      - nom: wifi
        label: Wi-Fi intégré
        type: boolean
        requis: false
      - nom: bluetooth
        label: Bluetooth intégré
        type: boolean
        requis: false

  # ========================================
  # CONSOLES DE JEUX
  # ========================================
  - id: console_playstation
    nom: PlayStation
    type_principal: Console
    sous_type: PlayStation
    icone: gamepad
    caracteristiques_specifiques:
      - nom: generation
        label: Génération
        type: select
        options: [PS1, PS2, PS3, PS4, PS5]
        requis: false
      - nom: stockage_go
        label: Stockage (Go)
        type: number
        requis: false

  - id: console_xbox
    nom: Xbox
    type_principal: Console
    sous_type: Xbox
    icone: gamepad
    caracteristiques_specifiques:
      - nom: generation
        label: Génération
        type: select
        options: [Xbox, Xbox 360, Xbox One, Xbox Series X/S]
        requis: false
      - nom: stockage_go
        label: Stockage (Go)
        type: number
        requis: false

  - id: console_nintendo
    nom: Nintendo
    type_principal: Console
    sous_type: Nintendo
    icone: gamepad
    caracteristiques_specifiques:
      - nom: modele
        label: Modèle
        type: select
        options: [NES, SNES, N64, GameCube, Wii, Wii U, Switch]
        requis: false
      - nom: stockage_go
        label: Stockage (Go)
        type: number
        requis: false

  # ========================================
  # QUINCAILLERIE
  # ========================================
  - id: quincaillerie_vis
    nom: Vis
    type_principal: Quincaillerie
    sous_type: Vis
    icone: screwdriver
    caracteristiques_specifiques:
      - nom: type_vis
        label: Type
        type: select
        options: [Tête plate, Tête bombée, Tête fraisée, Torx, Allen, Cruciforme]
        requis: false
      - nom: longueur_mm
        label: Longueur (mm)
        type: number
        requis: false
      - nom: diametre_mm
        label: Diamètre (mm)
        type: number
        requis: false
      - nom: materiau
        label: Matériau
        type: select
        options: [Acier, Acier inoxydable, Laiton, Plastique]
        requis: false

  - id: quincaillerie_ecrou
    nom: Écrou
    type_principal: Quincaillerie
    sous_type: Écrou
    icone: cog
    caracteristiques_specifiques:
      - nom: type_ecrou
        label: Type
        type: select
        options: [Standard, Auto-bloquant, Borgne, Papillon]
        requis: false
      - nom: diametre_mm
        label: Diamètre (mm)
        type: number
        requis: false

  - id: quincaillerie_entretoise
    nom: Entretoise
    type_principal: Quincaillerie
    sous_type: Entretoise
    icone: ruler-vertical
    caracteristiques_specifiques:
      - nom: longueur_mm
        label: Longueur (mm)
        type: number
        requis: false
      - nom: diametre_mm
        label: Diamètre (mm)
        type: number
        requis: false
