This project turns your arduino into a sos morse code sender. It sends the code using a LED connected to the digital pin 10. 

To build this project you will need:

  • 1 Arduino board
  • 1 LED
  • 1 220ohm resistor

Build the circuit like the picture above.

Then, upload the following code:

// LED connected to digital pin 10 
int ledPin = 10;

// run once, when the sketch starts
void setup() 
{
// sets the digital pin as output
pinMode(ledPin, OUTPUT); 
}

// run over and over again 
void loop() 
{
// 3 dits
for (int x=0; x<3; x++) {
digitalWrite(ledPin, HIGH); // sets the LED on
delay(150); // waits for 150ms
digitalWrite(ledPin, LOW); // sets the LED off
delay(100); // waits for 100ms
}

// 100ms delay to cause slight gap between letters
delay(100); 
// 3 dahs
for (int x=0; x<3; x++) {
digitalWrite(ledPin, HIGH); // sets the LED on
delay(400); // waits for 400ms
digitalWrite(ledPin, LOW); // sets the LED off
delay(100); // waits for 100ms
}

// 100ms delay to cause slight gap between letters 
delay(100); 

// 3 dits again
for (int x=0; x<3; x++) {
digitalWrite(ledPin, HIGH); // sets the LED on
delay(150); // waits for 150ms
digitalWrite(ledPin, LOW); // sets the LED off
delay(100); // waits for 100ms
}

// wait 5 seconds before repeating the SOS signal 
delay(5000); 
}

When finished, the arduino will start blinking the LED with the SOS morse signal.

That's it!

References:

http://arduino.cc/en/

http://www.labdegaragem.org/loja/index.php/47-livros/arduino-basico...

Views: 2446

Comment by Ed Goulart on February 2, 2013 at 2:23pm

Indeed a nice code!

A good challenge would be not to repeat the second "di-di-dit", redirecting the program to the first routine.

Comment by Robin Hemmer on August 9, 2013 at 9:10am

this worked for me - 

// Another SOS sketch by Robin Hemmer

// LED connected to digital pin 10
int ledPin = 13;

// run once, when the sketch starts
void setup()
{
// sets the digital pin as output
pinMode(ledPin, OUTPUT);
}

// run over and over again
void loop()
{
// 3 dits
for (int x=0; x<3; x++)
{
dit();
}

// 300ms delay to cause slight gap between letters
delay(300);
// 3 dahs
for (int x=0; x<3; x++)
{
dah();
}

// 300ms delay to cause slight gap between letters
delay(300);

// 3 dits again
for (int x=0; x<3; x++)
{
dit();
}
// wait 3 seconds before repeating the SOS signal
delay(3000);
}

void dit()
{

digitalWrite(ledPin, HIGH); // sets the LED on
delay(150); // waits for 150ms
digitalWrite(ledPin, LOW); // sets the LED off
delay(100); // waits for 100ms

}

void dah()
{
digitalWrite(ledPin, HIGH); // sets the LED on
delay(400); // waits for 400ms
digitalWrite(ledPin, LOW); // sets the LED off
delay(100); // waits for 100ms
}

Comment

You need to be a member of GarageLab (arduino, electronics, robotics, hacking) to add comments!

Join GarageLab (arduino, electronics, robotics, hacking)

Latest Activity

Marcelo Rodrigues and swapnil are now friends
Tuesday
Marcelo Rodrigues replied to swapnil's discussion Tiny 85 based Thermometer
"Dear Swapnil, Since you don't have any experience with programming you should consider start…"
Monday
swapnil posted a discussion

Tiny 85 based Thermometer

Hi, can any one guide me how to make the tiny 85 based Thermometer which will glow the LED…See More
Sunday
Spyros Svoronos is now a member of GarageLab (arduino, electronics, robotics, hacking)
Sunday
K Biju is now a member of GarageLab (arduino, electronics, robotics, hacking)
Nov 29
Profile Iconswapnil and Yasser joined GarageLab (arduino, electronics, robotics, hacking)
Nov 28
udit is now a member of GarageLab (arduino, electronics, robotics, hacking)
Nov 25
Aqeel munir is now a member of GarageLab (arduino, electronics, robotics, hacking)
Nov 23
Profile IconSubbu and Graymon Cadiente joined GarageLab (arduino, electronics, robotics, hacking)
Nov 21
Tim Walller is now a member of GarageLab (arduino, electronics, robotics, hacking)
Nov 18
Dmitry Slepov posted a blog post

Open Platform Communications Server from Tibbo

OPC stands for «Open Platform Communications» that is a set of specifications and standards for…See More
Nov 17
Hrithik Bansal is now a member of GarageLab (arduino, electronics, robotics, hacking)
Nov 17
Martin Tavarez is now a member of GarageLab (arduino, electronics, robotics, hacking)
Nov 14
Brian Sivils is now a member of GarageLab (arduino, electronics, robotics, hacking)
Nov 7
Keren Fi is now a member of GarageLab (arduino, electronics, robotics, hacking)
Nov 3
Profile IconHENRY NUNES and evilhacker joined GarageLab (arduino, electronics, robotics, hacking)
Oct 31
Profile IconJames Pearce and caca joined GarageLab (arduino, electronics, robotics, hacking)
Oct 27
Profile IconWilliam Johnson and Todd Enger joined GarageLab (arduino, electronics, robotics, hacking)
Oct 24
Carlos Kwiek posted a blog post

ESP8266_MQTT_LAMP_ON_OFF

Turning on and off a lamp on the internet and smartphone using ESP8266 with MQTT languageThank you…See More
Oct 24
Avtar Singh is now a member of GarageLab (arduino, electronics, robotics, hacking)
Oct 20

© 2016   Created by Marcelo Rodrigues.   Powered by

Badges  |  Report an Issue  |  Terms of Service