chair simulator

Seat Cushion Controller and Oculus Rift United!

I finally tried what I've wanted to do since first making Chair Simulator and the Seat Cushion Controller, playing a game with it in the Oculus Rift! And what game did I try? My absolute favorite game for the Oculus, and well known title...


There's nothing quite like base jumping in VR, and AAAAAAaaaAAAaCULUS!!! is an amazing immersive experience. Although perhaps where it falls short is in controller input, a problem for most modern Oculus games, but I find especially while free falling, that I want to have my hands up in the air and not on a controller!

Using the new Arduino Leonardo talked about in my previous posts, I set up the Seat Cushion Controller to emulate the mouse and keyboard input for the game, giving you that's hands free experience! I filmed a demonstration below.

The exact controls are as follows. Tilting yourself on the seat mimics WASD input to move you in that direction, and spinning the chair left/right mimics mouse movement turning you left/right. With these controls, the player does not have nearly the precision as a traditional mouse/keyboard or controller, but for now I'm satisfied with how much more fun it is to have your real world movements reflected in VR. I also tried the Chair Simulator video game control scheme, which was to lean back to go forwards, with no strafing supported, but this turned out to be even worse, because strafing is important.

What is next for Chair Simulator? There are better sensors I can use for detecting user tilt on top of the cushion. I still need to add an accelerometer to supplement the gyro, and I am considering testing a network of force pads to detect the user's center of balance. On the software side, right now the arduino is emulating a mouse and keyboard, which means that movement is WASD with binary movement speed. Ideally, the controller would be a DirectInput device like a standard joystick. I have read a little about modifying the Leonardo's USB drivers to make this possible, so stay tuned!

I also have some new pieces of hardware in the works for the future. My next project involves a few raspberry pi's, a 3D printer, and the Oculus! I promise this one won't disappoint, so stay tuned, and thanks for reading!

The Next Seat Cushion Controller

For this past winter break I worked on the next version of the Seat Cushion Controller from Chair Simulator. The goal for this version was to make it work with games besides Chair Simulator. And how did I plan on doing it? With this,

The Arduino Leonardo

The Arduino Leonardo

The Arduino Leonardo has several technical advantages over the Arduino Uno I used for the first incarnation of the Seat Cushion Controller, although the key feature for this project is the Leonardo's feature to emulate a mouse and keyboard over USB. This means, that instead of using a proprietary serial communication system that I designed specifically for the game Chair Simulator, the leonardo can give input to the computer as a mouse and keyboard.

How will this look in a game? Well, imagine a first person game with typical WASD movement and mouse to look. Turning your seat left and right will move the first person camera horizontally, and shifting your weight around on the seat will be turned into WASD input to move around. One would not want to play a first person shooter game like this, but paired with an Oculus Rift to give the player control over looking vertically, this could create a very interesting VR experience in the right game, and I have a few in mind to try! So stay tuned! I am working on a video demo right now!