-
Kflop Button array
Hi all,
I'd like to use a Kflop+Konnect for a new router I'm building, as I've had success with the Kflop in the past.
However, something I believe is missing (not from the Kflop, but PC-based CNC controllers in general) is an array of physical buttons to use.
I would like to be able to replicate some button arrays like these two:
http://www.swansc.com/en/image/produ...FANUC0i-MD.gif
http://www.cnc-shopping.co.uk/images...t_membrane.JPG
I would rather not make the button array myself, but will if required.
PoNET kbd48CNC
PoLabs make a CNC keyboard, but the communication method is something that is likely to be completely uncompatible with the Kflop.
I do, however, have a PoKeys that could serve as a proxy if that is a viable means of getting the job done.
If implementing something like in the photos above is possible, what is the best way to achieve it?
Thanks,
Lindsay
-
Re: Kflop Button array
Hi Lindsay,
Do you use Mach3, KMotionCNC, or something else?
Are you able to find a button array with the electrical specification so the buttons can be read with simple IO?
Regards
-
Re: Kflop Button array
Hi Tom,
I will use KMotionCNC. I want absolutely nothing to do with Mach3 - it's caused me far too much grief in the past.
I can make the button array myself, and have each button as a separate digital input - however, I feel that this will likely take up a massive amount of inputs.
I don't suppose the KFlop is able to do a matrix keyboard?
Thanks,
Lindsay
-
1 Attachment(s)
Re: Kflop Button array
Hi Lindsay,
You could scan a Keyboard Matrix with a small C program (activate one output, delay, read the inputs). I think the switches all need diodes added. Here is an example of 3 outputs and 2 inputs wired to scan 3x2=6 switches. Of course something like 4x8=32 might make more sense.
Attachment 254606
See the example KFLOPtoPCCmdExamples.c on how to send commands like Cycle Start to KmotionCNC from KFLOP. PC-DSP.h lists all the operations that are currently supported by KMotionCNC
DoPC(PC_COMM_ESTOP);
DoPC(PC_COMM_HALT);
DoPC(PC_COMM_EXECUTE);
DoPC(PC_COMM_SINGLE_STEP);
DoPCFloat(PC_COMM_SET_FRO,0.25f);
DoPCFloat(PC_COMM_SET_FRO_INC,1.1f);
DoPCFloat(PC_COMM_SET_X,0.0);
DoPCFloat(PC_COMM_SET_Y,0.0);
DoPCFloat(PC_COMM_SET_FRO,1.1);
DoPCFloat(PC_COMM_SET_FRO_INC,-0.1);
DoPCFloat(PC_COMM_SET_Z,1.25);
DoPCInt(PC_COMM_USER_BUTTON,3);
DoPCInt(PC_COMM_MCODE,3);
HTH
Regards
-
Re: Kflop Button array
"SCzEngrgGroup" did something like this, and mentions it in this thread.
http://www.cnczone.com/forums/novako...ml#post1578996
I was actually looking at doing something similar too. I found these premade keypads.
CNC4PC.com has 4 different keypads they offer
M31A- PRIMARY 4X4 MEMBRANE KEYPAD BOARD
CNC4PC
M32B- SECONDARY 4X4 MEMBRANE KEYPAD BOARD
CNC4PC
M32C- SECONDARY 4X4 MEMBRANE KEYPAD BOARD
CNC4PC
PoKeys PoNET Keyboard
CNC4PC
I was thinking about combining some of these with a Arduino using the keypad matrix code and the PS2 keyboard code. I was thinking I could map some of the functions to the shortcut keys that are already setup in KmotionCNC. But beyond that I have not given it much thought.
Another option might be to use an Arduino running keypad matrix code and and the Modbus Slave code. Then you would not have to use up precious I/O on your dynomotion cards. But this would take some work in coding.
-Dan
-
Re: Kflop Button array
Hi Dan,
It seems like those keyboard matrices from CNC4PC would work. It provides up to 8 rows and 8 columns for up to 64 keys. I don't think there are diodes included. But as long as only one button at a time is pushed they aren't needed.
Regards