A Python script that creates iBeacon-compatible Bluetooth LE beacons on Linux systems with a Bluetooth LE adapter.
linux-ibeacon is a Python script that transforms Linux computers into iBeacon-compatible Bluetooth Low Energy beacons. It solves the problem of needing dedicated iBeacon hardware by allowing any Linux system with a compatible Bluetooth adapter to broadcast proximity signals that iOS and Android devices can detect. This enables developers to prototype and deploy location-aware applications using existing hardware.
IoT developers, hobbyists, and researchers working with Bluetooth LE proximity applications on Linux platforms, particularly those using Raspberry Pi or other single-board computers for beacon projects.
Developers choose linux-ibeacon because it provides a free, open-source alternative to commercial iBeacon hardware, works with standard Linux Bluetooth stacks, and requires no special dependencies beyond Python and BlueZ. Its simplicity and hardware flexibility make it ideal for prototyping and educational purposes.
Python script that creates an iBeacon-compatible Bluetooth LE beacon using Linux and a Bluetooth LE adapter
Open-Awesome is built by the community, for the community. Submit a project, suggest an awesome list, or help improve the catalog on GitHub.
Accurately emulates Apple's iBeacon protocol, allowing seamless detection by iOS and Android devices using apps like Beacon Toolkit and iBeacon Scanner, as stated in the README.
Uses only standard Python libraries and the Linux BlueZ stack, making it easy to deploy on minimal systems like Raspberry Pi without extra packages, per the README's 'No External Dependencies' feature.
Allows configuration of UUID, major, minor values, and transmission power via command-line or environment variables, offering flexibility for testing and deployment, as detailed in the usage section.
Works with any Linux-compatible Bluetooth 4.0 LE adapter, including USB dongles, reducing the need for specialized hardware, as emphasized in the README's hardware requirements.
Written for Python 2.6 or 2.7, which are deprecated, posing security risks and compatibility issues with modern systems, as noted in the 'What You Need' section.
Must be run with sudo or root access to configure Bluetooth adapters, which is inconvenient for automated deployments and raises security concerns, as mentioned in the usage instructions.
Beacon parameters cannot be changed on the fly; the script must be restarted to apply new settings, making it cumbersome for real-time applications, despite configurable options.