Tiny Morse Code USB Keyboard

We’ve featured quite a few of [mitxela]’s projects here in the past, and many of them have the propensity to be labelled “smallest”. His Morse Code USB Keyboard Mk II adds to that list. It’s a Saturday afternoon project, with a few parts slapped onto a piece of perf-board, that allows using a Morse key as a USB keyboard. This project isn’t new or fresh, but we stumbled across it while trying to figure out a use for a Morse key lying in the author’s bin of parts. You can practise transmitting, by reading text and typing it out on the key, and then look it up on your computer to see if you made any mistakes. Or you can practise receiving, by asking a friend to punch it out for you. Either way, it’s a great way to hone your skills and prepare for your radio operators license exam.

The project is a follow up to his earlier one where he hooked up the Morse key via a RS-232 — USB converter directly to a computer and let the code do all the work. That turned out to be a very resource hungry, impractical project and made him do it right the next time around. The hardware is dead simple. An ATtiny85, a piezo buzzer, some decoupling capacitors, and a few resistors and zeners to allow a safe USB interface. The design accommodates a straight key, but there is one spare pin left over in the ATtiny to allow for iambic or sideswiper keys too. There is no speed adjustment, which is hardcoded at the moment. That isn’t very user friendly, and [mitxela] suggests adding a speed potentiometer to that last remaining pin on the ATtiny. This would prevent use of iambic/sideswiper keys. Or, you could use the RST pin on the ATtiny as a (weak) IO. The RST pin can read analog values between 5V and 2.5V, and will reset when voltage falls below 2.2V. Or just use another microcontroller as a last resort.

For the USB interface, [mitxela] is using the V-USB library after wasting some time trying to reinvent the wheel. And since this is designed to work as a HID, there are no drivers required – plug it in, and the OS detects it as a keyboard. He’s borrowed code from the EasyLogger project to use the internal oscillator and help free up the IO pins. And to detect the characters being typed, his code uses a long string of compare statements instead of a dictionary lookup. Writing that code was tedious, but it makes the identification quicker, since most characters can be identified in less that five comparisons (one dit = E, two dits = I, three dits = S and so on). This “tree” makes it easier to figure it out.

If you’d like to look up some of his other “tiny” projects, check out The smallest MIDI synthesizer, Smallest MIDI synth, again! and the ATtiny MIDI plug synth.

Continue reading “Tiny Morse Code USB Keyboard”

Morse Code: Paris In The Mint Box

TinyLilyThumbnail[Rob Bailey] likes to build things and he likes ham radio. We are guessing he likes mints too since he’s been known to jam things into Altoids tins. He had been thinking about building a code practice oscillator in a Altoids Smalls tin, but wasn’t sure he could squeeze an Arduino Pro Mini in there too. Then he found the TinyLily Mini. The rest is history, as they say, and 1CPO was born.

The TinyLily Mini is a circular-shaped Arduino (see right) about the size of a US dime. most of the pads are arranged around the circle and there is a small header that takes a USB programmer. A small rechargeable battery can run the device for a long time.

Continue reading “Morse Code: Paris In The Mint Box”

Morse Code Waterfall Is Cooler Than Your Fifth Grade Science Fair Project

For her science fair project, [David]’s daughter had thoughts about dipping eggs in coffee, or showing how dangerous soda is to the unsuspecting tooth. Boring. Instead she employed her father to help her build a Morse Code waterfall.

A more civilized wea-- tool from a more elegant age. Young Jed--engineer.
A more civilized wea– tool from a more elegant age. Young Jed–Engineer.

[David] worked with his daughter to give her the lego bricks of knowledge needed, but she did the coding, building, and, apparently, wire-wrapping herself. Impressive!

She did the trick with two Arduinos. One controls a relay that dumps a stream of water. The other watches with an optical interrupt made from an infrared emitter and detector pair to get the message.

To send a message, type it in the keyboard. The waterfall will drop spurts of water, and then show the message on the decoder display. Pretty cool. We also liked the pulse length dial. The solution behind the LEDs is pretty clever. Video after the break.

Continue reading “Morse Code Waterfall Is Cooler Than Your Fifth Grade Science Fair Project”

Tiny USB Morse Code Beacon

It is reasonably easy to make a microcontroller spit out some Morse code. What makes [pavlin’s] take on this project interesting is that it resides on a tiny USB board with an ARM processor. The design for the board is available with single-sided artwork suitable for production using simple methods like toner transfer.

The STM device has a built-in USB bootloader. It can also act as a serial port, which makes the project very simple. The only external parts are a speaker and an optoisolator. The program provides a command line interface over the serial port that you can use to program the message and set other options like speed and the delay between messages. The code is available on GitHub.

You might argue that a beacon shouldn’t need a USB port, and we’ve seen an alternative that fits the bill. If you want a much larger Arduino-based keyer, we’ve seen those, too.

Free Cell Data Transfer With Slowest Morse Code Ever

Readers of a certain age will remember the payphone trick of letting the phone ring once and then hanging up to get your quarter back. This technique was used with a pre-planned call time to let someone know you made it or you were okay without accruing the cost of a telephone call. As long as nobody answered you didn’t have to pay for the call, and that continues to be the case with some pay-per-minute cellphone plans.

