Hey guys,

I am hoping that I chose the correct place to ask this question if not please let me know and I will post it elsewhere. I am interested in building my own Mach3 manual controller for my CNC X2 Mini Mill that I am almost finished with. I have researched many other similar projects to get ideas and I have found this site to be very useful Generic HID - DIY USB HID / Joystick / CNC Pendant. While I was reading through the site, I started to think about the possibility of building a similar control panel for my desktop to use for Autodesk and Adobe design programs. Please correct me if I am wrong, but I have gathered that all that the custom-made or commercial Mach3 CNC controllers/pendants do is emulate keyboard shortcuts for the program with their buttons. Assuming I am correct, then building a controller to emulate the shortcuts for Autodesk or Adobe programs should not be a problem at all, right? I know that I need a microcontroller board that is capable of emulating a USB HID device and I have decided to go with the AT90USBKEY board for the Mach3 controls since that is the one suggested on the site and I found it for a good deal. Before settling on the AT90USBKEY I looked at many other boards like the I-pac, Pokeys, and the Teensy boards but the I-pac and Pokeys boards are fairly expensive and I thought the Teensy board just had too few pins and I didn't want to limit myself. Though I have already purchased the board and am confident it will work, one thing I am yet to figure out is if there are certain requirements to allow a board to support devices other than switches or buttons, such as an MPG, or joystick? As far as actually building and programming the CNC controller, most of the process is described on the site though I am unable to find an actual wiring diagram. If anyone has any other sources on a similar project where I may be able to find a diagram or just more info, that would be very helpful.

Even though this is probably getting ahead of myself, I am now looking for a board for the desktop, graphic design program controller I mentioned earlier. I have found quite a few options on eBay, but I could really use some help in determining if they will work for my application. First off, can anyone suggest a suitable board I could get for cheap? The Teensy boards use the ATmega32u4 chip and support USB HID emulation and I have found some Asian Arduino knock off boards that have that same chip like this one 2pcs Leonardo Pro Micro ATMEGA32U4 Arduino IDE Bootloader Replace Pro Mini 328P | eBay. Does anyone have any experience with these knock-off boards? Since it has the same chip, can this board be used for HID emulation like the Teensy board? Will any development board with an ATmega32u4 chip emulate an HID device such as a keyboard, mouse, or joystick or is other hardware necessary? I have found other boards that use the ATmega32u4, but they have a different number of IO pins available, why is this? I have also thought that alternatively, rather than building a keypad for each program I use, it may be possible to use a touchscreen to display soft keys that would trigger the shortcuts the computer program. Soft keys could also be easily changed so one device could control multiple programs. Could I use an Arduino or Teensy type development board for something like this, or would I need something like a Raspberry Pi?

Thanks in advance to anyone that is able to help or just taken the time to read this post.


Jim