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: 1614

Tags: arduino, project

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

jerrysmith87 posted blog posts
6 hours ago
GarageLab posted blog posts
6 hours ago
Profile IconJanak Panchal, John Ruffing and jerrysmith87 joined GarageLab (arduino, electronics, robotics, hacking)
8 hours ago
Profile IconJoshua, Mark Webber, Ronan Keets and 6 more joined GarageLab (arduino, electronics, robotics, hacking)
Monday
GarageLab posted a blog post

Sound Torch Bluetooth Speaker Spews Flames

Play Through the Fire and Flames (DragonForce) literally through fire and flames with the Sound…See More
Friday
GarageLab posted a blog post
May 20
GarageLab posted a blog post
May 18
Profile Iconmechanical engineer. R&D . and Geert hoste joined GarageLab (arduino, electronics, robotics, hacking)
May 18
Henry Chaj is now a member of GarageLab (arduino, electronics, robotics, hacking)
May 15
GarageLab posted a blog post
May 15
AnalysIR posted a blog post

Simple Infrared PWM on Arduino

We are often asked on discussion boards, about conflicts between IRremote or IRLib and other…See More
May 13
Profile Iconnareshkumar p and Ethan "Lone" Wolf joined GarageLab (arduino, electronics, robotics, hacking)
May 13
GarageLab posted a blog post

Printing photorealistic images on 3D objects

Hydrographic Printing is a technique of transferring colored inks on a film to the surface of an…See More
May 13
GarageLab posted a blog post

3D Printing and Ultrasound Help Blind Pregnant Moms Touch Their Unborn Babies

Here’s a pair of wonderful stories that were made possible with the help of 3D printing. As part of…See More
May 12
iqxca is now a member of GarageLab (arduino, electronics, robotics, hacking)
May 12
Profile IconTom Reagh and Alc joined GarageLab (arduino, electronics, robotics, hacking)
May 11
GarageLab posted a blog post
May 8
Arduino Aficionado posted photos
May 8
GarageLab posted blog posts
May 7
sneha kulkarni is now a member of GarageLab (arduino, electronics, robotics, hacking)
May 7

© 2015   Created by Marcelo Rodrigues.

Badges  |  Report an Issue  |  Terms of Service