topbanner_forum
  *

avatar image

Welcome, Guest. Please login or register.
Did you miss your activation email?

Login with username, password and session length
  • Sunday December 15, 2024, 2:45 am
  • Proudly celebrating 15+ years online.
  • Donate now to become a lifetime supporting member of the site and get a non-expiring license key for all of our programs.
  • donate

Author Topic: IDEA: Morse Code as You Type  (Read 29237 times)

hurricanedavid

  • Participant
  • Joined in 2005
  • *
  • default avatar
  • Posts: 17
    • View Profile
    • Donate to Member
IDEA: Morse Code as You Type
« on: October 06, 2005, 01:22 PM »
My first idea submission...

How about a little app that stays resident in the systray and plays tones (that represent the morse code equivalent of the letters pressed) as keys are pressed?

Folks wanting to get HAM radio certified (I think) need to learn it.  I'm sure this would help.  They would learn as they typed, without trying too hard to memorize the stuff.

I'm not trying to get HAM, but I just think it would be cool.

I don't know what kinds of tones (or .wav files, whatever) would be most pleasant, though.

Carol Haynes

  • Waffles for England (patent pending)
  • Global Moderator
  • Joined in 2005
  • *****
  • Posts: 8,069
    • View Profile
    • Donate to Member
Re: IDEA: Morse Code as You Type
« Reply #1 on: October 06, 2005, 02:00 PM »
Hey what a fun idea - how about extending the idea to display semaphore, sign language (US and UK), braille etc.

These are all available as fonts, though the sign language would be good animated (GIFs ?)

kfitting

  • Charter Member
  • Joined in 2005
  • ***
  • Posts: 593
    • View Profile
    • Donate to Member
Re: IDEA: Morse Code as You Type
« Reply #2 on: October 06, 2005, 02:41 PM »
Just saw a shareware program that does just this.... admittedly it's a tad expensive at ~$25, but it may give ideas.

http://www.colorpilot.com/morse.html

Kevin

datamystic

  • Software Author
  • Charter Honorary Member
  • Joined in 2005
  • ***
  • default avatar
  • Posts: 4
    • View Profile
    • Donate to Member
Re: IDEA: Morse Code as You Type
« Reply #3 on: October 06, 2005, 07:31 PM »
$25 is not expensive. Please don't use this site just to rip off other people's ideas.

It reminds me of the %#$@! who set up a new sourceforge project because he didn't want to pay $10 for our keyboard locking program.

mouser

  • First Author
  • Administrator
  • Joined in 2005
  • *****
  • Posts: 40,914
    • View Profile
    • Mouser's Software Zone on DonationCoder.com
    • Read more about this member.
    • Donate to Member
Re: IDEA: Morse Code as You Type
« Reply #4 on: October 06, 2005, 08:26 PM »
just my 2 cents:
1) the colorpilots (twopilots) site has some nice software, definitely worth checking out
2) the price $25 for the program does seem a bit high to me for what it does; and for some people $25 is not cheap.
3) the original idea for this was not taken from that program and was independent, and surely was thought of by many people before and after this program.
4) i don't see anything wrong with the idea of making an open source or freeware alternative to commercial software.. in fact i think it's an important thing.  by all means be respectful of citing existing work and crediting people where due, and be mindfull of borrowing ideas from others especially if they are especially unique ideas.

mouser

  • First Author
  • Administrator
  • Joined in 2005
  • *****
  • Posts: 40,914
    • View Profile
    • Mouser's Software Zone on DonationCoder.com
    • Read more about this member.
    • Donate to Member
Re: IDEA: Morse Code as You Type
« Reply #5 on: October 06, 2005, 08:28 PM »
i should also point out that the idea of having a program which can be configured to play specific sounds when specific keys are pressed (whether morse code or speaking the letter, which might be fun for kids) has been suggested in the past in our coding snacks section and still seems like a fun idea and a program we will eventually write as freeware if no one else here does it as a coding snack, and could easily be used to implement this morse code program as well.

kfitting

  • Charter Member
  • Joined in 2005
  • ***
  • Posts: 593
    • View Profile
    • Donate to Member
