projet crepp_git/crepp-projects/station-meteo/hardware/transmetteur/base/v1.1 · branche main
<!DOCTYPE html>
<html lang="fr">
<head>
  <meta charset="UTF-8">
  <meta name="viewport" content="width=device-width, initial-scale=1.0">
  <title>Documentation — Base</title>
  <style>
    @import url('https://fonts.googleapis.com/css2?family=Inter:opsz,wght@14..32,300;14..32,400;14..32,500;14..32,600;14..32,700&family=JetBrains+Mono:wght@400;500&display=swap');

    * { box-sizing: border-box; margin: 0; padding: 0; }

    /* Variables du thème clair (par défaut) */
    :root {
      --bg-primary: #f5f7fb;
      --bg-secondary: #ffffff;
      --bg-card: #ffffff;
      --sidebar-bg: #1a1a2e;
      --sidebar-text: #e8edff;
      --sidebar-text-secondary: #8b95c9;
      --sidebar-accent: #6b8cff;
      --primary: #1a3a5c;
      --accent: #4f46e5;
      --text-primary: #1e293b;
      --text-secondary: #475569;
      --text-muted: #94a3b8;
      --text-white: #1e293b;
      --border: #e2e8f0;
      --border-hover: #cbd5e1;
      --accent-primary: #4f46e5;
      --accent-secondary: #818cf8;
      --accent-glow: rgba(79, 70, 229, 0.1);
      --success: #10b981;
      --success-bg: rgba(16, 185, 129, 0.1);
      --warning: #f59e0b;
      --warning-bg: rgba(245, 158, 11, 0.1);
      --info: #3b82f6;
      --info-bg: rgba(59, 130, 246, 0.1);
      --gold: #fbbf24;
      --gold-bg: rgba(251, 191, 36, 0.1);
      --step: #8b5cf6;
      --step-bg: rgba(139, 92, 246, 0.1);
      --tp-color: #ea580c;
      --danger: #ef4444;
      --font-sans: 'Inter', -apple-system, BlinkMacSystemFont, 'Segoe UI', sans-serif;
      --font-mono: 'JetBrains Mono', 'SF Mono', Monaco, monospace;
      --radius: 16px;
      --radius-sm: 10px;
      --shadow: 0 1px 3px rgba(0, 0, 0, 0.1);
      --shadow-hover: 0 4px 6px rgba(0, 0, 0, 0.1);
    }

    /* Thème sombre */
    body.dark-theme {
      --bg-primary: #0f172a;
      --bg-secondary: #1e293b;
      --bg-card: #1e293b;
      --sidebar-bg: #020617;
      --sidebar-text: #e2e8f0;
      --sidebar-text-secondary: #64748b;
      --text-primary: #f1f5f9;
      --text-secondary: #cbd5e1;
      --text-muted: #64748b;
      --text-white: #f1f5f9;
      --border: #334155;
      --border-hover: #475569;
      --accent-primary: #818cf8;
      --accent-secondary: #a5b4fc;
      --accent-glow: rgba(129, 140, 248, 0.15);
      --shadow: 0 1px 3px rgba(0, 0, 0, 0.3);
      --shadow-hover: 0 4px 6px rgba(0, 0, 0, 0.4);
    }

    body {
      font-family: var(--font-sans);
      font-size: 14px;
      background: var(--bg-primary);
      color: var(--text-primary);
      display: flex;
      min-height: 100vh;
      transition: background-color 0.3s ease, color 0.3s ease;
    }

    /* ── BOUTON THÈME ── */
    .theme-toggle {
      position: fixed;
      bottom: 20px;
      right: 20px;
      z-index: 1000;
      background: var(--accent-primary);
      color: white;
      border: none;
      border-radius: 50px;
      padding: 12px 20px;
      cursor: pointer;
      font-size: 14px;
      font-weight: 600;
      display: flex;
      align-items: center;
      gap: 8px;
      box-shadow: 0 2px 8px rgba(0, 0, 0, 0.2);
      transition: all 0.3s ease;
      font-family: var(--font-sans);
    }

    .theme-toggle:hover {
      transform: scale(1.05);
      box-shadow: 0 4px 12px rgba(0, 0, 0, 0.3);
    }

    /* ── SIDEBAR ─────────────────────────────── */
    #sidebar {
      position: fixed;
      top: 0; left: 0; bottom: 0;
      width: 280px;
      background: var(--sidebar-bg);
      color: var(--sidebar-text);
      display: flex;
      flex-direction: column;
      overflow-y: auto;
      z-index: 100;
      box-shadow: 2px 0 12px rgba(0,0,0,0.1);
      transition: background-color 0.3s ease;
    }

    #sidebar-header {
      padding: 1.5rem 1.2rem 1rem;
      border-bottom: 1px solid rgba(255,255,255,0.08);
      background: linear-gradient(135deg, var(--sidebar-bg) 0%, rgba(255,255,255,0.05) 100%);
    }

    #sidebar-header h1 {
      font-size: 1rem;
      font-weight: 700;
      color: #fff;
      letter-spacing: 0.02em;
      line-height: 1.3;
    }

    #sidebar-header p {
      font-size: 0.7rem;
      color: var(--sidebar-text-secondary);
      margin-top: 0.3rem;
      font-family: var(--font-mono);
    }

    /* ── COVERAGE WIDGET ── */
    #coverage-widget {
      padding: 0.85rem 1.2rem;
      border-bottom: 1px solid rgba(255,255,255,0.07);
    }

    #coverage-widget .cov-title {
      font-size: 0.64rem;
      text-transform: uppercase;
      letter-spacing: 0.1em;
      color: var(--sidebar-text-secondary);
      margin-bottom: 0.5rem;
      font-weight: 600;
    }

    .cov-global-row {
      display: flex;
      align-items: center;
      justify-content: space-between;
      margin-bottom: 0.45rem;
    }

    .cov-pct-label {
      font-family: var(--font-mono);
      font-size: 1.3rem;
      font-weight: 600;
      color: #fff;
      line-height: 1;
    }
    .cov-pct-label.warn   { color: #fbbf24; }
    .cov-pct-label.danger { color: #f87171; }

    .cov-sub {
      font-size: 0.65rem;
      color: var(--sidebar-text-secondary);
      text-align: right;
      line-height: 1.5;
    }

    .cov-bar-wrap {
      background: rgba(255,255,255,0.07);
      border-radius: 3px;
      height: 4px;
      overflow: hidden;
    }

    .cov-bar-fill {
      height: 100%;
      border-radius: 3px;
      transition: width 0.4s ease;
    }

    /* ── BOUTON RETOUR ── */
    .back-button {
      margin: 1rem 1.2rem;
      padding: 0.6rem 1rem;
      background: rgba(107, 140, 255, 0.15);
      border: 1px solid var(--accent);
      border-radius: 10px;
      text-decoration: none;
      color: var(--accent);
      font-size: 0.8rem;
      font-weight: 500;
      display: flex;
      align-items: center;
      gap: 0.5rem;
      transition: all 0.25s;
    }

    .back-button:hover {
      background: rgba(107, 140, 255, 0.25);
      transform: translateX(-4px);
    }

    /* ── NAV LINKS ── */
    #sidebar-nav {
      padding: 0.6rem 0;
      flex: 1;
    }

    #sidebar-nav .nav-section-label {
      font-size: 0.62rem;
      text-transform: uppercase;
      letter-spacing: 0.12em;
      color: var(--sidebar-text-secondary);
      padding: 0.5rem 1.2rem 0.25rem;
      font-weight: 600;
    }

    .nav-sheet-link {
      display: block;
      padding: 0.4rem 1.2rem 0.45rem;
      text-decoration: none;
      color: var(--sidebar-text);
      font-size: 0.82rem;
      transition: background 0.15s, color 0.15s;
      border-left: 3px solid transparent;
      position: relative;
    }

    .nav-sheet-link:hover {
      background: rgba(107,140,255,0.08);
      color: #fff;
      border-left-color: var(--sidebar-accent);
    }

    .nav-sheet-inner {
      display: flex;
      align-items: baseline;
      justify-content: space-between;
      gap: 0.4rem;
    }

    .nav-sheet-name {
      flex: 1;
      white-space: nowrap;
      overflow: hidden;
      text-overflow: ellipsis;
    }

    .nav-sheet-pct {
      font-family: var(--font-mono);
      font-size: 0.65rem;
      opacity: 0.55;
      flex-shrink: 0;
    }

    .nav-sheet-bar {
      height: 2px;
      border-radius: 2px;
      margin-top: 0.25rem;
      background: rgba(255,255,255,0.05);
      overflow: hidden;
    }

    .nav-sheet-bar-fill {
      height: 100%;
      border-radius: 2px;
      opacity: 0.6;
    }

    #sidebar-nav a.tp-link {
      display: flex;
      align-items: center;
      gap: 0.5rem;
      padding: 0.45rem 1.2rem;
      text-decoration: none;
      color: #fb923c;
      font-size: 0.82rem;
      transition: background 0.15s, color 0.15s;
      border-left: 3px solid transparent;
    }

    #sidebar-nav a.tp-link:hover {
      background: rgba(249,115,22,0.12);
      color: #fdba74;
      border-left-color: var(--tp-color);
    }

    #sidebar-nav a .nav-icon {
      font-size: 0.75rem;
      opacity: 0.7;
      width: 16px;
      text-align: center;
    }

    /* ── MAIN CONTENT ── */
    #main {
      margin-left: 280px;
      flex: 1;
      padding: 2rem 2.5rem;
      max-width: calc(100vw - 280px);
    }

    section {
      background: var(--bg-card);
      border: 1px solid var(--border);
      border-radius: var(--radius);
      padding: 1.5rem 2rem;
      margin-bottom: 1.5rem;
      box-shadow: var(--shadow);
      transition: all 0.3s ease;
    }

    section:hover {
      border-color: var(--border-hover);
      box-shadow: var(--shadow-hover);
    }

    section h2 {
      font-size: 1.1rem;
      color: var(--text-primary);
      border-left: 4px solid var(--accent);
      padding-left: 0.8rem;
      margin-bottom: 1.2rem;
      font-weight: 600;
    }

    #recap-test-points h2 {
      border-left-color: var(--tp-color);
    }

    .filename {
      font-size: 0.7rem;
      font-weight: normal;
      color: var(--text-secondary);
      font-family: var(--font-mono);
      margin-left: 0.5rem;
    }

    .section-label {
      font-size: 0.75rem;
      color: var(--text-secondary);
      margin: 1.2rem 0 0.6rem;
      text-transform: uppercase;
      letter-spacing: 0.07em;
      font-weight: 600;
    }

    /* ── ACCORDÉON SVG (ouvert par défaut) ── */
    .svg-accordion {
      margin-bottom: 1.2rem;
      border: 1px solid var(--border);
      border-radius: 12px;
      overflow: hidden;
    }

    .svg-summary {
      display: flex;
      align-items: center;
      gap: 0.5rem;
      padding: 0.6rem 1rem;
      cursor: pointer;
      font-size: 0.82rem;
      font-weight: 600;
      color: var(--text-primary);
      background: rgba(0,0,0,0.02);
      user-select: none;
      list-style: none;
      transition: background 0.15s;
    }

    body.dark-theme .svg-summary {
      background: rgba(255,255,255,0.03);
    }

    .svg-summary::-webkit-details-marker { display: none; }
    .svg-summary::marker { display: none; }

    .svg-summary:hover {
      background: rgba(79, 70, 229, 0.08);
    }

    details[open] .svg-summary {
      background: rgba(79, 70, 229, 0.05);
      border-bottom: 1px solid var(--border);
    }

    .svg-summary::after {
      content: "▸";
      margin-left: auto;
      font-size: 0.7rem;
      color: var(--text-secondary);
      transition: transform 0.2s;
    }

    details[open] .svg-summary::after {
      transform: rotate(90deg);
    }

    .svg-icon {
      color: var(--accent);
      font-size: 0.9rem;
    }

    .svg-badge {
      font-family: var(--font-mono);
      font-size: 0.6rem;
      background: var(--accent);
      color: white;
      padding: 0.1rem 0.4rem;
      border-radius: 6px;
      letter-spacing: 0.05em;
    }

    .svg-wrap {
      padding: 1rem;
      background: white;
      overflow-x: auto;
      transition: background 0.3s ease;
    }

    body.dark-theme .svg-wrap {
      background: #ffffff;
    }

    .svg-wrap .sheet-svg,
    .svg-wrap svg {
      width: 100%;
      height: auto;
      max-height: 900px;
      display: block;
      background: white;
    }

    /* ── TABLES ── */
    table {
      width: 100%;
      border-collapse: collapse;
      margin-bottom: 0.5rem;
      font-size: 0.85rem;
    }

    thead tr { 
      background: linear-gradient(135deg, var(--sidebar-bg) 0%, var(--bg-secondary) 100%);
      color: var(--text-white);
    }
    thead th { 
      padding: 0.6rem 0.9rem; 
      text-align: left; 
      font-weight: 600; 
      font-size: 0.8rem; 
      letter-spacing: 0.03em;
    }

    tbody tr:nth-child(even) { background: rgba(0,0,0,0.02); }
    body.dark-theme tbody tr:nth-child(even) { background: rgba(255,255,255,0.02); }
    tbody tr:hover { background: rgba(79, 70, 229, 0.08); }
    tbody td { padding: 0.5rem 0.9rem; border-bottom: 1px solid var(--border); vertical-align: middle; }

    .tp-row { border-left: 3px solid var(--tp-color); }
    .tp-ref { color: var(--tp-color); font-weight: bold; }

    code {
      font-family: var(--font-mono);
      font-size: 0.85em;
    }

    .badge {
      display: inline-block;
      padding: 0.2rem 0.6rem;
      border-radius: 20px;
      font-size: 0.7rem;
      font-weight: 600;
      color: #333;
    }

    .no-doc  { color: var(--text-muted); font-style: italic; }
    .empty   { color: var(--text-muted); font-style: italic; padding: 0.5rem 0; }

    .dnp     { opacity: 0.45; }
    .dnp-badge {
      background: var(--danger);
      color: white;
      font-size: 0.6rem;
      padding: 0.1rem 0.4rem;
      border-radius: 4px;
      margin-left: 0.3rem;
      vertical-align: middle;
    }

    small { color: var(--text-secondary); }

    /* ── RECHERCHE GLOBALE ── */
    #search-box {
      padding: 0.7rem 1.2rem 0.6rem;
      border-bottom: 1px solid rgba(255,255,255,0.07);
    }

    #global-search {
      width: 100%;
      background: rgba(255,255,255,0.06);
      border: 1px solid rgba(255,255,255,0.12);
      border-radius: 8px;
      padding: 0.5rem 0.7rem;
      color: var(--sidebar-text);
      font-size: 0.8rem;
      font-family: var(--font-sans);
      outline: none;
      transition: background 0.2s ease, border-color 0.2s ease, box-shadow 0.2s ease;
    }

    #global-search::placeholder { color: var(--sidebar-text-secondary); }

    #global-search:focus {
      background: rgba(255,255,255,0.1);
      border-color: var(--sidebar-accent);
      box-shadow: 0 0 0 3px rgba(107,140,255,0.18);
    }

    #search-results-count {
      font-size: 0.68rem;
      color: var(--sidebar-text-secondary);
      margin-top: 0.4rem;
      font-family: var(--font-mono);
      min-height: 1em;
    }

    mark.search-hit {
      background: #fde68a;
      color: #1e293b;
      padding: 0 2px;
      border-radius: 3px;
    }

    .nav-sheet-link.nav-dim {
      opacity: 0.25;
      pointer-events: none;
    }

    /* ── RESPONSIVE ── */
    @media (max-width: 768px) {
      #sidebar { width: 0px; display: none; }
      #main { margin-left: 0; padding: 1rem; max-width: 100vw; }
      .theme-toggle { bottom: 10px; right: 10px; padding: 8px 16px; font-size: 12px; }
    }
</style>
</head>
<body>

  <!-- ── BOUTON CHANGEMENT DE THÈME ── -->
  <button id="theme-toggle-btn" class="theme-toggle" onclick="toggleTheme()">
    🌙 Thème sombre
  </button>

  <!-- ── SIDEBAR ── -->
  <aside id="sidebar">
    <div id="sidebar-header">
      <h1>Base</h1>
      <p>Généré le 2026-09-15<br>18 feuille(s) · 0 TP</p>
    </div>

    <div id="search-box">
      <input type="text" id="global-search" placeholder="Rechercher…  (/)" autocomplete="off" spellcheck="false">
      <div id="search-results-count"></div>
    </div>

    
    <div id="coverage-widget">
      <div class="cov-title">Couverture globale</div>
      <div class="cov-global-row">
        <div class="cov-pct-label danger">0%</div>
        <div class="cov-sub">
          0/93 cmp<br>
          0/90 sig
        </div>
      </div>
      <div class="cov-bar-wrap">
        <div class="cov-bar-fill" style="width:0%; background:#ef4444"></div>
      </div>
    </div>

    
    <a href="../index.html" class="back-button">
      <span>←</span> Retour aux PCB
    </a>


    <nav id="sidebar-nav">
      <div class="nav-section-label">Feuilles</div>
    <a href="#anemometer" class="nav-sheet-link">
      <div class="nav-sheet-inner">
        <span class="nav-sheet-name">Anemometer</span>
        <span class="nav-sheet-pct">0%</span>
      </div>
      <div class="nav-sheet-bar">
        <div class="nav-sheet-bar-fill" style="width:0%; background:#ef4444"></div>
      </div>
    </a>
    <a href="#anemometer1" class="nav-sheet-link">
      <div class="nav-sheet-inner">
        <span class="nav-sheet-name">Anemometer1</span>
        <span class="nav-sheet-pct">0%</span>
      </div>
      <div class="nav-sheet-bar">
        <div class="nav-sheet-bar-fill" style="width:0%; background:#ef4444"></div>
      </div>
    </a>
    <a href="#bridge" class="nav-sheet-link">
      <div class="nav-sheet-inner">
        <span class="nav-sheet-name">Bridge</span>
        <span class="nav-sheet-pct">0%</span>
      </div>
      <div class="nav-sheet-bar">
        <div class="nav-sheet-bar-fill" style="width:0%; background:#ef4444"></div>
      </div>
    </a>
    <a href="#crystal" class="nav-sheet-link">
      <div class="nav-sheet-inner">
        <span class="nav-sheet-name">Crystal</span>
        <span class="nav-sheet-pct">0%</span>
      </div>
      <div class="nav-sheet-bar">
        <div class="nav-sheet-bar-fill" style="width:0%; background:#ef4444"></div>
      </div>
    </a>
    <a href="#gnss" class="nav-sheet-link">
      <div class="nav-sheet-inner">
        <span class="nav-sheet-name">GNSS</span>
        <span class="nav-sheet-pct">0%</span>
      </div>
      <div class="nav-sheet-bar">
        <div class="nav-sheet-bar-fill" style="width:0%; background:#ef4444"></div>
      </div>
    </a>
    <a href="#mcu" class="nav-sheet-link">
      <div class="nav-sheet-inner">
        <span class="nav-sheet-name">MCU</span>
        <span class="nav-sheet-pct">0%</span>
      </div>
      <div class="nav-sheet-bar">
        <div class="nav-sheet-bar-fill" style="width:0%; background:#ef4444"></div>
      </div>
    </a>
    <a href="#nrf24" class="nav-sheet-link">
      <div class="nav-sheet-inner">
        <span class="nav-sheet-name">NRF24</span>
        <span class="nav-sheet-pct">0%</span>
      </div>
      <div class="nav-sheet-bar">
        <div class="nav-sheet-bar-fill" style="width:0%; background:#ef4444"></div>
      </div>
    </a>
    <a href="#oled" class="nav-sheet-link">
      <div class="nav-sheet-inner">
        <span class="nav-sheet-name">OLED</span>
        <span class="nav-sheet-pct">0%</span>
      </div>
      <div class="nav-sheet-bar">
        <div class="nav-sheet-bar-fill" style="width:0%; background:#ef4444"></div>
      </div>
    </a>
    <a href="#power" class="nav-sheet-link">
      <div class="nav-sheet-inner">
        <span class="nav-sheet-name">Power</span>
        <span class="nav-sheet-pct">0%</span>
      </div>
      <div class="nav-sheet-bar">
        <div class="nav-sheet-bar-fill" style="width:0%; background:#ef4444"></div>
      </div>
    </a>
    <a href="#power_handler" class="nav-sheet-link">
      <div class="nav-sheet-inner">
        <span class="nav-sheet-name">Power_Handler</span>
        <span class="nav-sheet-pct">0%</span>
      </div>
      <div class="nav-sheet-bar">
        <div class="nav-sheet-bar-fill" style="width:0%; background:#ef4444"></div>
      </div>
    </a>
    <a href="#programming" class="nav-sheet-link">
      <div class="nav-sheet-inner">
        <span class="nav-sheet-name">Programming</span>
        <span class="nav-sheet-pct">0%</span>
      </div>
      <div class="nav-sheet-bar">
        <div class="nav-sheet-bar-fill" style="width:0%; background:#ef4444"></div>
      </div>
    </a>
    <a href="#rtc" class="nav-sheet-link">
      <div class="nav-sheet-inner">
        <span class="nav-sheet-name">RTC</span>
        <span class="nav-sheet-pct">0%</span>
      </div>
      <div class="nav-sheet-bar">
        <div class="nav-sheet-bar-fill" style="width:0%; background:#ef4444"></div>
      </div>
    </a>
    <a href="#reset" class="nav-sheet-link">
      <div class="nav-sheet-inner">
        <span class="nav-sheet-name">Reset</span>
        <span class="nav-sheet-pct">0%</span>
      </div>
      <div class="nav-sheet-bar">
        <div class="nav-sheet-bar-fill" style="width:0%; background:#ef4444"></div>
      </div>
    </a>
    <a href="#temperature_sun" class="nav-sheet-link">
      <div class="nav-sheet-inner">
        <span class="nav-sheet-name">Temperature_Sun</span>
        <span class="nav-sheet-pct">0%</span>
      </div>
      <div class="nav-sheet-bar">
        <div class="nav-sheet-bar-fill" style="width:0%; background:#ef4444"></div>
      </div>
    </a>
    <a href="#translator" class="nav-sheet-link">
      <div class="nav-sheet-inner">
        <span class="nav-sheet-name">Translator</span>
        <span class="nav-sheet-pct">0%</span>
      </div>
      <div class="nav-sheet-bar">
        <div class="nav-sheet-bar-fill" style="width:0%; background:#ef4444"></div>
      </div>
    </a>
    <a href="#user_buttons" class="nav-sheet-link">
      <div class="nav-sheet-inner">
        <span class="nav-sheet-name">User_Buttons</span>
        <span class="nav-sheet-pct">0%</span>
      </div>
      <div class="nav-sheet-bar">
        <div class="nav-sheet-bar-fill" style="width:0%; background:#ef4444"></div>
      </div>
    </a>
    <a href="#wind" class="nav-sheet-link">
      <div class="nav-sheet-inner">
        <span class="nav-sheet-name">WIND</span>
        <span class="nav-sheet-pct">0%</span>
      </div>
      <div class="nav-sheet-bar">
        <div class="nav-sheet-bar-fill" style="width:0%; background:#ef4444"></div>
      </div>
    </a>
    <a href="#xtal" class="nav-sheet-link">
      <div class="nav-sheet-inner">
        <span class="nav-sheet-name">Xtal</span>
        <span class="nav-sheet-pct">0%</span>
      </div>
      <div class="nav-sheet-bar">
        <div class="nav-sheet-bar-fill" style="width:0%; background:#ef4444"></div>
      </div>
    </a>

    </nav>
  </aside>

  <!-- ── MAIN ── -->
  <main id="main">
    <div id="anemometer">
    <section>
      <h2>Anemometer <span class="filename">Anemometer.kicad_sch</span></h2>


      <h3 class="section-label">Signaux hiérarchiques</h3>
      <table>
        <thead>
          <tr>
            <th>Signal</th>
            <th>Direction</th>
            <th>Description</th>
          </tr>
        </thead>
        <tbody>

          <tr>
            <td><code>+5V</code></td>
            <td><span class="badge" style="background:#d0e8ff">→ Input</span></td>
            <td class="no-doc">pas de doc</td>
          </tr>
        </tbody>
      </table>

      <h3 class="section-label">Composants</h3>
      <table>
        <thead>
          <tr>
            <th>Réf.</th>
            <th>Valeur</th>
            <th>Description</th>
            <th>Boîtier</th>
            <th>Variantes</th>
          </tr>
        </thead>
        <tbody>

          <tr>
            <td><code>J11</code></td>
            <td><strong>Screw_Terminal_01x02_2.54mm</strong></td>
            <td>—</td>
            <td><small>TerminalBlock_Phoenix_MKDS-1,5-2-5.08_1x02_P5.08mm_Horizontal</small></td>
            <td>—</td>
          </tr>

          <tr>
            <td><code>JP1</code></td>
            <td><strong>Jumper_2.54mm_blue</strong></td>
            <td>—</td>
            <td><small>Jumper_2.54mm_blue</small></td>
            <td>—</td>
          </tr>

          <tr>
            <td><code>R1</code></td>
            <td><strong>100k</strong></td>
            <td>—</td>
            <td><small>R_Axial_DIN0207_L6.3mm_D2.5mm_P7.62mm_Horizontal</small></td>
            <td>—</td>
          </tr>

          <tr>
            <td><code>R2</code></td>
            <td><strong>100k</strong></td>
            <td>—</td>
            <td><small>R_Axial_DIN0207_L6.3mm_D2.5mm_P7.62mm_Horizontal</small></td>
            <td>—</td>
          </tr>
        </tbody>
      </table>
    </section>
