Results from Lots of Testing and the Plan Going Forward

A project log for Passive Virtual Reality Shoes

I'm making a shoe that allow you to walk around as much as you want in VR while staying in the same spot in real life

finallyfunctionalfinallyfunctional 02/15/2021 at 04:360 Comments

I've tested and used the shoes a lot in the past 2 weeks. I was able to smooth out the motion of the shoes so that it feels really good to walk with them. I describe some of the algorithm changes I made to smooth out the motion here. I was able to walk around in a couple of games. However, there are some issues with the shoes and it looks like I'll need to make a new version. 

Wear and Tear

The biggest issue is wear and tear. In the last week I've had to make several repairs, or just take a portion of the shoe apart to re-align a gear. All the gears are showing wear and I've had to replace 1 of them yesterday because a tooth chipped. I broke part of the platform a couple days ago because I pushed on the metal rods too hard. One of the buttons on the platform also broke today and had to be replaced.

I want a new more durable design with less parts to resolve some of these issues and to replace the buttons on the platform with capacitive sensors.


As you may have noticed in the video, I struggled a bit with turning. I believe adding an IMU will help resolve some of the issues and will later write a project log that goes into the algorithm changes I'm going to make once I add an IMU. But there are other issues with turning an IMU will not solve.

I'm going to use X, Y, and Z axes to describe the issues and a few more later in the article. The X axis is forward, Y is sideways, and Z is up. 

When I turn my foot about the Z axis quickly, I have a tendency to also tilt my foot about the X axis a bit. This causes the whole shoe to tilt about the X axis and cases the electronic box on the side to hit the ground.

When turning, the point I need to turn around is behind me. Notice how the tethers connecting my safety harness to the ceiling hook go up behind my head. If I back up too much, the tethers hit me in the back of the head. So I need to stand ahead of the tethers and of the ceiling hook. The ceiling hook is my pivot point when turning, so I have to turn around a point that is behind me, making turning more difficult. Naturally, the ideal scenario is to have the pivot point directly above my head.

Lastly, when I turn my foot, the wheels skid on the ground. The shoe is only capable of going forward and backward, so during turning the wheels are not helping and create resistance. I knew this would be an issue when I designed this version, and it's not that big of a deal for the walking I do in my videos. However, if I want to turn rapidly, like do 180 degree turns rapidly (imagine playing a fast paced shooter), the resistance becomes an issue. I bet that it will also be more of an issue if I use the shoes on carpet or a neoprene mat.


I attempted to increase the speed of the shoes past the walking I was doing in the video. Like when turning my foot rapidly, I seem to have a tendency to tilt my foot about the X axis the faster I try to walk with the VR shoes, causing the shoes to tilting and, again, the electronic box hits the ground.

Solutions to Wear and Tear

The biggest problem is wear and tear. I can't have the shoes breaking down after only a few weeks of use, especially if I ever want to sell them or recommend others build the VR shoes. I have several ideas for reducing wear and tear.

First, I need eliminate the gears as much as possible. I currently have 12 or 13 gears per shoe. A gear train runs along the whole shoe. I need to replace these with a power transfer mechanism that reduces the part count and/or uses stronger materials. I could use a belt with pulleys or chain with sprockets. Both will require a tensioning mechanism. I could also try a coupling rod, like what trains use.

I will update as many parts as I can to use flexible material, like TPU, instead of rigid material, like PETG. PETG can easily break if pulled too hard. A part made of TPU will just bend under strain, not snap. If I drop a PETG piece on the cement floor, it could break. I could chuck a TPU part against the floor as hard as I can and it wouldn't break. However, you may be thinking that TPU will flex too much under the strain the VR shoes are under. That's why I plan on embedding and reinforcing the TPU parts with metal rods and flats. The metal will make sure the parts maintain their shape.

Solutions to Turning and Speed

Turning and speed both suffer from the shoe tilting about the X axis when I tilt my foot about the X axis. To fix this I'm going to update the binding (the part that couples to my foot with straps) so that I can rotate my foot about the X axis, but the shoe will not rotate.

To help with turning, one thing I could try is something I've done before. When the user lifts his foot, the whole platform can be pushed up by spring loaded casters, as I show here. The casters will lift the shoe so that the wheels do not touch the ground, then I can rotate my foot with little resistance. The spring loaded casters I used before can be seen here. I'm going to make them smaller.

If the wheels are not touching the ground as the user moves his foot forward, then I need some other way to measure speed. Previously, I would use a tachometer on the wheels to tell how fast the shoe was moving. With the wheels no longer moving, I will need to use an optical flow sensor, a smaller wheel that always maintains contact with the ground, or possibly an IMU to track speed.

The 2 vertical rods being on the side as they are now contributes the the X axis tilting problem. I believe that if I moved the vertical rods such that one is on both sides of the foot, it would help resolve the issue and make turning more stable.

Lastly, there is the issue with my harness setup causing my pivot point for turning to be behind me. For that, I am going to use a different harness setup that I will describe later in this log.

Other Observations

Here are some other observations I made during my testing, some of which will be important to understanding my plan going forward.

Recharging the Battery

I expected the battery to recharge a good amount while using the shoes. Every time I take a step forward and turn the wheels with my own force, it back drives the motor and the motor becomes a generator, recharging the battery. In actuality, it appears that almost no recharging occurs. I am not sure why.

