All Projects → PureSwift → Bluetoothlinux

PureSwift / Bluetoothlinux

Licence: mit
Pure Swift Linux Bluetooth Stack

Programming Languages

swift
15916 projects

Projects that are alternatives of or similar to Bluetoothlinux

Radareeye
A tool made for specially scanning nearby devices[BLE, Bluetooth & Wifi] and execute our given command on our system when the target device comes in-between range.
Stars: ✭ 218 (+46.31%)
Mutual labels:  bluetooth-low-energy, iot, bluetooth
Reactivebeacons
Android library scanning BLE beacons nearby with RxJava
Stars: ✭ 171 (+14.77%)
Mutual labels:  bluetooth-low-energy, ibeacon, bluetooth
Pulsator
Pulse animation for iOS
Stars: ✭ 1,238 (+730.87%)
Mutual labels:  bluetooth-low-energy, ibeacon, bluetooth
Gort
Command Line Interface (CLI) for RobotOps
Stars: ✭ 425 (+185.23%)
Mutual labels:  bluetooth-low-energy, iot, bluetooth
IoT-iBeacon
An Ionic app for indoor localization and navigation using BLE iBeacons.
Stars: ✭ 39 (-73.83%)
Mutual labels:  bluetooth, bluetooth-low-energy, ibeacon
PiBeacon
Low-cost iBeacon using Raspberry Pi
Stars: ✭ 41 (-72.48%)
Mutual labels:  bluetooth, bluetooth-low-energy, ibeacon
Angular Web Bluetooth
The missing Web Bluetooth module for Angular
Stars: ✭ 164 (+10.07%)
Mutual labels:  bluetooth-low-energy, iot, bluetooth
ios
CoThings's iOS application. CoThings is a realtime counter for shared things.
Stars: ✭ 13 (-91.28%)
Mutual labels:  bluetooth, bluetooth-low-energy, ibeacon
Blynk Library
Blynk library for embedded hardware. Works with Arduino, ESP8266, Raspberry Pi, Intel Edison/Galileo, LinkIt ONE, Particle Core/Photon, Energia, ARM mbed, etc.
Stars: ✭ 3,305 (+2118.12%)
Mutual labels:  bluetooth-low-energy, iot, bluetooth
Web Bluetooth Terminal
Progressive Web Application for serial communication with your own Bluetooth Low Energy (Smart) devices
Stars: ✭ 130 (-12.75%)
Mutual labels:  bluetooth-low-energy, iot, bluetooth
Rxbluetoothkit
iOS & OSX Bluetooth library for RxSwift
Stars: ✭ 1,213 (+714.09%)
Mutual labels:  bluetooth-low-energy, bluetooth
Bluetooth
Pure Swift Bluetooth library
Stars: ✭ 74 (-50.34%)
Mutual labels:  bluetooth-low-energy, bluetooth
Nrf52dk Sys
A Rust Crate to develop on the Nordic nRF52-DK
Stars: ✭ 83 (-44.3%)
Mutual labels:  bluetooth-low-energy, bluetooth
Btle Sniffer
Passively scan for Bluetooth Low Energy devices and attempt to fingerprint them
Stars: ✭ 87 (-41.61%)
Mutual labels:  bluetooth-low-energy, bluetooth
Ehal
Embedded Hardware Abstraction Library
Stars: ✭ 84 (-43.62%)
Mutual labels:  bluetooth-low-energy, iot
Rxbluetoothkotlin
Bluetooth low energy reactive framework for Android written in Kotlin
Stars: ✭ 68 (-54.36%)
Mutual labels:  bluetooth-low-energy, bluetooth
Extendable
Blocks Based Bluetooth LE Connectivity framework for iOS/watchOS/tvOS/OSX. Quickly configure centrals & peripherals, perform read/write operations, and respond characteristic updates.
Stars: ✭ 88 (-40.94%)
Mutual labels:  bluetooth-low-energy, bluetooth
Blueteeth
A simple, lightweight library intended to take away some of the cruft and tediousness of using the Android BLE.
Stars: ✭ 89 (-40.27%)
Mutual labels:  bluetooth-low-energy, bluetooth
Hibeacons
An iBeacons example app for iOS 10, with Apple Watch (watchOS 3.0) support, written in Swift 3.
Stars: ✭ 1,153 (+673.83%)
Mutual labels:  ibeacon, bluetooth
Blueswift
Swift framework for easy connection with Bluetooth peripherals.
Stars: ✭ 88 (-40.94%)
Mutual labels:  bluetooth-low-energy, bluetooth

BluetoothLinux

Swift Platform Release Build Status License CodeBeat

SPM compatible

Pure Swift Bluetooth Stack for Linux

Does not require BlueZ, communicates directly with the Linux kernel and Bluetooth controller.

Usage

import Bluetooth
import BluetoothLinux

guard let hostController = BluetoothLinux.HostController.default
    else { fatalError("No Bluetooth adapters found") }
let uuid = UUID(rawValue: "E2C56DB5-DFFB-48D2-B060-D0F5A71096E0")!
let beacon = AppleBeacon(uuid: uuid, major: 1, minor: 1, rssi: -29)
do { try hostController.iBeacon(beacon) }
catch { print("Error enabling iBeacon: \(error)") }

Installation

Swift Package Manager

import PackageDescription

let package = Package(
    dependencies: [
        .package(
			url: "https://github.com/PureSwift/BluetoothLinux.git",
    		.branch("master")
    		)
        ]
)

Documentation

Documentation can be generated with Jazzy.

swift package generate-xcodeproj
jazzy

Read the documentation here. For more information, see the gh-pages branch.

Troubleshooting

Do not test in Parallels or VMware with the built in Bluetooth adapter found in Macs. You can, however, use VMWare or Parallels, with a Linux compatible Bluetooth LE USB adapter plugged in. VirtualBox will work with the builtin adapter on Macs.

For best results, test with Swift 5.1.5 on ARMv7 and a Linux-comptible Bluetooth dongle (e.g. CSR8510 A10).

See Also

  • Bluetooth - Pure Swift Bluetooth Definitions.
  • GATT - Bluetooth Generic Attribute Profile (GATT) for Swift
  • Silica - Pure Swift CoreGraphics (Quartz2D) implementation
  • Predicate - Pure Swift Predicate implementation

License

BluetoothLinux is released under the MIT license. See LICENSE for details.

Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].