</div><div id="anemometer1">
    <section>
      <h2>Anemometer1 <span class="filename">Anemometer1.kicad_sch</span></h2>


      <h3 class="section-label">Signaux hiérarchiques</h3>
      <table>
        <thead>
          <tr>
            <th>Signal</th>
            <th>Direction</th>
            <th>Description</th>
          </tr>
        </thead>
        <tbody>

          <tr>
            <td><code>+5V</code></td>
            <td><span class="badge" style="background:#fff3cd">⇄ Bidirectional</span></td>
            <td class="no-doc">pas de doc</td>
          </tr>

          <tr>
            <td><code>GND</code></td>
            <td><span class="badge" style="background:#f0f0f0">— Passive</span></td>
            <td class="no-doc">pas de doc</td>
          </tr>

          <tr>
            <td><code>{I2C}</code></td>
            <td><span class="badge" style="background:#d0e8ff">→ Input</span></td>
            <td class="no-doc">pas de doc</td>
          </tr>
        </tbody>
      </table>

      <h3 class="section-label">Composants</h3>
      <table>
        <thead>
          <tr>
            <th>Réf.</th>
            <th>Valeur</th>
            <th>Description</th>
            <th>Boîtier</th>
            <th>Variantes</th>
          </tr>
        </thead>
        <tbody>

          <tr>
            <td><code>J18</code></td>
            <td><strong>KF128-2.54_4P</strong></td>
            <td>—</td>
            <td><small>TerminalBlock_Phoenix_MPT-0,5-4-2.54_1x04_P2.54mm_Horizontal</small></td>
            <td>—</td>
          </tr>

          <tr>
            <td><code>T43</code></td>
            <td><strong>TP</strong></td>
            <td>—</td>
            <td><small>TestPoint_Pad_D1.0mm</small></td>
            <td>—</td>
          </tr>

          <tr>
            <td><code>T45</code></td>
            <td><strong>TP</strong></td>
            <td>—</td>
            <td><small>TestPoint_Pad_D1.0mm</small></td>
            <td>—</td>
          </tr>
        </tbody>
      </table>
    </section>
</div><div id="bridge">
    <section>
      <h2>Bridge <span class="filename">Bridge.kicad_sch</span></h2>


      <h3 class="section-label">Signaux hiérarchiques</h3>
      <table>
        <thead>
          <tr>
            <th>Signal</th>
            <th>Direction</th>
            <th>Description</th>
          </tr>
        </thead>
        <tbody>

          <tr>
            <td><code>GND</code></td>
            <td><span class="badge" style="background:#f0f0f0">— Passive</span></td>
            <td class="no-doc">pas de doc</td>
          </tr>

          <tr>
            <td><code>IN</code></td>
            <td><span class="badge" style="background:#d0e8ff">→ Input</span></td>
            <td class="no-doc">pas de doc</td>
          </tr>

          <tr>
            <td><code>OUT</code></td>
            <td><span class="badge" style="background:#d4f7d4">← Output</span></td>
            <td class="no-doc">pas de doc</td>
          </tr>
        </tbody>
      </table>

      <h3 class="section-label">Composants</h3>
      <table>
        <thead>
          <tr>
            <th>Réf.</th>
            <th>Valeur</th>
            <th>Description</th>
            <th>Boîtier</th>
            <th>Variantes</th>
          </tr>
        </thead>
        <tbody>

          <tr>
            <td><code>R20</code></td>
            <td><strong>10k</strong></td>
            <td>—</td>
            <td><small>R_Axial_DIN0207_L6.3mm_D2.5mm_P7.62mm_Horizontal</small></td>
            <td>—</td>
          </tr>

          <tr>
            <td><code>R21</code></td>
            <td><strong>10k</strong></td>
            <td>—</td>
            <td><small>R_Axial_DIN0207_L6.3mm_D2.5mm_P7.62mm_Horizontal</small></td>
            <td>—</td>
          </tr>
        </tbody>
      </table>
    </section>
</div><div id="crystal">
    <section>
      <h2>Crystal <span class="filename">Crystal.kicad_sch</span></h2>


      <h3 class="section-label">Signaux hiérarchiques</h3>
      <table>
        <thead>
          <tr>
            <th>Signal</th>
            <th>Direction</th>
            <th>Description</th>
          </tr>
        </thead>
        <tbody>

          <tr>
            <td><code>GND</code></td>
            <td><span class="badge" style="background:#fff3cd">⇄ Bidirectional</span></td>
            <td class="no-doc">pas de doc</td>
          </tr>

          <tr>
            <td><code>XTAl_1</code></td>
            <td><span class="badge" style="background:#fff3cd">⇄ Bidirectional</span></td>
            <td class="no-doc">pas de doc</td>
          </tr>

          <tr>
            <td><code>XTAl_2</code></td>
            <td><span class="badge" style="background:#fff3cd">⇄ Bidirectional</span></td>
            <td class="no-doc">pas de doc</td>
          </tr>
        </tbody>
      </table>

      <h3 class="section-label">Composants</h3>
      <table>
        <thead>
          <tr>
            <th>Réf.</th>
            <th>Valeur</th>
            <th>Description</th>
            <th>Boîtier</th>
            <th>Variantes</th>
          </tr>
        </thead>
        <tbody>

          <tr>
            <td><code>C7</code></td>
            <td><strong>22pF</strong></td>
            <td>—</td>
            <td><small>C_0603_1608Metric</small></td>
            <td>—</td>
          </tr>

          <tr>
            <td><code>C8</code></td>
            <td><strong>22pF</strong></td>
            <td>—</td>
            <td><small>C_0603_1608Metric</small></td>
            <td>—</td>
          </tr>

          <tr>
            <td><code>Y1</code></td>
            <td><strong>16MHz</strong></td>
            <td>—</td>
            <td><small>Crystal_SMD_HC49-SD</small></td>
            <td>—</td>
          </tr>
        </tbody>
      </table>
    </section>
