johnlajoie / SteamVR-OSVR

An OSVR plugin for SteamVR, providing SteamVR support for OSVR HMDs.
Apache License 2.0
0 stars 2 forks source link

Did you success to use NOLOVR on Linux ? #1

Open qoopen0815 opened 4 years ago

qoopen0815 commented 4 years ago

How about the title? This is a topic that I am working on, so if you have any information, please let me know.

isopix commented 4 years ago

It's bad repo, the correct one would be nolo-osvr. And the problem is that I bought Nolo with latest firmware, which is not supported by nolo-osvr (I'ts supported by OpenHMD/Monado(OpenXR), except that they haven't implemented controllers support yet....). But if you are brave enough you can diff OpenHMD revisions and find it, and udapt nolo-osvr to new firmare.

But if by any chance you got old firmware on-board, then please dump it and share it! All needed tools and info is there: https://github.com/DJPlaya/Tesseract-Cobra

If you bought it legally(you got receipt, etc) and got windows machine, then Nolo devs can downgrade firmware on your devices remotely. Simply visit nolo forum and post a message there. But remember to buy prgrammer and dump it!

Dantistnfs commented 4 years ago

Probably not a huge success, but I rewrote nolo-osvr driver to be compatible with new firmware, it should work both on linux and windows: https://github.com/Dantistnfs/nolo-osvr

isopix commented 4 years ago

That's super, because I bought it with recent firmware already and tested it only under windows (because of this). But according to description it's still broken, right? What about ceiling mode? Could you provide config files for it that works with HDK2?

On 7/28/20, Stas notifications@github.com wrote:

Probably not a huge success, but I rewrote nolo-osvr driver to be compatible with new firmware, it should work both on linux and windows: https://github.com/Dantistnfs/nolo-osvr

-- You are receiving this because you commented. Reply to this email directly or view it on GitHub: https://github.com/johnlajoie/SteamVR-OSVR/issues/1#issuecomment-665081078

Dantistnfs commented 4 years ago

I didn't implement ceiling mode. Technically, it detects an input and provides it further, and in SteamVR's VRcompositor you can see button presses correctly. Problem is - games for some reason doesn't detect button presses. (I don't know why, my idea that there is a problem with SteamVR-OSVR driver) About config, I've used config from NOFC.

isopix commented 4 years ago

@Dantistnfs: I wonder if it's your fault, or maybe some SteamVR thing or something, because original code is known to work with SteamVR nicely (But mind that you have based your work on very outdated Yann Vernier's fork[merged back into lonetech repo] from 2017)

About Ceiling mode, you should base on @nanosport or @johnlajoie fork, not only because ceiling mode(as option), but because of many other fixes (lonetech abandoned his code long before them ;-) I also think that people

https://github.com/nanospork/nolo-osvr https://github.com/johnlajoie/nolo-osvr

Not sure which fork is better, but John Laioje is more recent(and nanospork merged previously @johnlajoie commits, but probably at some point abandoned osvr before @johnlajoie )

But please let me know if you plan to rebase it on any of them, or if I should start doing it by myself. I hope I will be able to rebuild my PCs soon to test it (they are in parts, because wanted to replace onboard NIC[without success for now, my soldering skills sucks ;-])

Dantistnfs commented 4 years ago