Re: IDEA: Morse Code as You Type
« Reply #6 on: October 06, 2005, 08:48 PM »
Let me just say that I agree with datamystic and mouser on this one.  While the continual griping about paying money for software is definitely out of line, free programs are ok as well.  For example, Microsoft is hated by many for their handling of Windows.  Many claim an OS should be free.  My thoughts are that an OS is an extremely involved piece of software and the developers deserve their money.  to that end, I am more than willing to pay for the software.  My problem with Microsoft is their extremely high pricing; $300 for an operating system and $400+ for an Office suite that doesn't even work together... come on! 

That being said, I pay for software that I find extremely well done.  I paid for Opera and an Opera upgrade solely because Opera was (and still is) the best browser I have ever used.  Firefox, IE, etc are fine, but Opera was worth the money. 

My statement regarding MorsePilot came from mouser's point of view: $25 for a program that plays morse code while you type is a tad high.  Also, as mouser pointed out, their other programs are definietly interesting and if I had money to throw around I would consider buying a few.   

But, America has set up a system based around competition and that means that some people aren't going to make money (our system demands a rich AND poor class, for example).  Software that has had a lot of thought put into it and had the edges smoothed deserves to be paid for.  But, if there were no competitors, you would wind up with the lack of innovation currently seen at M$ (not in the past, mind you!). 

Just a few thoughts.  I do agree that merely ripping another program and advertising it for free (same interface, same features, etc) is mildly ridiculous. 

Kevin


Veign

  • Charter Honorary Member
  • Joined in 2005
  • ***
  • Posts: 993
    • View Profile
    • Veign - Where design meets development
    • Donate to Member
Re: IDEA: Morse Code as You Type
« Reply #7 on: October 06, 2005, 11:10 PM »
Also if you think about almost an idea you can come up with has been done before in some way, shape, or form.  Very hard to come up with a truly unique application given the way its so easy to distribute applications over the internet.  Also, for every freeware application there is probably at least two developers selling it...

My feeling is freeware developers are an integral part of the software devlopment food chain.  Remove it, ban it, stop it, and everything comes crashing down.  I know nobody mentioned stopping freeware but I wanted to point out how important, I feel, freeware is.

I don't search out applications to write based on a competitor as I write my applications for my use first (very important to have some sort of vested interest in the application) but once I have an application that I consider matured I search out every top competitor I can find and study their applications.  I try and figure out why a user would download their application, what features do they have that I don't, do I need to add these features, and should I even continue with the development of my application.

I might even find an application I like and say "hey I can do that better" or "that looks like it would be fun to code" and then I start.  You would be surprised how many partial applications I have that has never been seen by anyone else: iLoc, xMail, NT Broadcast, DomainXL, Direct Print just to name a few that made it far enough to get a name..

Anyway, just poking my head in...

mouser

  • First Author
  • Administrator
  • Joined in 2005
  • *****
  • Posts: 40,914
    • View Profile
    • Mouser's Software Zone on DonationCoder.com
    • Read more about this member.
    • Donate to Member
Re: IDEA: Morse Code as You Type
« Reply #8 on: October 06, 2005, 11:22 PM »
Also if you think about almost an idea you can come up with has been done before in some way, shape, or form.  Very hard to come up with a truly unique application given the way its so easy to distribute applications over the internet.  Also, for every freeware application there is probably at least two developers selling it...

agree 100%.

also, in the world we live, 90% of the game is marketing.  it amazes me how often people are selling software that is clearly inferior to the freeware equivelant, but marketing money lets them dominate the market.

also,
id say that just as often ideas flow from freeware to commercial arena.
take a look at this commercial program (URL Helper) that came out a couple years after my Url Snooper:
http://www.streaming...ar.com/urlhelper.htm

not only did they directly copy my user interface, but they actually had the nerve to copy and paste the text from my help file as their home page text]!!!!!!

kind of insane.  but there is no point in me trying to complain.  i just feel bad for people who buy their program.


I might even find an application I like and say "hey I can do that better" or "that looks like it would be fun to code" and then I start.

yep.  or often its out of a combined sense of excitement and frustration. you find an app that shows you something good, but is lacking in a way that you really feel needs to be addressed.  if authors were more amenable to listening to feature requests i might just wait for the feature to be added, but when it seems like they aren't going to add it, then i might code it myself.