</div><div id="gnss">
    <section>
      <h2>GNSS <span class="filename">GNSS.kicad_sch</span></h2>


      <h3 class="section-label">Signaux hiérarchiques</h3>
      <table>
        <thead>
          <tr>
            <th>Signal</th>
            <th>Direction</th>
            <th>Description</th>
          </tr>
        </thead>
        <tbody>

          <tr>
            <td><code>+5V</code></td>
            <td><span class="badge" style="background:#d0e8ff">→ Input</span></td>
            <td class="no-doc">pas de doc</td>
          </tr>

          <tr>
            <td><code>BUZZER</code></td>
            <td><span class="badge" style="background:#d0e8ff">→ Input</span></td>
            <td class="no-doc">pas de doc</td>
          </tr>

          <tr>
            <td><code>GND</code></td>
            <td><span class="badge" style="background:#f0f0f0">— Passive</span></td>
            <td class="no-doc">pas de doc</td>
          </tr>

          <tr>
            <td><code>GND</code></td>
            <td><span class="badge" style="background:#f0f0f0">— Passive</span></td>
            <td class="no-doc">pas de doc</td>
          </tr>

          <tr>
            <td><code>RX_GNSS</code></td>
            <td><span class="badge" style="background:#d0e8ff">→ Input</span></td>
            <td class="no-doc">pas de doc</td>
          </tr>

          <tr>
            <td><code>TX_GNSS</code></td>
            <td><span class="badge" style="background:#d4f7d4">← Output</span></td>
            <td class="no-doc">pas de doc</td>
          </tr>
        </tbody>
      </table>

      <h3 class="section-label">Composants</h3>
      <table>
        <thead>
          <tr>
            <th>Réf.</th>
            <th>Valeur</th>
            <th>Description</th>
            <th>Boîtier</th>
            <th>Variantes</th>
          </tr>
        </thead>
        <tbody>

          <tr>
            <td><code>BZ2</code></td>
            <td><strong>Buzzer</strong></td>
            <td>—</td>
            <td><small>Buzzer_12x9.5RM7.6</small></td>
            <td>—</td>
          </tr>

          <tr>
            <td><code>J10</code></td>
            <td><strong>Conn_01x03_Pin</strong></td>
            <td>—</td>
            <td><small>PinHeader_1x03_P2.54mm_Vertical</small></td>
            <td>—</td>
          </tr>

          <tr>
            <td><code>J14</code></td>
            <td><strong>JST_PH_4P</strong></td>
            <td>—</td>
            <td><small>JST_PH_B4B-PH-K_1x04_P2.00mm_Vertical</small></td>
            <td>—</td>
          </tr>

          <tr>
            <td><code>JP5</code></td>
            <td><strong>60900213421</strong></td>
            <td>—</td>
            <td><small>Jumper_2.54mm_blue</small></td>
            <td>—</td>
          </tr>

          <tr>
            <td><code>R22</code></td>
            <td><strong>10k</strong></td>
            <td>—</td>
            <td><small>R_Axial_DIN0207_L6.3mm_D2.5mm_P7.62mm_Horizontal</small></td>
            <td>—</td>
          </tr>

          <tr>
            <td><code>R23</code></td>
            <td><strong>10k</strong></td>
            <td>—</td>
            <td><small>R_Axial_DIN0207_L6.3mm_D2.5mm_P7.62mm_Horizontal</small></td>
            <td>—</td>
          </tr>
        </tbody>
      </table>
    </section>
</div><div id="mcu">
    <section>
      <h2>MCU <span class="filename">MCU.kicad_sch</span></h2>


      <h3 class="section-label">Signaux hiérarchiques</h3>
      <table>
        <thead>
          <tr>
            <th>Signal</th>
            <th>Direction</th>
            <th>Description</th>
          </tr>
        </thead>
        <tbody>

          <tr>
            <td><code>GND</code></td>
            <td><span class="badge" style="background:#f0f0f0">— Passive</span></td>
            <td class="no-doc">pas de doc</td>
          </tr>

          <tr>
            <td><code>PB0-D8</code></td>
            <td><span class="badge" style="background:#fff3cd">⇄ Bidirectional</span></td>
            <td class="no-doc">pas de doc</td>
          </tr>

          <tr>
            <td><code>PB1-D9~</code></td>
            <td><span class="badge" style="background:#fff3cd">⇄ Bidirectional</span></td>
            <td class="no-doc">pas de doc</td>
          </tr>

          <tr>
            <td><code>PB2-D10~</code></td>
            <td><span class="badge" style="background:#fff3cd">⇄ Bidirectional</span></td>
            <td class="no-doc">pas de doc</td>
          </tr>

          <tr>
            <td><code>PB3-D11-(SPI_MISO)~</code></td>
            <td><span class="badge" style="background:#fff3cd">⇄ Bidirectional</span></td>
            <td class="no-doc">pas de doc</td>
          </tr>

          <tr>
            <td><code>PB4-D12-(SPI_MOSI)</code></td>
            <td><span class="badge" style="background:#fff3cd">⇄ Bidirectional</span></td>
            <td class="no-doc">pas de doc</td>
          </tr>

          <tr>
            <td><code>PB5-D13-(SPI_SCK)</code></td>
            <td><span class="badge" style="background:#fff3cd">⇄ Bidirectional</span></td>
            <td class="no-doc">pas de doc</td>
          </tr>

          <tr>
            <td><code>PC0-A0</code></td>
            <td><span class="badge" style="background:#fff3cd">⇄ Bidirectional</span></td>
            <td class="no-doc">pas de doc</td>
          </tr>

          <tr>
            <td><code>PC1-A1</code></td>
            <td><span class="badge" style="background:#fff3cd">⇄ Bidirectional</span></td>
            <td class="no-doc">pas de doc</td>
          </tr>

          <tr>
            <td><code>PC2-A2</code></td>
            <td><span class="badge" style="background:#fff3cd">⇄ Bidirectional</span></td>
            <td class="no-doc">pas de doc</td>
          </tr>

          <tr>
            <td><code>PC3-A3</code></td>
            <td><span class="badge" style="background:#fff3cd">⇄ Bidirectional</span></td>
            <td class="no-doc">pas de doc</td>
          </tr>

          <tr>
            <td><code>PC4-A4-(I2C_SDA)</code></td>
            <td><span class="badge" style="background:#fff3cd">⇄ Bidirectional</span></td>
            <td class="no-doc">pas de doc</td>
          </tr>

          <tr>
            <td><code>PC5-A5-(I2C_SCL)</code></td>
            <td><span class="badge" style="background:#fff3cd">⇄ Bidirectional</span></td>
            <td class="no-doc">pas de doc</td>
          </tr>

          <tr>
            <td><code>PD0-D0-(UART_RX)</code></td>
            <td><span class="badge" style="background:#fff3cd">⇄ Bidirectional</span></td>
            <td class="no-doc">pas de doc</td>
          </tr>

          <tr>
            <td><code>PD1-D1-(UART_TX)</code></td>
            <td><span class="badge" style="background:#fff3cd">⇄ Bidirectional</span></td>
            <td class="no-doc">pas de doc</td>
          </tr>

          <tr>
            <td><code>PD2-D2-(INT0)</code></td>
            <td><span class="badge" style="background:#fff3cd">⇄ Bidirectional</span></td>
            <td class="no-doc">pas de doc</td>
          </tr>

          <tr>
            <td><code>PD3-D3-(INT1)~</code></td>
            <td><span class="badge" style="background:#fff3cd">⇄ Bidirectional</span></td>
            <td class="no-doc">pas de doc</td>
          </tr>

          <tr>
            <td><code>PD4-D4</code></td>
            <td><span class="badge" style="background:#fff3cd">⇄ Bidirectional</span></td>
            <td class="no-doc">pas de doc</td>
          </tr>

          <tr>
            <td><code>PD5-D5~</code></td>
            <td><span class="badge" style="background:#fff3cd">⇄ Bidirectional</span></td>
            <td class="no-doc">pas de doc</td>
          </tr>

          <tr>
            <td><code>PD6-D6~</code></td>
            <td><span class="badge" style="background:#fff3cd">⇄ Bidirectional</span></td>
            <td class="no-doc">pas de doc</td>
          </tr>

          <tr>
            <td><code>PD7-D7</code></td>
            <td><span class="badge" style="background:#fff3cd">⇄ Bidirectional</span></td>
            <td class="no-doc">pas de doc</td>
          </tr>

          <tr>
            <td><code>VCC</code></td>
            <td><span class="badge" style="background:#d0e8ff">→ Input</span></td>
            <td class="no-doc">pas de doc</td>
          </tr>

          <tr>
            <td><code>{I2C}</code></td>
            <td><span class="badge" style="background:#d0e8ff">→ Input</span></td>
            <td class="no-doc">pas de doc</td>
          </tr>

          <tr>
            <td><code>{SPI}</code></td>
            <td><span class="badge" style="background:#d0e8ff">→ Input</span></td>
            <td class="no-doc">pas de doc</td>
          </tr>

          <tr>
            <td><code>{UART}</code></td>
            <td><span class="badge" style="background:#d0e8ff">→ Input</span></td>
            <td class="no-doc">pas de doc</td>
          </tr>

          <tr>
            <td><code>~{RESET}/PC6</code></td>
            <td><span class="badge" style="background:#fff3cd">⇄ Bidirectional</span></td>
            <td class="no-doc">pas de doc</td>
          </tr>
        </tbody>
      </table>

      <h3 class="section-label">Composants</h3>
      <table>
        <thead>
          <tr>
            <th>Réf.</th>
            <th>Valeur</th>
            <th>Description</th>
            <th>Boîtier</th>
            <th>Variantes</th>
          </tr>
        </thead>
        <tbody>

          <tr>
            <td><code>C1</code></td>
            <td><strong>10uF</strong></td>
            <td>—</td>
            <td><small>C_Radial_D5.0mm_H11.0mm_P2.00mm</small></td>
            <td>—</td>
          </tr>

          <tr class="dnp">
            <td><code>C3 <span class="dnp-badge">DNP</span></code></td>
            <td><strong>22pF - disc</strong></td>
            <td>—</td>
            <td><small>C_Disc_D4.3mm_W1.9mm_P5.00mm</small></td>
            <td>—</td>
          </tr>

          <tr class="dnp">
            <td><code>C7 <span class="dnp-badge">DNP</span></code></td>
            <td><strong>22pF - disc</strong></td>
            <td>—</td>
            <td><small>C_Disc_D4.3mm_W1.9mm_P5.00mm</small></td>
            <td>—</td>
          </tr>

          <tr>
            <td><code>J1</code></td>
            <td><strong>Conn_02x05_Odd_Even</strong></td>
            <td>—</td>
            <td><small>PinHeader_2x05_P2.54mm_Vertical</small></td>
            <td>—</td>
          </tr>

          <tr>
            <td><code>J2</code></td>
            <td><strong>Conn_02x04_Odd_Even</strong></td>
            <td>—</td>
            <td><small>PinHeader_2x04_P2.54mm_Vertical</small></td>
            <td>—</td>
          </tr>

          <tr>
            <td><code>J3</code></td>
            <td><strong>Conn_02x06_Odd_Even</strong></td>
            <td>—</td>
            <td><small>PinHeader_2x06_P2.54mm_Vertical</small></td>
            <td>—</td>
          </tr>

          <tr>
            <td><code>J4</code></td>
            <td><strong>Conn_02x06_Odd_Even</strong></td>
            <td>—</td>
            <td><small>PinHeader_2x06_P2.54mm_Vertical</small></td>
            <td>—</td>
          </tr>

          <tr>
            <td><code>R3</code></td>
            <td><strong>4.7k</strong></td>
            <td>—</td>
            <td><small>R_Axial_DIN0207_L6.3mm_D2.5mm_P7.62mm_Horizontal</small></td>
            <td>—</td>
          </tr>

          <tr>
            <td><code>R12</code></td>
            <td><strong>4.7k</strong></td>
            <td>—</td>
            <td><small>R_Axial_DIN0207_L6.3mm_D2.5mm_P7.62mm_Horizontal</small></td>
            <td>—</td>
          </tr>

          <tr>
            <td><code>U1</code></td>
            <td><strong>ATmega328P-P</strong></td>
            <td>—</td>
            <td><small>DIP-28_W7.62mm_Socket</small></td>
            <td>—</td>
          </tr>

          <tr class="dnp">
            <td><code>Y3 <span class="dnp-badge">DNP</span></code></td>
            <td><strong>Crystal HC49-4H 12MHz</strong></td>
            <td>—</td>
            <td><small>Crystal_HC49-4H_Vertical</small></td>
            <td>—</td>
          </tr>
        </tbody>
      </table>
    </section>
