Recently, for no particular reason whatsover, I decided to learn Morse Code. Within a couple weeks, I could type at a decent speed, but i never liked the virtual feeling of clicking a mouse or tapping a screen, because of the lack of force feedback. I started watching videos of people using real transmitters used on ships during the age of morse code, and was transfixed.
Morse code is simply a series of short beeps and long beeps, and the transmitter is a paddle that the operator presses down to complete a circuit.
I wanted to focus on this first rather than the app; getting the hardware configured to my liking was crucial to me, as if I didn't care about the feel of the hardware, I might as well have used a mobile app or website to simulate Morse code.
To emulate the vintage feel of the transmitters I was going for, I used this diagram as a baseline:
It is difficult to 3d model without an orthographic side profile, so I used DeepAI to regenerate the image from the side, with a non-perspective view:
I used the Bezier and spline tools to trace the rocker arm out in CAD, so that it could be extruded:
Then, I used the extrude tool to cut away holes that would be necessary to make this operable, such as a pivot point for the arm. I could have drilled these away, but 3d printing holes and connectors in the design leads to good habits for tougher materials down the line, like CNC machining.
I used a spline tool for the gentle curves of the rocker arm, then cut out circles using the extrude tool for the connecting pins and pivots, then inscribed VIYATH.COM and cut out a 1mm groove in its shape to add a bit more character.
The hole that appears is designed this way to allow the arm to tilt, as a bolt will be threaded through its entirety to hold a spring in place. If this cutout were a perfect circle, the rocker arm would be 'locked' in one position.
The plan was to insert an M5 bolt through the rocker arm's pivot hole and the holding blocks. Three holding blocks would be placed in a configuration where each one has a bolt protruding from its middle. When pressed, the bolt from the rocker arm would contact one of the bolts from the holding blocks, completing a circuit and sending a signal.
The other holding block would also have a bolt, but this time its purpose would be to constrain a spring that would constantly push the rocker arm up. Yet another bolt would be on the final holding block, with a nut that would control the distance the rocker arm would have to travel before hitting the contact.
For the device that would convert the short circuit to a readable signal for a computer, I settled on using an Arduino Nano from Aliexpress, which only costs 74p.
After 3d printing, attaching the spring, and screwing in the required bolts and washers:
At this point, I realised it was pretty much impossible to use this on a smooth table, since the smooth wood would just slide away every time you tried to click it. To fix this, I cut out pieces of rubber from an old table tennis paddle, and superglued it to the bottom of the transmitter for grip.