Skip to content
This repository has been archived by the owner on Jul 22, 2024. It is now read-only.
Derek J. Clark edited this page Feb 19, 2023 · 6 revisions

Welcome

HandyGCCS (Handheld Game Console Controller Support) provides various handheld game consoles with better support and integration for various capabilities. Many of these handhelds use a modified keyboard that produces key combination macros. Most of these macros are hard coded to windows hotkeys and have little or no effect in Linux. HandyGCCS leverages these keys by creating a virtual controller, hiding the built in controller and keyboard, and then intercepting all user input to trigger any events we want.

Devices that use a BMI-160 gyro are also supported by adding any motion from the gyro to the motion of the right joystick. In all applications of this feature, the following behavior is observed:

  • Activate gyro: One long rumble
  • Deactivate gyro: two short rumbles

AMD devices can be used in conjunction with RyzenAdj to toggle performance between power-saving and max-performance. In all applications of this feature, the following behavior is observed:

  • Activate power-saving: Three short rumbles
  • Activate max-performance: One long and two short rumbles

Supported Devices

Abernic Win 600

The Abernic Win 600 has three buttons, each with two states (long and short press). It does not have a typical mode/guide/steam/Xbox button, so it must be emulated by one of the face buttons.

Default Mapping

  • Button 1 (KB Long): Screenshot in Steam GamepadUI (New Big Picture)
  • Button 2 (Home Short): Open Quick Access Menu in Steam GamepadUI. (New big picture)
  • Button 3 (Home Long): ESC key.
  • Button 4 (KB Short): Open the GamepadUI (New Big Picture) On-screen Keyboard. Note: Due to a recent Steam client update, this feature will now only function while in game.
  • Button 5 (Windows Logo Short): Guide/Mode/Steam/Xbox button
  • Button 6 (Windows Logo Long): Toggle performance mode

AOKZOE A1

The AOKZOE A1 has three face buttons, one on the left and two on the right. It does not have a typical mode/guide/steam/Xbox button, so it must be emulated by one of the face buttons. It also has a BMI-260 gyro that doesn't currently have support in Linux.

Default Mapping

  • Button 1 (Left + Turbo): Toggle performance mode
  • Button 2 (Left Short): Guide/Mode/Steam/Xbox button
  • Button 3: Not present
  • Button 4 (KB Short): Open the GamepadUI (New Big Picture) On-screen Keyboard. Note: Due to a recent Steam client update, this feature will now only function while in game.
  • Button 5 (Left Long): Open Quick Access Menu in Steam GamepadUI. (New big picture)

AYANEO 2

The AYANEO 2 has two face buttons and two top "C" buttons. It does not have a typical mode/guide/steam/Xbox button, so it must be emulated by one of the face buttons.

The AYANEO 2 has a BMI-260 gyro that doesn't currently have support in Linux.

Default Mapping

  • Button 1 (LC): Screenshot in Steam GamepadUI (New Big Picture)
  • Button 2 (Small face): Open Quick Access Menu in Steam GamepadUI. (New big picture)
  • Button 3: Not present
  • Button 4. (RC): Open the GamepadUI (New Big Picture) On-screen Keyboard. Note: Due to a recent Steam client update, this feature will now only function while in game.
  • Button 5 (Large face): Guide/Mode/Steam/Xbox button
  • Button 6 (Large face + small face): Toggle performance mode.

AYANEO 2021 & Founders

The first generation of AYANEO Devices have four buttons on the bottom right face of the console. It also features a BMI-160 gyro.

Default Mapping

  • Button 1 (WIN): Toggle RyzenAdj performance
  • Button 2 (TM): Open Quick Access Menu in Steam GamepadUI. (New big picture)
  • Button 3 (ESC): Short press sends ESC key. Long press toggles gyro.
  • Button 4 (KB): Open the GamepadUI (New Big Picture) On-screen Keyboard. Note: Due to a recent Steam client update, this feature will now only function while in game.

There is an additional O button on the left side of the device that will toggle the rumble motors on/off and can change the rumble strength when used with the D-pad. This cannot be remapped.

There are also additional key combos that can be activated by holding the VOL DOWN key and pressing one of the face buttons, such as arrow keys and others. However, this feature was never fully implemented and results in "stuck " key combos from whatever button was pressed. As such, the full list of keys is not documented here. In the event these are activated, a quick reboot of the device will return the keys to default configuration.

