Adjust CMS Buttons accordingly...
script
// First set up some constants for the timers so it's not
// necessary to rewrite the whole script each time.
//
%define xOnTime 1
%define xOffTime 10
%define yOnTime 1
%define yOffTime 10
%define loTriggerValue 112
%define hiTriggerValue 144
// Now set up 4 timers that generate pulses based on the
// stick position. Each one sets a constant ON time and an
// OFF time that depends on the stick position. That's used
// that to time the "tapping" of the buttons that drive the
// wasd keys (cms.b1..cms.b4).
//
timer( INTERVAL, d1, yOnTime, ((( loTriggerValue - ( loTriggerValue - js1.a2 )) / yOffTime )) + 1 ) = [ js1.a2 < loTriggerValue ];
cms.b1 = d1; // send the w on cms.b1 (lo side -> forward)
timer( INTERVAL, d2, yOnTime, ((( loTriggerValue - ( js1.a2 - hiTriggerValue )) / yOffTime )) + 1 ) = [ js1.a2 > hiTriggerValue ];
cms.b2 = d2; // send the s on cms.b2 (hi side -> back)
timer( INTERVAL, d3, xOnTime, ((( loTriggerValue - ( loTriggerValue - js1.a1 )) / xOffTime )) + 1 ) = [ js1.a1 < loTriggerValue ];
cms.b3 = d3; // send the a on cms.b3 (lo side -> left)
timer( INTERVAL, d4, xOnTime, ((( loTriggerValue - ( js1.a1 - hiTriggerValue )) / xOffTime )) + 1 ) = [ js1.a1 > hiTriggerValue ];
cms.b4 = d4; // send the d on cms.b4 (hi side -> right)
endScript
Works for me.