</div><div id="nrf24">
    <section>
      <h2>NRF24 <span class="filename">NRF24.kicad_sch</span></h2>


      <h3 class="section-label">Signaux hiérarchiques</h3>
      <table>
        <thead>
          <tr>
            <th>Signal</th>
            <th>Direction</th>
            <th>Description</th>
          </tr>
        </thead>
        <tbody>

          <tr>
            <td><code>+3.3V</code></td>
            <td><span class="badge" style="background:#d0e8ff">→ Input</span></td>
            <td class="no-doc">pas de doc</td>
          </tr>

          <tr>
            <td><code>CE</code></td>
            <td><span class="badge" style="background:#d0e8ff">→ Input</span></td>
            <td class="no-doc">pas de doc</td>
          </tr>

          <tr>
            <td><code>CSN</code></td>
            <td><span class="badge" style="background:#d0e8ff">→ Input</span></td>
            <td class="no-doc">pas de doc</td>
          </tr>

          <tr>
            <td><code>GND</code></td>
            <td><span class="badge" style="background:#f0f0f0">— Passive</span></td>
            <td class="no-doc">pas de doc</td>
          </tr>

          <tr>
            <td><code>MISO</code></td>
            <td><span class="badge" style="background:#d4f7d4">← Output</span></td>
            <td class="no-doc">pas de doc</td>
          </tr>

          <tr>
            <td><code>MOSI</code></td>
            <td><span class="badge" style="background:#d0e8ff">→ Input</span></td>
            <td class="no-doc">pas de doc</td>
          </tr>

          <tr>
            <td><code>SCK</code></td>
            <td><span class="badge" style="background:#d0e8ff">→ Input</span></td>
            <td class="no-doc">pas de doc</td>
          </tr>
        </tbody>
      </table>

      <h3 class="section-label">Composants</h3>
      <table>
        <thead>
          <tr>
            <th>Réf.</th>
            <th>Valeur</th>
            <th>Description</th>
            <th>Boîtier</th>
            <th>Variantes</th>
          </tr>
        </thead>
        <tbody>

          <tr>
            <td><code>U6</code></td>
            <td><strong>~</strong></td>
            <td>—</td>
            <td><small>nRF24L01_Virtual</small></td>
            <td>—</td>
          </tr>

          <tr>
            <td><code>U7</code></td>
            <td><strong>SSW-104-02-G-D</strong></td>
            <td>—</td>
            <td><small>nRF24L01_Breakout</small></td>
            <td>—</td>
          </tr>
        </tbody>
      </table>
    </section>
</div><div id="oled">
    <section>
      <h2>OLED <span class="filename">OLED.kicad_sch</span></h2>


      <h3 class="section-label">Signaux hiérarchiques</h3>
      <table>
        <thead>
          <tr>
            <th>Signal</th>
            <th>Direction</th>
            <th>Description</th>
          </tr>
        </thead>
        <tbody>

          <tr>
            <td><code>GND</code></td>
            <td><span class="badge" style="background:#f0f0f0">— Passive</span></td>
            <td class="no-doc">pas de doc</td>
          </tr>

          <tr>
            <td><code>VCC</code></td>
            <td><span class="badge" style="background:#d0e8ff">→ Input</span></td>
            <td class="no-doc">pas de doc</td>
          </tr>

          <tr>
            <td><code>{I2C}</code></td>
            <td><span class="badge" style="background:#d0e8ff">→ Input</span></td>
            <td class="no-doc">pas de doc</td>
          </tr>
        </tbody>
      </table>

      <h3 class="section-label">Composants</h3>
      <table>
        <thead>
          <tr>
            <th>Réf.</th>
            <th>Valeur</th>
            <th>Description</th>
            <th>Boîtier</th>
            <th>Variantes</th>
          </tr>
        </thead>
        <tbody>

          <tr>
            <td><code>J8</code></td>
            <td><strong>61300411821</strong></td>
            <td>—</td>
            <td><small>PinSocket_1x04_P2.54mm_Vertical</small></td>
            <td>—</td>
          </tr>

          <tr>
            <td><code>J17</code></td>
            <td><strong>JST_PH_4P</strong></td>
            <td>—</td>
            <td><small>JST_PH_B4B-PH-K_1x04_P2.00mm_Vertical</small></td>
            <td>—</td>
          </tr>

          <tr>
            <td><code>OLED2</code></td>
            <td><strong>~</strong></td>
            <td>—</td>
            <td><small>SSD1306_OLED_Display_VIRTUAL_128_64</small></td>
            <td>—</td>
          </tr>
        </tbody>
      </table>
    </section>
</div><div id="power">
    <section>
      <h2>Power <span class="filename">Power.kicad_sch</span></h2>


      <h3 class="section-label">Signaux hiérarchiques</h3>
      <table>
        <thead>
          <tr>
            <th>Signal</th>
            <th>Direction</th>
            <th>Description</th>
          </tr>
        </thead>
        <tbody>

          <tr>
            <td><code>+3.3V</code></td>
            <td><span class="badge" style="background:#d4f7d4">← Output</span></td>
            <td class="no-doc">pas de doc</td>
          </tr>

          <tr>
            <td><code>+5V_{IN}</code></td>
            <td><span class="badge" style="background:#d0e8ff">→ Input</span></td>
            <td class="no-doc">pas de doc</td>
          </tr>

          <tr>
            <td><code>GND</code></td>
            <td><span class="badge" style="background:#f0f0f0">— Passive</span></td>
            <td class="no-doc">pas de doc</td>
          </tr>
        </tbody>
      </table>

      <h3 class="section-label">Composants</h3>
      <table>
        <thead>
          <tr>
            <th>Réf.</th>
            <th>Valeur</th>
            <th>Description</th>
            <th>Boîtier</th>
            <th>Variantes</th>
          </tr>
        </thead>
        <tbody>

          <tr>
            <td><code>C8</code></td>
            <td><strong>10uF</strong></td>
            <td>—</td>
            <td><small>C_Radial_D5.0mm_H11.0mm_P2.00mm</small></td>
            <td>—</td>
          </tr>

          <tr>
            <td><code>C11</code></td>
            <td><strong>10uF</strong></td>
            <td>—</td>
            <td><small>C_Radial_D5.0mm_H11.0mm_P2.00mm</small></td>
            <td>—</td>
          </tr>

          <tr>
            <td><code>D2</code></td>
            <td><strong>LED</strong></td>
            <td>—</td>
            <td><small>LED_D5.0mm</small></td>
            <td>—</td>
          </tr>

          <tr>
            <td><code>JP7</code></td>
            <td><strong>Jumper</strong></td>
            <td>—</td>
            <td><small>PinHeader_1x02_P2.54mm_Vertical</small></td>
            <td>—</td>
          </tr>

          <tr>
            <td><code>R26</code></td>
            <td><strong>270</strong></td>
            <td>—</td>
            <td><small>R_Axial_DIN0207_L6.3mm_D2.5mm_P7.62mm_Horizontal</small></td>
            <td>—</td>
          </tr>

          <tr>
            <td><code>U2</code></td>
            <td><strong>AMS1117-3.3</strong></td>
            <td>—</td>
            <td><small>SOT-223-3_TabPin2</small></td>
            <td>—</td>
          </tr>
        </tbody>
      </table>
    </section>
