Skip to content

mann1x/pimax_bs_manager

master
Switch branches/tags

Name already in use

A tag already exists with the provided branch name. Many Git commands accept both tag and branch names, so creating this branch may cause unexpected behavior. Are you sure you want to create this branch?
Code

Latest commit

 

Git stats

Files

Permalink
Failed to load latest commit information.
Type
Name
Latest commit message
Commit time
 
 
 
 
 
 
 
 

pimax_bs_manager - Pimax HTC Base Station manager for Windows

Obsolete, new BSManager at: https://github.com/mann1x/BSManager

Original code from: https://github.com/TheMalkavien/lhbsv1_pimax

Thanks a lot to TheMalkavien for posting is work and all the previous contributors!

Usage:

  • Just run the executable or the Python script (tested on 3.7.4)
  • Status console via system tray menu, log output and status display with autoscroll
  • Status is available on the hover text on the system tray icon (just move the mouse over it and you'll get HS and BS status)
  • Basestation mode "Auto" defaults to Ping, "Idle" execute last command and idles
  • The status panel windows includes th following buttons:
    • Copy to clipboard: will copy the logs in the window to your clipboard
    • Headset Debug: the Headset connection will be forced on
    • BS Switch mode: change behavior from Auto to Idle and vice versa
    • BS Standby: send a Standby/Off sequence to the Basestations
    • BS Wakeup: send a Wakeup/Ping sequence to the Basestations
    • Run BS discovery: run again the Basestations Discovery
    • Close: hide the window, pause the dashboard updates
  • If you have Windows installed not in C: please check the location of the LightHouse DB json file in the .ini file

New from the original script:

  • Discovery of base stations
  • Status console with status display, log output, copy log o clipboard
  • System tray icon with status of Headset and Base stations via mouse hover text
  • Re-discovery of base stations
  • Issue of Standby command once the Headset is Off

Command line switches:

  • "--debug_ignore_usb", "Disable the USB search for headset"
  • "--debug_logs", "Enable DEBUG level logs"
  • "--version", show version number in a toast notification

Limitations:

  • Tested only on my HTC BS with latest firmware and on Windows 10

Requirements:

  • HTC Base stations 1.0
  • Python dependencies: on top of the original dependencies there's infi.systray for the Windows System Tray
  • Bluetooth in Windows with BLE protocol (it does NOT use the Pimax or Vive Bluetooth controller)
  • The Base stations must be paired in Windows (on Windows 10 you should get an Add Device popup for each BS)

Single executable available with ini and ico file in a ZIP file:

  • Built with: pyinstaller --onefile Pimax_BSAW.py --hidden-import pkg_resources --hidden-import infi.systray --hidden-import bleak --add-binary "BleakUWPBridge.dll;BleakUWPBridge" --icon=pimax.ico --version-file pimax_bsaw_version_info.txt --noconsole
  • You need to copy BleakUWPBridge.dll in the script directory from %HOMEPATH%\Miniconda3\Lib\site-packages\bleak\backends\dotnet\ (in this case using Miniconda)

Support:

Todo:

  • Support for Valve BS v2, preliminary code in, still not working
  • Support for other Headsets

Changelog:

  • v1.5.2
    • Fix: Removed verify write from BLE commands
    • New: additional debug messages
  • v1.5.1
    • New: Dump USB HID in logs if run with debug_logs flag
    • Fix: small fixes for the dashboard
  • v1.5.0
    • New: added "--version" switch to display version number in a toast notification
    • New: (almost) complete code refactoring
    • New: Classes for main and Base Stations to avoid use of global vars and de-duplication
    • New: Discovery runs in its own thread, retries 20 times until all BS are found
    • New: console log window is now renamed as status panel, includes now status information
    • New: improved console log window with colored levels
    • New: hints in logs for troubleshooting if too many connection errors are logged over a short period
    • New: Basestation mode "Auto" defaults to Ping, "Idle" execute last command and idles
    • New: The status panel windows includes buttons to send Wakeup, Standby, Change mode, Run Discovery, switch Headset to Debug mode
    • Fix: standby is sent when headset switches off and at exit program
    • Fix: improved error messages management
    • Fix: many more fixes thanks to refactoring
    • Note: added some code the manage the Valve BS v2, still not working
  • v1.4.0
    • Fix: bleak python library used properly
  • v1.3.1
    • Fix: Console log window centered on screen
    • New: Exceptions handling for main thread with Windows 10 toast notifications
  • v1.3
    • Fix: Too many small fixes and enhancements to list
    • New: Console log output with autoscroll and copy to clipboard
    • New: DEBUG log level can be enable via command line switch
    • New: Separate threads for BS loops
    • New: Proper logging output
    • New: Standby command issued to BS when HS is On>Off
    • New: BS Timeout configurable in .ini
    • New: Added version info to executable
  • v1.2
    • Fix: Switch to using LightHouse DB json file from Pimax runtime folder
    • New: version in system tray
    • New: BS status for Discovered, Wakeup, Pinging, Errors
  • v1.1
    • Fix: HeadSet status not updated properly from On to Off
    • Executable: added icon

About

Pimax HTC Base Station manager for Windows

Resources

License

Stars

Watchers

Forks

Packages

No packages published

Languages