VortexApp
BLE LED controller
An Android app paired with custom firmware for controlling BLE-connected LED strips. The app handles scanning, device management, and effect selection — the firmware handles everything else, running animations directly on the nRF52840 at 60 FPS.
VortexApp
Select Device
Effects
Solid Color
BLE connection manager
Scan, connect, and manage multiple BLE devices with persistent state across sessions.
Animation selector
Scroll-wheel style picker for choosing LED animations — from Nebula Surge to Raw Noise.
Persistent preferences
Saved device list and settings survive app restarts via a custom PreferencesManager.
Modern interface
Clean, minimal UI with dark surfaces, purposeful use of color, and smooth interactions.
VortexApp is one half of a two-part system. The Android app handles scanning, connection management, and UI — but all the actual LED logic runs on custom firmware (VortexCore) flashed to a Seeed XIAO nRF52840. The app sends simple BLE commands; the controller handles everything else.
BLE connection manager
Scan, pair, and manage BLE devices — persistent state across sessions
VortexCore firmware v1
Initial LED strip driver on nRF52840 — first effect set running
Effects picker UI
Scroll-wheel overlay for switching LED animations
Coach / tutorial system
First-run guided walkthrough across all screens
VortexCore effects rework
Full effect engine rewrite — all animations stabilised
StateStorage
Firmware persists active effect and color across power cycles
Theme system
App-wide dark theme with purple accent
Settings screen
Global app preferences and configuration
Background BLE service
Foreground service with persistent notification controls
Home screen redesign
Final layout overhaul — shipped in v2.0.0
Color suggestion engine
kNN color classifier — names and surfaces recent colors
v2.0.0 — Initial release
Complete rewrite shipped under MIT license
v2.0.1 — Hotfix
Gradle sync crash and background disconnect UI fix
Icon redesign
Update icons and replace placeholder assets
Play Store listing
Public distribution via Google Play