</div><div id="power_handler">
    <section>
      <h2>Power_Handler <span class="filename">Power_Handler.kicad_sch</span></h2>


      <h3 class="section-label">Signaux hiérarchiques</h3>
      <table>
        <thead>
          <tr>
            <th>Signal</th>
            <th>Direction</th>
            <th>Description</th>
          </tr>
        </thead>
        <tbody>

          <tr>
            <td><code>ENABLE</code></td>
            <td><span class="badge" style="background:#d0e8ff">→ Input</span></td>
            <td class="no-doc">pas de doc</td>
          </tr>

          <tr>
            <td><code>GND</code></td>
            <td><span class="badge" style="background:#f0f0f0">— Passive</span></td>
            <td class="no-doc">pas de doc</td>
          </tr>

          <tr>
            <td><code>V_{IN}</code></td>
            <td><span class="badge" style="background:#d0e8ff">→ Input</span></td>
            <td class="no-doc">pas de doc</td>
          </tr>

          <tr>
            <td><code>V_{OUT}</code></td>
            <td><span class="badge" style="background:#d4f7d4">← Output</span></td>
            <td class="no-doc">pas de doc</td>
          </tr>
        </tbody>
      </table>

      <h3 class="section-label">Composants</h3>
      <table>
        <thead>
          <tr>
            <th>Réf.</th>
            <th>Valeur</th>
            <th>Description</th>
            <th>Boîtier</th>
            <th>Variantes</th>
          </tr>
        </thead>
        <tbody>

          <tr>
            <td><code>Q4</code></td>
            <td><strong>FDS4559</strong></td>
            <td>—</td>
            <td><small>SOIC-8_3.9x4.9mm_P1.27mm</small></td>
            <td>—</td>
          </tr>

          <tr>
            <td><code>R16</code></td>
            <td><strong>10k</strong></td>
            <td>—</td>
            <td><small>R_Axial_DIN0207_L6.3mm_D2.5mm_P7.62mm_Horizontal</small></td>
            <td>—</td>
          </tr>

          <tr>
            <td><code>R28</code></td>
            <td><strong>10k</strong></td>
            <td>—</td>
            <td><small>R_Axial_DIN0207_L6.3mm_D2.5mm_P7.62mm_Horizontal</small></td>
            <td>—</td>
          </tr>
        </tbody>
      </table>
    </section>
</div><div id="programming">
    <section>
      <h2>Programming <span class="filename">Programming.kicad_sch</span></h2>


      <h3 class="section-label">Signaux hiérarchiques</h3>
      <table>
        <thead>
          <tr>
            <th>Signal</th>
            <th>Direction</th>
            <th>Description</th>
          </tr>
        </thead>
        <tbody>

          <tr>
            <td><code>+5V_USB</code></td>
            <td><span class="badge" style="background:#d4f7d4">← Output</span></td>
            <td class="no-doc">pas de doc</td>
          </tr>

          <tr>
            <td><code>DTR</code></td>
            <td><span class="badge" style="background:#d4f7d4">← Output</span></td>
            <td class="no-doc">pas de doc</td>
          </tr>

          <tr>
            <td><code>GND</code></td>
            <td><span class="badge" style="background:#f0f0f0">— Passive</span></td>
            <td class="no-doc">pas de doc</td>
          </tr>

          <tr>
            <td><code>{UART}</code></td>
            <td><span class="badge" style="background:#d0e8ff">→ Input</span></td>
            <td class="no-doc">pas de doc</td>
          </tr>
        </tbody>
      </table>

      <h3 class="section-label">Composants</h3>
      <table>
        <thead>
          <tr>
            <th>Réf.</th>
            <th>Valeur</th>
            <th>Description</th>
            <th>Boîtier</th>
            <th>Variantes</th>
          </tr>
        </thead>
        <tbody>

          <tr>
            <td><code>C2</code></td>
            <td><strong>100nF</strong></td>
            <td>—</td>
            <td><small>C_0603_1608Metric</small></td>
            <td>—</td>
          </tr>

          <tr>
            <td><code>C9</code></td>
            <td><strong>22pF - disc</strong></td>
            <td>—</td>
            <td><small>C_Disc_D4.3mm_W1.9mm_P5.00mm</small></td>
            <td>—</td>
          </tr>

          <tr>
            <td><code>C10</code></td>
            <td><strong>22pF - disc</strong></td>
            <td>—</td>
            <td><small>C_Disc_D4.3mm_W1.9mm_P5.00mm</small></td>
            <td>—</td>
          </tr>

          <tr>
            <td><code>C19</code></td>
            <td><strong>100nF</strong></td>
            <td>—</td>
            <td><small>C_0603_1608Metric</small></td>
            <td>—</td>
          </tr>

          <tr>
            <td><code>J7</code></td>
            <td><strong>Conn_01x04_Pin</strong></td>
            <td>—</td>
            <td><small>PinHeader_1x04_P2.54mm_Vertical</small></td>
            <td>—</td>
          </tr>

          <tr>
            <td><code>R20</code></td>
            <td><strong>10k</strong></td>
            <td>—</td>
            <td><small>R_Axial_DIN0207_L6.3mm_D2.5mm_P7.62mm_Horizontal</small></td>
            <td>—</td>
          </tr>

          <tr>
            <td><code>R21</code></td>
            <td><strong>10k</strong></td>
            <td>—</td>
            <td><small>R_Axial_DIN0207_L6.3mm_D2.5mm_P7.62mm_Horizontal</small></td>
            <td>—</td>
          </tr>

          <tr>
            <td><code>U10</code></td>
            <td><strong>CH340G</strong></td>
            <td>—</td>
            <td><small>SOIC-16_3.9x9.9mm_P1.27mm</small></td>
            <td>—</td>
          </tr>

          <tr>
            <td><code>Y2</code></td>
            <td><strong>Crystal HC49-4H 12 MHz</strong></td>
            <td>—</td>
            <td><small>Crystal_HC49-4H_Vertical</small></td>
            <td>—</td>
          </tr>
        </tbody>
      </table>
    </section>
</div><div id="rtc">
    <section>
      <h2>RTC <span class="filename">RTC.kicad_sch</span></h2>


      <h3 class="section-label">Signaux hiérarchiques</h3>
      <table>
        <thead>
          <tr>
            <th>Signal</th>
            <th>Direction</th>
            <th>Description</th>
          </tr>
        </thead>
        <tbody>

          <tr>
            <td><code>GND</code></td>
            <td><span class="badge" style="background:#f0f0f0">— Passive</span></td>
            <td class="no-doc">pas de doc</td>
          </tr>

          <tr>
            <td><code>VCC</code></td>
            <td><span class="badge" style="background:#d0e8ff">→ Input</span></td>
            <td class="no-doc">pas de doc</td>
          </tr>

          <tr>
            <td><code>{I2C}</code></td>
            <td><span class="badge" style="background:#d0e8ff">→ Input</span></td>
            <td class="no-doc">pas de doc</td>
          </tr>

          <tr>
            <td><code>~{WAKE-UP}</code></td>
            <td><span class="badge" style="background:#d4f7d4">← Output</span></td>
            <td class="no-doc">pas de doc</td>
          </tr>
        </tbody>
      </table>

      <h3 class="section-label">Composants</h3>
      <table>
        <thead>
          <tr>
            <th>Réf.</th>
            <th>Valeur</th>
            <th>Description</th>
            <th>Boîtier</th>
            <th>Variantes</th>
          </tr>
        </thead>
        <tbody>

          <tr class="dnp">
            <td><code>BT3 <span class="dnp-badge">DNP</span></code></td>
            <td><strong>Battery_Cell</strong></td>
            <td>—</td>
            <td><small>MPD_BC501SM-TR</small></td>
            <td>—</td>
          </tr>

          <tr>
            <td><code>U3</code></td>
            <td><strong>DS3231M</strong></td>
            <td>—</td>
            <td><small>SOIC-16W_7.5x10.3mm_P1.27mm</small></td>
            <td>—</td>
          </tr>
        </tbody>
      </table>
    </section>
</div><div id="reset">
    <section>
      <h2>Reset <span class="filename">Reset.kicad_sch</span></h2>


      <h3 class="section-label">Signaux hiérarchiques</h3>
      <table>
        <thead>
          <tr>
            <th>Signal</th>
            <th>Direction</th>
            <th>Description</th>
          </tr>
        </thead>
        <tbody>

          <tr>
            <td><code>GND</code></td>
            <td><span class="badge" style="background:#d0e8ff">→ Input</span></td>
            <td class="no-doc">pas de doc</td>
          </tr>

          <tr>
            <td><code>RESET</code></td>
            <td><span class="badge" style="background:#fff3cd">⇄ Bidirectional</span></td>
            <td class="no-doc">pas de doc</td>
          </tr>

          <tr>
            <td><code>VCC</code></td>
            <td><span class="badge" style="background:#d0e8ff">→ Input</span></td>
            <td class="no-doc">pas de doc</td>
          </tr>
        </tbody>
      </table>

      <h3 class="section-label">Composants</h3>
      <table>
        <thead>
          <tr>
            <th>Réf.</th>
            <th>Valeur</th>
            <th>Description</th>
            <th>Boîtier</th>
            <th>Variantes</th>
          </tr>
        </thead>
        <tbody>

          <tr>
            <td><code>R13</code></td>
            <td><strong>100k</strong></td>
            <td>—</td>
            <td><small>R_Axial_DIN0207_L6.3mm_D2.5mm_P7.62mm_Horizontal</small></td>
            <td>—</td>
          </tr>

          <tr>
            <td><code>SW1</code></td>
            <td><strong>DTS-62N-V</strong></td>
            <td>—</td>
            <td><small>SW_PUSH_6mm_H8mm</small></td>
            <td>—</td>
          </tr>
        </tbody>
      </table>
    </section>
