This plugin can be used for jogging, controlling feedhold, cycle start etc. via single character commands. The command characters can be delivered either via an I2C or an UART port.
The plugin is enabled in my_machine.h by removing the comment from the #define KEYPAD_ENABLE
line and changing it if required:
#define KEYPAD_ENABLE 1
enables I2C mode, an additional strobe pin is required to signal keypresses.
#define KEYPAD_ENABLE 2
enables UART mode.
See the core wiki for more details.
Settings are provided for jog speed and distance for step, slow and fast jogging.
Character to action map:
Character | Action |
---|---|
! |
Enter feed hold |
0x82 |
Enter feed hold |
~ |
Cycle start |
0x81 |
Cycle start |
? |
Status report request |
0x80 |
Status report request |
0x18 |
Soft reset |
X |
Unlock |
0x8B |
Enable MPG full control1 |
0x85 |
Cancel jog motion2 |
0 |
Enable step mode jogging |
1 |
Enable slow jogging mode |
2 |
Enable fast jogging mode |
h |
Select next jog mode |
m |
Select next jog speed or step distance factor |
H |
Home machine |
R |
Continuous jog X+ |
L |
Continuous jog X- |
F |
Continuous jog Y+ |
B |
Continuous jog Y- |
U |
Continuous jog Z+ |
D |
Continuous jog Z- |
r |
Continuous jog X+Y+ |
q |
Continuous jog X+Y- |
s |
Continuous jog X-Y+ |
t |
Continuous jog X-Y- |
w |
Continuous jog X+Z+ |
v |
Continuous jog X+Z- |
u |
Continuous jog X-Z+ |
x |
Continuous jog X-Z- |
0x84 |
Toggle safety door open status |
0x88 |
Toggle optional stop mode |
0x89 |
Toggle single block execution mode |
0x8A |
Toggle Fan 0 output3 |
I |
Restore feed override value to 100% |
0x90 |
Restore feed override value to 100% |
i |
Increase feed override value 10% |
0x91 |
Increase feed override value 10% |
j |
Decrease feed override value 10% |
0x92 |
Decrease feed override value 10% |
0x93 |
Increase feed override value 1% |
0x94 |
Decrease feed override value 1% |
0x95 |
Restore rapids override value to 100% |
0x96 |
Set rapids override to 50% |
0x97 |
Set rapids override to 25% |
K |
Restore spindle RPM override value to 100% |
0x99 |
Restore spindle RPM override value to 100% |
k |
Increase spindle RPM override value 10% |
0x9A |
Increase spindle RPM override value 10% |
z |
Decrease spindle RPM override value 10% |
0x9B |
Decrease spindle RPM override value 10% |
0x9C |
Increase spindle RPM override value 1% |
0x9D |
Decrease spindle RPM override value 1% |
0x9E |
Toggle spindle stop override4 |
C |
Toggle flood coolant output |
0xA0 |
Toggle flood coolant output |
M |
Toggle mist coolant output |
0xA1 |
Toggle mist coolant output |
0x88 |
Toggle optional stop |
0x89 |
Toggle single block |
0xA4 |
Toggle probe connected |
1 Only available if MPG mode is enabled. Build 20220105 or later is required.
2 Only available in UART mode, it is recommended to send this on all key up events. In I2C mode the strobe line going high is used to signal jog cancel.
3 The fans plugin is required.
4 Only available when the machine is in Hold state.
Dependencies:
An app providing input such as this implementation.
Driver (and app) must support I2C communication and a keypad strobe interrupt signal or have a free UART port depending on the mode selected.
2024-07-30