HoverComb

A tile swarm VR treadmill prototype

Last Updated on June 22, 2025

A high-quality VR treadmill system should be possible if one is willing to compromise on cost and size. Most VR treadmill designs suffer from large anomalous acceleration issues since the active area is typically fairly small. The assumption is that a seamless experience can be achieved when the anomalous acceleration can be limited to gradual changes and small absolute values.

Wheel Rotation Test Code

#define EN_PIN 4
#define STEP_PIN 5
#define DIR_PIN 6

bool direction = false;

void setup()
{
  pinMode(EN_PIN, OUTPUT);
  pinMode(STEP_PIN, OUTPUT);
  pinMode(DIR_PIN, OUTPUT);

  analogWriteFrequency(STEP_PIN, 3000);
  analogWrite(STEP_PIN, 128);
  
  digitalWrite(DIR_PIN, LOW);
  digitalWrite(EN_PIN, LOW);  // Enable driver (active LOW)
  
  Serial.begin(115200);
}

void loop()
{
  // Change direction every 10 seconds
  static unsigned long lastDirChange = 0;
  if (millis() - lastDirChange >= 10000)
  {
    direction = !direction;
    digitalWrite(DIR_PIN, direction);
    Serial.println(direction ? "Direction: CW" : "Direction: CCW");
    lastDirChange = millis();
  }
}
                    

More to come...