ABComm is a futuristic Android application designed for high-performance control of relay devices via Bluetooth Low Energy (BLE).
Developed with Kotlin and Jetpack Compose.
This application provides a "Cyberpunk" styled interface to manage up to 8 independent channels (relays) with real-time status monitoring and secure communication protocols.
Table of Contents
- 🚀 Installation
- 📦 Dependencies
- 📁 Project Structure
- ✨ Features
- 🛠 Usage
- 👥 Contributing
- 📄 Copyright and licence
Developed and tested on Android 14 (API 34) and newer.
You can build ABComm using Android Studio or Gradle.
# Clone the repository
git clone https://github.com/electux/abcomm.git
cd abcomm
# Build Debug APK
./gradlew assembleDebugNavigate to the Releases page to download the latest signed APK or App Bundle.
ABComm requires the following permissions and hardware:
- Bluetooth Low Energy (BLE) capable device.
- Android 7.0 (API 24) or higher.
- Permissions:
BLUETOOTH_SCAN,BLUETOOTH_CONNECT,ACCESS_FINE_LOCATION.
ABComm follows the MVVM (Model-View-ViewModel) architecture.
Project structure
Click to expand app structure
app/
├── src/
│ ├── main/
│ │ ├── java/com/abcomm/
│ │ │ ├── MainActivity.kt # Main UI Entry Point
│ │ │ ├── MainViewModel.kt # UI State & Logic
│ │ │ └── BluetoothService.kt # BLE Communication Provider
│ │ └── res/
│ │ ├── drawable/ # Cyber-style Icons
│ │ └── values/ # Futuristic Color Palette
│ └── test/ # Unit Tests (MockK)
└── build.gradle.kts # Build Configuration- Futuristic UI: High-contrast "Cyberpunk" design with custom vector graphics.
- 8-Channel Control: Independent toggle for each relay with individual status indicators.
- Real-time Monitoring: Instant feedback on connection status and relay states.
- Secure BLE Link: Efficient communication protocol using unique UUIDs.
- Master Control: Single-tap "All Channels ON" and "Force Shutdown" functions.
- Unit Tested: Robust logic verified with 100% core coverage.
- Enable Bluetooth: Ensure Bluetooth is active on your smartphone.
- Scan for Device: Launch ABComm and tap CONNECT to scan for available relay boards.
- Control: Use the channel grid to toggle specific relays or use the Master Control for group actions.
Copyright (C) 2026 by electux.github.io/abcomm
ABComm is open-source software licensed under the MIT License.
Feel free to fork, modify, and improve the project!