sky-peak: bridging skype jamie caudill eastern kentucky university

18
SKY-PEak: BRIDGING SKYPE Jamie Caudill Eastern Kentucky University

Upload: fay-ball

Post on 25-Dec-2015

217 views

Category:

Documents


3 download

TRANSCRIPT

Page 1: SKY-PEak: BRIDGING SKYPE Jamie Caudill Eastern Kentucky University

 SKY-PEak: BRIDGING SKYPE

Jamie CaudillEastern Kentucky University

Page 2: SKY-PEak: BRIDGING SKYPE Jamie Caudill Eastern Kentucky University

2

OUTLINE

I will talk about how I developed a system to use my home phone line remotely.

I will explain the difficulties that I encountered and the promising opportunities for expansion that I discovered.

Page 3: SKY-PEak: BRIDGING SKYPE Jamie Caudill Eastern Kentucky University

3

MOTIVATION

I plan to travel around the world. I wanted a way to call people back home.

I wanted to avoid the steep long distance charges involved with international calling.

Page 4: SKY-PEak: BRIDGING SKYPE Jamie Caudill Eastern Kentucky University

4

INTRODUCTION I had to become more proficient

at using Arduinos. I had never used some of the

hardware involved. I had to learn more about Arduino

programming.

Page 5: SKY-PEak: BRIDGING SKYPE Jamie Caudill Eastern Kentucky University

5

INTRODUCTION I had to learn about phone

systems. How dialing is achieved.

DTMF Pulse

How voices are modulated.

Page 6: SKY-PEak: BRIDGING SKYPE Jamie Caudill Eastern Kentucky University

6

PROBLEM STATEMENT

Need a way to remotely dial numbers on a home landline and route the conversation through the internet. Solution must use free services. Solution needs to use a

minimum of hardware. Hardware involved must be

cheap.

Page 7: SKY-PEak: BRIDGING SKYPE Jamie Caudill Eastern Kentucky University

7

ASSUMPTIONS

The Arduino needs access to: A working phone landline. A wired internet connection. Residential electricity.

A device that has a web browser is needed to control the Arduino remotely.

Page 8: SKY-PEak: BRIDGING SKYPE Jamie Caudill Eastern Kentucky University

8

SOLUTION I decided to use an Arduino.

I had experience programming Arduino microcontrollers before.

They have add-on shields that address common needs.

I decided to use SKYPE. Free service Easy to use

Page 9: SKY-PEak: BRIDGING SKYPE Jamie Caudill Eastern Kentucky University

9

SOLUTION (CONTINUED) I added audio jacks to a phone to

bridge the connection between SKYPE and the landline. Phone audio output to computer

input. Computer audio output to phone

input New SKYPE account was setup to

automatically receive calls from my other SKYPE account,

Page 10: SKY-PEak: BRIDGING SKYPE Jamie Caudill Eastern Kentucky University

10

SOLUTION (CONTINUED) I wanted to have the Arduino

generate tones in order to dial phone numbers on the landline.

I could not get this system to work correctly so I used pulse dialing instead. The phone connection is pulsed on

and off in order to dial numbers. This is how all phones used to work.

Page 11: SKY-PEak: BRIDGING SKYPE Jamie Caudill Eastern Kentucky University

11

SOLUTION (CONTINUED) I used a relay to pulse the phone

connection It was controlled by an Arduino Uno.

I created code that could dial individual numbers.

I spent a week figuring out timings between pulses and during the peaks and valleys of the pulse.

Page 12: SKY-PEak: BRIDGING SKYPE Jamie Caudill Eastern Kentucky University

12

SOLUTION (CONTINUED) I connected an Ethernet shield to

the Arduino board. This allowed me to connect the

Arduino Uno directly to my home network.

I set up a web server on the Arduino. I had difficulties because I had never

done this before.

Page 13: SKY-PEak: BRIDGING SKYPE Jamie Caudill Eastern Kentucky University

13

SOLUTION (CONTINUED) I programmed the server to read

and respond to characters appended to the end of the server’s address in a browser.

Server Address:

Appended Server Address:

Page 14: SKY-PEak: BRIDGING SKYPE Jamie Caudill Eastern Kentucky University

14

SOLUTION (CONTINUED) The server looks for the ? symbol.

Then it individually reads the characters that follow and executes commands based on those characters. “a” opens the line. “z” closes the line. “c” opens the line for one second

before the dialing begins. If a number is read, the corresponding

number is dialed on the landline.

Page 15: SKY-PEak: BRIDGING SKYPE Jamie Caudill Eastern Kentucky University

15

RESULTS I was able to use my iPhone to

call my SKYPE account at home. I used my phone’s web browser

to access the Arduino server. I used an appended URL to

make a call on my home landline.

I was able to talk to someone on my home’s landline using my phone’s SKYPE

Page 16: SKY-PEak: BRIDGING SKYPE Jamie Caudill Eastern Kentucky University

16

CONCLUSIONS I can now call, for free, friends

and family from my hometown from anywhere that has a internet connection.

I learned a lot more about Arduino microcontrollers. It was very interesting to learn how

to control an Arduino through the internet.

I can apply this new knowledge to future projects.

Page 17: SKY-PEak: BRIDGING SKYPE Jamie Caudill Eastern Kentucky University

17

FUTURE WORK

The dialing process involved turn a relay on and off in sequence.

The relay could be connected to any device and the coding could be changed to do whatever you needed the device to do.

This would allow cheap, internet-based control of any device.