</div><div id="temperature_sun">
    <section>
      <h2>Temperature_Sun <span class="filename">Temperature_Sun.kicad_sch</span></h2>


      <h3 class="section-label">Signaux hiérarchiques</h3>
      <table>
        <thead>
          <tr>
            <th>Signal</th>
            <th>Direction</th>
            <th>Description</th>
          </tr>
        </thead>
        <tbody>

          <tr>
            <td><code>+3.3V</code></td>
            <td><span class="badge" style="background:#d0e8ff">→ Input</span></td>
            <td class="no-doc">pas de doc</td>
          </tr>

          <tr>
            <td><code>GND</code></td>
            <td><span class="badge" style="background:#f0f0f0">— Passive</span></td>
            <td class="no-doc">pas de doc</td>
          </tr>

          <tr>
            <td><code>{I2C}</code></td>
            <td><span class="badge" style="background:#d0e8ff">→ Input</span></td>
            <td class="no-doc">pas de doc</td>
          </tr>
        </tbody>
      </table>

      <h3 class="section-label">Composants</h3>
      <table>
        <thead>
          <tr>
            <th>Réf.</th>
            <th>Valeur</th>
            <th>Description</th>
            <th>Boîtier</th>
            <th>Variantes</th>
          </tr>
        </thead>
        <tbody>

          <tr>
            <td><code>J19</code></td>
            <td><strong>Screw_Terminal_01x04</strong></td>
            <td>—</td>
            <td><small>TerminalBlock_Phoenix_MKDS-1,5-4_1x04_P5.00mm_Horizontal</small></td>
            <td>—</td>
          </tr>
        </tbody>
      </table>
    </section>
</div><div id="translator">
    <section>
      <h2>Translator <span class="filename">Translator.kicad_sch</span></h2>


      <h3 class="section-label">Signaux hiérarchiques</h3>
      <table>
        <thead>
          <tr>
            <th>Signal</th>
            <th>Direction</th>
            <th>Description</th>
          </tr>
        </thead>
        <tbody>

          <tr>
            <td><code>GND</code></td>
            <td><span class="badge" style="background:#f0f0f0">— Passive</span></td>
            <td class="no-doc">pas de doc</td>
          </tr>

          <tr>
            <td><code>IN</code></td>
            <td><span class="badge" style="background:#d0e8ff">→ Input</span></td>
            <td class="no-doc">pas de doc</td>
          </tr>

          <tr>
            <td><code>OUT</code></td>
            <td><span class="badge" style="background:#d4f7d4">← Output</span></td>
            <td class="no-doc">pas de doc</td>
          </tr>
        </tbody>
      </table>

      <h3 class="section-label">Composants</h3>
      <table>
        <thead>
          <tr>
            <th>Réf.</th>
            <th>Valeur</th>
            <th>Description</th>
            <th>Boîtier</th>
            <th>Variantes</th>
          </tr>
        </thead>
        <tbody>

          <tr>
            <td><code>R34</code></td>
            <td><strong>10k</strong></td>
            <td>—</td>
            <td><small>R_Axial_DIN0207_L6.3mm_D2.5mm_P7.62mm_Horizontal</small></td>
            <td>—</td>
          </tr>

          <tr>
            <td><code>R35</code></td>
            <td><strong>10k</strong></td>
            <td>—</td>
            <td><small>R_Axial_DIN0207_L6.3mm_D2.5mm_P7.62mm_Horizontal</small></td>
            <td>—</td>
          </tr>
        </tbody>
      </table>
    </section>
</div><div id="user_buttons">
    <section>
      <h2>User_Buttons <span class="filename">User_Buttons.kicad_sch</span></h2>


      <h3 class="section-label">Signaux hiérarchiques</h3>
      <table>
        <thead>
          <tr>
            <th>Signal</th>
            <th>Direction</th>
            <th>Description</th>
          </tr>
        </thead>
        <tbody>

          <tr>
            <td><code>GND</code></td>
            <td><span class="badge" style="background:#d0e8ff">→ Input</span></td>
            <td class="no-doc">pas de doc</td>
          </tr>

          <tr>
            <td><code>SELF_TEST</code></td>
            <td><span class="badge" style="background:#fff3cd">⇄ Bidirectional</span></td>
            <td class="no-doc">pas de doc</td>
          </tr>

          <tr>
            <td><code>VCC</code></td>
            <td><span class="badge" style="background:#d0e8ff">→ Input</span></td>
            <td class="no-doc">pas de doc</td>
          </tr>
        </tbody>
      </table>

      <h3 class="section-label">Composants</h3>
      <table>
        <thead>
          <tr>
            <th>Réf.</th>
            <th>Valeur</th>
            <th>Description</th>
            <th>Boîtier</th>
            <th>Variantes</th>
          </tr>
        </thead>
        <tbody>

          <tr>
            <td><code>J30</code></td>
            <td><strong>KF128-2.54_2P</strong></td>
            <td>—</td>
            <td><small>TerminalBlock_Phoenix_MPT-0,5-2-2.54_1x02_P2.54mm_Horizontal</small></td>
            <td>—</td>
          </tr>

          <tr>
            <td><code>R33</code></td>
            <td><strong>10k</strong></td>
            <td>—</td>
            <td><small>R_0603_1608Metric</small></td>
            <td>—</td>
          </tr>

          <tr>
            <td><code>SW2</code></td>
            <td><strong>PB_SMD_12V_50MA_6MM_6MM</strong></td>
            <td>—</td>
            <td><small>SW_Push_1P1T_NO_CK_KSC7xxJ</small></td>
            <td>—</td>
          </tr>
        </tbody>
      </table>
    </section>
</div><div id="wind">
    <section>
      <h2>WIND <span class="filename">WIND.kicad_sch</span></h2>


      <h3 class="section-label">Signaux hiérarchiques</h3>
      <table>
        <thead>
          <tr>
            <th>Signal</th>
            <th>Direction</th>
            <th>Description</th>
          </tr>
        </thead>
        <tbody>

          <tr>
            <td><code>+3.3V</code></td>
            <td><span class="badge" style="background:#d0e8ff">→ Input</span></td>
            <td class="no-doc">pas de doc</td>
          </tr>

          <tr>
            <td><code>ANEMO</code></td>
            <td><span class="badge" style="background:#d4f7d4">← Output</span></td>
            <td class="no-doc">pas de doc</td>
          </tr>

          <tr>
            <td><code>BUZZER</code></td>
            <td><span class="badge" style="background:#d4f7d4">← Output</span></td>
            <td class="no-doc">pas de doc</td>
          </tr>

          <tr>
            <td><code>GIROUETTE</code></td>
            <td><span class="badge" style="background:#d4f7d4">← Output</span></td>
            <td class="no-doc">pas de doc</td>
          </tr>

          <tr>
            <td><code>GND</code></td>
            <td><span class="badge" style="background:#f0f0f0">— Passive</span></td>
            <td class="no-doc">pas de doc</td>
          </tr>

          <tr>
            <td><code>RAIN</code></td>
            <td><span class="badge" style="background:#d4f7d4">← Output</span></td>
            <td class="no-doc">pas de doc</td>
          </tr>

          <tr>
            <td><code>VCC_Rain</code></td>
            <td><span class="badge" style="background:#d0e8ff">→ Input</span></td>
            <td class="no-doc">pas de doc</td>
          </tr>

          <tr>
            <td><code>Wind_interrupt</code></td>
            <td><span class="badge" style="background:#d4f7d4">← Output</span></td>
            <td class="no-doc">pas de doc</td>
          </tr>
        </tbody>
      </table>

      <h3 class="section-label">Composants</h3>
      <table>
        <thead>
          <tr>
            <th>Réf.</th>
            <th>Valeur</th>
            <th>Description</th>
            <th>Boîtier</th>
            <th>Variantes</th>
          </tr>
        </thead>
        <tbody>

          <tr>
            <td><code>C4</code></td>
            <td><strong>100nF</strong></td>
            <td>—</td>
            <td><small>C_0603_1608Metric</small></td>
            <td>—</td>
          </tr>

          <tr>
            <td><code>C5</code></td>
            <td><strong>10µF</strong></td>
            <td>—</td>
            <td><small>C_Radial_D5.0mm_H11.0mm_P2.00mm</small></td>
            <td>—</td>
          </tr>

          <tr>
            <td><code>C6</code></td>
            <td><strong>100nF</strong></td>
            <td>—</td>
            <td><small>C_0603_1608Metric</small></td>
            <td>—</td>
          </tr>

          <tr>
            <td><code>D1</code></td>
            <td><strong>LED</strong></td>
            <td>—</td>
            <td><small>LED_D5.0mm</small></td>
            <td>—</td>
          </tr>

          <tr>
            <td><code>J5</code></td>
            <td><strong>Screw_Terminal_01x06</strong></td>
            <td>—</td>
            <td><small>TerminalBlock_Phoenix_MKDS-1,5-6_1x06_P5.00mm_Horizontal</small></td>
            <td>—</td>
          </tr>

          <tr>
            <td><code>J6</code></td>
            <td><strong>Conn_01x03_Pin</strong></td>
            <td>—</td>
            <td><small>PinHeader_1x03_P2.54mm_Vertical</small></td>
            <td>—</td>
          </tr>

          <tr>
            <td><code>J9</code></td>
            <td><strong>KF301-5.0-2P</strong></td>
            <td>—</td>
            <td><small>TerminalBlock_Phoenix_MKDS-1,5-2_1x02_P5.00mm_Horizontal</small></td>
            <td>—</td>
          </tr>

          <tr>
            <td><code>JP2</code></td>
            <td><strong>Jumper</strong></td>
            <td>—</td>
            <td><small>PinHeader_1x02_P2.54mm_Vertical</small></td>
            <td>—</td>
          </tr>

          <tr>
            <td><code>JP3</code></td>
            <td><strong>60900213421</strong></td>
            <td>—</td>
            <td><small>Jumper_2.54mm_blue</small></td>
            <td>—</td>
          </tr>

          <tr>
            <td><code>JP4</code></td>
            <td><strong>60900213421</strong></td>
            <td>—</td>
            <td><small>Jumper_2.54mm_blue</small></td>
            <td>—</td>
          </tr>

          <tr>
            <td><code>JP6</code></td>
            <td><strong>Jumper</strong></td>
            <td>—</td>
            <td><small>PinHeader_1x02_P2.54mm_Vertical</small></td>
            <td>—</td>
          </tr>

          <tr>
            <td><code>Q5</code></td>
            <td><strong>2N7000_THT</strong></td>
            <td>—</td>
            <td><small>TO-92_Inline</small></td>
            <td>—</td>
          </tr>

          <tr>
            <td><code>R5</code></td>
            <td><strong>100k</strong></td>
            <td>—</td>
            <td><small>R_Axial_DIN0207_L6.3mm_D2.5mm_P7.62mm_Horizontal</small></td>
            <td>—</td>
          </tr>

          <tr>
            <td><code>R6</code></td>
            <td><strong>10k</strong></td>
            <td>—</td>
            <td><small>R_Axial_DIN0207_L6.3mm_D2.5mm_P7.62mm_Horizontal</small></td>
            <td>—</td>
          </tr>

          <tr>
            <td><code>R7</code></td>
            <td><strong>10k</strong></td>
            <td>—</td>
            <td><small>R_Axial_DIN0207_L6.3mm_D2.5mm_P7.62mm_Horizontal</small></td>
            <td>—</td>
          </tr>

          <tr>
            <td><code>R8</code></td>
            <td><strong>10k</strong></td>
            <td>—</td>
            <td><small>R_Axial_DIN0207_L6.3mm_D2.5mm_P7.62mm_Horizontal</small></td>
            <td>—</td>
          </tr>

          <tr>
            <td><code>R9</code></td>
            <td><strong>270</strong></td>
            <td>—</td>
            <td><small>R_Axial_DIN0207_L6.3mm_D2.5mm_P7.62mm_Horizontal</small></td>
            <td>—</td>
          </tr>

          <tr>
            <td><code>R10</code></td>
            <td><strong>10k</strong></td>
            <td>—</td>
            <td><small>R_Axial_DIN0207_L6.3mm_D2.5mm_P7.62mm_Horizontal</small></td>
            <td>—</td>
          </tr>

          <tr>
            <td><code>R11</code></td>
            <td><strong>10k</strong></td>
            <td>—</td>
            <td><small>R_Axial_DIN0207_L6.3mm_D2.5mm_P7.62mm_Horizontal</small></td>
            <td>—</td>
          </tr>

          <tr>
            <td><code>R24</code></td>
            <td><strong>10k</strong></td>
            <td>—</td>
            <td><small>R_Axial_DIN0207_L6.3mm_D2.5mm_P7.62mm_Horizontal</small></td>
            <td>—</td>
          </tr>

          <tr>
            <td><code>R25</code></td>
            <td><strong>100k</strong></td>
            <td>—</td>
            <td><small>R_Axial_DIN0207_L6.3mm_D2.5mm_P7.62mm_Horizontal</small></td>
            <td>—</td>
          </tr>

          <tr>
            <td><code>RV1</code></td>
            <td><strong>R_Potentiometer</strong></td>
            <td>—</td>
            <td><small>Potentiometer_Bourns_3266Y_Vertical</small></td>
            <td>—</td>
          </tr>

          <tr>
            <td><code>SW2</code></td>
            <td><strong>DTS-62N-V</strong></td>
            <td>—</td>
            <td><small>SW_PUSH_6mm_H8mm</small></td>
            <td>—</td>
          </tr>

          <tr>
            <td><code>T9</code></td>
            <td><strong>TP</strong></td>
            <td>—</td>
            <td><small>TestPoint_Pad_D1.0mm</small></td>
            <td>—</td>
          </tr>

          <tr>
            <td><code>T10</code></td>
            <td><strong>TP</strong></td>
            <td>—</td>
            <td><small>TestPoint_Pad_D1.0mm</small></td>
            <td>—</td>
          </tr>

          <tr>
            <td><code>T11</code></td>
            <td><strong>TP</strong></td>
            <td>—</td>
            <td><small>TestPoint_Pad_D1.0mm</small></td>
            <td>—</td>
          </tr>

          <tr>
            <td><code>U4</code></td>
            <td><strong>LM358</strong></td>
            <td>—</td>
            <td><small>DIP-8_W7.62mm</small></td>
            <td>—</td>
          </tr>

          <tr>
            <td><code>U5</code></td>
            <td><strong>74HC123</strong></td>
            <td>—</td>
            <td><small>DIP-16_W7.62mm_Socket</small></td>
            <td>—</td>
          </tr>
        </tbody>
      </table>
    </section>
