1
0
Fork 0
mirror of https://github.com/ShayBox/Lighthouse.git synced 2026-06-23 16:36:19 +00:00
Virtual reality basestation power management in Rust
Find a file
2026-01-22 03:44:26 -05:00
.github/workflows Change GitHub Workflow 2022-11-27 17:49:44 -05:00
src 1.4.0 - Multiple BSIDs 2026-01-22 03:44:26 -05:00
.gitignore 1.1.0 - Maintenance 2023-03-17 00:49:06 -04:00
Cargo.lock 1.4.0 - Multiple BSIDs 2026-01-22 03:44:26 -05:00
Cargo.toml 1.4.0 - Multiple BSIDs 2026-01-22 03:44:26 -05:00
LICENSE Initial commit 2021-03-18 08:53:06 -04:00
README.md 1.4.0 - Multiple BSIDs 2026-01-22 03:44:26 -05:00
rustfmt.toml 1.1.1 - Maintenance 2023-08-31 05:48:18 -04:00

Lighthouse

Virtual reality basestation power management in Rust

Usage

Usage: lighthouse [OPTIONS] --state <STATE>

Options:
  -s, --state <STATE>      V1: [OFF|ON] | V2: [OFF|ON|STANDBY]
  -b, --bsid <BSID>...     V1: Basestation BSID (Required) | V2: Bluetooth Device Identifier (Optional)
  -v, --verbose...         Increase logging verbosity
  -q, --quiet...           Decrease logging verbosity
  -t, --timeout <TIMEOUT>  Request timeout in seconds [default: 10]
  -h, --help               Print help

V1 Basestations require an 8 character BSID found on the device to work.

V2 Basestations do not require BSID. But you can specify their MAC address as BSID to manage a specific device.

Examples

Turning a V1 lighthouse on:

Find the BSID at the back of the device.

$ lighthouse --state on --bsid aabbccdd
$ lighthouse --state on --bsid aabbccdd --bsid eeff0011
$ lighthouse --state on --bsid aabbccdd,eeff0011

Turning on any V2 lighthouses within range:

$ lighthouse --state on

Turning on a specific V2 lighthouse:

Run once with verbose parameters to find the MAC address for each lighthouse:

$ lighthouse -vv --state off

This will show the device path or MAC address within square brackets, looking something like this:

2025-02-28T22:14:58.528048Z  INFO lighthouse: Found 'LHB-6DC32F38' [hci0/dev_E2_5A_B0_E4_97_AD]
2025-02-28T22:15:33.543205Z  INFO lighthouse: LHB-6DC32F38 [hci0/dev_E2_5A_B0_E4_97_AD]: OFF

Use the ID shown in the square brackets in the previous command as the bsid to manage a specific lighthouse:

$ lighthouse --state on --bsid "hci0/dev_E2_5A_B0_E4_97_AD"
# or
$ lighthouse --state on --bsid "E2:5A:B0:E4:97:AD"
$ lighthouse --state on --bsid "E2:5A:B0:E4:97:AD" --bsid "hci0/dev_A1_B2_C3_D4_E5_F6"
$ lighthouse --state on --bsid "E2:5A:B0:E4:97:AD","hci0/dev_A1_B2_C3_D4_E5_F6"

macOS

Enable the Bluetooth permission for your terminal. You can do the latter by going to System Preferences → Security & Privacy → Privacy → Bluetooth, clicking the '+' button, and selecting 'Terminal' (or iTerm or whichever terminal application you use).