also a word of advice to commercial software authors, and this came up when we did the screencasting tools review.  if you price your program out of the range of normal users, you are basically daring the freeware community to come out with a free alternative.  this came up also in the discussion of tools for blind users. 

« Last Edit: October 06, 2005, 11:26 PM by mouser »

Veign

  • Charter Honorary Member
  • Joined in 2005
  • ***
  • Posts: 993
    • View Profile
    • Veign - Where design meets development
    • Donate to Member
Re: IDEA: Morse Code as You Type
« Reply #9 on: October 07, 2005, 12:02 AM »
If you price your program out of the range of normal users, you are basically daring the freeware community to come out with a free alternative.

Thats also a great point.

hurricanedavid

  • Participant
  • Joined in 2005
  • *
  • default avatar
  • Posts: 17
    • View Profile
    • Donate to Member
Re: IDEA: Morse Code as You Type
« Reply #10 on: October 07, 2005, 08:02 AM »
I might even find an application I like and say "hey I can do that better" or "that looks like it would be fun to code" and then I start. 

Agree. I downloaded PHPWiki (freeware, on sourceforge.net) because I wanted a wiki on my site.  I got it working and it's nice, but it lacked some features I wanted.  Also, I'm kinda a "facts curator" by nature, so the wiki kind of program really appealed to me -- with its universal access and quick page creation.  I thought it would be a great way to improve my PHP knowledge and experience (I was right).

So I wrote my own.  Mine doesn't have many of the great bells and whistles of the fine PHPWiki, but it also doesn't have the overhead of the much larger program.  And it does exactly what I want it to.

I didn't know there was a shareware version of what I was suggesting already available.  But I agree that $25 is high for something that simple.  I would hope it has more features to justify that price.  And for me, $25 is a lot of money.

hurricanedavid

  • Participant
  • Joined in 2005
  • *
  • default avatar
  • Posts: 17
    • View Profile
    • Donate to Member
Re: IDEA: Morse Code as You Type
« Reply #11 on: December 22, 2005, 04:33 PM »
Well, since my initial post on this subject, I've become a AutoHotKey coder.  Quite an amazing little program. 

I wrote my own little program to sound out morse code as you type!  The only disadvantage is that the character you type now will play its sound even if the previous character's sound is not done.

This means that if you type fast, you won't really be helped by listening as you type because you won't hear the complete sequences.

However, if you type slowly, or just want to go to a text editor and hit a letter to hear the sound, then this program will work nicely for you.

I posted it on my web site...
http://www.cfjungle.com/apps/dgMorse/

...in case anyone wants it.

mouser

  • First Author
  • Administrator
  • Joined in 2005
  • *****
  • Posts: 40,914
    • View Profile
    • Mouser's Software Zone on DonationCoder.com
    • Read more about this member.
    • Donate to Member
Re: IDEA: Morse Code as You Type
« Reply #12 on: December 22, 2005, 04:36 PM »
cool!

hurricanedavid

  • Participant
  • Joined in 2005
  • *
  • default avatar
  • Posts: 17
    • View Profile
    • Donate to Member
Program Tweak
« Reply #13 on: December 23, 2005, 01:02 PM »
Another note....

All my program does is play an audio file called A.wav when the letter a is pressed.

So if you wanted some other sounds, just save them as .wav files as the name of the keys and replace the .wav files that came with the program.

mouser

  • First Author
  • Administrator
  • Joined in 2005
  • *****
  • Posts: 40,914
    • View Profile
    • Mouser's Software Zone on DonationCoder.com
    • Read more about this member.
    • Donate to Member
Re: IDEA: Morse Code as You Type
« Reply #14 on: December 23, 2005, 01:10 PM »
could be very fun for kids if you made words like "APPLE" for A, etc.

Brad

  • Participant
  • Joined in 2006
  • *
  • default avatar
  • Posts: 4
    • View Profile
    • Donate to Member
Re: IDEA: Morse Code as You Type
« Reply #15 on: January 07, 2006, 01:22 AM »
You could try the windows command:

Windows.beep(600,50);
lower the first number the lower the beep tone
lower the 2nd number the lower the length of the tone

This would take less time to excute than opeining some a player to play a wav file.

Cheers

Brad

