Defective Lighthouse 2.0 Unit: Possible cause

One of the two Valve Lighthouse 2.0 units I received is apparently defective.

Have tried cycling through all channels, including setting the defective unit to channel 1, while the other unit (which shipped and worked as channel 1) is powered down. PiTool shows this base station blinking at all times. SteamVR Stable and Beta versions do not show any evidence of tracking from the defective unit, although SteamVR Beta claims the second lighthouse is tracking.

Tested with both Pimax Vision 5k+ and Pimax Vision 8kX (pre-production unit). All behaviors remain the same.

Also tried updating the firmware for the controllers without effect. Base stations themselves do not seem eligible for firmware update.

Even tried connecting a TRS audio cable (for wired sync if applicable) between the lighthouses, updating NVIDIA Drivers, and updating PiTool, to no effect.

My suspicion is that the lasers inside are modulated at frequencies beyond what they are specified for, causing some units to malfunction. After all, the lighthouse is showing the dim red expected for the infrared lasers, white LED when the unit is not moved, and blue when moved. All indications are it should be working, so the next most fallible system would be high frequency optoelectronics (which typically don’t work at the high frequencies I would expect to be used here).

This is not the first time I have had a defective lighthouse - one of my two Lighthouse 1.0 units failed months ago after many months of marginal reliability. That was a blatantly mechanical issue.

I have already filed a ticket for some sort of RMA/replacement. Additionally, I will be leaving the lighthouses turned on all night just in case this is something like a disused electrolytic capacitor…

And if I am allowed to keep the unit for analysis, I may be able to diagnose what really went wrong with an oscilloscope…

6 Likes

Still not working. Hard to see how this could be a software problem or something that could self-correct electrically/mechanically. Defective unit.

Hi,

this may be of help, at least in further reverse-engineering the protocol. If you’re a bit familiar with Android / App installation, could you:

  1. power on the supposedly defective unit (leave the other one off)
  2. install an App called “GATTBrowser” by Renesas on your (Android) phone,
  3. open it and let it scan your BLE devices,
  4. press on the entry which says LHB-???????? (not the blue play button!) → this flips open the view with the broadcast / advertisement data
  5. post the string listed under “manufacturer data”, e.g. like this: 055D: 00 02 01 01 00 06 00

If it is defective, the 5th byte from the left should neither read 00 nor 03, I’d be interested in its value because that would indicate an error. See this post here for already known values: https://community.openmr.ai/t/how-to-power-off-basestations-remotely/15205/209?u=nouser2019

  • 00: Lighthouse in standby
  • 03: Lighthouse operational and stabilized

Thanks so much, Best

3 Likes

Thank you for that!

Unfortunately, neither device shows manufacturing data.

Defective device LHB-2xxxxxxx shows raw data 03 19 00 00 02 01 06 0D 09 4C 48 42 2D 32 31 32 41 37 38 46 33 11 07 24 D1 BC EA 5F 78 23 15 DE EF 12 12 23 15 00 00 .

Working device LHB-Cxxxxxxx shows raw data 03 19 00 00 02 01 06 0D 09 4C 48 42 2D 43 31 43 37 37 44 32 33 11 07 24 D1 BC EA 5F 78 23 15 DE EF 12 12 23 15 00 00 .

Working device was set to channel 1 for this test. Broken device was set to channel 1, powered on alone, then powered on with working device (at which point tracking worked using the working base station), then set to channel 2. At no time did the defective base station provide any tracking.

If anyone could list exactly which channels are compatible with Pimax headsets, or force a firmware reflash (even though update is not needed), focusing my efforts on those options is the last thing I can think of to diagnose this further.

Short of rigging up some analog/optical test equipment for lighthouses of course…

Well, putting the Lighthouses in firmware update mode did at least let me extract the firmware files. Apparently these things can emulate FAT formatted flash drives…

Both Lighthouses firmware files have the same md5sum.exe (Cygwin) hash.

72efa098618a03f54e1f94931e152667 *firmware.bin

Working Lighthouse is continuing to work properly.

Have you tried looking at the log files (for example by opening the Web console from SteamVR)? Sometimes these logs contains pertinent info.

Looked at some of those, did not see anything obvious. Pimax looked at PiTool exported logs and seem to have concluded an RMA was warranted.

@mirage335: Great, thanks for sharing the data. Indeed, something seems to be odd - I would expect at least the working one to advertise as mine do. Out of curiosity, are those Valve boxes as well? If they’re Pimax-built ones, it would explain this behaviour, b/c they would probably have their own firmware with a different protocol.

