Hardware Joystick Implementation


I’m trying to implement an hardware joystick to move the laser head of my system.

An Arduino is reading and decoding the joystick analog values and convert them to moving instructions sent by UART to smothie board firmware.

I’m sending “$J” commands to move the head, and they work fine. What I’m not able to implement is the Jog Cancel command.
In GRBL documentation, in order to cancel immediately a jogging movement ($J=…) I need to send a Jog Cancel realtime command (0x85 ‘ASCII Realtime Command’).
Nevertheless, I’m not having success implementing the jog cancel.

Any advices in how can the jog cancel command be done?
Is there any documentation about the Jog commands ($J=…) available in Smothie?



I asked Jim, who takes care of implementing the $ commands :

no, need to look at smoopi or the code it may also be documented in the pr
there is np jog cancel, it is a useless command
not even sure why grbl would have one
^X woulf cancel and long move
our $J is nothing like grbls, not even based on it
the thing about $J is it is supposed to be issued tiny increments whoich would be done before you could even issue a cancel anyway, if you were to use a $J with a big increment then it is being misused
I think the biggest increment I use is $J X0.1
or maybe X1 at worst

Hope this helps.