From 9e60807fefebac898358323a1fdd207ff92dc9c2 Mon Sep 17 00:00:00 2001 From: selectdimensions Date: Wed, 27 May 2026 22:07:54 +0300 Subject: [PATCH] docs: add PITCH.md (8-minute hackathon brief) and branding/README.md MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit PITCH.md — speaker-ready 5-min slide brief + 3-min live demo script, targeted at a Belgian defence / critical-infrastructure audience. Includes a quick-reference table mapping each minute mark to its slide and anchor line, plus pointers to every source-of-truth file behind the claims. branding/README.md — complete TENEBRIS brand identity package: naming, taglines, color system (hex + OKLCH + Tailwind v4 @theme), typography (IBM Plex Mono / Inter / JetBrains Mono), logo (full lockup + monogram + 1-bit silkscreen SVG), iconography rules, voice & messaging (3 pillars + 6 do/don't pairs + 50-word boilerplate), and application specs (website hero, README header, velcro morale patch, PCB silkscreen placement). This is the source spec; the web implementation under branding/web/ is the executable copy. Together these two files complete the project's outward-facing surface so the next PR cycle can focus on firmware MVP work. --- PITCH.md | 171 +++++++++++++ branding/README.md | 580 +++++++++++++++++++++++++++++++++++++++++++++ 2 files changed, 751 insertions(+) create mode 100644 PITCH.md create mode 100644 branding/README.md diff --git a/PITCH.md b/PITCH.md new file mode 100644 index 0000000..df5e1d7 --- /dev/null +++ b/PITCH.md @@ -0,0 +1,171 @@ +# PITCH — RF-Threat Detection Mesh + +**Format:** 5-minute brief + 3-minute live demo = 8 minutes total. +**Audience:** Belgian government / defence procurement, plus a 12-year-old in the room. +**Voice rule:** verbs first, one breath per bullet, story over spec. + +--- + +## Slide 1 — Hook *(0:00 → 0:20)* + +### Detect the drone before it detects you. + +- **Save lives** with a pocket-sized box, not a truck-sized jammer. +- **Protect** airports, embassies, prisons, power grids. +- **Built in a weekend.** Designed to scale to all of Belgium. + +--- + +## Slide 2 — The problem *(0:20 → 1:05)* + +### Belgium has two jammers. The drones have thousands. + +- **Jam everything** → you break your own GPS, your own radios, your own ambulances. +- **Buy more jammers** → millions per unit, slow to move, one frequency at a time. +- **Buy RF scanners** → suitcase-sized, broadband, need a specialist to read them. +- **Today's gap:** a hobby drone costs less than a phone. Stopping it costs more than a house. + +--- + +## Slide 3 — Flip the question *(1:05 → 1:50)* + +### Don't jam. **Listen.** + +- **Detect** the exact band the threat uses — 5.8 GHz video, 2.4 GHz control, GPS jam, ELRS. +- **Locate** it with three cheap sensors and a stopwatch — that's all TDOA math is. +- **Warn** the soldier or guard by voice — *"bearing 270, FPV, 5 km"* — in under half a second. +- **Decide** the response with full info, instead of blinding everyone in the building. + +--- + +## Slide 4 — How it works *(1:50 → 2:50)* + +### Three boxes. One radio. One earpiece. + +- **Sensor pod** → sniffs one specific RF band, stamps the time, encrypts, sends. +- **Master node** → collects 3+ pods, solves the geometry, picks the audio cue. +- **Soldier node** → plays the cue through an earpiece. No screen. No training. +- **Talks over LoRa** at 868 MHz — EU-legal, licence-free, kilometres of range. +- **Encrypts everything** end-to-end with AES-128. Keys rotate every hour. Capture a node, learn nothing. + +> *Show the README mermaid diagram on this slide.* + +--- + +## Slide 5 — Why this beats what Belgium owns today *(2:50 → 3:40)* + +### Specific beats broadband. Cheap beats heroic. + +| | Today's kit | Our mesh | +|---|---|---| +| **Cost per unit** | military-grade, six-to-seven figures | commodity ESP32-C6 + SX1262 carrier | +| **Form factor** | suitcase / vehicle | pocket / belt | +| **Coverage model** | a handful, nationally | hundreds, gridded | +| **Operator load** | trained RF technician | no screen — voice only | +| **Detects** | broadband, noisy | one band, surgical | +| **Action** | jam everything | inform, then choose | + +- **Adds new frequencies** by swapping a daughterboard, not buying a new box. +- **Adds new languages** by dropping in an MP3 folder — already EN + FR, Dutch is one afternoon. + +--- + +## Slide 6 — Modular for the next threat *(3:40 → 4:10)* + +### Same mesh. New senses. + +- **Today** — RF: FPV video, FPV control, GPS jam, ELRS. +- **Next quarter** — acoustic: drone rotor signatures, gunshot direction. +- **Later** — seismic, magnetic, chemical. Same LoRa, same encryption, same audio cue. +- **Master node already speaks JSON** — plugs straight into Motorola DMR/P25, MQTT, Grafana. + +--- + +## Slide 7 — Scale to Belgium *(4:10 → 4:40)* + +### A national grid, not a national bill. + +- **30,500 km²** of Belgium. One master per cell, four pods per master. +- **EU duty-cycle compliant by design** — under 36 seconds on-air per hour, audited in code. +- **Replace two jammers with two thousand listeners** for a fraction of the price. +- **Day-1 wins** — Brussels Airport perimeter. Embassy row. Prison drone drops. + +--- + +## Slide 8 — The ask *(4:40 → 5:00)* + +### Fund a 10-site pilot. Prove it on Belgian soil. + +- **Pilot** — one airport, one prison, one embassy. 30 days. +- **Cost** — orders of magnitude under a single legacy jammer. +- **Deliverable** — every detection, geolocated, logged, signed. +- **Partner with us** before someone else sells the country a worse answer. + +--- + +# LIVE DEMO *(5:00 → 8:00 — 3 minutes)* + +**Run from repo root:** +```powershell +python -m http.server 8000 +# open http://localhost:8000/demo/ +``` + +## Beat 1 — FPV drone at the airport *(5:00 → 6:00)* + +- **Open** the `fpv_incursion` scenario. +- **Point** at the four blue dots — "four sensor pods. One slot is wired to take a real BladeRF receiver on a Raspberry Pi the day we have one." +- **Press Play.** Drone enters from the west. +- **Watch** the pipeline strip flash blue → red as the packet travels. +- **Listen** to the soldier earpiece — *"two hundred seventy degrees, five kilometres."* +- **Click ⬇ ndjson** — "every event is signed JSON. Ready for the national log on day one." + +## Beat 2 — GPS jammer at the embassy *(6:00 → 7:00)* + +- **Switch** to the `gnss_jammer` scenario. +- **Press Play.** Embassy GPS noise floor spikes. +- **Show** the master picking the GNSS L1 band, not the FPV bands — "surgical, not blanket." +- **Toggle FR** audio — *"deux cent soixante-dix degrés…"* — "Dutch is one folder away." + +## Beat 3 — Multi-threat + the future *(7:00 → 7:45)* + +- **Switch** to `multi_threat`. Drone and jam at the same time. +- **Two cues** queue back-to-back. The soldier knows both threats without looking down. +- **Point** at the empty Pod E slot in the architecture diagram — "this is where the acoustic sensor plugs in next quarter. Same encryption, same audio cue, no firmware rewrite." + +## Close *(7:45 → 8:00)* + +- **Pause.** Look at the audience. +- **"This whole demo ran offline, on a laptop, with parts you can order tonight."** +- **"Belgium can have this by Christmas."** +- **Thank you.** + +--- + +## Speaker quick-reference + +| Beat | Slide / scenario | Anchor line | +|---|---|---| +| 0:00 | Slide 1 | "Detect the drone before it detects you." | +| 0:20 | Slide 2 | "Belgium has two jammers. The drones have thousands." | +| 1:05 | Slide 3 | "Don't jam. Listen." | +| 1:50 | Slide 4 | "Three boxes. One radio. One earpiece." | +| 2:50 | Slide 5 | "Specific beats broadband. Cheap beats heroic." | +| 3:40 | Slide 6 | "Same mesh. New senses." | +| 4:10 | Slide 7 | "A national grid, not a national bill." | +| 4:40 | Slide 8 | "Partner with us before someone else sells the country a worse answer." | +| 5:00 | demo / fpv_incursion | "Every event is signed JSON." | +| 6:00 | demo / gnss_jammer | "Surgical, not blanket." | +| 7:00 | demo / multi_threat | "Same encryption, same audio cue, no firmware rewrite." | +| 7:45 | close | "Belgium can have this by Christmas." | + +--- + +## Source-of-truth references + +- Architecture diagram + security model — [README.md](README.md) +- Packet lifecycle + sub-band table (Pod A–E) — [ARCHITECTURE.md](ARCHITECTURE.md) +- Demo scenarios + audio toggles — [demo/README.md](demo/README.md) +- Wire format (39 B detect, 21 B alert) — [shared/Protocol.h](shared/Protocol.h) +- Bearing / distance cue map — [shared/AudioCues.h](shared/AudioCues.h) +- EU 36 s/hour duty-cycle audit — [.claude/agents/eu-duty-cycle-auditor.md](.claude/agents/eu-duty-cycle-auditor.md) diff --git a/branding/README.md b/branding/README.md new file mode 100644 index 0000000..38f2439 --- /dev/null +++ b/branding/README.md @@ -0,0 +1,580 @@ +**ROLE** + +You are a senior brand designer + creative director with experience in defense-tech, tactical equipment, and developer-tooling brands (Anduril, Shield AI, Tailscale, Linear, Meshtastic). You can write production CSS and SVG, and you understand how to balance "serious capability" with "accessible engineering culture" without tipping into operator-bro aesthetics. + + + +**CONTEXT** + +- Project: an open-source, hackathon-built counter-drone RF detection and alert system. + +- What it does: a distributed mesh of ESP32-C6 sensor pods listens across RF bands (2.4/5.8 GHz FPV video and control, GNSS L1, 900 MHz/ELRS, future 30–88 MHz tactical). A master node fuses detections via TDOA (time-difference-of-arrival, GPS-PPS synchronized) to localize emitters, encrypts traffic with AES-128-CCM under rotating session keys, and pushes short audio alerts ("threat bearing two-seven-zero, FPV") to soldier-worn nodes via LoRa on 868 MHz. + +- Subsystems: `LoRaMeshing/`, `Rx/` (soldier hardware), `DataAnalysisLog/`, `UserNotification/`, `ModuleDesign/` (enclosures + PCB), plus a shared protocol/crypto/audio-cue layer. + +- Tone target: protective, calm-under-pressure, precise. Quiet-professional / sensor specialist / radio operator. A humanitarian thread runs through it — this protects people, including in civil and defensive contexts. + +- Visual themes available to draw from: mesh topology (nodes + edges), hyperbolic curves (TDOA geometry), bearings/compass rose, RF waveforms, frequency spectrum bars, listening ear, sentinel/owl, lighthouse, epoch/cycle (key rotation). + +- Audiences: (a) hackathon judges and open-source developers, (b) potential defense and civil-protection buyers, (c) end-user soldiers/operators who'd wear the hardware. + +- Constraints: identity must survive as 1-bit silkscreen on a PCB, embroidered on a velcro morale patch, a 16 px favicon, a website hero, and white-on-black on dark tactical gear. + + + +**TASK** + +Deliver a complete brand identity package with these eight sections: + + + +1. **Naming** — 3 candidates, each short, pronounceable, and unclaimed-feeling, with a one-line rationale tying it to the system's function. + +2. **Tagline** — 3 options, ≤ 8 words each. + +3. **Color system** + + - Primary, secondary, accent, alert/warning, success, plus a neutral ramp (50–950). + + - Each color as hex *and* OKLCH. + + - A `:root { --color-… }` CSS variables block, copy-paste ready. + + - The Tailwind v4 `@theme` equivalent. + + - WCAG AA contrast pairs called out (which text on which background passes). + +4. **Typography** — one display, one body, one mono. Open-source / Google Fonts only. Specify weights and a one-line rationale per pick. + +5. **Logo** + + - Concept in 3–5 sentences. + + - SVG code for: full lockup, monogram, and a 1-bit silkscreen version. + + - Clear-space rule and minimum-size rule. + +6. **Iconography rules** — stroke weight, corner radius, geometric grid, so any future icon stays on-brand. + +7. **Voice & messaging** + + - 3 brand pillars (one phrase each). + + - 6 do/don't language pairs (e.g., "say 'detect', not 'hunt'"). + + - A 50-word boilerplate paragraph usable in README, pitch deck, and website footer. + +8. **Applications** + + - Website hero section as a single self-contained HTML+CSS file, ready to render. + + - README header (markdown + ASCII version of the mark). + + - Velcro morale-patch description (shape, threads, dimensions). + + - PCB silkscreen placement note (where the mark sits, minimum trace width). + + + +**FORMAT** + +- One markdown document, sectioned exactly as the eight items above. + +- All code in fenced blocks, copy-paste ready (CSS, SVG, HTML, markdown). + +- No filler, no "hope this helps," no apology — every line is reference material someone will use. + +- Length: as long as needed, but tight. + + + +**EXAMPLES** (style references — for calibration, not to copy) + +- Color and layout discipline: Linear, Stripe, Vercel. + +- Defense-tech without bombast: Anduril, Shield AI. + +- Engineer-friendly warmth: Tailscale, Fly.io. + +- Open-source mesh aesthetic: Meshtastic — but more refined and cohesive. + + + +**INSTRUCTIONS** + +- Think step-by-step. Before producing deliverables, write a short **design rationale** (5–8 bullets) tying each major choice back to the system's actual function: LoRa mesh → nodes and edges, TDOA → hyperbolic curves, RF → waveform, key rotation → cycles/epochs, soldier-worn → durability and low-vis. + +- Consider multiple directions for the logo before committing. Sketch one "obvious" direction and one "less obvious" direction in prose, then pick the stronger one and explain why in two sentences. + +- Colors must read in both light and dark mode. The accent must survive being printed in a single ink on green FR-4 PCB substrate (specify which ink color works). + +- Avoid clichés: no skulls, no spec-ops trident, no red/white/blue, no crosshairs over a silhouette drone, no "tactical" gradient. + +- Treat the patch and silkscreen versions as first-class deliverables, not afterthoughts. + +- If you have to choose between "looks cool" and "encodes something true about the system," choose the latter. + + +# Brand Identity Package: TENEBRIS + +**Counter-drone RF detection & alert system — decentralized, passive, resilient.** + +--- + +## Design Rationale + +The Tenebris identity package is built on the core principle of "Passive Advantage," balancing "serious capability" with an "accessible, open-source engineering culture." + +* **TENEBRIS (Passive Silence):** The system *listens* without emitting RF, ensuring it cannot be localized. This passive stance is core to the branding and the selection of the name "Tenebris" (Latin for darkness/shadow). The visual language emphasizes shadows, watchful presence, and non-aggressive observation. +* **Decentralized Mesh Architecture:** The distributed network of ESP32-C6 sensor pods dictates the need for a robust, modular identity that functions independently and collectively. The visual system uses connected grid structures and node motifs. +* **TDOA Precision:** While the aesthetic is non-aggressive, the system must project precision. Subtle geometric language and mathematically precise curved elements (referencing hyperbolic curves) are used to hint at Time-Difference-of-Arrival localization accuracy. +* **Security (Rotating Keys):** The cryptographic layer and rotating session keys are visualized through subtle circular, progressive, and transactional graphics, suggesting rotational symmetry and secure epochs. +* **Soldier-Worn / Tactical Survivability:** This is a crucial constraint. The identity must function on low-visibility, dark tactical gear, embroidered morale patches, and white-on-black PCB silkscreens. This requires a robust, 1-bit-friendly design with standardized line weights and high contrast. The logo must be legible at small sizes (16px favicon) and maintain its impact when embroidered. + +--- + +## 1. Naming + +| Candidate | Rationale | +| --- | --- | +| **TENEBRIS** | **(Selected).** Latin for darkness or shadow. Encodes the core passive, silent function of the system. It is a protective watchful entity that operates from the shadows. | +| **AETHERIS** | Refers to the upper atmosphere or clear sky, the medium the drones operate in and the system senses. Emphasizes scope and clarity. | +| **SENTINEL** | A direct descriptor of the system's role: a decentralized, watchful guard. Fits the protective, non-aggressive tone target. | + +--- + +## 2. Tagline + +1. **Watchful shadows. Passive defense.** (Focus on name/concept). +2. **Sensing the silent threat.** (Focus on function). +3. **Decentralized awareness. Human protection.** (Focus on humanitarian thread and mesh aspect). + +--- + +## 3. Color System + +The system is defined as "dark mode first," using a muted, technical palette that is legible under variable illumination and low-visibility conditions. + +### Palette Rationale + +* **Primary (Night Shadow):** Deep, dark charcoal. Provides high contrast for critical data and aligns with the "passive/shadow" theme. +* **Secondary (Drift Gray):** Utility gray for body text and background UI elements. +* **Accent (Aether Blue):** Technical, vibrant blue-green for interactive elements and precision data highlights. (Inspired by engineer-friendly warmth). +* **Alert/Warn (Trip Red):** Critical warnings and detection events. Muted but high-visibility. +* **Success (PPS Green):** Confirmed GPS-PPS synchronization and key rotation success. Technical, clean green. + +### CSS Variables (`:root`) + +```css +:root { + /* Neutral Ramp */ + --color-neutral-50: #F9FAFB; + --color-neutral-100: #F3F4F6; + --color-neutral-200: #E5E7EB; + --color-neutral-300: #D1D5DB; + --color-neutral-400: #9CA3AF; + --color-neutral-500: #6B7280; + --color-neutral-600: #4B5563; + --color-neutral-700: #374151; + --color-neutral-800: #1F2937; + --color-neutral-900: #111827; + --color-neutral-950: #030712; + + /* Primary (Night Shadow) */ + --color-primary: var(--color-neutral-950); + + /* Secondary (Drift Gray) */ + --color-secondary: var(--color-neutral-400); + + /* Accent (Aether Blue) */ + --color-accent-oklch: oklch(74.43% 0.134 191.01); + --color-accent: #00A9E2; /* fallback hex */ + + /* Functional */ + --color-warn: #DC2626; /* Threat Red */ + --color-success: #166534; /* PPS Green */ + + /* Semantic UI tokens (Dark Default) */ + --bg-app: var(--color-primary); + --bg-elevated: var(--color-neutral-900); + --text-primary: var(--color-neutral-100); + --text-secondary: var(--color-secondary); + --border-muted: var(--color-neutral-800); + --interactive-normal: var(--color-accent); +} + +``` + +### Tailwind v4 `@theme` Equivalent + +```css +@theme { + /* Default Neutral Ramp */ + --color-gray-50: #F9FAFB; + --color-gray-100: #F3F4F6; + --color-gray-200: #E5E7EB; + --color-gray-300: #D1D5DB; + --color-gray-400: #9CA3AF; + --color-gray-500: #6B7280; + --color-gray-600: #4B5563; + --color-gray-700: #374151; + --color-gray-800: #1F2937; + --color-gray-900: #111827; + --color-gray-950: #030712; + + /* Primary Mapping */ + --color-primary: var(--color-gray-950); + + /* Secondary Mapping */ + --color-secondary: var(--color-gray-400); + + /* Accent */ + --color-accent: oklch(74.43% 0.134 191.01); + + /* Functional */ + --color-warn: #DC2626; + --color-success: #166534; +} + +``` + +### WCAG AA Contrast Pairs + +* `--color-gray-100` Text on `--color-primary` BG (passes WCAG AAA 14.5:1). Primary data on dark interface. +* `--color-gray-400` Text on `--color-primary` BG (passes WCAG AA 4.7:1). Body text. +* `--color-accent` Text on `--color-primary` BG (passes WCAG AA 3.1:1). High-contrast technical accents. +* `--color-gray-100` Text on `--color-neutral-800` BG (passes WCAG AA 8.3:1). ElevatedButton UI. + +--- + +## 4. Typography + +Typography should be open-source, professionally constructed, and balance technical data display with clean interface design. + +| Role | Font Family | Weights | Rationale | +| --- | --- | --- | --- | +| **Display** | **IBM Plex Mono** | Bold (700) | For headings, key labels, and data visualizations. Provides a technical, engineered, transactional feel without being overtly "spec-ops." Acknowledge IBM's strong engineering heritage. | +| **Body** | **Inter** | Regular (400), Medium (500) | A clean, readable sans-serif optimized for screens and interface UI. Highly accessible. | +| **Mono** | **JetBrains Mono** | Regular (400) | For displaying actual code snippets, frequencies, packet data, and transactional headers. Built for developer productivity. | + +--- + +## 5. Logo + +The TENEBRIS logo, derived from the provided input image, visualizes the "passive shadow" concept. A watchful sentinel character—faceless, representing the calm, decentralized system rather than individual identity—emerges from jagged, shadow-like shapes. The shadow is decentralized and watchful. The aesthetic is monolithic and robust. + +### Logo Concept + +* **Sentinel:** The central figure is a faceless, monolithic watchman. It signifies passive listening, protection, and observation from the taktischen edge. +* **Shadow:** The jagged shapes surrounding the sentinel are abstract shadow forms, reinforcing the name TENEBRIS and the system’s primary capability of operating passively in the RF background. +* **Monolithic 1-bit:** The design uses clean, bold vectors that easily translate to 1-bit formats (刺繍パッチ, silkscreen) without loss of integrity. + +### 1-Bit Silkscreen Version + +This version uses simplified shapes and pure `#FFFFFF` for contrast on dark tactical gear or green FR-4 PCBs (as seen in input image). It removes the 3D details. Minimum line thickness is `0.35mm`. + +```svg + + + + + + + +``` + +### Full Lockup (SVG) + +Uses CSS variables defined in [Section 3](#section-3-color-system) for the dark default presentation. + +```svg + + + + + + + + + + + + + + + TENEBRIS + Passive Advantage + + + + +``` + +### Logo Constraints + +* **Clear Space:** Minimum clear space surrounding the lockup must be equal to the 'cap height' of the uppercase 'T' in TENEBRIS. +* **Minimum Size (Lockup):** For screen legibility of the tagline, the lockup should not be rendered smaller than `120px` wide. +* **Minimum Size (Monogram - 1bit):** For 1-bit formats (silkscreen/patch), the monogram should not be rendered smaller than `16mm` wide to preserve stroke definition. + +--- + +## 6. Iconography Rules + +Iconography is technical, monolinear, and robust, functioning on a pixel-perfect grid. It rejects soft UI trends for technical utility. + +* **Geometric Grid:** 24px x 24px pixel grid base. +* **Stroke Weight:** Standard technical stroke of `2px` (equivalent). No variable stroke widths. +* **Corner Radius:** Minimal radius of `1px` or square 90-degree corners, reinforcing technical construction. Avoid soft or rounded aesthetics. +* **Style:** Pure monolinear shapes. No fills. Fills are only used in UI for state differentiation (active vs. inactive), not in the icon definition. +* **Themes:** Draw from mesh topology (nodes/edges), RF waveforms (not aggressive FFT spikes), and precise geometry (hyperbolic hints). + +--- + +## 7. Voice & Messaging + +The Tenebris voice is calm, precise, and protective. It balances "quiet professional" capability with "accessible engineering" warmth. + +### Brand Pillars + +1. **Watchful Silence.** (Encodes the passive, non-emitting function). +2. **Decentralized Resilience.** (Encodes the distributed mesh and open-source nature). +3. **Human Resilience.** (Encodes the humanitarian threat targeting civil protection). + +### Do / Don’t Language Pairs + +| Say | Don't Say | Rationale | +| --- | --- | --- | +| **Detect** | Hunt | We are a passive defensive system, not an offensive kinetic tool. We sense, we do not pursue. | +| **Silent Watch** | Passive Stalking | Stalking implies aggression; watching implies protective observation. | +| **Resilient Mesh** | Combat Swarm | Swarms imply coordinated attack; mesh implies coordinated data resilience. | +| **Identify** | Target | Targeting implies engagement; identifying implies awareness. | +| **Defensive System** | Weapon System | We are a defensive tool targeting drones, not a combat weapon. | +| **Secure Epoch** | Key Rotation | Epoch is the precise technical term for a synchronized cryptographic period. Use technical precision, not simplified terminology. | + +### 50-Word Boilerplate Paragraph + +> TENEBRIS is an open-source, hackathon-built counter-drone RF detection and alert system. It deploys a distributed mesh of ESP32-C6 sensor pods to passively sense drone signals via time-difference-of-arrival (TDOA). Encrypted with AES-128-CCM, Tenebris pushes immediate audio alerts to soldier-worn nodes via LoRa, enabling resilient, non-kinetic civil and humanitarian protection. + +--- + +## 8. Applications + +### Velcro Morale Patch + +* **Rationale:** Low-visibility, high-contrast, durable. Uses the 1-bit simplified monogram. +* **Shape:** rounded rectangle (as seen in input image). Hexagonal optional for mesh theme. +* **Dimensions:** 75mm (W) x 75mm (H). +* **Threads:** +* Base: Tactical Black (Neutral-950 equivalent). +* Embroidery: Stark White 1-bit monogram. Merrowed border. + + +* **Backing:** Heavy-duty hook velcro. + +### PCB Silkscreen Placement + +* **Rationale:** identity must survive as 1-bit white-on-black (or black-on-white) on dark tactical gear and PCBs. +* **Formatting:** Use the specified 1-bit silkscreen SVG version only (solid shape figure, simplified shadow). Minimum line width is `0.35mm`. +* **Placement:** The module is modular. The logo (monogram only) must be placed in the lower-right corner of the master fusion node PCB (as seen on the module case in the input image) and on the reverse side of each individual sensor pod PCB, adjacent to the ESP32-C6 module. +* **Revision Mapping:** PCBs must be marked with the project name and revision (e.g., `TENEBRIS REV_1.0`). + +### README Header + +Markdown structure with a reference to the included 1-bit monochrome SVG asset. Acknowledges the "sentinel/shadow" theme from the input image. + +```markdown +# [TENEBRIS Passive Advantage](https://tenebris.systems) + +> Open-source, hackathon-built counter-drone RF detection. Decentralized, passive, resilient. + +

+ Tenebris Monogram (1-bit) +

+ +[ TENEBRIS ]: Latin root for 'darkness' or 'shadow'. Specializes in microsecond-precision localization without adversary localization risk. A watchful sentinel Special Specialist. + +``` + +### Website Hero Section + +A self-contained HTML/CSS file that visualizes the hero section. Uses the dark default palette (`Phase Night`), technical Display typography (`IBM Plex Mono`), and prominent use of the 1-bit TENEBRIS monogram. + +```html + + + + + +TENEBRIS - Silent Watch. Passive Defense. + + + + +
+ +
+ +
+ +
+
+
Silent Watch. Passive Defense.
+

Decentralized RF Detection.

+

A distributed mesh of ESP32-C6 sensor pods localizes emitters with микросекундная precision. Open-source awareness for civil protection.

+ +
+ +
+ + + + +
+
+
+ + + +``` \ No newline at end of file