AYANEO AIR (series)

The AYANEO AIR and AIR PRO models have two face buttons and two top "C" buttons. It does not have a typical mode/guide/steam/Xbox button, so it must be emulated by one of the face buttons.

The non pro AIR has a BMI-160 gyro. The Pro models have a BMI-260 gyro that doesn't currently have support in Linux.

Default Mapping

  • Button 1 (LC): Screenshot in Steam GamepadUI (New Big Picture)
  • Button 2 (Small face): Open Quick Access Menu in Steam GamepadUI. (New big picture)
  • Button 3 (LC + RC): Toggle gyro. (Currently Non-pro only)
  • Button 4. (RC): Open the GamepadUI (New Big Picture) On-screen Keyboard. Note: Due to a recent Steam client update, this feature will now only function while in game.
  • Button 5 (Large face): Guide/Mode/Steam/Xbox button
  • Button 6 (Large face + small face): Toggle performance mode. AYANEO AIR and AIR PRO models have two face buttons and two top "C" buttons.

The AYANEO AIR series does not have a typical mode/guide/steam/Xbox button, so it must be emulated by one of the face buttons.

The non pro AIR has a BMI-160 gyro. The Pro models have a BMI-260 gyro that doesn't currently have support in Linux.

Default Mapping

  • Button 1 (LC): Screenshot in Steam GamepadUI (New Big Picture)
  • Button 2 (Small face): Open Quick Access Menu in Steam GamepadUI. (New big picture)
  • Button 3 (LC + RC): Toggle gyro. (Currently Non-pro only)
  • Button 4 (RC): Open the GamepadUI (New Big Picture) On-screen Keyboard. Note: Due to a recent Steam client update, this feature will now only function while in game.
  • Button 5 (Large face): Guide/Mode/Steam/Xbox button
  • Button 6 (Large face + small face): Toggle performance mode.

AYANEO NEXT (series)

The AYANEO NEXT models have two face buttons. It does not have a typical mode/guide/steam/Xbox button, so it must be emulated by one of the face buttons.

The AYANEO NEXT series has a BMI-160 gyro.

Default Mapping

  • Button 1: Not present
  • Button 2 (Small face): Open Quick Access Menu in Steam GamepadUI. (New big picture)
  • Button 3: Not present
  • Button 4: Not present
  • Button 5 (Large face): Guide/Mode/Steam/Xbox button
  • Button 6 (Large face + small face): Toggle performance mode.

GPD WinMax 2

The GPD WinMax2 has two buttons on the rear of the device. It also features a BMI-160 gyro device.

Default Mapping

  • Button 1: Not present
  • Button 2 (Left): Open Quick Access Menu in Steam GamepadUI. (New big picture)
  • Button 3 (Right): Toggle gyro
  • Button 4: Not present
  • Button 5: Not present
  • Button 6 (left + right): Toggle performance mode.

ONEXPLAYER 1 T08

The ONEXPLAYER 1 T08 has three face buttons, one on the left and two on the right.

Default Mapping

  • Button 1: Not present
  • Button 2 (Left Short): Guide/Mode/Steam/Xbox button
  • Button 3: Not present
  • Button 4 (KB Short): Open the GamepadUI (New Big Picture) On-screen Keyboard. Note: Due to a recent Steam client update, this feature will now only function while in game.
  • Button 5 (Left Long): Open Quick Access Menu in Steam GamepadUI. (New big picture)

ONEXPLAYER 1S A08

The ONEXPLAYER 1S A08 has three face buttons, one on the left and two on the right. It does not have a typical mode/guide/steam/Xbox button, so it must be emulated by one of the face buttons.

Default Mapping

  • Button 1: Not present
  • Button 2 (Left Short): Guide/Mode/Steam/Xbox button
  • Button 3: Not present
  • Button 4 (KB Short): Open the GamepadUI (New Big Picture) On-screen Keyboard. Note: Due to a recent Steam client update, this feature will now only function while in game.
  • Button 5 (Left Long): Open Quick Access Menu in Steam GamepadUI. (New big picture)

ONEXPLAYER 1S T08

The ONEXPLAYER 1S T08 has three face buttons, one on the left and two on the right. It does not have a typical mode/guide/steam/Xbox button, so it must be emulated by one of the face buttons.

