Skip to content

Instantly share code, notes, and snippets.

@Yaksinikos
Created February 3, 2023 21:44
Show Gist options
  • Save Yaksinikos/a62e8daacbd6ce3628ebfa4a7c3da775 to your computer and use it in GitHub Desktop.
Save Yaksinikos/a62e8daacbd6ce3628ebfa4a7c3da775 to your computer and use it in GitHub Desktop.
GAOMON M10K Pro - DIGImend Driver setup-script for Krita
#! /bin/bash
# Setup xsetwacom script for Intuos 3 9x12
# License: CC-0/Public-Domain license
# author: deevad
# Tablet definition
tabletstylus="GAOMON Gaomon Tablet_M10KPRO Pen stylus"
tabletpad="GAOMON Gaomon Tablet_M10KPRO Pad pad"
touchpad="GAOMON Gaomon Tablet_M10KPRO Touch Strip pad" #unsupported
dialpad="GAOMON Gaomon Tablet Dial pad" #unsupported
# Display all available option:
xsetwacom get "$tabletstylus" all
xsetwacom get "$tabletpad" all
xsetwacom get "$touchpad" all
#xsetwacom get "$dialpad" all
# Reset
xsetwacom --set "$tabletstylus" ResetArea
# Map surface of the tablet to a monitor (in case of multiple)
# Note: get the name of the monitor with xrandr
xsetwacom --set "$tabletstylus" MapToOutput "DisplayPort-0"
# Auto proportional Mapping:
# xsetwacom get "$tabletstylus" Area
# default: 0 0 50800 31750
# Enter under the resolution of your monitor:
screenX=2560
screenY=1440
Xtabletmaxarea=50800
Ytabletmaxarea=31750
areaY=$(( $screenY * $Xtabletmaxarea / $screenX ))
xsetwacom --set "$tabletstylus" Area 0 0 "$Xtabletmaxarea" "$areaY"
# Stylus button:
#xsetwacom --set "$tabletstylus" Button 1 1 # default, to click and draw
#xsetwacom --set "$tabletstylus" Button 2 "key Control_L" # Ctrl = color picker
#xsetwacom --set "$tabletstylus" Button 3 3 # default (Right click)
# Tweaks
# Pressure curve:
#xsetwacom --set "$tabletstylus" PressureCurve 0 0 100 100
# Softer
xsetwacom --set "$tabletstylus" PressureCurve 0 10 40 85
# Configuration data trimming and suppression
# The event of this device are good; if you have CPU better to not filter
# them at operating system level to not loose any sensitivity.
# Minimal trimming is also good.
xsetwacom --set "$tabletstylus" Suppress 0 # data pt.s filtered, default is 2, 0-100
xsetwacom --set "$tabletstylus" RawSample 1 # data pt.s trimmed, default is 4, 1-20
# For left-handed mode (rotation):
#xsetwacom --set "$tabletstylus" Rotate half
# Buttons
# Note: touchpad around 10 button is not supported
# +-----+
# | 1 |
# +-----+
# | 2 |
# +-----+
# | 3 |
# +-----+
# | 8 |
# +-----+
# | 9 |
# +-----+
# +---+-----+---+
# | |
# | +-----+ |
# | | 15 | |
# | | | |
# | +-----+ |
# | |
# +---+-----+---+
# +-----+
# | 10 |
# +-----+
# | 11 |
# +-----+
# | 12 |
# +-----+
# | 13 |
# +-----+
# | 14 |
# +-----+
xsetwacom --set "$tabletpad" Button 1 "key Tab" # Ctrl = color picker
xsetwacom --set "$tabletpad" Button 2 "key e" # / = Switch to previous used brush preset
xsetwacom --set "$tabletpad" Button 3 "key Page_Up" # Shift = Resize brush
xsetwacom --set "$tabletpad" Button 8 "key Insert" # v = line
xsetwacom --set "$tabletpad" Button 9 "key Page_Down" # m = mirror
xsetwacom --set "$tabletpad" Button 15 "key x" # i = less opacity
xsetwacom --set "$tabletpad" Button 10 "key Control_R Page_Up" # e = eraser
xsetwacom --set "$tabletpad" Button 11 "key Control_R Page_Down" # r = pick layer
xsetwacom --set "$tabletpad" Button 12 "key b" # l = select lighter color
xsetwacom --set "$tabletpad" Button 13 "key Control_R Shift_R z" # k = select darker color
xsetwacom --set "$tabletpad" Button 14 "key Control_R z" # o = more opacity
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment