You are browsing as a guest. Sign up (or log in) to start making projects!

ttomf

@ttomf

Joined July 29th, 2026

  • 23Devlogs
  • 1Projects
  • 3Ships
  • 52Votes
Open comments for this post

3h 56m 10s logged

Hi! So I’m here again after many exams (I didn’t have time and strength to iteratively test this :3d-sad-emoji: ) and I’m gonna make this better using better Hand Landmarkers and (hopefully) run on Window$.

0
0
12
Ship

I made Monado Phone Driver - a bridge between VR app and phone in cardboard headset. This allows you to play VR games just with Linux PC and Android phone, without buying expensive VR headset.

There are alternatives, like ALVR and WiVRn, but my driver has 6DOF tracking (you can move and rotate in space) and hand tracking (it takes hand landmarks from PC or phone camera).

Since last ship, I improved stability, added Android app settings, created auto installer, and mainly tracking from PC camera, because phone has small FOV and limited performance.

  • 7 devlogs
  • 22h
  • 19.73x multiplier
  • 430 Stardust
Try project → See source code →
Open comments for this post

3h 28m logged

I am working on implementing hand controller using same data as hand tracking does. It also includes the “aim pose” - where does controller point. On video, it’s shown as red line, I take it from the index finger. I hope I will be able to play some better VR games!

0
0
27
Open comments for this post

5h 52m 17s logged

I’ve fixed some bugs and leaks, added more configuration to Android app and created hand tracking vizualization for the PC script. Also, I am working on integrating hands as controllers (because controllers have better support across games).

0
0
20
Open comments for this post

3h 52m 51s logged

YEAH! I have finally done the PC camera hand tracking! It has much better FOV than phone camera and more computing power.

It’s just Python script with MediaPipe, sending the data to 127.0.0.1 to hand port, and it has same format, so the driver doesn’t even know the data is sending someone other than phone. You will ofc need to disable phone hand tracking, otherwise they will collide.

As you see in the video, I can move the hands far and they still get tracked. (End of the video is when I took off the headset - it was also tracked :D)

0
0
15
Open comments for this post

1h 18m 41s logged

Now I am making just minor changes to the driver as the base is nearly done. I added screen size synchronization with phone, so the driver now can send right stream. Also I am making small bugfixes and improvements.

0
0
24
Open comments for this post

1h 44m 7s logged

I added settings on phone, so now you can really configure the ports on both sides!

Also there’s option to disable hand tracking or 6DOF (then it will send only rotation of headset)

0
0
13
Open comments for this post

3h 55m 16s logged

I created simple terminal installer in python that downloads and setups Monado Phone Driver.

Thanks also for the positive reviews and the 19.12x stardust multiplier — when I started this project, I didn’t think I’d ever finish it :D

0
0
22
Ship

Hi! This is my second ship of this project, Monado Phone Driver. It’s bridge between your VR app and your phone in headset (Google Cardboard).

I wanted to make it better than ALVR, because it has only 3DOF tracking, so I created 6DOF tracking and hand tracking, like professional headsets.

The most challenging part of this was debugging all of these. From Vulkan swapchain management and GStreamer pipeline to hand and 6DOF tracking.

I am proud of it, because this will help people without VR headsets to enjoy VR games.

NOTE: Hand tracking is done the best possible way, but I think it still doesn’t compete with real VR headsets. Next ship should add better tracking with PC camera.

  • 8 devlogs
  • 32h
  • 19.12x multiplier
  • 609 Stardust
Try project → See source code →
Open comments for this post

5h 38m 13s logged

I am enhancing hand tracking now, and it’s starting to look good!


Here is how:

I use MediaPipe by Google to analyze image from front camera. MediaPipe Hand Landmarker returns hand landmarks in camera-relative format in two dimensions, so I need to make depth (z-coordinate).

I measure distance between wrist and fingers, in 2D space this means distance from camera (the farther away they are, the smaller they get).

Now, they are 3D, but still relative to camera. Then I simply send both hands as UDP packet for the driver.

The driver (PC side) computes real-world coordinates of the hands using saved earlier sent from ARCore and pushes them into Monado.

0
0
45
Open comments for this post

6h 58m 26s logged

I worked hard on both the Android app and the Monado driver and finally: I have working hand tracking!

It is very laggy, needs many optimizations, and isn’t even in alpha state yet, but I can see that it is possible to do it. This was my dream when I began this project, and finally, it has come true. I hope it will help many people who cannot afford a professional headset :D

0
0
13
Open comments for this post

2h 14m 48s logged

So today I finished image settings (you can configure them in the config file). They control how the image is rendered, because every headset has different lenses, distance between lenses, distance from screen to lenses etc. To find your headset’s properties, go to https://wwgc.firebaseapp.com/.

0
0
30
Open comments for this post

3h 32m 23s logged

I created new TCP socket logic for configuration sharing and added logic for loading configuration file.

Now I am trying to change the x265enc software encoding to something faster on GPU. Unfortunately, nvenc (nvidia encoding) is really hard to configure properly, as you can see for yourselves.

0
0
79
Open comments for this post

9h 15m 50s logged

Phew, I almost went over the time limit (10 hours) :D

I tried to get it running on Windows, and I partially succeeded, but it’s still not stable. Aside from that, I mostly cleaned up the code, improved usability, and removed unnecessary modules from CMake.

Now I’m working on an improved distortion using Monado’s u_distortion_cardboard_calculate (cardboard stands for Google Cardboard btw)


And one more thing: thanks to everyone for the positive feedback on the project — I really didn’t expect that!

0
0
13
Open comments for this post

1h 37m 53s logged

Since nobody reviewed my submission, I don’t want to add more features, so I only updated the README and made small changes to the app.

If anyone wants to play VR games on their phone, they can just download the files from Releases and run them without hard compiling!

0
0
19
Ship Changes requested

Hi! I ship my Monado Phone Driver! I worked on it for last week and it was really challenging. My vision was to build something with what you can play VR games on phone (with Google Cardboard), like iVRy, but open-source and simple. I worked on streaming pipeline, UDP discovery, pose tracking and gluing it all together with Monado. I hope this will help people that wanted to play VR games without expensive headset.

  • 6 devlogs
  • 19h
  • 17.05x multiplier
  • 325 Stardust
Try project → See source code →
Loading more…

Followers

Loading…