Decoding the advertisement yields nothing special (also see BLE spec: Assigned numbers and GAP):

  • 03 19 00 00: ‘Appearance’ with no data.
  • 02 01 06: Advertising flag ADV_SCAN_IND:scannable undirected advertising event
  • 0D 09 4C 48 42 2D 32 31 32 41 37 38 46 33: Local Name (“LHB-2xxxxxxx”) :slight_smile:
  • 11 07 24 D1 BC EA 5F 78 23 15 DE EF 12 12 23 15 00 00: unsure, this seems to indicate one single UUID (128 bit) of a specific BLE service. I’ve seen this when they want to advertise a Serial-Profile-Port (SPP-over-BLE) service. This would either indicate some other firmware protocol or a base station in serial port download mode. Are you sure that the working one was not in FW-update mode?

Since the working Lighthouse advertises the mostly same data, and the advertisement seemingly does not follow the Valve protocol, could you share a list of services and characteristics it offers?

“If they’re Pimax-built ones, it would explain this behaviour, b/c they would probably have their own firmware with a different protocol.”

That would be insane. As far as I knew Valve controlled everything to do with the lighthouses

Well, not entirely. It’s still possible to observe the lighthouse “light-emitting” laser protocol while implementing a different control schema on the BLE interface. But difficult to tell without such a box in front of me :slight_smile:

These don’t look any different from other Lighthouse 2.0 units, and they are labeled ‘SteamVR’ everywhere.

GATTBrowser is not giving me a lot of data. Perhaps my Samsung Galaxy S8+ Bluetooth module is missing some feature, or perhaps I need to do something (eg. pairing somehow). All I have is the name of the device, a unique MAC address, raw data, complete local name, Advertising Flags 0x06, and Service UUIDs(128-bit) (of which only one is present).

These don’t look any different from other Lighthouse 2.0 units, and they are labeled ‘SteamVR’ everywhere.

Ok, thanks.

Perhaps my Samsung Galaxy S8+ Bluetooth module is missing some feature

Unlikely. I have an S8 myself.

or perhaps I need to do something (eg. pairing somehow)

No, bonding is not required to access all (non-hidden) services and characteristics.

All I have is the name of the device, a unique MAC address, raw data, complete local name, Advertising Flags 0x06, and Service UUIDs(128-bit) (of which only one is present).

Yes, that is strange. Mine (Valve ones) advertise differently.

GATTBrowser is not giving me a lot of data.

Sorry, I should have asked more precisely. Could you now press the blue play-button in GATTBrowser next to the LHB-??? on the right - it should start scanning the respective Lighthouse for services and characteristics. Of particular interest are the manufacturer data, firmware revision string and of course the offered services/characteristics besides the former standard fields.

Just for comparison, mine look like this (you must click on the right one to view it fully):

Data in Device Information:

  • Manufacturer Name String: Valve Corp.
  • Model Number: 1004
  • Serial Number String: FB???????? V001017-20.A
  • Hardware Revision: 0.0
  • Firmware Revision: R: 2.2.9259382 M: 1.2.9268013 B: 3.4.3782793

Is that similar on your boxes?

1 Like

Not quite. There are two, instead of three, fields with UUIDs, and apparently store some “Client Characteristic Configuration” . Hardware revision is the same 0.0 . Firmware revision is R 1.1.6277248, M 0.1.8138615, B:XX.XX.XXXXXXX . Manufacturer Name String is the same Valve Corp.

EDIT: Working Lighthouse looks basically the same. Definitely the same firmware version claimed.

Maybe, you could upgrade the firmware. Judging by the versions, yours is far behind the one @nouser2019 has.

1 Like

Unless he also has an Index HMD, he won’t be able to. Pimax users (currently) cannot apply firmware updates to the lighthouses

1 Like

Wow, that is interesting. It would have been a lot more trouble, but maybe I should have bought/flipped an Index bundle, tossing the headset on eBay when done, like I did for Vive.

Yes, I tend to agree. There is a reddit where someone claims that the calibration data format has changed. So even flashing a seemingly fitting firmware would probably render the device useless.

Can you borrow one? Any Valve HMD (Index, Vive, Vive Pro) should do.

Still, if it doesn’t turn green by itself after some seconds, I guess it’s an RMA case.

1 Like

Normally, I probably could borrow an Index. Social distancing…

This topic was automatically closed 60 days after the last reply. New replies are no longer allowed.