Velo Control is a cross-platform application used to interface with and control a Velo Speeder over Bluetooth Low Energy (BLE). It features a modern user interface and natively supports Windows, Android, iOS, and the Web.
This repository contains two components:
- Flutter Application: A cross-platform mobile/desktop app for controlling the speeder switch via BLE.
- Vite Companion Web App: A Node-based web dashboard.
- Flutter SDK
- For Android: Android Studio & Android SDK
- For Windows: Visual Studio 2022 with the "Desktop development with C++" workload
- For iOS: macOS, Xcode, and CocoaPods
- Node.js (v16+)
The Flutter application relies on flutter_blue_plus to communicate over BLE.
flutter pub getOn Windows:
flutter run -d windowsOn Android: Ensure an Android device or emulator is connected, then run:
flutter run -d <your-device-id>(Note: Android 12+ dynamically requests the correct Bluetooth scanning permissions without requiring Location access).
On iOS (Requires a Mac): Install iOS pod dependencies first:
cd ios
pod install
cd ..
flutter run -d iosOn Web:
flutter run -d chromeThe project also includes a Vite app for web-based AI Studio integrations.
npm installCopy .env.example to .env.local and add any necessary configurations (e.g. GEMINI_API_KEY).
cp .env.example .env.localnpm run dev- Code Style: Follow the standard Dart guidelines. Use
flutter format . - Git Hooks: Before committing, ensure the project builds correctly across platforms.