Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
9 changes: 6 additions & 3 deletions README.md
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
# Linux version of GPD WinControls for GPD Win Mini and GPD Win 4
# Linux version of GPD WinControls for GPD Win Mini, Win 4 and Win Max 2

A full replacement for WinControls, including features not exposed in the official app.

Expand All @@ -11,7 +11,7 @@ Many more keys can be assigned to buttons, not just ones you can already press.
## Usage:

```
usage: gpdconfig [-h] [-s FILE] [-d FILE] [-r] [-v] [-c] [-f FIELD] [-k] [config ...]
usage: gpdconfig [-h] [-s FILE] [-d FILE] [-r] [-v] [-x] [-o] [-c] [-f FIELD] [-k] [config ...]

Configures the mouse-mode controls on GPD Win devices. Replaces the official GPD WinControls app.

Expand All @@ -24,6 +24,9 @@ options:
-d FILE, --dump FILE Dump config to FILE
-r, --reset Reset to defaults
-v, --verbose Output current config to stdout
-x, --disable-version-check
Disable FW version check
-o, --dump-raw Dump raw config data (DEBUG)

Informational options:
-c, --fields List available fields
Expand All @@ -34,7 +37,7 @@ Informational options:

One or all settings can be changed on the command line (e.g. `gpdconfig ledmode=solid colour=FFFFFF`) or from an input file.

The following fields take keycodes (use '-k' to get a list of all valid keycodes, including mouse buttons):
The following fields take keycodes (use `-k` to get a list of all valid keycodes, including mouse buttons):
`'lu', 'ld', 'll', 'lr', 'du', 'dd', 'dl', 'dr', 'a', 'b', 'x', 'y', 'l1', 'r1', 'l2', 'r2', 'l3', 'r3', 'start', 'select', 'menu', 'l41', 'l42', 'l43', 'l44', 'r41', 'r42', 'r43', 'r44'`

The following fields take numbers:
Expand Down
7 changes: 6 additions & 1 deletion gpdconfig/wincontrols/hardware.py
Original file line number Diff line number Diff line change
Expand Up @@ -131,7 +131,12 @@ def _parseResponse(self, response):
def _checkDevice(self):
if self.disableFwCheck:
return
supported = ['K504', 'K407', 'K406']
supported = [
'K504',
'K407',
'K406',
'K123', # GPD Win Max 2 2024
]
info = self._parseResponse(self._response)
if info['Kfirmware'] not in supported:
raise RuntimeError(f"Unsupported firmware version: {info['Xfirmware']}{info['Kfirmware']}")
Expand Down