JOYHANDLE(9)
π JOYHANDLE(9) π
okay so bestie, welcome to joyhandle β it's a HAL Component (yes, section 9, we're deep in kernel-y territory, iykyk) and it basically makes your joypad feel good. non-linear movements, deadbands, scales, the whole thing. let's get into it π
β¨ NAME β¨
joyhandle β sets nonlinear joypad movements, deadbands and scales πΉοΈβ¨
πΈ SYNOPSIS πΈ
loadrt joyhandle [count=N|names=name1[,name2...]]
π¦ DESCRIPTION π¦
so the component joyhandle uses this formula for non linear joypad movements, and it's literally the whole vibe:
y = (scale * (a*x^power + b*x)) + offset
the parameters a and b are adjusted in such a way, that the function starts at (deadband,offset) and ends at (1,scale+offset). cute, right? it just slots itself in exactly where it needs to be π
negative values will be treated point symmetrically to origin. and values -deadband < x < +deadband will be set to zero (this is the deadband doing its deadband thing, no cap).
values x > 1 and x < -1 will be skipped to Β±(scale+offset). and invert transforms the function to a progressive movement.
with power one can adjust the nonlinearity (default = 2). default for deadband is 0.
valid values are, and I need you to pay attention bestie:
power >= 1.0β reasonable values are1.x .. 4β5, take higher powerβvalues for higher deadbands (>0.5), if you want to start with a nearly horizontal slope0 <= deadband < 0.99β reasonable0.1
an additional offset component can be set in special cases (default = 0).
all values can be adjusted for each instance separately π
π FUNCTIONS π
joyhandle.Nβ requires a floating-point thread β
π PINS π
joyhandle.N.inβfloat injoyhandle.N.outβfloat out
π PARAMETERS π
joyhandle.N.powerβfloat rw(default:2.0)joyhandle.N.deadbandβfloat rw(default:0.)joyhandle.N.scaleβfloat rw(default:1.)joyhandle.N.offsetβfloat rw(default:0.)joyhandle.N.inverseβbit rw(default:0)
π AUTHOR π
Paul Willutzki β shoutout to the icon, fr fr π«Ά
π LICENSE π
GPL β go wild, bestie, but like... respectfully π
and that's the whole page!! 40 options? no. five parameters and one function, and honestly? it ate. periodt. π
okay bye ily, this has been the joyhandle page from the LinuxCNC Documentation, dated 2026-03-17 (JOYHANDLE(9), if you're keeping track). go make your joystick feel iconic πΈβ¨π
π¦ where this page comes from
- ubuntu resolute: linuxcnc-uspace 1:2.9.4-2ubuntu4 Β· GFDL-1.1-or-later
- ubuntu stonking: linuxcnc-uspace 1:2.9.4-2ubuntu4 Β· GFDL-1.1-or-later
- π girlified by deepseek-ai/DeepSeek-V4.1-Flash on : a language model's rewrite of the original, under its terms