Also under development , rolling areas to place around the play-area for using as locomotion enabled areas to walk over using the custom locomotion system

Game locomotion system based on microcontroller connected to sensors.

This project is about creating an arduino based locomotion system for gaming. The scope is to use a microcontroller like a teensy connected to pressure sensors and accelerometers and flexing sensors for achieving locomotion in games. It is possible to create custom shoes that have 2 pressure sensors and 1 accelerometer per foot. In game forward movements are achieved through the accelerometers; while in game lateral movements and backwards movements are achieved with the use of pressure sensors. An accelerometer is also used at the chest for moving the joystick in any direction and jumping in games, and flexing sensors worn at the knees are used for crouching.

The system can:

- emulate a gamepad in Microsoft Windows

- work in steamvr via dedicated openvr driver (it communicates wirelessly to the PC and it uses dedicated steamvr drivers to works in steamvr)

- also be connected to any controller that uses joystick, by using an arduino digishield and phisically wiring the digishield to controllers like quest controllers, knuckles controllers, ps5/ps4/xbox controllers. This method allows direct control over game controllers but requires soldering skills and controller disassembling skills

What is needed:

  1. Four pressure sensors
  2. Three accelerometers
  3. Two flexing sensors
  4. One Arduino Digishield (if choosing to connect this system to controllers via physical wires). 
  5. Pair of shoes to mount the sensors on. 
  6. Teensy microcontroller with i2c dual channel (ie: teensy 4.0)
  7. Two DSD TECH HC-05 Bluetooth Serial Pass-through Module Wireless Serial Communication with Button for Arduino (for wireless connectivity to PC)
  8. One DSD TECH USB to TTL Serial Adapter with FTDI FT232RL Chip (for wireless connectivity to PC)


This is the schematic of the teensy 4.0 based locomotion system

It consists of

  • 2 accelerometers for the feet (1 at each foot)
  • 1 accelerometer for the chest
  • 4 pressing sensors at the feet (2 for each foot)
  • 2 flexing sensors to wear at the knees (1 at each knee)
  • bluetooth module for wireless communication to PC for steamvr /openvr injection

Bluetooth connectivity on PC for PC-teensy communication for wireless steamvr connectivity

-Bluetooth module

Dual system " teensy 4.0 (locomotion system) " - " teensy 3.2 xinput (custom controller) ".

This is instead the custom gamepad (xinput) based on a teensy 3.2 , with integrated the locomotion system based on the teensy 4.0

The circuit integrates a wireless communication via bluetooth between the dual system " teensy 4.0 (locomotion system) " - " teensy 3.2 xinput (custom controller) " , to a base station based on a teensy 3.2 receiver

The Teensy 3.2 custom xinput mounts also an accelerometer for controlling the right joystick and can be mounted on our head for changing in game visual of the avatar or it can be mounted on custom printed weapons for aiming features


Example of using the digishield to directly wire the locomotion system to controllers

Developers of this project:

Hiran Bandarigoda

Ed Keyes  ( on Discord EdKeyes#6086 ) 

Igor Chernobylov


Dmitry Dziuba