In a line there're voltage levels representing words of dots and dashes. In particular, the device is intended to raise an output each time a given pattern of five short/long signals (say 1s and 2s durations, respectively) is recognized (and restart if nothing comes in for a given time). A sort of Morse code recognizer (Arduino Uno preferred, but others are also OK) would be a good starting point. Any hint is welcome, I'm new in this community.

1 Answer 1


Use a GPIO of an Arduino and check (at the speed you need) the HIGH/LOW state.

Depending on the speed at which is sent, you can check the dots and dashes being sent, e.g. by keeping a timer since the last change checking if it is a short or long 'HIGH'.

You have to sample often enough to check if there is a drop (between dots/dashes).

  • Is Arduino Uno the best selection to implement this device? Since it's going to be embedded (the smallest, the better), I would like to know the best fitting option.
    – nightcod3r
    Sep 28, 2017 at 15:53
  • There are many microcontrollers. Arduino is not the smallest or cheapest, but probably the easiest to program, especially if you are new to microcontrollers). There are smaller, like Arduino micro/nano etc, which also are not difficult to program. There are also other (small) microcontrollers, even cheaper, but mostly those have a more steep learning curve, like PIC, STM8/32. Sep 28, 2017 at 16:15

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge that you have read and understand our privacy policy and code of conduct.

Not the answer you're looking for? Browse other questions tagged or ask your own question.