Skip to content

Repository files navigation

ABComm - Advanced Bluetooth Relay Control

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.

Build Status License: MIT GitHub issues open GitHub contributors

Table of Contents

🚀 Installation

Developed and tested on Android 14 (API 34) and newer.

Build from Source

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 assembleDebug
Download APK

Navigate to the Releases page to download the latest signed APK or App Bundle.

📦 Dependencies

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.

📁 Project Structure

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

✨ Features

  • 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.

🛠 Usage

  1. Enable Bluetooth: Ensure Bluetooth is active on your smartphone.
  2. Scan for Device: Launch ABComm and tap CONNECT to scan for available relay boards.
  3. Control: Use the channel grid to toggle specific relays or use the Master Control for group actions.

👥 Contributing

Contributing to abcomm

📄 Copyright and licence

License: MIT

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!

Releases

Packages

Contributors

Languages