Skip to content

BLE Device Scanner is an Android app designed to find nearby Bluetooth Low Energy (BLE) enabled peripheral devices and perform read, write, notify and indiacation operation on connected peripheral devices. It features continuous scanning and demonstrates a multi-module architecture using MVVM, Kotlin, Hilt, Jetpack Compose and Unit Test..

License

Notifications You must be signed in to change notification settings

mnhmasum/ble-device-scanner

Repository files navigation

BLE Device Scanner

BLE Device Scanner is an Android app designed to find nearby Bluetooth Low Energy (BLE) devices and perform read and write operations on connected servers. It features continuous scanning and demonstrates a robust multi-module architecture using modern Android development tools and practices.

Features

  • Device Scanning: Continuously scan for nearby BLE devices.
  • Read/Write Operations: Perform read and write operations on connected BLE servers.
  • Subscribe: Subscribe for the characteristic change notification and indication

Architecture:

  • multi-module architecture
  • MVVM

Technologies Used

  • Kotlin: A modern, expressive, and safe programming language for Android development.
  • MVVM (Model-View-ViewModel): A design pattern that separates the user interface logic from the business logic.
  • Hilt: A dependency injection library for Android that reduces the boilerplate code required for dependency injection.
  • Jetpack Compose: A modern toolkit for building native Android UI with declarative programming.
  • Mockito: Mocking Framework for Unit Test.

Installation

Usage

  • Launch the app on your Android device.
  • Start scanning for nearby BLE devices by pressing the scan button.
  • Select a device from the list to connect.
  • Perform read/write operations on the connected BLE server.

Contributing

Contributions are welcome! Please fork this repository and submit pull requests with your changes.

License

Contact

About

BLE Device Scanner is an Android app designed to find nearby Bluetooth Low Energy (BLE) enabled peripheral devices and perform read, write, notify and indiacation operation on connected peripheral devices. It features continuous scanning and demonstrates a multi-module architecture using MVVM, Kotlin, Hilt, Jetpack Compose and Unit Test..

Topics

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages