This project is an Android application designed to control devices via Bluetooth, specifically targeting modules like the HC-05 Bluetooth module. The app is built using Java and leverages the Android Bluetooth API to connect, pair, and communicate with remote Bluetooth-enabled devices.
-
Bluetooth Device Discovery & Selection:
The app scans for paired Bluetooth devices and presents them in a list for the user to select. This is handled by theSelectDeviceActivity
, which displays bonded devices and allows the user to choose one for connection. -
Controller Interface:
The main screen (MainActivity
) features a set of on-screen buttons resembling a game controller (up, down, left, right, triangle, cross, square, circle, L, R). Each button sends a specific command (as a single character) over Bluetooth when pressed or released, making it suitable for controlling robots, vehicles, or other hardware that interprets these commands. -
Bluetooth Communication:
The app manages Bluetooth connections, including enabling Bluetooth if it is not already on, establishing a socket connection to the selected device, and sending commands via output streams. -
Permissions:
The app requests all necessary Bluetooth and location permissions to ensure smooth device discovery and communication.
- Minimum SDK: 24 (Android 7.0)
- Target SDK: 35 (latest Android)
- Language: Java 17
- Dependencies: AndroidX libraries, Material Components, ConstraintLayout
This app is ideal for hobbyists and developers who want to control hardware (like Arduino-based robots or vehicles) using an Android phone as a wireless controller via the HC-05 Bluetooth module.
If you need a more detailed breakdown of the codebase architecture or conventions, check the project documentation or contact the maintainer.