# Kernelcon 2026 Badge Electronic badge for Kernelcon 2026 security conference featuring weather sensors, LED animations, BLE connectivity, and an interactive quest system. ## Features - **Weather Sensors**: Temperature, humidity, and pressure monitoring via BME280 - **LED Animations**: 20 addressable RGB LEDs with multiple pattern modes - **BLE Scanning**: Bluetooth Low Energy beacon detection for quest progression - **Crank-Powered Charging**: Hand-crank generator with boost multiplier puzzle - **Interactive Game**: Multi-level crank spinning challenge ## Repository Structure | Directory | Purpose | |-----------|---------| | `firmware/` | Badge firmware (MicroPython) | | `pcb/` | KiCad PCB design files, BOMs, Gerbers | | `3dmodels/` | STL files for 3D printed parts | | `flyers/` | Assembly instructions and user guides | ## Hardware - **MCU**: ESP32-WROOM-32E - **Sensor**: BME280 (temperature, humidity, pressure) - **LEDs**: 20x SK6812 addressable RGB - **Power**: Crank generator with battery management ## Firmware The badge runs MicroPython. See [FLASH_README.md](firmware/FLASH_README.md) for flashing instructions. ### Files | File | Purpose | |------|---------| | `main.py` | Main badge application with quest system | | `game.py` | Crank spinning game logic | | `boot.py` | MicroPython bootstrap | | `ble_scan.py` | BLE scanning library | | `bme280.py` | BME280 sensor driver | | `led_patterns.py` | LED animation patterns | | `flash.py` | Firmware flashing utility | ## PCB KiCad 8.x project files with: - Schematics and PCB layout - Custom footprints and 3D models - Production-ready Gerbers and BOMs - Multiple badge variants (hacker, crew, speaker, etc.) ## 3D Printed Parts - `crank_arm_v2.stl` - Crank handle arm - `crank_knob_v2.stl` - Crank handle knob Print settings: 0.25mm layer height, 6 walls, 30% infill ## License Released for educational purposes. See individual files for specific licenses. ## Credits Kernelcon Badge Team 2026