Joy-Cons in perpetual beta on Steam Input

Steam Input is frankly broken

Bad news is that support still feels like it's in "perpetual beta". The good news is that Steam Deck can also use Joy-Cons.

For Steam Input overall, there's some kind of backend overhaul happening to get modern controllers and the Steam Deck controller in feature parity, so many controller features seem to be breaking when least expected.

New Gyro Modes

In the midst of this, there are also alternative Gyro modes that will eventually replace the standard:

  • As Mouse, and
  • As Joystick

with:

  • Gyro to Mouse,
  • Gyro to Deflection, and
  • Gyro to...Joystick Camera.

I think this is because a Joystick Camera can become very vague in describing intended implementation; some games whether in 1st or 3rd person allow the camera to be swiveled with right stick, and many modern shooters use it for rotating a camera. The former is accomplished with Deflection, the latter with Camera.

Extra Gyro Settings

Inside those modes are a lot more fine-tuning capabilities for the gyro. Gyro to Mouse is still considered the de-facto way to implement seamlessly, but Joystick Camera is a compromise for games that don't respond with a controller and mouse simultaneously, to help adjust the gyro in a way that specificly timed flicks of the joystick will result in camera rotation comparable to a mouse. But this is restricted (by blind developers, but not the point) because of internal default assumptions in place, namely:

  • Joystick Deadzone
  • Camera Acceleration
  • Very Low Maximum Turning Speed

Games like Apex Legends and Fortnite allow removal of deadzones and acceleration paths to allow a less-restricted configuration necessary for Gyro to Joystick Camera, but many games will still prevent turning the camera faster than a mouse. This is unfair because a mouse's turning speed depends on the OS sensitivity setting and the hardware capability (mouse DPI), but it goes to show how little thought is given for Joysticks to be used comparable to mice.

Rambling aside...

The new gyro to Joystick Camera mode compensates for these limitations by allowing gyro conversions to meet the minimum intended values, and allowing capped movements to be carried in to the next frames of output. It may make the movement feel "pegged", but it's a compromise for having capped turning speed.

How the new gyro modes help the Joy-Cons

What this means for Joy-Cons is that even a single controller can function as well as a regular Xbox controller, by converting its unused tech to its missing functions like the second analog stick, D-Pad or analog triggers. Swapping is possible with Action Layers and clever button chords, and innovations in reusing analog sticks and button pads can help, such as a single "Change Weapon" button used for swapping the ABXY pads for numbered 1-4, instead of traditionally using the two bumpers to scroll down a list.

But how about a simple use of Joy-Cons?

Air mouse

Gyro Trigger Stick
Mouse Left Click Mouse

With this setup, you have a simple and very useful Point-and-Click device.

VERY useful for Steam Deck.

Tried it with:

pretty much any game or software that only needs a mouse. And makes navigating Desktop Mode much better when the Deck is docked.

Re: the latency,

Because of the new modes and the backend overhaul, the Joy-Cons can feel like they lose track or overcompensate sometimes, but there's definitely an effort on Steam's end to interpret what's needed and use its best methods to get what's desired. Definitely better than last year in performance, but not as flawless as the Pro Controller or Playstations' gyro. Mind you, the most issues I have are on Windows, but hiccups happen much less often on Steam Deck. It could be the environment, the bluetooth adapter, or the OS influencing the Joy-Cons' connectivity, still unsure at this point.

Follow up Joy-Cons on Steam

Joy-Cons still in beta

enter image description here

Joy-Cons are still sitting in the Steam Client beta. I've personally noticed random periods of latency, whether or not the controllers are paired together. It's hard to pinpoint when and why it happens, but I notice that it can happen when using the gyro. I've seen this issue pop up in other open source programs that try to tap into the controller as more than an Xbox controller, like reWASD or BetterJoy. Seems that Steam is no different.

Polling

I've read that the polling rate for the Joy-Cons specifically is vaswtly different and concerningly low compared to the Pro Controller and the Dualshock, despite how they all have similar features. It's strange because Joy-Con latency never happens on Switch even at 60fps (frames per second), although dropped inputs are possible in an environment with a lot of spectrum noise.

Best Use of Joy-Cons

I've gotten away with using the Joy-Cons as detached gyro-mice for adventure and narrative games, very comfortable. Sometimes the latency hiccups happen, but with how slow paced those games are, it's easy to remedy or patiently wait for Steam to fix itself. I can't recommend trying anything intense on Steam with Joy-Cons, and it may take some talented minds to reverse-engineer properly how to get these things to work on PC.