This is the concept behind [Antonio Ospite’s] ringtone data transfer project called SaveMySugar. Don’t judge him, this work has been ongoing for around ten years and started back when cellphone minutes were a concern. We’re just excited to see that he got the excruciatingly slow thing to work.

Those wanting to dig down to the nitty-gritty of the protocol (and you should be one of them) will want to read through the main project page. The system works by dialing the cellphone, letting it ring once, then hanging up. The time between redials determines a Morse code dot, dash, or separation between characters. Because you can’t precisely determine how long it will take each connection to read, [Antonio] built ‘noise’ measurement into the system to normalize variations. The resulting data transfer works quite well. He was able to transfer the word “CODEX” in just six minutes and thirty seconds. But it is automatic, so what do you care? See the edge-of-your-seat-action play out in the video below.

If you can’t stomach that baud, here’s a faster Morse code data transmitter but it doesn’t use the phone.

Continue reading “Free Cell Data Transfer With Slowest Morse Code Ever”

Arduino Teaches Morse Code

You may wonder why anyone would want to learn Morse code. You don’t need it for a ham license anymore. There are, however, at least three reasons you might want to learn it anyway. First, some people actually enjoy it either for the nostalgia or the challenge of it. Another reason is that Morse code can often get through when other human-readable schemes fail. Morse code can be sent using low power, equipment built from simple materials or even using mirrors or flashlights. Finally, Morse code is a very simple way to do covert communications. If you know Morse code, you could privately talk to a concealed computer on just two I/O lines. We’ll let you imagine the uses for that.

In the old days, you usually learned Morse code from an experienced sender, by listening to the radio, or from an audio tape. The state of the art today employs a computer to randomly generate practice text. [M0TGN] wanted a device to generate practice code, so he built it around an Arduino. The device acts like an old commercial model, the Datong D70, although it can optionally accept an LCD screen, something the D70 didn’t have.

You can see the project in operation in the video below. Once you learn how to read Morse code, you might want to teach your Arduino to understand it, too. Or, you can check out some other Morse-based projects.

Continue reading “Arduino Teaches Morse Code”

Hacklet 69 – Morse Code Projects

With over 160 years of history under its belt, Morse code is by far the oldest digital signaling system known to man. Originally developed for telegraph systems, [Samuel Morse’s] code has been sent over wires, via radio, and even with flashes of light. Hackers, makers and engineers have been working with Morse code throughout history. For many years, simple code keys and practice oscillators were the “hello world” of hobby electronics. In fact, a company which started out selling a Morse key has gone on to become one of the largest electronic component distributors in the world. The company still bears the name of that project: Digi-Key. This week’s Hacklet is all about some of the best Morse code projects on Hackaday.io!

key1We start with [voxnulla] and Morse key HID + ugly hack. [voxnulla] found an old key at his favorite thrift store. It was dusty, greasy, and for some reason had been painted hospital green. Once the paint and grime were removed, and the original wooden plate restored, the key actually looked pretty good. [Voxnulla] then decided to turn it into a USB Human Interface Device (HID), emulating the keyboard of his computer. An Arduino converts Morse code characters tapped at the key into keystrokes over USB. As [voxnulla] knows, when butterflies aren’t available, real programmers drive vim with a Morse key!

code2Next up is [Voja Antonic] with Daddy, I don’t have the key. If you didn’t read [Voja’s] article about Hacking the Digital and Social System, check it out! Many apartments have an intercom system where you have to “buzz” someone in, activating a solenoid lock in the door. [Voja] inserted a Microchip PIC12 series microcontroller between the speaker and the unlock button. All a user has to do is tap out the right Morse code password on the call button in the lobby. If the code is accepted, the PIC unlocks the door, and you’re in!

 

morseterminal[kodera2t] took things into the digital age with Stand-alone Tiny Morse code encoder/decoder. This project grew out of his general purpose Portable tiny IoT device project. [kodera2t] rolled his own Arduino-compatible board for this project. The tiny ATmega1284 powered computer allows him to encode and decode Morse code. A smartphone-sized keyboard and a lilliputian OLED display serve as the user interface, while rotary encoder allows for variable code speed. You can even “tap” Morse out on one of the tactile buttons!

 

morselightFinally, we have [Yannick (Gigawipf)] with Portable (morsing) 100W led flashlight. 100 watt LEDs have gotten quite cheap these days, and they’re perfect when you absolutely, positively have to blind everyone around you. These LEDs can also be switched on and off quickly, which makes them perfect for Morse code. In years past, mechanical shutters had to be used to perform the same feat. [Yannick] used a 5000mAh 5S Zippy Li-Po to supply electrons to this hungry beast, while a 600 Watt constant current boost converter keeps that power under control. An Arduino running Morse code converter software controls the boost convert and LED.  [Yannick] uses his computer to send a message over the Arduino’s serial link, and the light does the rest, flashing out the message for all to see.

If you want more Morse goodness, check out our brand new Morse code project list! My Morse is a bit rusty, so if I wasn’t able to copy your transmission and missed your project, don’t hesitate to drop me a message on Hackaday.io. That’s it for this week’s Hacklet. As always, see you next week. Same hack time, same hack channel, bringing you the best of Hackaday.io!