@isopix > But mind that you have based your work on very outdated Yann Vernier's fork[merged back into lonetech repo] from 2017 I think the problem in SteamVR-OSVR driver (because there were issues back in 2018). But I both don't have time or will to rewrite it (I've cloned repo, and had some time pocked around in code, but I think there is too much work) For now I will wait till my PC update, try to run it there, and if it's doesnt work, I would rather put my time into porting nolo controller code to Monado OpenXR runtime, or buying different VR headset/controller.

isopix commented 4 years ago

I've bought used one with new firmware already, so was not able to test it under linux. I will try to port your cod to @johnlajoie in the free time. About OpenXR Nolo VR is generally supported(headset tracking), without controller support, so it shouldnt be so hard. I guess it will be easier for me to port and fix your code, than develop OpenXR.

On 11/1/20, Stas notifications@github.com wrote:

@isopix > But mind that you have based your work on very outdated Yann Vernier's fork[merged back into lonetech repo] from 2017 I think the problem in SteamVR-OSVR driver (because there were issues back in 2018). But I both don't have time or will to rewrite it (I've cloned repo, and had some time pocked around in code, but I think there is too much work) For now I will wait till my PC update, try to run it there, and if it's doesnt work, I would rather put my time into porting nolo controller code to Monado OpenXR runtime, or buying different VR headset/controller.

-- You are receiving this because you were mentioned. Reply to this email directly or view it on GitHub: https://github.com/johnlajoie/SteamVR-OSVR/issues/1#issuecomment-720068984

Dantistnfs commented 4 years ago

@isopix You can't port my code to @johnlajoie because he is using a closed-source driver and only works on windows pc and firmware version 1.

isopix commented 4 years ago

Are you sure that both other repos uses closed source code that only works on windows? I've build all of them now sucesffully on archlinux (nolo-osvr repos). Haven't tested theme, but as long as I know, they used nolo directly on windows too (trough hidapi) and they stopped working on windows on firmware update(because of this). The first firmware 2.0 iplementation was in OpenHMD, but withoujt controlleras

I haven't checked NOFC, etc, but I would be very glad if you point me to some documentation or source code about windows-only iplementation using official NOLO SDK for OSVR. I hope you are wrong, because bought it mainly for celing mode and being cheap (nolo costs $70-$100, while HDK prices are $50-$70, so bought 2x HDK already. I want to make car/planes simulators for kids, but wanted Nolo for Beat Saber[and maybe some FPP shooters]). I personally think that Nolo is nice, cheap and portable hardware. I know that there are better solutions, but as I'm not a gamer I won't spend $3000 for stuff I would use few times a year ;-)

On Sun, Nov 01, 2020 at 11:40:17AM -0800, Stas wrote:

@isopix You can't port my code to @johnlajoie because he is using a closed-source driver and only works on windows pc and firmware version 1.

-- You are receiving this because you were mentioned. Reply to this email directly or view it on GitHub: https://github.com/johnlajoie/SteamVR-OSVR/issues/1#issuecomment-720140551

isopix commented 4 years ago

@Dantistnfs I have used your patch against @johnlajoie nolo-osvr, and it applies (except one empty line addition) and compiles. Haven't tested it yet with nolo connected, but when installing any od the nolo plugins(including lonetech original) I get:

vrpn_Connection::~vrpn_Connection: Connection was deleted while 4 references still remain.
Segmentation fault (core dumped)

and in dmesg:

[313689.470713] osvr_server[2095741]: segfault at 5550003c05fb ip 00007ffff7879752 sp 00007fffffffcbb0 error 4 cpu 3 in libosvrCommon.so.0.6[7ffff7864000+72000]
[313689.470721] Code: ee 48 83 ec 28 64 48 8b 04 25 28 00 00 00 48 89 44 24 18 31 c0 48 8d 7c 24 08 e8 c9 cc fe ff 4c 8b 7c 24 08 48 89 ef 49 8b 07 <48> 8b 58 40 e8 a5 c4 fe ff 48 8d 7c 24 10 48 89 44 24 10 e8 e6 c5

After deleting com_osvr_Nolo.so, osvr_server succesfully starts. Not sure if the problem lies in the code or mine system ;-)

Dantistnfs commented 4 years ago

@isopix could you please provide result of merging my code with @johnlajoie 's

isopix commented 4 years ago

@Dantistnfs https://github.com/isopix/nolo-osvr/commit/17fc7e60e3cf1a422fe0829cb2b95303ec3423b4 But you were right about mostly win only changes, but there were still some linux fixes ongoing. Linux files are identical in both @johnlajoie and @nanospork, so it doesn't matter for me much, because I'm using Linux.

Dantistnfs commented 4 years ago

@isopix Both nanospork and johnlajoei code shouldn't work with firmware v2. Only my fork compatible with v2. I am thinking about porting my code to Monado OpenXR so nolo will be future proof, and archive work to support osvr all together.

isopix commented 4 years ago

Yes, but you've used the oldest codebase, not updated forks. They are not much more different, so I've ported your changes to them, I've gaved you link to the diff with your changes, haven't tested it, so can't tell if I've done that correctly.

About Monado, it already has support for firmware 2.0 and head tracking (but without controllers support)

About OSVR, it's the only thing that fully supports OSVR HDK headsets (OpenHMD/Monado doesn't support camera tracking, only IMU)

On 11/9/20, Stas notifications@github.com wrote:

@isopix Both nanospork and johnlajoei code shouldn't work with firmware v2. Only my fork compatible with v2. I am thinking about porting my code to Monado OpenXR so nolo will be future proof, and archive work to support osvr all together.

-- You are receiving this because you were mentioned. Reply to this email directly or view it on GitHub: https://github.com/johnlajoie/SteamVR-OSVR/issues/1#issuecomment-723940496

Dantistnfs commented 4 years ago

@isopis I found HDK pretty unusable without nolovr tracking. That's why I assumed that nobody would want to use it with camera tracking. About updated forks: if I remember correctly, they inculde fixes only to their version of driver, and because my was pretty much re-writed from ground up I used most basic version.