</div><div id="xtal">
    <section>
      <h2>Xtal <span class="filename">Xtal.kicad_sch</span></h2>


      <h3 class="section-label">Signaux hiérarchiques</h3>
      <table>
        <thead>
          <tr>
            <th>Signal</th>
            <th>Direction</th>
            <th>Description</th>
          </tr>
        </thead>
        <tbody>

          <tr>
            <td><code>GND</code></td>
            <td><span class="badge" style="background:#fff3cd">⇄ Bidirectional</span></td>
            <td class="no-doc">pas de doc</td>
          </tr>

          <tr>
            <td><code>XTAl_1</code></td>
            <td><span class="badge" style="background:#fff3cd">⇄ Bidirectional</span></td>
            <td class="no-doc">pas de doc</td>
          </tr>

          <tr>
            <td><code>XTAl_2</code></td>
            <td><span class="badge" style="background:#fff3cd">⇄ Bidirectional</span></td>
            <td class="no-doc">pas de doc</td>
          </tr>
        </tbody>
      </table>

      <h3 class="section-label">Composants</h3>
      <table>
        <thead>
          <tr>
            <th>Réf.</th>
            <th>Valeur</th>
            <th>Description</th>
            <th>Boîtier</th>
            <th>Variantes</th>
          </tr>
        </thead>
        <tbody>

          <tr>
            <td><code>C7</code></td>
            <td><strong>22pF</strong></td>
            <td>—</td>
            <td><small>C_Disc_D4.7mm_W2.5mm_P5.00mm</small></td>
            <td>—</td>
          </tr>

          <tr>
            <td><code>C8</code></td>
            <td><strong>22pF</strong></td>
            <td>—</td>
            <td><small>C_Disc_D4.7mm_W2.5mm_P5.00mm</small></td>
            <td>—</td>
          </tr>

          <tr>
            <td><code>Y1</code></td>
            <td><strong>16MHz</strong></td>
            <td>—</td>
            <td><small>Crystal_HC49-4H_Vertical</small></td>
            <td>—</td>
          </tr>
        </tbody>
      </table>
    </section>
</div>
  </main>

  <script>
    
    // Gestion du thème clair/sombre
    function initTheme() {
        const savedTheme = localStorage.getItem('theme');
        if (savedTheme === 'dark') {
            document.body.classList.add('dark-theme');
            updateThemeButton(true);
        } else {
            document.body.classList.remove('dark-theme');
            updateThemeButton(false);
        }
    }
    
    function updateThemeButton(isDark) {
        const btn = document.getElementById('theme-toggle-btn');
        if (btn) {
            if (isDark) {
                btn.innerHTML = '☀️ Thème clair';
            } else {
                btn.innerHTML = '🌙 Thème sombre';
            }
        }
    }
    
    function toggleTheme() {
        if (document.body.classList.contains('dark-theme')) {
            document.body.classList.remove('dark-theme');
            localStorage.setItem('theme', 'light');
            updateThemeButton(false);
        } else {
            document.body.classList.add('dark-theme');
            localStorage.setItem('theme', 'dark');
            updateThemeButton(true);
        }
    }
    
    // Initialiser le thème au chargement
    initTheme();

    // ── Recherche globale (composants + signaux) ──────────────────────────
    function escapeRegex(str) {
        return str.replace(/[.*+?^${}()|[\]\\]/g, '\\$&');
    }

    function clearHighlights(root) {
        root.querySelectorAll('mark.search-hit').forEach(mark => {
            const parent = mark.parentNode;
            parent.replaceChild(document.createTextNode(mark.textContent), mark);
            parent.normalize();
        });
    }

    function highlightMatches(cell, rawQuery) {
        const regex = new RegExp('(' + escapeRegex(rawQuery) + ')', 'ig');
        const walker = document.createTreeWalker(cell, NodeFilter.SHOW_TEXT, null);
        const textNodes = [];
        let node;
        while ((node = walker.nextNode())) textNodes.push(node);
        textNodes.forEach(textNode => {
            const text = textNode.nodeValue;
            regex.lastIndex = 0;
            if (!regex.test(text)) return;
            regex.lastIndex = 0;
            const span = document.createElement('span');
            span.innerHTML = text.replace(regex, '<mark class="search-hit">$1</mark>');
            const parent = textNode.parentNode;
            parent.replaceChild(span, textNode);
            while (span.firstChild) parent.insertBefore(span.firstChild, span);
            parent.removeChild(span);
        });
    }

    function applyGlobalSearch(rawQuery) {
        const query = rawQuery.trim();
        const q = query.toLowerCase();
        const sections = document.querySelectorAll('#main section');
        const sheetsWithMatches = new Set();
        let totalMatches = 0;

        sections.forEach(section => {
            clearHighlights(section);
            const rows = section.querySelectorAll('tbody tr');
            let sectionMatches = 0;

            rows.forEach(row => {
                if (!q) {
                    row.style.display = '';
                    return;
                }
                const isMatch = row.textContent.toLowerCase().includes(q);
                row.style.display = isMatch ? '' : 'none';
                if (isMatch) {
                    sectionMatches++;
                    totalMatches++;
                    row.querySelectorAll('td').forEach(td => highlightMatches(td, query));
                }
            });

            if (q && rows.length) {
                section.style.display = sectionMatches > 0 ? '' : 'none';
                if (sectionMatches > 0) {
                    const host = section.closest('[id]');
                    if (host && host.id) sheetsWithMatches.add(host.id);
                }
            } else {
                section.style.display = '';
            }
        });

        document.querySelectorAll('.nav-sheet-link').forEach(link => {
            const anchor = link.getAttribute('href').slice(1);
            link.classList.toggle('nav-dim', !!q && !sheetsWithMatches.has(anchor));
        });

        const counter = document.getElementById('search-results-count');
        if (counter) {
            counter.textContent = q ? `${totalMatches} résultat(s)` : '';
        }
    }

    function initGlobalSearch() {
        const input = document.getElementById('global-search');
        if (!input) return;

        input.addEventListener('input', () => applyGlobalSearch(input.value));

        document.addEventListener('keydown', (e) => {
            const tag = document.activeElement ? document.activeElement.tagName : '';
            if (e.key === '/' && tag !== 'INPUT' && tag !== 'TEXTAREA') {
                e.preventDefault();
                input.focus();
            } else if (e.key === 'Escape' && document.activeElement === input) {
                input.value = '';
                applyGlobalSearch('');
                input.blur();
            }
        });
    }

    initGlobalSearch();

  </script>

</body>
</html>