When using any CNC machine the system has to understand where the part to be machined is physically located. This is most commonly done by jogging the tool to a position relative to the part and then indicating to the controller that the tool is indeed at that position. Hobby CNC enthusiasts [Jeremy] and [Yakob] wanted an easy, convenient (and even fun) way to zero their plasma cutter. They decided to make a wireless jog pendant capable of moving and zeroing their machine….. and it’s built into a retro game controller!
The housing is a wireless Atari 2600 controller. Most of the innards were taken out and replaced with a BlueFruit EZ-Key module that takes input signals from the stock joystick and button switches and, in turn, emulates a Bluetooth keyboard signal that is understood by a PC. Most PC-based CNC Control Software’s have keyboard shortcuts for certain functions. This project takes advantage by using those available keyboard shortcuts by mapping individual pin inputs to specific keyboard key presses.
The X and Y axes are controlled by pushing the joystick in the appropriate direction. Pressing the ‘fire’ button zeros the axis. Even though the remote is working now, these two guys want to add a rotary encoder so that they can make minor Z axis height adjustments on the fly since sometimes the metal they are plasma cutting isn’t completely flat.
If you’re interested in making CNC Pendants out of old tech, check out this once-was TV remote.
How about hacking a Fairchild Channel F controller?
Maybe a cart that holds an interface, to be used with the original conole, with a port on the top for the output. I’m thinking something like the chipkit or similar. Perhaps a 3D mouse. Perhaps with the option of a stand alone socket to which you can connect the controller directly to the cartridge.
The joystick in the photo looks like an original Atari wireless controller — why destroy it when you could adapt “joystick port” connector?
I’m sure there are a couple a dozen containers full of them buries somewhere in some dessert for you to reclaim.
Not everyone is sentimental about mass-produced consumer electronics. vOv
i would like to add that old commodore controller would sometime be a valve stem to a rim with a probe in the bottom that connected to 4 leads in a box shape and completed a circuit…it was cheap and efficient.we had to fix one and we pulled it apart at the age 15 i was surprised at the back yard ingenuity…then on the top was a ball that screwed on…that of course could be changed to about anything…really cool i think
For those who don’t know the whole story (which might be nobody here):
The basic controller design for the 2600 was shared and mutually compatible with other 8-bit Atari systems (400/800, XL, etc.) and Commodore computers (64, 64C, 128) and could even be used with Sega systems (Master System, Genesis), albeit with limited or somewhat broken functionality. The connector was the shaped to plug into a standard D-sub connector (DE-9) on the computer, and only six pins were used: One for ground, and one each for the other side of a momentary SPST switch for each of up, down, left, right, and fire. (For the Atari systems, the remaining pins were used for analog paddle controllers.) There were no active components in the controller, only switches.
Google `atari joystick pinout` for more information.
The practical results are:
* Building a controller requires no active components—no microcontroller, no logic ICs, nothing even so complicated as a transistor. It’s only switches.
* On the other hand, it wouldn’t be hard to make a controller containing electronics. Replacing one of the switches with an NPN or N-channel MOSFET in open-connector/open-drain configuration should work. However, your supply voltage may have to come from somewhere else. (There is in fact a +5V pin in the Atari configuration, but it’s used with paddles, not joysticks; whether you can actually use it is probably platform-dependent. To confound matters, the Genesis configuration uses a different pin for +5V. Consult the hardware documentation for the system in question.)
* Building a host for the controller (i.e. a device to be controlled using the controller) is also extremely simple; virtually anything that can test for continuity to ground will work.
* Set your multimeter to continuity test. Connect the red lead to one of the fire button signal pin and the black lead to the ground pin. Pressing the fire button will cause your meter to beep.
* Connect an LED and resistor in series; connect the high side of the series to +5V and the low side to one of the signal pins on the connector. Do this once for each signal pin. You now have light feedback for the controller input.
* As with any other switch that makes or breaks to ground, a signal pin can be interfaced to HC logic using a pull-up resistor, or to an MCU with built-in pullups without any additional parts.
* Perhaps most importantly: Unlike the connectors for the later NES, SNES, PlayStation, etc., the DE-9 (often erroneously called “DB-9”, even in reputable catalogs) connectors are (or at least have been) a widely-used standard, which tends to make them inexpensive and readily available.
* There are still a few places where you can buy one of these—male for the host, female for the controller) right off the shelf. If there’s a Fry’s within 50 miles of you, it might be time to visit.
* If you’re placing an order for components, several varieties of the connector (including PCB mount, crimp pin, solder cup) are typically available from the same sources for rather less than $1.
* These connectors were also the ones used for serial mice back in their day, so a female connector could be harvested from an old mouse while an old motherboard could supply the male connector.
* If you don’t feel like soldering, a bracket with DE-9 male to 10-pin IDC connector is still commonly available a a computer component for about $2.
s/an NPN or N-channel/an NPN or an N-channel/
s/red lead to one of the fire button signal pin/red lead to the fire button signal pin/
s/female for the controller\) /female for the controller—/
s/ a a/ as a/
Ah, nostalgia! A few things I can add:
* The Atari joystick ports were often used for interfacing homebrew electronics to the 400/800/XL/etc, with five digital inputs and two analog inputs.
* The directional switches were membrane switches.
* The rubber joystick cover had an annoying tendency to work its way loose. Reseating it was one of the first joystick repairs many old-timers performed.
* Alternately, you could attach the cover to your forehead like a suction cup, and pretend to be a unicorn. Though afterwards, you might have a hard time explaining to your parents and friends why you have a hickey in the middle of your forehead…
Nice work. I use a wireless 360 controller and Mach 3 for my homemade CNC machine. Works fantastic. The throttle triggers in front control feed speeds while the joysticks do precise control.
I too use 360 pads for all kind of goofy, non-game stuff. It’s just so handy having six analog axes, including both 2d and 1d inputs.
Great work ever read like this blog. Congrats!!
can it be used for a mits laser machine?