Skip to content

Repository files navigation

FoxLED Logo

FoxLED

Language Framework Platform Audio Remote Protocol Status

Sponsor on GitHub Buy Me A Coffee

FoxLED is a comprehensive ambient PC backlighting (ambilight) and audio-reactive lighting suite for Windows 10, interfacing with addressable WS2812B / FastLED strips via Arduino microcontrollers using the Adalight protocol.

FoxLED Monitor Ambient Lighting

FoxLED Control Software


Warning

Disclaimer & Legacy Notice

Developed between 2018 and 2019 for Windows 10 and .NET Framework 4.7.2. Archived as a historical engineering milestone. It has not been tested on Windows 11.


💡 Origin & Recovery Story

FoxLED started in 2018 as a Python experiment (originally titled EasyLED), then evolved into a complete, full-featured C# WPF desktop workstation in 2019. While auxiliary server files were preserved in archives, the primary client application's source files were recovered directly from original production binaries and debug symbols (FoxLED.exe / FoxLED.pdb), restoring the full C# code, vector UI, XAML styles, and custom animation engine.


✨ FoxLED Desktop Client Features

The desktop client (FoxLED/) provides an end-to-end lighting control center:

  • 🎵 Music & Audio Reactivity (Analyzer.cs):
    • Low-latency audio stream capture via NAudio WASAPI Loopback (recording system audio output directly without virtual cables).
    • Real-time FFT spectrum analysis mapping sound frequencies to dynamic color pulses and sound-to-light animations (цветомузыка).
  • 🌈 Adaptive Ambilight & Environment Sync (LEDAnimation.cs):
    • Screen Perimeter Capture: Real-time desktop frame sampling syncing ambient LED backlighting with on-screen games and movies.
    • Wallpaper Adaptive Sync: Samples the dominant color palette of the active Windows desktop wallpaper.
    • Windows Accent Color: Synchronizes ambient backlighting with Windows 10 system theme accent colors.
    • Hardware Telemetry Backlighting: Visualizes real-time CPU load and core temperatures directly through color gradients.
    • Animation Presets: Rainbow cycles, custom color chases, speed and brightness sliders.
  • 🖥️ Live Desktop Preview (PseudoLED):
    • Interactive on-screen preview widget simulating the physical LED strip colors in real time.
  • 📱 Telegram Bot Remote Control (LEDRemote.cs):
    • Built-in Telegram bot integration allowing control over light modes, brightness, animation speeds, and custom color presets directly from a smartphone.
  • 🔌 High-Speed Serial Engine (LEDConnect.cs):
    • Streams RGB frame packets over Serial COM ports at 115200 baud using the Adalight protocol with auto-reconnection.

🛠️ Solution Architecture

The solution (FoxLED.sln) contains two complementary components:

  1. FoxLED/ (Primary Desktop Client):
    • Complete WPF desktop application with frameless vector UI (MainWindow.xaml), custom control styles (AppStyles/Main.xaml), NAudio WASAPI FFT spectrum analyzer, ambient screen capture engine, and Telegram remote control.
  2. FoxLED Server/ (Relay Server):
    • Lightweight headless/secondary server providing Fluent Acrylic design (FluentWPF), Adalight serial streaming, and a local TCP socket listener (port 1337) for distributed client commands.

🎨 Brand & Logo Evolution (История логотипа)

Visual identity progression across different stages of the project:

1. EasyLED Prototype (2018) 2. Geometric Fox Mascot (2019) 3. Production App Icon (2019)
EasyLED Prototype Icon Origami Fox Mascot
fox-led.svg
Production App Icon
FoxLED/app.ico
EasyLED Prototype
Original 48×48 px square icon from the initial Python prototype
Origami Fox Concept
Vector low-poly geometric fox mascot designed for branding
Official App Emblem
256×256 Windows desktop application icon extracted from FoxLED.exe

🔬 Historical Prototypes & Evolution

Early prototypes and production builds are preserved in experiments/:


📦 Project Structure

foxled/
├── FoxLED.sln                  # Visual Studio solution (Client + Server)
├── FoxLED/                     # Primary WPF Desktop Client Application
│   ├── MainWindow.xaml         # Custom-styled vector desktop UI
│   ├── MainWindow.xaml.cs      # Core UI logic, mode dispatchers & hotkeys
│   ├── Analyzer.cs             # NAudio WASAPI loopback & FFT spectrum analyzer
│   ├── LEDAnimation.cs         # Ambilight screen grab, rainbow, CPU & wallpaper sync
│   ├── LEDConnect.cs           # Serial COM port Adalight streaming engine
│   ├── LEDRemote.cs            # Telegram bot remote control client
│   ├── BrushAnimation.cs       # Smooth WPF color interpolation animations
│   ├── NativeMethods.cs        # Win32 desktop wallpaper & theme interop
│   ├── AppStyles/
│   │   └── Main.xaml           # Custom dark theme styles & button templates
│   ├── app.ico                 # FoxLED branding icon
│   └── FoxLED.csproj           # Project file (.NET Framework 4.7.2)
├── FoxLED Server/              # Standalone serial relay server (port 1337)
│   ├── MainWindow.xaml         # FluentWPF Acrylic UI
│   ├── MainWindow.xaml.cs      # TCP socket listener (port 1337)
│   ├── LEDConnect.cs           # Serial Adalight transmitter
│   └── FoxLED Server.csproj    # Server project file
├── experiments/                # Historical prototypes & binaries
│   ├── python-prototype/       # 2018 Python PyQt prototype
│   └── client-bin/             # Original compiled Windows binaries
├── foxled-icon.png             # Primary FoxLED emblem extracted from app.ico (256×256)
├── fox-led.svg                 # Vector origami fox branding
├── fox-led.png                 # Rendered origami fox mascot
└── logo-legacy.png             # Historical EasyLED prototype icon (48×48)

About

C# & WPF Adalight serial controller and ambilight server for WS2812B strips (2018–2019 archive)

Topics

Resources

Stars

0 stars

Watchers

0 watching

Forks

Releases

Sponsor this project

Packages

Contributors

Languages