Hmm...

Issues happen on a Windows and Steam Deck by the way, across a wide range of Bluetooth adapters. It has to be a misunderstood assumption or three about handling data exchange.

As of December 2022

Joy-Con support is slowly improving. Sometimes, there are latency hiccups whether or not gyro is enabled or controllers are alone or paired, but on the latest stable version it may auto-correct itself over time, but before it felt like the contr0oller inputs were getting either detoured or lost into the void. Finally, the extra buttons on the side are supported, but in classic Valve fashion, configuring them is a clunky mess between handling inputs in the obsolete yet still existing Big Picture configurator, then migrating the updated configuration as a template in the Steam OS (Deck) User Interface. I sweat, the guy that made the Joy-Con ambiguous button icons was responsible for making a cohesive Joy-Con UI, but went on a sabbatical or something, hence the clunky menus during configuration.

As of February 2023

Found this in the Deck UI's controller settings for Joy-Cons, I'd assume other gyro controllers can access this, too.

Gyro Auto Calibration

A screenshot of Steam Big Picture's new auto calibration menu

There's been much debate over the importance of Auto Calibration for gyroscopes within Steam's background. Auto Calibration either over-corrects for bias or doesn't do enough. This finally lets us visualize which values exactly are behaving wonky, and you can tune the tolerance of what Steam considers a bias.

First Try of Joy-Cons on Steam

I've played around with this in the Steam Beta, and so far, Valve has demonstrated the most stable and customizable use of Joy-Cons on PC. It is a mess right now, but I like what's presented so far. Also, current state of beta messed up all other controllers, as betas typically do.

Nntendo Switch Joy-Cons on Steam Input

Impressions

First off, depending on the number of Joy-Cons connected, Steam is abl eto either keep each other horizontally separated or combine the two into a pair.For now, two independent controllers cannot be set up, but there should be a "toggle" by next beta push to allow this.

The control stick forward axis (AKA which way is up) is automatically oriented properly for each left/right/both possible controller set up, which is neat. Most software programs on PC just assume they're always paired, or their native drivers assumed they were separate and not analog.

Configurator

The controller configurator in Steam for Joy-Cons is kinda weird; Steam may think you're customizing a Steam Controller, and I think this happens because, with the added gyroscopes and SL/SR buttons, the layout which the Joy-Cons must follow cannot be a simple Xbox because it would lose all the extra features.

--- Nintendo Xbox
Gyro Yes No
SL/SR Yes No

At the time, I guess Valve didn't have time to have a Joy-Con layout in the configurator, so they have the controller default to a Steam Controller layout, because this also has a gyroscope and additional programmable back buttons, unlike the Xbox.

Where is the X button?

. ^ .
< X >
. V .

When the configurator isn't breaking, it takes some patience to not only recognize what is meant by where buttons belong (especially when horizontal Joy-Con, it's very confusing), but also what is the intended button layout for the face buttons. X is X, but X is on top when in a pair and on the right when horizontal, or if focused on an Xbox legacy layout, it may be on the left. And last possibility, forcing a Playstation-like layout puts X on the bottom. That meme is in full force here.

Pair Sideways Xbox Playstation
^ > < V

Some things are missing, too; when in a pair, SL/SR cannot be mapped, and the inverse is true for ZL/ZR/L/R when horizontal. Gyroscope fails to map as well, so I didn't bother testing the controllers with any FPS like Portal or BPM: Bullets Per Minute, hopefully that gets resolved. After all, if the Joy-Con pair is treated like a simple Xbox controller, nothing has changed with Steam's implementation because may other programs have already done this and players are simply happy about it.

When gyroscope finally works, it needs some tweaks too. Which camera axes will gyro movement follow, which controller in a pair will be used for gyro, or can both be used? Can gyro be used horizontally?

Joy-Cons as a Mini-Gamepad

A horizontal Joy-Con works pretty well for simple games like Spelunky and Necrodancer. Almost beat Olmec and Dead Ringer on first try. And I'd imagine the initial wonder of free-handing a pair of broken-off controllers like what everyone did with Breath of the Wild can happen dozens-fold with all the free-roaming exploration games on Steam.

Sticks

I did the stick calibration in the settings, and made sure the deadzones in each configuration were generous. "Stick drift" is about the same as on Switch console, even more manageable in Steam.

PS (post-script)

A toggle to switch Joy-Cons from pairs to separate has been added, Gyro has been added with calibration steps, and layout now mimics a Pro Controller, likely for stability. Still needs an independent layout for split Joy-Cons.