Default Mapping

  • Button 1: Not present
  • Button 2 (Left Short): Guide/Mode/Steam/Xbox button
  • Button 3: Not present
  • Button 4 (KB Short): Open the GamepadUI (New Big Picture) On-screen Keyboard. Note: Due to a recent Steam client update, this feature will now only function while in game.
  • Button 5 (Left Long): Open Quick Access Menu in Steam GamepadUI. (New big picture)

ONEXPLAYER Mini A07

The ONEXPLAYER GUNDAM GA72 has three face buttons, one on the left and two on the right. It does not have a typical mode/guide/steam/Xbox button, so it must be emulated by one of the face buttons. It also features a BMI-160 gyro.

Default Mapping

  • Button 1 (Left + Turbo): Toggle performance mode
  • Button 2 (Left Short): Guide/Mode/Steam/Xbox button
  • Button 3 (Left + KB): Toggle Gyro
  • Button 4 (KB Short): Open the GamepadUI (New Big Picture) On-screen Keyboard. Note: Due to a recent Steam client update, this feature will now only function while in game.
  • Button 5 (Left Long): Open Quick Access Menu in Steam GamepadUI. (New big picture)

ONEXPLAYER Mini GA72

The ONEXPLAYER Mini GA72 has three face buttons, one on the left and two on the right. It does not have a typical mode/guide/steam/Xbox button, so it must be emulated by one of the face buttons.

Default Mapping

  • Button 1: Not present
  • Button 2 (Left Short): Guide/Mode/Steam/Xbox button
  • Button 3: Not present
  • Button 4 (KB Short): Open the GamepadUI (New Big Picture) On-screen Keyboard. Note: Due to a recent Steam client update, this feature will now only function while in game.
  • Button 5 (Left Long): Open Quick Access Menu in Steam GamepadUI. (New big picture)

ONEXPLAYER Mini GT72

The ONEXPLAYER Mini GT72 has three face buttons, one on the left and two on the right.

Default Mapping

  • Button 1: Not present
  • Button 2 (Left Short): Guide/Mode/Steam/Xbox button
  • Button 3: Not present
  • Button 4 (KB Short): Open the GamepadUI (New Big Picture) On-screen Keyboard. Note: Due to a recent Steam client update, this feature will now only function while in game.
  • Button 5 (Left Long): Open Quick Access Menu in Steam GamepadUI. (New big picture)

ONEXPLAYER Mini Pro

The Mini Pro has three face buttons, one on the left and two on the right. It does not have a typical mode/guide/steam/Xbox button, so it must be emulated by one of the face buttons. It also has a BMI-260 gyro that doesn't currently have support in Linux.

Default Mapping

  • Button 1 (Left + Turbo): Toggle performance mode
  • Button 2 (Left Short): Guide/Mode/Steam/Xbox button
  • Button 3: Not present
  • Button 4 (KB Short): Open the GamepadUI (New Big Picture) On-screen Keyboard. Note: Due to a recent Steam client update, this feature will now only function while in game.
  • Button 5 (Left Long): Open Quick Access Menu in Steam GamepadUI. (New big picture)

ONEXPLAYER GUNDAM GA72

The ONEXPLAYER GUNDAM GA72 has three face buttons, one on the left and two on the right.It does not have a typical mode/guide/steam/Xbox button, so it must be emulated by one of the face buttons.

Default Mapping

  • Button 1: Not present
  • Button 2 (Left Short): Guide/Mode/Steam/Xbox button
  • Button 3: Not present
  • Button 4 (KB Short): Open the GamepadUI (New Big Picture) On-screen Keyboard. Note: Due to a recent Steam client update, this feature will now only function while in game.
  • Button 5 (Left Long): Open Quick Access Menu in Steam GamepadUI. (New big picture)

Reconfiguring

On first launch a configuration file is generated at /etc/handyggcs/handyggcs.conf which can be edited to change some of the default values. The default configuration looks like this:

[Button Map]
"button1": "SCR"
"button2": "QAM"
"button3": "ESC"
"button4": "OSK"
"button5": "MODE"

[Gyro]
"sensitivity": "20"

Valid button mapping codes are as follows:

ALT_TAB
ESC
MODE
KILL
OSK
QAM
SCR

Adjusting the gyro sensitivity up/down will increase/decrease the motion multiplier added to the right joystick.

Clone this wiki locally