Jump to content

Jitter Reduction Script by Pure_Awesomeness


Sajarov

Recommended Posts

Some months ago I found in Reddit/r/HOTAS some interesting info about the jitter in the non-destructible pots of CH Products posted by the user Pure_Awesomeness.

 

Script and instructions made by Pure_awesomeness can be found here. (Google Drive).

HlTiavR.jpg

 

Original thread in Reddit.

 

 

It works for any CH Products (CH Pro Throttle, CH Quadrant, Fighterstick, Combatstick).

 

For use in Joysticks its better reduce the samples from 5 to 3.

 

 

 

Script:

 

 

//Jitter filter for CH Throttle Quadrant //Change the Joystick and axis IDs if required script   If (clocktick) then     a5 = a4;     a4 = a3;     a3 = a2;     a2 = a1;     a1 = js1.a1;          a15 = a14;     a14 = a13;     a13 = a12;     a12 = a11;     a11 = js1.a2;          a25 = a24;     a24 = a23;     a23 = a22;     a22 = a21;     a21 = js1.a3;          a35 = a34;     a34 = a33;     a33 = a32;     a32 = a31;     a31 = js1.a4;          a45 = a44;     a44 = a43;     a43 = a42;     a42 = a41;     a41 = js1.a5;          a55 = a54;     a54 = a53;     a53 = a52;     a52 = a51;     a51 = js1.a6;   EndIf   a10 = (a1+a2+a3+a4+a5)/5;   a20 =(a11+a12+a13+a14+a15)/5;   a30 =(a21+a22+a23+a24+a25)/5;   a40 =(a31+a32+a33+a34+a35)/5;   a50 =(a41+a42+a43+a44+a45)/5;   a60 =(a51+a52+a53+a54+a55)/5;      If ([(a10 - a1) > 3] OR [(a1 - a10) > 3]) then     cms.a1 = a1;   Else     If ([a10 > cms.a1]) then       cms.a1 = a10 - 1;     EndIf     If ([a10 < cms.a1]) then       cms.a1 = a10 + 1;     EndIf     If ([a10 == 255]) then       cms.a1 = js1.a1;     EndIf     If ([a30 == 0]) then       cms.a1 = js1.a1;     EndIf   EndIf      If ([(a20 - a11) > 3] OR [(a11 - a20) > 3]) then     cms.a2 = a11;   Else     If ([a20 > cms.a2]) then       cms.a2 = a20 - 1;     EndIf     If ([a20 < cms.a2]) then       cms.a2 = a20 + 1;     EndIf     If ([a20 == 255]) then       cms.a2 = js1.a2;     EndIf     If ([a20 == 0]) then       cms.a2 = js1.a2;     EndIf   EndIf    If ([(a30 - a21) > 3] OR [(a21 - a30) > 3]) then     cms.a3 = a21;   Else     If ([a30 > cms.a3]) then       cms.a3 = a30 - 1;     EndIf     If ([a30 < cms.a3]) then       cms.a3 = a30 + 1;     EndIf     If ([a30 == 255]) then       cms.a3 = js1.a3;     EndIf     If ([a30 == 0]) then       cms.a3 = js1.a3;     EndIf   EndIf      If ([(a40 - a31) > 3] OR [(a31 - a40) > 3]) then     cms.a4 = a31;   Else     If ([a40 > cms.a4]) then       cms.a4 = a40 - 1;     EndIf     If ([a40 < cms.a4]) then       cms.a4 = a40 + 1;     EndIf     If ([a40 == 255]) then       cms.a4 = js1.a4;     EndIf     If ([a40 == 0]) then       cms.a4 = js1.a4;     EndIf   EndIf      If ([(a50 - a41) > 3] OR [(a41 - a50) > 3]) then     cms.a5 = a41;   Else     If ([a50 > cms.a5]) then       cms.a5 = a50 - 1;     EndIf     If ([a50 < cms.a5]) then       cms.a5 = a50 + 1;     EndIf     If ([a50 == 255]) then       cms.a5 = js1.a5;     EndIf     If ([a50 == 0]) then       cms.a5 = js1.a5;     EndIf   EndIf    If ([(a60 - a51) > 3] OR [(a51 - a60) > 3]) then     cms.a6 = a51;   Else     If ([a60 > cms.a6]) then       cms.a6 = a60 - 1;     EndIf     If ([a60 < cms.a6]) then       cms.a6 = a60 + 1;     EndIf     If ([a60 == 255]) then       cms.a6 = js1.a6;     EndIf     If ([a60 == 0]) then       cms.a6 = js1.a6;     EndIf   EndIf  endScript


Edited by Sajarov
More info added

:megalol:

Link to comment
Share on other sites

  • 2 years later...
  • Recently Browsing   0 members

    • No registered users viewing this page.
×
×
  • Create New...