diff --git a/README.html b/README.html index 9874fce..485fa77 100644 --- a/README.html +++ b/README.html @@ -1548,44 +1548,42 @@ messages, set GST_DEBUG=4; for DEBUG messages, GST_DEBUG=5; increase this to see even more of the GStreamer inner workings.

Bluetooth LE beacon setup

The python>=3.6 script for running a Bluetooth LE Service -Discovery beacon is uxplay-beacon.py. It provides four possible -Bluetooth LE implementations (loaded as modules):

+Discovery beacon is uxplay-beacon.py. Besides the standard python +libraries, it requires python3-psutils.

+

It provides four possible Bluetooth LE implementations (loaded as +modules uxplay_beacon_module_*.py), which may need +additional libraries:

On Linux, Bluetooth support (using the official Linux Bluetooth stack BlueZ, and D-Bus) must be installed (on Debian-based systems: @@ -1594,18 +1592,18 @@ provide bluez as a snap package). BlueZ tools ‘hcitool’ and ‘hciconfig’ (needed if you use the HCI module on Linux) are declared “deprecated” by the BlueZ developers: some Linux distributions have removed them from the default BleuZ packages, into “extra” packages with names like -“bluez-deprecated”.

-

In addition to standard Python3 libraries, you may need to install -the gi, dbus, and psutil Python libraries used by uxplay-beacon.py. On -Debian-based systems:

-
sudo apt install python3-gi python3-dbus python3-psutil
-

If a python3-gi package is available in your Linux distribution, -install the python3-gobject package which provides it.

-

For Windows support in the MSYS2 UCRT64 environment, use pacman -S to -install mingw-w64-ucrt-x86_64-python, -*-python-gobject, *-python-psutil, and -*-python-pip. Then install winrt bindings -using pip (or pip3):

+“bluez-deprecated”. Also install psutil Python libraries used by +uxplay-beacon.py. On Debian-based systems:

+
sudo apt install  python3-psutil
+

For the BlueZ module (Linux), install python3-gi +(from which GLib is imported) and python3-dbus. If a python3-gi package +is not available in your Linux distribution, use pip to +install PyGObject instead.

+

For the winrt module, with Windows support in the +MSYS2 UCRT64 environment, use pacman -S to install +mingw-w64-ucrt-x86_64-python,*-python-psutil, +and *-python-pip. Then install winrt +bindings using pip (or pip3):

pip install winrt-Windows.Foundation 
 pip install winrt-Windows.Foundation.Collections 
 pip install winrt-Windows.Devices.Bluetooth.Advertisement 
@@ -1617,15 +1615,33 @@ python installations (such as the one provided in MSYS2) should be

requirement to make users hesitate before adding packages not provided by the “external management”: this is unnecessarily scary, as in the case of the winrt packages, no breakage can occur.

-

UxPlay must be run with option “uxplay -ble” (so it -writes data for the Bluetooth beacon in the default BLE data file -~/.uxplay.ble), just run uxplay-beacon.py in a -separate terminal. The python script will start Bluetooth LE -Service-Discovery advertising when it detects that UxPlay is running by -checking if the BLE data file exists, and stop when it no longer detects -a running UxPlay plus this file (it will restart advertising if UxPlay -later reappears). The script will remain active until stopped with -Ctrl+C in its terminal window (or its terminal window is closed).

+

For the BleuIO module, install pyserial.

+

For the HCI module, create a group +hciusers to give group members the privilege of using +passwordless sudo -n hci* (hci* is +hcitool and hciconfig (Linux), or +hccontrol (FreeBSD), and add users of the module to this +group (security implications should be considered). In Linux, +use “sudo visudo /etc/sudoers.d/hciusers” (in FreeBSD, file +is /usr/local/etc/sudoers.d/hciusers) to create a file +containing one of the lines

+
%hciusers ALL=(ALL) NOPASSWD: /usr/bin/hcitool, /usr/bin/hciconfig       (Linux)
+%hciusers ALL=(ALL) NOPASSWD: /usr/sbin/hccontrol                        (FreeBSD)
+

UxPlay must be run with option +“uxplay -ble [path_to_file]” (so it writes data for the +Bluetooth beacon to the default BLE data file +~/.uxplay.ble, or optionally to the file specifed by its +path), then run +uxplay-beacon.py [HCI, BleuIO] [--path path_to_file] in a +separate terminal. If options HCI or BleuIO are not given, the default +module for the operating system will be used (BlueZ for Linux, winrt for +Windows, BleuIO for all others).

+

The python script will start Bluetooth LE Service-Discovery +advertising when it detects that UxPlay is running by checking if the +BLE data file exists, and stop when it no longer detects a running +UxPlay (it will restart advertising if UxPlay later reappears). The +script will remain active until stopped with Ctrl+C in its terminal +window (or its terminal window is closed).

The beacon script can be more finely controlled using certain options: these can be given on the command line, or read from a configuration file ~/.uxplay.beacon, if it exists. @@ -1637,7 +1653,7 @@ or uxplay-beacon.py --help.

Options are

-

On a Windows system, the values of these paramaters are set by the +

On a Windows system, the values of these parameters are set by the operating system, and cannot be set by users.

The BlueZ module (Linux) also accepts