The GameStick and unfortunate analog sticks

I recently received my GameStick. Interesting little device... I backed it around the same time I backed the Ouya. The idea is having a game system available to you at all times. The console itself fits inside the controller making for easy transportation.

You also need to power the system, so you need to plug it into a USB port. Most TVs have this but the power draw of the GameStick is juust enough to cause problems. Ultimately it is best to plug it into the wall, which means you need to also carry a longer USB cable and wall port with you. Not exactly the most portable device.

Still, I was willing to let that slide as long as the controller felt good. And it does! The moment I felt the analog sticks I was in love. Great texture, nice amount of resistance and large range of motion. Unfortunately, it seems the sensitivity of these sticks is terrible.

The actual range of motion that registers movement is about half the full range of motion. So if I move a stick to the left halfway, I'm already at the max magnitude (1.0) for that stick. It feels bad. I'm not sure this is something that can be fixed in software... it may be a limitation of the hardware.

I took a screenshot to illustrate the problem:

What you're looking at is a quick program I wrote to record raw data from the left stick. I spun the stick in a circle a few times for both the GameStick controller and an Xbox 360 controller. The red circle represents the physical path the stick traveled.

Notice how even the 360 controller isn't free of artifacts -- it flattens out on the top, bottom, left, and right which isn't ideal but isn't terribly noticeable because the usable range of the stick is close to 100%.

The GameStick picture tells a very different story. Since the physical range of motion differs greatly from the data you get a square response. I tried to do some correction for this but wasn't happy with the results. You can make it work but... it really isn't ideal.

What all this means is the GameStick controller is going to perform poorly for games that require precision, such as an FPS or flight sim. You really only have two states: barely tilting the stick and fully tilting the stick. The range in-between is nonexistent.

I hope someone can prove me wrong... I had high hopes for this gamepad. It really does feel good in the hands.