My father, who was almost certainly autistic, would try to teach me morse code by whistling all his conversations with me. This would go on for days without spoken communication.
I'm trying to teach Morse code to my 10 year old kid and his friend. Even setting up soon to be modified CB radios for them to do it over the air. I'm actually testing out an antenna idea today at his friend's house.
Well I would avoid my father’s meathod if I were you. It did not work.
I am now a teacher, and the task you describe got me thinking. It would be tempting to teach the association of letters with their related visual patterns of dash/dots. However, a 10 year old might do better if they learned the sound-forms of the letters as discrete entities, in the same way that they leaned the shape-form of the alphabet.
I also suffer from this geriatric malady -- once a technology goes dormant, becomes a throwback museum piece, my interest increases.
When I was 12 (1957) and really needed to practice code, talk to friends on my primitive homebrew ham radio, I instead dreamt of having single sideband. They say youth is wasted on the young, certainly true for me. :)
Since we're talking about something entirely out of touch with modern life, I suggest an app that converts spoken code to plain text. Before having proper radio equipment, my friends and I would speak Morse code to each other, and somehow make ourselves understood. Among our classmates we already had a reputation for being out of touch with reality. This practice cemented the assumption, more by design than accident.
How are the ergonomics of that key? Between the switch with the spring and having to hold that in your hand to use, I'm wondering how accurate the keying is? One suggestion might be a flat pad with a capacitive switch so you could just tap things out without even moving, but maybe the key works for you.
Absolutely awful! I'm very glad I didn't wire it straight into the pi but put a connector in the middle so I can replace it. It works and is silent to actuate but as you say the ergonomics are bad. I have to reach for it and it rattles around on the bedside table a bit (I've thought of maybe wrapping it in a piece of felt).
Your idea sounds great - can you give me a suggestion (e.g. a M-C/Mouser/Digikey part#)?
It's not Morse, but the CyKey[1] was a chording keyboard using the MicroWriter chords[2]; advantage that you can feel the keys without looking, and don't have to move your hands. The CyKey had no feedback, no click, silent operation rubbery buttons, IIRC. The CyKey use Infra Red so it would be difficult to use at night, but a similar device - five or six keys wired into an rPi could be very good for this sort of use case.
You do not even need anything special to build a capacitive pad with a Raspberry Pi Pico. Basically only an insulated pad and maybe a resistor (even though I think it is even possible to do without).
Here is an example of someone building a touch midi controller [0] with nothing more than a custom PCB and some resistors or a touch input device with varied inputs like sliders and buttons [1].
It's been working reliably for me for a few weeks now, 1 or 2 messages a night.
To be clear - I am not sending myself long emails! I am sending one or two words, like "TEMP PROB" or "MULCH" to jog my memory in the morning. And for that, it has worked flawlessly.
I would imagine that if you just had a switch connected to nowhere, in the morning you would remember what you Morse coded in any case just because it has raised your alertness
pipe that through an LLM and you will have a page full of word salad :-)
but seriously, this is a neat idea. and kudos to OP for building a full prototype -- this is the level of geekery I show up for.
I remember the days of T9 on the old Nokia phones. I was so good that I didn't have to look down at the screen.
My favorites were fixed in my phone. I knew how many down clicks on the button would land on the right friend/family member. I could literally send messages from my pocket.
And yes, I admit -- I did engage in texting while driving. And this is the part where I justify it -- "but I had eyes on the road the whole time!"
Oh! and there was old skits on late nite where people woudl compete with the old morse code guys.
My reaction: now we live in a world where a web service is necessary to send yourself email from a full-featured device connected to a local network. Yeesh. Longing for the old days of sendmail and self hosting.
Not sure what you mean by 'full featured' - this is a microcontroller, with no OS.
That said, yes, I could have had it talk SMTP directly - there is a SMTP library that works in MicroPython - but I figured I'd rather be able to do some stuff "in the middle", and not have to update the device itself. For instance, I might decide I want to have it consolidate all the messages into a single email. I can do that easily by updating my endpoint, without having to ever touch the device.
Not sure it’s “necessary” — you could probably get this working with sendmail (assuming it’s available on RPi Pico, I have no idea) but I think the assumption is that, at this point, we’re all a lot more familiar with POSTing to URLs.
Shameless plug, but if you want to send emails to yourself for free you can use the free API I created for that purpose. Then at least you don't need to write the web service :)
For those who are not familiar with morse, a more hardware tinkering free and expensive (and over engineered) solution that might work is
1. Use one of those handheld landline phones with numbers.
2. Connect it to asterisk via an ata/voip adapter.
3. Configure a dial plan to log dtmf tones
4. Enter message using numberpad like on any old telephone.
5. Translate those numbers to text using t9 or any other custom scheme.
If it works, it can do a lot like dial extension 1 for email, 2 for sms to someone else or 3 to control your devices. Keep in mind, setting up dial plans is probably the most challenging part in this whole setup.
If I understand your code correctly, you've hardcoded the speed of your keying ("-" if duration > 150 else "."), which is probably the only realistic way to do it without getting into some really involved decoding. Have you considered using an iambic paddle? It would be a lot easier to decode I imagine, because you already know the dits and dahs from which contact is pressed.
It's an amazing solution. Personally I would go for index cards and a pencil. No noise, no light, and knowing my own tech limitations no stress of having to remember how to use something in middle of the night.
But yours is wonderfully creative solution. It also has possibilities for use in Hospitals and by disabled and others who have severely limited ability to communicate.
that patenting system is a sick joke, a cruel mockery of what it was intended for. Being able to patent Morse code, despite the clear existence of prior art is a prime example of that.
It's not patenting Morse code. It's patenting adding the capability to a smartphone using a rocker switch.
Besides, I'm pretty sure the patent has expired.
My motivation on this was simply that I am an inventor, and what's an inventor without a patent here and there? The stuff I invented for D has not been patented.
Ok so my problem is, i made an app that lets me write in morse using volume up and volume down on my phone. It fits the bill of your patent. Now, an idea just about anyone with the need would have and could implement readily using exisiting technology in an evening has become a patented thing.
Patents are supposed to protect innovators, to encourage public release of innovative ideas. Yet your patent would stifle useful, though in this case not particulalry innovative or broadly useful, tools.
what is being protected by your patent, and others like it? An afternoon of thought. Not even a prototype in your patent, just lazy half assed schematics.
patents like yours hold back society. Again, not this patent in particular, but the many like it. Just look at patent trolls. Usless dregs of society, making things difficult for true innovators by abusing a system that was supposed to benefit humanity.
If you're familiar with my comment history, I'm actually opposed to the patent system, and most of the copyright system. Yes, in the past I made money selling copyrighted software. I continue to write software, making it freely available, and made no attempt to patent the innovations in it.
Keep in mind that phones at the time did not have side buttons, the side buttons on my iphone are ergonomically unsuitable for use as a morse key, are in the wrong location for it, and there wasn't an app store then.
I've also had many people copy my ideas, steal my software, and claim they invented them and wrote them. It gets a little tiring. I've used a registered copyright to stop some of those claims. Having a patent means I can solidly claim originality.
I also hoped someone would see the patent and want to implement it, as I was focused on other things.
You will get startup types blatantly ripping you off and stealing your ideas, and it's smiled upon to fight back and shut them down, sure.
Conversely a person could start patenting obvious ideas (morse code + cell phone seems like one) and then thousands of people independently arrive at the idea unaware of prior work. So now all that legal paperwork backing meant to fight off the startup type, the dragon, is used on an innocent - he who fights dragons should be careful not to become a dragon himself
IMO the patent system here is transformed into a "first person who calls dibs is the winner!" type free for all, and we get professional dib-callers. And the reason why it happens is the content of the patent, the ideation, execution, is all rote simple and not all that innovative.
I see that was with Eric. I worked on his phone. It had two keys and the PM developed their own encoding. I strongly advocated for Morse. I wasn’t aware of this patent. Cheers
Back when I didn’t work remotely a million years ago and had a do-nothing job, learning Morse code was one of the things I did to pass the time. It was fun
Why wouldn’t it? CGI is just an interface over stdio, and even though dropping `cgi` module from stdlib should be possible, I imagine it isn’t too hard to just continue supporting.
Huh? I don't even know what "didn't support" would even mean.
A CGI script isn't anything special. It's just "a thing that gets called with some environment variables, and prints out some text (on stdout) for the web server to send to the client".
My father, who was almost certainly autistic, would try to teach me morse code by whistling all his conversations with me. This would go on for days without spoken communication.
I'm trying to teach Morse code to my 10 year old kid and his friend. Even setting up soon to be modified CB radios for them to do it over the air. I'm actually testing out an antenna idea today at his friend's house.
Well I would avoid my father’s meathod if I were you. It did not work.
I am now a teacher, and the task you describe got me thinking. It would be tempting to teach the association of letters with their related visual patterns of dash/dots. However, a 10 year old might do better if they learned the sound-forms of the letters as discrete entities, in the same way that they leaned the shape-form of the alphabet.
Are you still fluent in Morse?
Nope. It's all gone. Bless you dad.
I also suffer from this geriatric malady -- once a technology goes dormant, becomes a throwback museum piece, my interest increases.
When I was 12 (1957) and really needed to practice code, talk to friends on my primitive homebrew ham radio, I instead dreamt of having single sideband. They say youth is wasted on the young, certainly true for me. :)
Since we're talking about something entirely out of touch with modern life, I suggest an app that converts spoken code to plain text. Before having proper radio equipment, my friends and I would speak Morse code to each other, and somehow make ourselves understood. Among our classmates we already had a reputation for being out of touch with reality. This practice cemented the assumption, more by design than accident.
73 de Paul KE7ZZ
How are the ergonomics of that key? Between the switch with the spring and having to hold that in your hand to use, I'm wondering how accurate the keying is? One suggestion might be a flat pad with a capacitive switch so you could just tap things out without even moving, but maybe the key works for you.
Either way, a fun idea!
73 de Sean N3RTW
Absolutely awful! I'm very glad I didn't wire it straight into the pi but put a connector in the middle so I can replace it. It works and is silent to actuate but as you say the ergonomics are bad. I have to reach for it and it rattles around on the bedside table a bit (I've thought of maybe wrapping it in a piece of felt).
Your idea sounds great - can you give me a suggestion (e.g. a M-C/Mouser/Digikey part#)?
- N2SXX
It's not Morse, but the CyKey[1] was a chording keyboard using the MicroWriter chords[2]; advantage that you can feel the keys without looking, and don't have to move your hands. The CyKey had no feedback, no click, silent operation rubbery buttons, IIRC. The CyKey use Infra Red so it would be difficult to use at night, but a similar device - five or six keys wired into an rPi could be very good for this sort of use case.
[1] The smaller one of these three https://alchetron.com/cdn/cykey-1e503a20-c830-4bb5-9dcf-7b44... all with the same chord keys for faster typing on a small device.
[2] https://siwriter.co.uk/the-chord-codes this app looks to use the same chords and links to an old intro video: https://www.youtube.com/watch?v=HBM_FwkMMKE
I don't know any part numbers but have a look at what the Morserino does (https://www.morserino.info/) or this reddit post: https://www.reddit.com/r/amateurradio/comments/ag7xpi/projec...
You do not even need anything special to build a capacitive pad with a Raspberry Pi Pico. Basically only an insulated pad and maybe a resistor (even though I think it is even possible to do without).
Here is an example of someone building a touch midi controller [0] with nothing more than a custom PCB and some resistors or a touch input device with varied inputs like sliders and buttons [1].
[0] https://github.com/todbot/picotouch
[1] https://github.com/todbot/picoslidertoy
Using a capacitive touch controller in the dark seems like it might be pretty frustrating though.
Their is no way this thing has any real use cases apart from emailing gibberish to yourself.
It's been working reliably for me for a few weeks now, 1 or 2 messages a night.
To be clear - I am not sending myself long emails! I am sending one or two words, like "TEMP PROB" or "MULCH" to jog my memory in the morning. And for that, it has worked flawlessly.
I would imagine that if you just had a switch connected to nowhere, in the morning you would remember what you Morse coded in any case just because it has raised your alertness
This is Hacker News. Part of what makes it fun is that we show cool projects we did.
Also, from the guidelines: "Please don't post shallow dismissals, especially of other people's work. A good critical comment teaches us something."
https://news.ycombinator.com/newsguidelines.html
pipe that through an LLM and you will have a page full of word salad :-)
but seriously, this is a neat idea. and kudos to OP for building a full prototype -- this is the level of geekery I show up for.
I remember the days of T9 on the old Nokia phones. I was so good that I didn't have to look down at the screen.
My favorites were fixed in my phone. I knew how many down clicks on the button would land on the right friend/family member. I could literally send messages from my pocket.
And yes, I admit -- I did engage in texting while driving. And this is the part where I justify it -- "but I had eyes on the road the whole time!"
Oh! and there was old skits on late nite where people woudl compete with the old morse code guys.
https://www.youtube.com/watch?v=pRuRE-Bwk1U
That sounds like a very real use-case to me.
Platforms like the Pico have significantly reduced the cost of one-off niche electronics, and that’s great actually.
My reaction: now we live in a world where a web service is necessary to send yourself email from a full-featured device connected to a local network. Yeesh. Longing for the old days of sendmail and self hosting.
Not sure what you mean by 'full featured' - this is a microcontroller, with no OS.
That said, yes, I could have had it talk SMTP directly - there is a SMTP library that works in MicroPython - but I figured I'd rather be able to do some stuff "in the middle", and not have to update the device itself. For instance, I might decide I want to have it consolidate all the messages into a single email. I can do that easily by updating my endpoint, without having to ever touch the device.
And the endpoint is self-hosted, by the way.
Not sure it’s “necessary” — you could probably get this working with sendmail (assuming it’s available on RPi Pico, I have no idea) but I think the assumption is that, at this point, we’re all a lot more familiar with POSTing to URLs.
"Necessary" is doing a lot of heavy lifting here.
Shameless plug, but if you want to send emails to yourself for free you can use the free API I created for that purpose. Then at least you don't need to write the web service :)
https://varmail.me
But email spam has gotten so much better /s
For those who are not familiar with morse, a more hardware tinkering free and expensive (and over engineered) solution that might work is
1. Use one of those handheld landline phones with numbers.
2. Connect it to asterisk via an ata/voip adapter.
3. Configure a dial plan to log dtmf tones
4. Enter message using numberpad like on any old telephone.
5. Translate those numbers to text using t9 or any other custom scheme.
If it works, it can do a lot like dial extension 1 for email, 2 for sms to someone else or 3 to control your devices. Keep in mind, setting up dial plans is probably the most challenging part in this whole setup.
These kinds of projects are so cool and fun. Now all it needs is a 1/10 000 replica of the Titanic around it.
If I understand your code correctly, you've hardcoded the speed of your keying ("-" if duration > 150 else "."), which is probably the only realistic way to do it without getting into some really involved decoding. Have you considered using an iambic paddle? It would be a lot easier to decode I imagine, because you already know the dits and dahs from which contact is pressed.
It's an amazing solution. Personally I would go for index cards and a pencil. No noise, no light, and knowing my own tech limitations no stress of having to remember how to use something in middle of the night.
But yours is wonderfully creative solution. It also has possibilities for use in Hospitals and by disabled and others who have severely limited ability to communicate.
Lots of possibilities for this.
Lewis Carroll actually invented a system for writing legibly in the dark https://en.m.wikipedia.org/wiki/Nyctography
I have a patent on morse code entry to a smartphone:
Patent 6418323 Wireless mobile phone with Morse code and related capabilities
I see there are at least two of us!
The purpose is so you can secretly text other people under the table while in a boring meeting.
that patenting system is a sick joke, a cruel mockery of what it was intended for. Being able to patent Morse code, despite the clear existence of prior art is a prime example of that.
It's not patenting Morse code. It's patenting adding the capability to a smartphone using a rocker switch.
Besides, I'm pretty sure the patent has expired.
My motivation on this was simply that I am an inventor, and what's an inventor without a patent here and there? The stuff I invented for D has not been patented.
Ok so my problem is, i made an app that lets me write in morse using volume up and volume down on my phone. It fits the bill of your patent. Now, an idea just about anyone with the need would have and could implement readily using exisiting technology in an evening has become a patented thing.
Patents are supposed to protect innovators, to encourage public release of innovative ideas. Yet your patent would stifle useful, though in this case not particulalry innovative or broadly useful, tools.
what is being protected by your patent, and others like it? An afternoon of thought. Not even a prototype in your patent, just lazy half assed schematics.
patents like yours hold back society. Again, not this patent in particular, but the many like it. Just look at patent trolls. Usless dregs of society, making things difficult for true innovators by abusing a system that was supposed to benefit humanity.
If you're familiar with my comment history, I'm actually opposed to the patent system, and most of the copyright system. Yes, in the past I made money selling copyrighted software. I continue to write software, making it freely available, and made no attempt to patent the innovations in it.
Keep in mind that phones at the time did not have side buttons, the side buttons on my iphone are ergonomically unsuitable for use as a morse key, are in the wrong location for it, and there wasn't an app store then.
I've also had many people copy my ideas, steal my software, and claim they invented them and wrote them. It gets a little tiring. I've used a registered copyright to stop some of those claims. Having a patent means I can solidly claim originality.
I also hoped someone would see the patent and want to implement it, as I was focused on other things.
You will get startup types blatantly ripping you off and stealing your ideas, and it's smiled upon to fight back and shut them down, sure.
Conversely a person could start patenting obvious ideas (morse code + cell phone seems like one) and then thousands of people independently arrive at the idea unaware of prior work. So now all that legal paperwork backing meant to fight off the startup type, the dragon, is used on an innocent - he who fights dragons should be careful not to become a dragon himself
IMO the patent system here is transformed into a "first person who calls dibs is the winner!" type free for all, and we get professional dib-callers. And the reason why it happens is the content of the patent, the ideation, execution, is all rote simple and not all that innovative.
I see that was with Eric. I worked on his phone. It had two keys and the PM developed their own encoding. I strongly advocated for Morse. I wasn’t aware of this patent. Cheers
Eric was quite a character, wasn't he? Nothing was ever dull with him around. It was fun working with him.
I went to his memorial service. There was quite a crowd there. Eric created a ripple in the universe.
I am so sad I don't know Morse code. This is the best idea ever.
https://lcwo.net/ is the way to learn
Or if you can't be bothered to create a free account and would rather just start immediately from a single webpage:
https://stendec.io/morse/koch.html
Is this how you learned?
No, I learned as a kid in the 80s from a tape.
Were they the Jerry Ziliak KB6MT tapes by any chance?
No idea.
Back when I didn’t work remotely a million years ago and had a do-nothing job, learning Morse code was one of the things I did to pass the time. It was fun
Never too late ... https://arachnoid.com/morse_code
I thought Python didn’t support cgi scripts any longer.
Why wouldn’t it? CGI is just an interface over stdio, and even though dropping `cgi` module from stdlib should be possible, I imagine it isn’t too hard to just continue supporting.
Huh? I don't even know what "didn't support" would even mean.
A CGI script isn't anything special. It's just "a thing that gets called with some environment variables, and prints out some text (on stdout) for the web server to send to the client".