Ace_NoOne

  • Participant
  • Joined in 2005
  • *
  • default avatar
  • Posts: 9
    • View Profile
    • Donate to Member
Re: IDEA: Morse Code as You Type
« Reply #16 on: January 09, 2006, 11:53 AM »
Cool program, hurricanedavid - I've always wanted something like that!

I also think Brad's suggestion is worth considering; using beeps instead of playing waves sounds like a better solution.
However, here's an excerpt from the AHK manual:
SoundBeep [, Frequency, Duration]
[...]
The script waits for the sound to finish before continuing. In addition, system responsiveness might be reduced during sound production.
Another problem is the annoying PC speaker; if possible, I'd prefer to have a 'normal' sound that's modulated as needed. Or you could use two sound files: SHORT.WAV and LONG.WAV (and maybe a BLANK.WAV for spacing?).
This way, you could also use the program in headphones-only situations where the PC speaker would get you in trouble.

In addition, I'd also like to see an option to translate the keyboard inputs into Morse signs; i.e. "A" would be re-mapped to ".-", "B" to "-..." etc.

Oh, and if you don't mind, I'd welcome your publishing the source code. :)

Ace_NoOne

  • Participant
  • Joined in 2005
  • *
  • default avatar
  • Posts: 9
    • View Profile
    • Donate to Member
Re: IDEA: Morse Code as You Type
« Reply #17 on: January 09, 2006, 01:13 PM »
This issue has haunted me, so I came up with the following AHK function:
; translate a sequence of "dits" and "dahs" into sounds
morse(sequence)
{
; access global variables
global
; split Morse string into single characters
StringSplit, sequenceItems, sequence
; translate characters into sounds
Loop, %sequenceItems0%
{
    ; if "dit"
If sequenceItems%A_Index% = %dit%
{
    SoundBeep, %frequency%, %short%
    Sleep, %spacing_symbol%
        }
        ; if "dah"
Else If sequenceItems%A_Index% = %dah%
{
    SoundBeep, %frequency%, %long%
    Sleep, %spacing_symbol%
        }
        ; if new letter
        Else If sequenceItems%A_Index% = %separator_letters%
{
    Sleep, %spacing_letter% ; DEBUG: one dit too long due to preceding "Sleep, %spacing_symbol%"?
        }
        ; if new word
        Else If sequenceItems%A_Index% = %separator_words%
{
    Sleep, %spacing_word% ; DEBUG: one dit too long due to preceding delay after character?
        }
        Else
        {
            MsgBox, % "unrecognized character: " . sequenceItems%A_Index%
}
}
}

In order to properly understand how this function works, take a look at the complete script:
/*
[program name] v[version number (e.g. 1.0)]
 by [author name]

[short description]
*/

/*
ToDo:
- [...]
*/

/*
change history
¯¯¯¯¯¯¯¯¯¯¯¯¯¯
# v[version number] ([date (yyyy-mm-dd)])
* [...]
*/

/*
settings, variable declarations
*/

#SingleInstance Force

programName = [program name] ; DEBUG: toDo
programVersion = [version number] ; DEBUG: toDo
programFullName = %programName% v%programVersion%
programAuthor = [author name] ; DEBUG: toDo?

dit = s ; symbol for "dit"
dah = l ; symbol for "dah"
separator_letters = , ; symbol for separating letters
separator_words = _ ; symbol for separating words

short = 50 ; duration of "dit"
long = % 3 * short ; duration of "dah"
spacing_symbol = %short% ; duration between symbols
spacing_letter = %long% ; duration between letters
spacing_word = % 7 * short ; duration between words

frequency = 600 ; frequency of "beep" sound produced

; Morse alphabet
char_a = % dit dah
char_b = % dah dit dit dit
char_c = % dah dit dah dit
char_d = % dah dit dit
char_e = % dit
char_f = % dit dit dah dit
char_g = % dah dah dit
char_h = % dit dit dit dit
char_i = % dit dit
char_j = % dit dah dah dah
char_k = % dah dit dah
char_l = % dit dah dit dit
char_m = % dah dah
char_n = % dah dit
char_o = % dah dah dah
char_p = % dit dah dah dit
char_q = % dah dah dit dah
char_r = % dit dah dit
char_s = % dit dit dit
char_t = % dah
char_u = % dit dit dah
char_v = % dit dit dit dah
char_w = % dit dah dah
char_x = % dah dit dit dah
char_y = % dah dit dah dah
char_z = % dah dah dit dit