Simulating a Rigid Harness

The harness setup I have now is loose. I uses loose tethers and I can drift away from the center as a result. A rigid harness would, among other things, keep me in the same spot, eliminating drift. 

I tried to simulate what a rigid harness would feel like by simply reaching up and holding the beam above my head. I tensed my arm to hold myself in place. I also tested using the shoes in a doorway where I could easily grab the edge of the doorway to simulate a more rigid support rig. 

I noticed that I felt much more stable and balanced with my simulated setup, which might seem obvious. So, I want to create a more rigid support rig. It may feel more restrictive, but the benefits to stability are immense. I think it will be much easier to play games that require rapid movements using a rigid harness. Plus, as long as the restrictive feeling is constant and consistent, it will not be noticeable after a little while.

Kat Walk C Reviews

Many people have received the Kat Walk C, the first slidemill available to consumers. More people have been able to use a slidemill for an extended period of time. And from what I've seen, the reviews seem to be positive.

Previously it seemed that a lot of people who got the chance to use a slidemill described the experience like sliding on ice, not natural, and overall uncomfortable. I've wondered if that is because the concept itself is just flawed, or because the users didn't get a chance to use the slidemill for an extended period of time and get used to the new way of walking. From what I've seen, those who have received their Kat Walk Cs say that it takes some getting used to, but after that it's a good experience.

Simulating a Completely Passive VR Shoe

After seeing how many people liked their Kat Walk Cs, it made me think more about some passive VR shoe concepts I've brought up before. Slidemills seem to be a good design, but they're bulky and heavy. Could a slidemill experience be achieved with VR shoes, a much more portable and probably cheaper solution, instead? 

Again, I stood in a doorway and this time just didn't turn the shoes on and started walking. It wasn't bad, especially considering that the shoes have some resistance since I'm back driving the motor. It didn't feel as good as when the shoes are powered up, but I think with some modifications I think it could be a good experience.

The Plan Going Forward

I need a new design and have several ideas to try out. I want to try a rigid support rig and see how much it helps with stability. So what I'm going to do first is design and create a rigid support rig. Then, I have a plan to work my way from a passive VR shoe design to a motorized one again.

After the support rig is created, I'll work on a very, very simple passive VR shoe design. The first one will basically be roller skates, but with the ability to adjust friction for turning the wheels. I'll be able to make it harder or easier for the wheels to turn. This will simulate how a slidemill is slippery enough to allow you to slide, but has enough friction so you can stand. Similarly, The wheels will have enough resistance so you can stand, but not too much so you can still bring your feet back.

With this first design, I'll make most of the parts out of flexible TPU, with rods embedded to maintain their shape. It will probably be strong enough to hold up to very rough treatment. The shoe will still just go forward/back to keep it simple. I should be able to design, create, and test these VR shoes very quickly, then move onto another design.

For the next design, I'll incorporate the rack and pinion mechanism I described here. Now, I was hoping I could use that mechanism to turn a little bit of vertical movement (the rack being pushed down) into a full length stride. After crunching the numbers, I believe it's impractical. The amount of gearing you'd need is huge. However, I can use the mechanism to just get the shoes started. In other words, give them a little bit of momentum.

The rack and pinion mechanism will give the same benefit that the bowl design on slidemills has. Slidemills have a bowl design so that gravity can help bring the user's foot back, using the curve of the bowl. Similarly, the rack and pinion mechanism will get your foot started in the right direction, give it a little bit of momentum, to bring the user's foot back.

Since the rack and pinion have teeth, they could wear out quickly. First, I'll print them out of polycarbonate instead of PETG. If that doesn't work, I'll look into getting a metal rack and pinion. With my current design, I had 12 or 13 gears, so replacing all of them with metal gears would be expensive. But if I only need to be 1 pinion and rack, that probably wouldn't be expensive.

In addition to the rack and pinion mechanism giving the shoe a little momentum, it also has another benefit. During my testing I noticed that the motor would draw on average 10-20 amps, but the max current draw was 40 amps. The 40 amp draw comes from the motor having to get the shoes going from a dead stop. It takes a lot of power to start up from a dead stop, and a lot less power to keep going once no more acceleration is needed. The rack and pinion mechanism can be used to get the shoes going, then a smaller motor can help keep the momentum going after that. It can be smaller because the hard part, staring from stop, has already been done.

After adding a smaller motor back into the design, well, I'm back at a motorized VR shoe design. But now the motor will be smaller, the shoes will be tougher, and the shoes will probably be lighter and cheaper too. I think it will be much easier to incorporate all the changes I want to make, step by step in these multiple different designs, instead of trying to incorporate them all into a design right away.

In summary, the plan is to 

  1. Design and build a rigid support rig.
  2. Design, build, and test a simple passive VR shoe. Make the parts out of TPU with embedded metal rods. Make it so the resistance can be added for turning the wheels.
  3. Improve the passive VR shoe design by adding the rack and pinion mechanism. Work out the kinks.
  4. Add a smaller motor to the shoe that keeps momentum going after the rack and pinion mechanism does its job.

During steps 2, 3, or 4 I may try incorporating omni-wheels. If the shoes get too heavy I'll add the binding back in and the spring-loaded casters. If the experience is great without the motor (steps 2 or 3), I'll consider not even doing step 4.

If you read this far, you're awesome.