Wireless Pendant for Mach3 Mill
![Pendant.jpg](/proxy/?url=https://content.instructables.com/F48/IZNZ/K9G9MZUF/F48IZNZK9G9MZUF.jpg&filename=Pendant.jpg)
Coronavirus, plenty of free timeā¦ Checking my garbage I found an old Logitech wireless keyboard and decided to convert it into a pendant for my 6040 router. The project is not complicated and it was done in a couple of days. I think everybody who has a minimum experience with electronics can easily repeat it.
Parts and Tools
Required parts
1. Logitech wireless keyboard (K220 or MK220). If you have no this model, you can use whatever wireless keyboard, but you will need to find proper pins tracing its board. It is not difficult but a little bit time-consuming.
2. Tactile switch: 12ps
3. 8x8mm switch: 1ps
4. Single Sided Copper Clad Board (110x70mm)
5. Resistor 1k 0.125w
6. 3mm LED.
7. Self-tapping screw M2x12 4ps, M2x6 6ps
Additional parts
1. Single core wire 30awg. This wire simplifies the soldering of transmitter pins with the pendant PCB.
2. Heat-Resistant Tape. If you put this tape on the pendant buttons, they will look like sun-illuminated.
3. Metallic self adhesive paper suitable for laser printing.
Tools
1. If you want to make a plastic pendant case you will need some 3D printer.
Opening Keyboard
![Logitech transmitter board.jpg](/proxy/?url=https://content.instructables.com/FOJ/AEXC/K9G9NPU6/FOJAEXCK9G9NPU6.jpg&filename=Logitech transmitter board.jpg)
You will have to take out the transmitter board from the keyboard. Open it (detailed instructions can be found here or here) and look for the circuit above.
Take it out and dissolder two power contacts. But do not trow them away, you will need these contacts to connect the pendant pills. Also take out one more power contact which is inside the keyboard battery case.
Checking Transmitter
![transmitter.jpg](/proxy/?url=https://content.instructables.com/F4O/JW0D/K9JICLG8/F4OJW0DK9JICLG8.jpg&filename=transmitter.jpg)
![keys (K220).jpg](/proxy/?url=https://content.instructables.com/FNJ/JLYI/K9G9NVJ8/FNJJLYIK9G9NVJ8.jpg&filename=keys (K220).jpg)
The K220 transmitter has 23 pins (see the picture). The table above shows which key will be activated with a certain pair of pins. For example, if the pin #2 is connected to the pin #15, the key "Pg Up" will be triggered. But this table corresponds to my transmitter while the transmitters of another keyboard models may have different pin configuration. So the first thing what we have to do is to investigate your transmitter pin configuration.
Download a program named KeyboardStateView (very small one, free, no installation, just unpack and run it). When you press some keyboard key this program shows what key is pressed.
Connect the transmitter to the 3v power supply (for example, two AAA pills) and plug its receiver into USB of your PC. Run KeyboardStateView. Connecting the pairs of transmitter pins according to the table observe the results in the program window. If everything is OK, you are lucky, your transmitter configuration coincides to the my one and you can go to the next step. But if not, you will need to find the pairs of pins which correspond to the keys shown in the first column of the table. Take out two plastic sheets from the keyboard and trace them with some multimeter or visually (as they did it here). Finally you will fill out the table with your own pin numbers which you have to use connecting the transmitter to the pendant PCB.
PCB
![PCB.jpg](/proxy/?url=https://content.instructables.com/FS1/V0Q1/K9G9MZ3D/FS1V0Q1K9G9MZ3D.jpg&filename=PCB.jpg)
![PCB (with components).jpg](/proxy/?url=https://content.instructables.com/F4V/CFJ4/K9G9MZ10/F4VCFJ4K9G9MZ10.jpg&filename=PCB (with components).jpg)
![Pendant (open case).jpg](/proxy/?url=https://content.instructables.com/FFE/ZV7R/K9JICLBE/FFEZV7RK9JICLBE.jpg&filename=Pendant (open case).jpg)
![labels.JPG](/proxy/?url=https://content.instructables.com/FSX/1SM1/K9JIDQ1K/FSX1SM1K9JIDQ1K.jpg&filename=labels.JPG)
PCB was developed with Sprint-Layout program. If you need the corresponding file tell me and I will send it to you. It is recommended to drill PCB with your CNC using the attached file PCB Drill.DXF otherwise PCB may not fit to the plastic case.
Solder the components as it is shown at the picture above. Then screw the transmitter with two M2x6 screws and solder its pins to PCB using a thin wire (single core wire 30awg is recommended) .
Using cap labels.dfx print the button labels with laser printer on some self adhesive paper. Cover the printed labels with some transparent tape (heat-resistant tape is recommended because it produces very nice look). Cut the labels with CNC or some sharp scissors and glue them to the cups.
Making Case
![case (bottom).jpg](/proxy/?url=https://content.instructables.com/FLO/238Z/K9JID7DC/FLO238ZK9JID7DC.jpg&filename=case (bottom).jpg)
![case (top).jpg](/proxy/?url=https://content.instructables.com/F9F/33D6/K9JID7ED/F9F33D6K9JID7ED.jpg&filename=case (top).jpg)
![battery holder.jpg](/proxy/?url=https://content.instructables.com/FSE/RC7E/K9JID7FE/FSERC7EK9JID7FE.jpg&filename=battery holder.jpg)
![cup (power switch).jpg](/proxy/?url=https://content.instructables.com/FC6/UR46/K9JID7FI/FC6UR46K9JID7FI.jpg&filename=cup (power switch).jpg)
![battery holder contacts.jpg](/proxy/?url=https://content.instructables.com/F02/VBS2/K9JIDOFN/F02VBS2K9JIDOFN.jpg&filename=battery holder contacts.jpg)
![main label.jpg](/proxy/?url=https://content.instructables.com/FXX/ATVP/K9K8FKEL/FXXATVPK9K8FKEL.jpg&filename=main label.jpg)
The case was developed with SolidWorks (tell me if you need the corresponding files) and consist of three main parts: case (bottom).stl, case (top).stl, and battery holder.stl plus a small cup for the power switch: cup (power switch).stl. Also to screw PCB you will need to print four washers (washer (PCB).stl).
The parts were printed with PLA filament, the total printing time is about 3 hours. The main parts can be printed with 4800 mm/min speed, while the cup it is better to print slowly (1500-2000 mm/min).
When the printing is finished, solder the wires to 3 power contacts (I hope you did not loose them :) ) and insert the contacts into the corresponding slots of the battery holder. Glue the battery holder to the case (it is better do it with some double-sided tape). Put PCB into the case, screw it with four M2x6 screws. Insert the power switch cup to its place. Close the case and screw it with four M2x12 screws.
If you want a main pendant label as it is shown above, print it with laser printer on metallic self adhesive paper using main label.dxf. Then cover it with some transparent lacquer (I would recommend Rust-Oleum from Home Depot), and glue it to the pendant case.
Congratulations, your hardware is finished. Do not forget to wash it well with alcohol 96, coronavirus does not sleep :):):).
And now the last step: to assign Mach3 hot keys.
Assigning Mach3 Hot Keys
![hot keys.jpg](/proxy/?url=https://content.instructables.com/FI5/TV31/K9K8FXTZ/FI5TV31K9K8FXTZ.jpg&filename=hot keys.jpg)
![HotKeys window.jpg](/proxy/?url=https://content.instructables.com/F5G/YV7B/K9K8FZQ7/F5GYV7BK9K8FZQ7.jpg&filename=HotKeys window.jpg)
![Input Signals.jpg](/proxy/?url=https://content.instructables.com/F06/IMPV/K9K8G1ZG/F06IMPVK9K8G1ZG.jpg&filename=Input Signals.jpg)
We need to assign two types of hot keys in Mach3: Jog Hotkeys and OEM HotKeys. The table above shows how these hotkeys have to be assigned.
Open Mach3. Then Config->System HotKeys and System HotKeys Setup window will appear (see above). Fill the fields up in External Buttons - OEM codes as it is shown in the picture. Now have a look at the Jog Hotkeys frame. Most probably the needed values in ScanCode fields already assigned. If not, assign them using the first 6 rows of the table. Press OK.
Now let's define the triggers for OEM hotkeys. Press Config->Ports and Pins->Input Signals. Check the rows as it is shown in the picture and assign the hotkeys as it is shown in the table (rows with OEM codes). Press OK.
Your pendant is ready to work.
Well, the project is finished and I have nothing to do again...No, it seems I have one pending thing: to improve the balancing of my recently-made Mendocino motors.