/*
auto-execute section
*/

; process command line parameters - DEBUG: toDo
;If 0 > 0
;GoSub, commandLineParameters
morse(char_a)
; construct tray menu
GoSub, trayMenu
; end of auto-execute section
GoSub, quit ; DEBUG: shouldn't be necessary!?
Return

/*
hotkeys
*/

; [ALT]+[ESC]: terminate script
!Esc::
Suspend ; exempt from suspension
GoSub, quit
Return

/*
subroutines
*/

; construct tray menu - DEBUG: toDo
trayMenu:
; disable standard menu items
Menu, Tray, NoStandard
; show info message
Menu, Tray, Add, &About, about
; separator
Menu, Tray, Add
; terminate script
Menu, Tray, Add, &Quit, quit
Return

; show info message - DEBUG: toDo
about:
MsgBox, 64, %programFullName%,
( LTrim Join
    %programFullName%`n
    %A_Space%by %programAuthor%`n
    `n
[short description]`n
`n
Use [ALT]+[ESC] to the terminate program.
)
Return

; terminate script
quit:
ExitApp
Return

/*
functions
*/

; translate a sequence of "dits" and "dahs" into sounds
morse(sequence)
{
; access global variables
global
; split string into single characters
StringSplit, sequenceItems, sequence
; translate characters into sounds
Loop, %sequenceItems0%
{
    ; if "dit"
If sequenceItems%A_Index% = %dit%
{
    SoundBeep, %frequency%, %short%
    Sleep, %spacing_symbol%
        }
        ; if "dah"
Else If sequenceItems%A_Index% = %dah%
{
    SoundBeep, %frequency%, %long%
    Sleep, %spacing_symbol%
        }
        ; if new letter
        Else If sequenceItems%A_Index% = %separator_letters%
{
    Sleep, %spacing_letter% ; DEBUG: one dit too long due to preceding "Sleep, %spacing_symbol%"?
        }
        ; if new word
        Else If sequenceItems%A_Index% = %separator_words%
{
    Sleep, %spacing_word% ; DEBUG: one dit too long due to preceding delay after character?
        }
        Else
        {
            MsgBox, % "unrecognized character: " . sequenceItems%A_Index%
}
}
}
I'd recommend you copy this code to your AHK editor (syntax highlighting!)...

Disclaimer: I didn't properly check this code yet (I'm tired), and a few lines and variables (e.g. programVersion) are not necessary. That's because I've used my standard template for AHK scripts.
« Last Edit: January 09, 2006, 01:16 PM by Ace_NoOne »

Robert Carnegie

  • Participant
  • Joined in 2006
  • *
  • default avatar
  • Posts: 10
    • View Profile
    • Donate to Member
Re: IDEA: Morse Code as You Type
« Reply #18 on: January 18, 2006, 09:56 AM »
Just saw a shareware program that does just this.... admittedly it's a tad expensive at ~$25, but it may give ideas.

http://www.colorpilot.com/morse.html

Kevin
If you just want to make noises as you go then their SoundPilot is cheaper at $15.55.  The Morse program offers extra features when registered compared to the free download, but I don't know if a free installation also expires.  Bottom line, I don't think they're really gouging.

I've evaluated SoundPilot as a typing aid - if you make it speak the alphabet and punctuation as you press keys then you can hear mistakes and miskeys.  I found that my productivity improved when I combined SoundPilot with the Fitaly on-screen keyboard, which I use because of a degree of RSI-style handicap, compared to Fitaly on its own.  The catch is that you have always to look for the next letter that you're about to click or tap on, so you don't see the previous stroke that went astray - but my ears aren't doing anything else, usually...

I think SoundPilot is probably worth paying for, for this use, because it also distinguishes upper and lower case typing and it has voices ready-made as separate downloads.  For best results the speed of speech can be cranked up to keep pace.

MS Windows recently also comes with a Narrator program that speaks keystrokes, but it doesn't keep up with me and it insists on reading out text from the screen as well.  And I don't think it tries to do Morse code, but I may be mistaken.

Another disadvantage with software like this is when you type a password and anyone in earshot can pick it up...

mouser

  • First Author
  • Administrator
  • Joined in 2005
  • *****
  • Posts: 40,914
    • View Profile
    • Mouser's Software Zone on DonationCoder.com
    • Read more about this member.
    • Donate to Member
Re: IDEA: Morse Code as You Type
« Reply #19 on: January 18, 2006, 10:45 AM »
nice tips robert, thanks.

Another disadvantage with software like this is when you type a password and anyone in earshot can pick it up...
hahaha.



i have to say that this is exactly the kind of task i would avoid autohotkey for - i'd want a nice fast compiled app.

Robert Carnegie

  • Participant
  • Joined in 2006
  • *
  • default avatar
  • Posts: 10
    • View Profile
    • Donate to Member
Re: IDEA: Morse Code as You Type
« Reply #20 on: January 18, 2006, 11:30 AM »
nice tips robert, thanks.

Another disadvantage with software like this is when you type a password and anyone in earshot can pick it up...
hahaha.



i have to say that this is exactly the kind of task i would avoid autohotkey for - i'd want a nice fast compiled app.
AutoHotkey is pretty good for speed except on a Tablet PC :-(

It seems more sluggish too when I use it to program my PC-based PVR by running individual AHk scripts out of Task Scheduler to push buttons on the application.  (The PVR has its own timer but it's astonishingly bad... you don't want to know.)  But once a script is running, it does pretty well.  Unfortunately (perhaps), even its "compiled" scripts (EXE) are actually interpreted.  Of course so is Java... but AHk really does run straight off a version of the source code, I think.

And AHk has had features added far beyond the scope or the quality of the original program, but so has Windows ;-)

I tested its basic function of recognise-typing substitute-alternate with an entire dictionary of words, and it stood up to that!  (I had it turn 'em all backwards, ekil siht!)

And development is pretty fast for simple jobs!  Then if I want something programmed professionally, I outsource :-)

sabot7726

  • Supporting Member
  • Joined in 2008
  • **
  • Posts: 27
    • View Profile
    • Donate to Member
Re: IDEA: Morse Code as You Type
« Reply #21 on: March 16, 2008, 03:43 AM »
Hello Hurricane, thanks for writing your program! I adapted it for what I was looking for and it works great. I just recently won a job as a 911 dispatcher so I'm using it to spam the police phonetic alphabet in my headset as I type. I was a military man so I'm used to alpha bravo charlie rather than adam boy charles, so this is helping a lot.

I don't suppose anyone knows how to adapt autohotkey to play these sound files randomly so I can practice hitting the keyboard as I hear the phonetics? Some kind of loop where it says a letter.wav, pauses half a second, says another letter etc until I hit some loop breaking button?

-Mike

Robert Carnegie

  • Participant
  • Joined in 2006
  • *
  • default avatar
  • Posts: 10
    • View Profile
    • Donate to Member
Re: IDEA: Morse Code as You Type
« Reply #22 on: March 16, 2008, 06:05 PM »
I don't suppose anyone knows how to adapt autohotkey to play these sound files randomly so I can practice hitting the keyboard as I hear the phonetics? Some kind of loop where it says a letter.wav, pauses half a second, says another letter etc until I hit some loop breaking button?

-Mike
If you want random actions, you could use an MP3 or media player program set to random play, but then you don't know whether you're getting them right or wrong...  perhaps something that speaks its way through a script would be more useful?  Or maybe there are ready-made recordings online that you could get to work from?  Perhaps a tool that converts text to the text of your code words and then speech-synthesizes the result?

I hadn't heard of Adam Boy Charles, I'm British and maybe I didn't watch enough police TV shows from... wherever you are  ;-)  We had a show about a senior female officer (and then a different senior female officer, I think) titled "Juliet Bravo".  Years and years ago.  It wasn't her actual name.  Superior officers on British TV are called "Guv'nor" or "Guv".  I think it's Klingon.

sabot7726

  • Supporting Member
  • Joined in 2008
  • **
  • Posts: 27
    • View Profile
    • Donate to Member
Re: IDEA: Morse Code as You Type
« Reply #23 on: March 17, 2008, 01:48 AM »
Ya listening to the wav files on random is a really good idea. I guess I was thinking too over the top.

Thanks :)