SlideShare a Scribd company logo
1 of 18
Download to read offline
MOBILE PAYMENTS, E-COMMERCE SECURITY, AND CRYPTOCURRENCY - 30319
PROJECT
DATE CLIENT
JUNE 10TH, 2015
KEYLESS DOOR ENTRY
VIA BLUETOOTH TECHNOLOGY BY MATT WEPPLER
Problem
We live in an increasing & ever evolving mobile
world.

Yet some things are taking longer than other to
catch up.
Implementation
Bluetooth technology (NFC to follow)

Mobile app Android (iOS to follow)

Arduino (prototyping kit), microcontroller, bluetooth
radio, servo

Existing single cylinder deadbolt lock.
HARDWARE
Hardware
Single Cylinder Deadbolt

Mobile Phone w/Integrated Bluetooth

Arduino

Bluetooth Module

Servo
ANDROID APP
Android App
Scan for device(s)

Pair with device(s)

Lock/Unlock deadbolt
Diagram
Write the Android app
Open a socket to the bluetooth radio
public	
  void	
  openBTSocket()	
  throws	
  IOException	
  {	
  
	
  	
  	
  	
  mBTSocket	
  =	
  mBTDevice.createRfcommSocketToServiceRecord(uuid);	
  
	
  	
  	
  	
  mBTSocket.connect();	
  
	
  	
  	
  	
  mOutputStream	
  =	
  mBTSocket.getOutputStream();	
  
	
  	
  	
  	
  mInputStream	
  =	
  mBTSocket.getInputStream();	
  
	
  	
  	
  	
  listenForIncomingBTData();	
  
	
  	
  	
  	
  Toast.makeText(getApplicationContext(),	
  “Ready	
  to	
  send	
  commands",	
  Toast.LENGTH_SHORT).show();	
  
}	
  
public	
  void	
  listenForIncomingBTData()	
  {	
  
	
  	
  ...	
  
	
  	
  commandResult.setText(data);	
  
	
  	
  ...	
  
}	
  
public	
  void	
  sendLockCommandToBTHW(View	
  view)	
  throws	
  IOException	
  {	
  
	
  	
  	
  	
  mOutputStream.write(msg.getBytes());	
  
	
  	
  	
  	
  Toast.makeText(getApplicationContext(),	
  "Lock	
  Command	
  Sent",	
  Toast.LENGTH_SHORT).show();	
  
}	
  
public	
  void	
  sendUnlockCommandToBTHW(View	
  view)	
  throws	
  IOException	
  {	
  
	
  	
  	
  	
  mOutputStream.write(msg.getBytes());	
  
	
  	
  	
  	
  Toast.makeText(getApplicationContext(),	
  "Unlock	
  Command	
  Sent",	
  Toast.LENGTH_SHORT).show();	
  
}
Write the Arduino sketch
int	
  UNLOCK_POSITION	
  =	
  0;	
  
int	
  LOCK_POSITION	
  	
  	
  =	
  90;	
  
int	
  btRxPin	
  	
  =	
  10;	
  //	
  bt	
  RX-­‐I	
  pin	
  <-­‐-­‐>	
  arduino	
  d10	
  pin	
  (green	
  jumper)	
  
int	
  btTxPin	
  	
  =	
  11;	
  //	
  bt	
  TX-­‐O	
  pin	
  <-­‐-­‐>	
  arduino	
  d11	
  pin	
  (yellow	
  jumper)	
  
int	
  servoPin	
  =	
  9;	
  	
  //	
  servo	
  pin	
  <-­‐-­‐>	
  arduino	
  d9	
  pin	
  (yellow	
  jumper)	
  
int	
  servoPos	
  =	
  UNLOCK_POSITION;
void	
  listenForCommands()	
  {	
  
	
  	
  if	
  (btSerial.available())	
  {	
  
	
  	
  	
  	
  handleBluetoothCommand();	
  
	
  	
  }	
  else	
  if	
  (Serial.available()	
  >	
  0)	
  {	
  
	
  	
  	
  	
  handleSerialCommand();	
  
	
  	
  }	
  else	
  {	
  
	
  	
  	
  	
  //Serial.println("UNKNOWN	
  HANDLER");	
  
	
  	
  }	
  
}
Setup variables to store some key values.
Listen for input from a paired bluetooth device.
Handle a “LOCK” command
Handle an “UNLOCK” command
void	
  lockHardware()	
  {	
  
	
  	
  if	
  (servoPos	
  !=	
  LOCK_POSITION)	
  {	
  
	
  	
  	
  	
  for	
  (servoPos	
  =	
  0;	
  servoPos	
  <	
  LOCK_POSITION;	
  servoPos++)	
  {	
  
	
  	
  	
  	
  	
  	
  servo.write(servoPos);	
  
	
  	
  	
  	
  	
  	
  delay(5);	
  
	
  	
  	
  	
  }	
  
	
  	
  	
  	
  servoPos	
  =	
  LOCK_POSITION;	
  
	
  	
  }	
  
}
void	
  unlockHardware()	
  {	
  
	
  	
  if	
  (servoPos	
  !=	
  UNLOCK_POSITION)	
  {	
  
	
  	
  	
  	
  for	
  (servoPos	
  =	
  LOCK_POSITION;	
  servoPos	
  >	
  UNLOCK_POSITION;	
  servoPos-­‐-­‐)	
  {	
  
	
  	
  	
  	
  	
  	
  servo.write(servoPos);	
  
	
  	
  	
  	
  	
  	
  delay(5);	
  
	
  	
  	
  	
  }	
  
	
  	
  	
  	
  servoPos	
  =	
  UNLOCK_POSITION;	
  
	
  	
  }	
  
}
Support frame to hold the
Lock & Electronics
…and now the moment
we’ve all been waiting for
Challenges Faced
No experience developing with bluetooth
technologies.

No Arduino experience, but the community is very
helpful.

Servos… I went through 3 of them (stripped the
gears)

Prototype Costs $$$
Android Wear (coming soon).
Keyless Door Entry via Bluetooth Technology

More Related Content

What's hot

Buy arduino zero by robomart
Buy arduino zero by robomartBuy arduino zero by robomart
Buy arduino zero by robomartchauhan786
 
PenO 3 2014 sessie 2
PenO 3 2014 sessie 2PenO 3 2014 sessie 2
PenO 3 2014 sessie 2Sven Charleer
 
DEF CON 24 - Patrick Wardle - 99 problems little snitch
DEF CON 24 - Patrick Wardle - 99 problems little snitchDEF CON 24 - Patrick Wardle - 99 problems little snitch
DEF CON 24 - Patrick Wardle - 99 problems little snitchFelipe Prado
 
MEmento Final Presentation
MEmento Final PresentationMEmento Final Presentation
MEmento Final PresentationGiovanniDeLuca20
 
Buy arduino uno in bulk by robomart
Buy arduino uno in bulk by robomartBuy arduino uno in bulk by robomart
Buy arduino uno in bulk by robomartchauhan786
 
Aircraft Anti collision system using ZIGBEE Communication
Aircraft Anti collision system using ZIGBEE CommunicationAircraft Anti collision system using ZIGBEE Communication
Aircraft Anti collision system using ZIGBEE CommunicationPavanKalyan314
 
Interface - Specialized -Integrated Circuits (ICs) - componentship.com
Interface - Specialized -Integrated Circuits (ICs) - componentship.comInterface - Specialized -Integrated Circuits (ICs) - componentship.com
Interface - Specialized -Integrated Circuits (ICs) - componentship.com燕 欧
 
Z turn board
Z turn boardZ turn board
Z turn boardmyirtech
 
Raspberry Pi - best friend for all your GPIO needs
Raspberry Pi - best friend for all your GPIO needsRaspberry Pi - best friend for all your GPIO needs
Raspberry Pi - best friend for all your GPIO needsDobrica Pavlinušić
 
Vhdl practical exam guide
Vhdl practical exam guideVhdl practical exam guide
Vhdl practical exam guideEslam Mohammed
 
SiliconFailsafeForIoT_Doin
SiliconFailsafeForIoT_DoinSiliconFailsafeForIoT_Doin
SiliconFailsafeForIoT_DoinJonny Doin
 
Axsy som-sama5 d3 description
Axsy som-sama5 d3 descriptionAxsy som-sama5 d3 description
Axsy som-sama5 d3 descriptionAlexey Yurko
 
Moony li pacsec-1.8
Moony li pacsec-1.8Moony li pacsec-1.8
Moony li pacsec-1.8PacSecJP
 

What's hot (19)

VIRDI AC5000
VIRDI AC5000VIRDI AC5000
VIRDI AC5000
 
VIRDI AC 5000
VIRDI AC 5000VIRDI AC 5000
VIRDI AC 5000
 
Buy arduino zero by robomart
Buy arduino zero by robomartBuy arduino zero by robomart
Buy arduino zero by robomart
 
PenO 3 2014 sessie 2
PenO 3 2014 sessie 2PenO 3 2014 sessie 2
PenO 3 2014 sessie 2
 
Led blinking using TMS320C6745
Led blinking using TMS320C6745Led blinking using TMS320C6745
Led blinking using TMS320C6745
 
DEF CON 24 - Patrick Wardle - 99 problems little snitch
DEF CON 24 - Patrick Wardle - 99 problems little snitchDEF CON 24 - Patrick Wardle - 99 problems little snitch
DEF CON 24 - Patrick Wardle - 99 problems little snitch
 
MEmento Final Presentation
MEmento Final PresentationMEmento Final Presentation
MEmento Final Presentation
 
Interfacing UART with tms320C6745
Interfacing UART with tms320C6745Interfacing UART with tms320C6745
Interfacing UART with tms320C6745
 
Buy arduino uno in bulk by robomart
Buy arduino uno in bulk by robomartBuy arduino uno in bulk by robomart
Buy arduino uno in bulk by robomart
 
Arduino
ArduinoArduino
Arduino
 
Aircraft Anti collision system using ZIGBEE Communication
Aircraft Anti collision system using ZIGBEE CommunicationAircraft Anti collision system using ZIGBEE Communication
Aircraft Anti collision system using ZIGBEE Communication
 
Interface - Specialized -Integrated Circuits (ICs) - componentship.com
Interface - Specialized -Integrated Circuits (ICs) - componentship.comInterface - Specialized -Integrated Circuits (ICs) - componentship.com
Interface - Specialized -Integrated Circuits (ICs) - componentship.com
 
Z turn board
Z turn boardZ turn board
Z turn board
 
Raspberry Pi - best friend for all your GPIO needs
Raspberry Pi - best friend for all your GPIO needsRaspberry Pi - best friend for all your GPIO needs
Raspberry Pi - best friend for all your GPIO needs
 
firewall
firewallfirewall
firewall
 
Vhdl practical exam guide
Vhdl practical exam guideVhdl practical exam guide
Vhdl practical exam guide
 
SiliconFailsafeForIoT_Doin
SiliconFailsafeForIoT_DoinSiliconFailsafeForIoT_Doin
SiliconFailsafeForIoT_Doin
 
Axsy som-sama5 d3 description
Axsy som-sama5 d3 descriptionAxsy som-sama5 d3 description
Axsy som-sama5 d3 description
 
Moony li pacsec-1.8
Moony li pacsec-1.8Moony li pacsec-1.8
Moony li pacsec-1.8
 

Similar to Keyless Door Entry via Bluetooth Technology

Bare metal Javascript & GPIO programming in Linux
Bare metal Javascript & GPIO programming in LinuxBare metal Javascript & GPIO programming in Linux
Bare metal Javascript & GPIO programming in LinuxAlexander Vanwynsberghe
 
MCE^3 - Dariusz Seweryn, Paweł Urban - Demystifying Android's Bluetooth Low ...
MCE^3 - Dariusz Seweryn, Paweł Urban -  Demystifying Android's Bluetooth Low ...MCE^3 - Dariusz Seweryn, Paweł Urban -  Demystifying Android's Bluetooth Low ...
MCE^3 - Dariusz Seweryn, Paweł Urban - Demystifying Android's Bluetooth Low ...PROIDEA
 
Demystifying Android's Bluetooth Low Energy at MCE^3 Conf
Demystifying Android's Bluetooth Low Energy at MCE^3 ConfDemystifying Android's Bluetooth Low Energy at MCE^3 Conf
Demystifying Android's Bluetooth Low Energy at MCE^3 ConfPawel Urban
 
Introduction to Things board (An Open Source IoT Cloud Platform)
Introduction to Things board (An Open Source IoT Cloud Platform)Introduction to Things board (An Open Source IoT Cloud Platform)
Introduction to Things board (An Open Source IoT Cloud Platform)Amarjeetsingh Thakur
 
Arduino、Web 到 IoT
Arduino、Web 到 IoTArduino、Web 到 IoT
Arduino、Web 到 IoTJustin Lin
 
Arduino programming
Arduino programmingArduino programming
Arduino programmingSiji Sunny
 
Android Things in action
Android Things in actionAndroid Things in action
Android Things in actionStefano Sanna
 
Abusing phones to make the internet of things - Wix UA Meetup
Abusing phones to make the internet of things - Wix UA MeetupAbusing phones to make the internet of things - Wix UA Meetup
Abusing phones to make the internet of things - Wix UA MeetupJan Jongboom
 
IoT with openHAB on pcDuino3B
IoT with openHAB on pcDuino3BIoT with openHAB on pcDuino3B
IoT with openHAB on pcDuino3BJingfeng Liu
 
Intel galileo gen 2
Intel galileo gen 2Intel galileo gen 2
Intel galileo gen 2srknec
 
Microsoft's view of the Internet of Things (IoT) by Imran Shafqat
Microsoft's view of the Internet of Things (IoT) by Imran ShafqatMicrosoft's view of the Internet of Things (IoT) by Imran Shafqat
Microsoft's view of the Internet of Things (IoT) by Imran ShafqatAllied Consultants
 
Internet of Things (IoT) reference architecture using Azure -MIC - Lahore
Internet of Things (IoT) reference architecture using Azure -MIC - LahoreInternet of Things (IoT) reference architecture using Azure -MIC - Lahore
Internet of Things (IoT) reference architecture using Azure -MIC - LahoreInformation Technology University
 
IoThings you don't even need to hack
IoThings you don't even need to hackIoThings you don't even need to hack
IoThings you don't even need to hackSlawomir Jasek
 
Global AI on Virtual Tour Oslo - Anomaly Detection using ML.Net on a drone te...
Global AI on Virtual Tour Oslo - Anomaly Detection using ML.Net on a drone te...Global AI on Virtual Tour Oslo - Anomaly Detection using ML.Net on a drone te...
Global AI on Virtual Tour Oslo - Anomaly Detection using ML.Net on a drone te...Bruno Capuano
 
Webshield internet of things
Webshield internet of thingsWebshield internet of things
Webshield internet of thingsRaghav Shetty
 
Lukas Apa - Hacking Robots Before SkyNet
Lukas Apa - Hacking Robots Before SkyNet Lukas Apa - Hacking Robots Before SkyNet
Lukas Apa - Hacking Robots Before SkyNet NoNameCon
 
Arduino shield wifi-monitorizarelocuinta
Arduino shield wifi-monitorizarelocuintaArduino shield wifi-monitorizarelocuinta
Arduino shield wifi-monitorizarelocuintaIulius Bors
 

Similar to Keyless Door Entry via Bluetooth Technology (20)

IoT on Raspberry Pi
IoT on Raspberry PiIoT on Raspberry Pi
IoT on Raspberry Pi
 
Fabric robots
Fabric robotsFabric robots
Fabric robots
 
Bare metal Javascript & GPIO programming in Linux
Bare metal Javascript & GPIO programming in LinuxBare metal Javascript & GPIO programming in Linux
Bare metal Javascript & GPIO programming in Linux
 
MCE^3 - Dariusz Seweryn, Paweł Urban - Demystifying Android's Bluetooth Low ...
MCE^3 - Dariusz Seweryn, Paweł Urban -  Demystifying Android's Bluetooth Low ...MCE^3 - Dariusz Seweryn, Paweł Urban -  Demystifying Android's Bluetooth Low ...
MCE^3 - Dariusz Seweryn, Paweł Urban - Demystifying Android's Bluetooth Low ...
 
Demystifying Android's Bluetooth Low Energy at MCE^3 Conf
Demystifying Android's Bluetooth Low Energy at MCE^3 ConfDemystifying Android's Bluetooth Low Energy at MCE^3 Conf
Demystifying Android's Bluetooth Low Energy at MCE^3 Conf
 
Introduction to Things board (An Open Source IoT Cloud Platform)
Introduction to Things board (An Open Source IoT Cloud Platform)Introduction to Things board (An Open Source IoT Cloud Platform)
Introduction to Things board (An Open Source IoT Cloud Platform)
 
Arduino、Web 到 IoT
Arduino、Web 到 IoTArduino、Web 到 IoT
Arduino、Web 到 IoT
 
Arduino programming
Arduino programmingArduino programming
Arduino programming
 
Android Things in action
Android Things in actionAndroid Things in action
Android Things in action
 
Abusing phones to make the internet of things - Wix UA Meetup
Abusing phones to make the internet of things - Wix UA MeetupAbusing phones to make the internet of things - Wix UA Meetup
Abusing phones to make the internet of things - Wix UA Meetup
 
IoT with openHAB on pcDuino3B
IoT with openHAB on pcDuino3BIoT with openHAB on pcDuino3B
IoT with openHAB on pcDuino3B
 
Intel galileo gen 2
Intel galileo gen 2Intel galileo gen 2
Intel galileo gen 2
 
Microsoft's view of the Internet of Things (IoT) by Imran Shafqat
Microsoft's view of the Internet of Things (IoT) by Imran ShafqatMicrosoft's view of the Internet of Things (IoT) by Imran Shafqat
Microsoft's view of the Internet of Things (IoT) by Imran Shafqat
 
Internet of Things (IoT) reference architecture using Azure -MIC - Lahore
Internet of Things (IoT) reference architecture using Azure -MIC - LahoreInternet of Things (IoT) reference architecture using Azure -MIC - Lahore
Internet of Things (IoT) reference architecture using Azure -MIC - Lahore
 
Face tracking-arduino-robot
Face tracking-arduino-robotFace tracking-arduino-robot
Face tracking-arduino-robot
 
IoThings you don't even need to hack
IoThings you don't even need to hackIoThings you don't even need to hack
IoThings you don't even need to hack
 
Global AI on Virtual Tour Oslo - Anomaly Detection using ML.Net on a drone te...
Global AI on Virtual Tour Oslo - Anomaly Detection using ML.Net on a drone te...Global AI on Virtual Tour Oslo - Anomaly Detection using ML.Net on a drone te...
Global AI on Virtual Tour Oslo - Anomaly Detection using ML.Net on a drone te...
 
Webshield internet of things
Webshield internet of thingsWebshield internet of things
Webshield internet of things
 
Lukas Apa - Hacking Robots Before SkyNet
Lukas Apa - Hacking Robots Before SkyNet Lukas Apa - Hacking Robots Before SkyNet
Lukas Apa - Hacking Robots Before SkyNet
 
Arduino shield wifi-monitorizarelocuinta
Arduino shield wifi-monitorizarelocuintaArduino shield wifi-monitorizarelocuinta
Arduino shield wifi-monitorizarelocuinta
 

Recently uploaded

Kuma Meshes Part I - The basics - A tutorial
Kuma Meshes Part I - The basics - A tutorialKuma Meshes Part I - The basics - A tutorial
Kuma Meshes Part I - The basics - A tutorialJoão Esperancinha
 
[Webinar] SpiraTest - Setting New Standards in Quality Assurance
[Webinar] SpiraTest - Setting New Standards in Quality Assurance[Webinar] SpiraTest - Setting New Standards in Quality Assurance
[Webinar] SpiraTest - Setting New Standards in Quality AssuranceInflectra
 
React JS; all concepts. Contains React Features, JSX, functional & Class comp...
React JS; all concepts. Contains React Features, JSX, functional & Class comp...React JS; all concepts. Contains React Features, JSX, functional & Class comp...
React JS; all concepts. Contains React Features, JSX, functional & Class comp...Karmanjay Verma
 
All These Sophisticated Attacks, Can We Really Detect Them - PDF
All These Sophisticated Attacks, Can We Really Detect Them - PDFAll These Sophisticated Attacks, Can We Really Detect Them - PDF
All These Sophisticated Attacks, Can We Really Detect Them - PDFMichael Gough
 
Email Marketing Automation for Bonterra Impact Management (fka Social Solutio...
Email Marketing Automation for Bonterra Impact Management (fka Social Solutio...Email Marketing Automation for Bonterra Impact Management (fka Social Solutio...
Email Marketing Automation for Bonterra Impact Management (fka Social Solutio...Jeffrey Haguewood
 
Top 10 Hubspot Development Companies in 2024
Top 10 Hubspot Development Companies in 2024Top 10 Hubspot Development Companies in 2024
Top 10 Hubspot Development Companies in 2024TopCSSGallery
 
Design pattern talk by Kaya Weers - 2024 (v2)
Design pattern talk by Kaya Weers - 2024 (v2)Design pattern talk by Kaya Weers - 2024 (v2)
Design pattern talk by Kaya Weers - 2024 (v2)Kaya Weers
 
Transcript: New from BookNet Canada for 2024: BNC SalesData and LibraryData -...
Transcript: New from BookNet Canada for 2024: BNC SalesData and LibraryData -...Transcript: New from BookNet Canada for 2024: BNC SalesData and LibraryData -...
Transcript: New from BookNet Canada for 2024: BNC SalesData and LibraryData -...BookNet Canada
 
Digital Tools & AI in Career Development
Digital Tools & AI in Career DevelopmentDigital Tools & AI in Career Development
Digital Tools & AI in Career DevelopmentMahmoud Rabie
 
Deliver Latency Free Customer Experience
Deliver Latency Free Customer ExperienceDeliver Latency Free Customer Experience
Deliver Latency Free Customer ExperienceOpsTree solutions
 
Tampa BSides - The No BS SOC (slides from April 6, 2024 talk)
Tampa BSides - The No BS SOC (slides from April 6, 2024 talk)Tampa BSides - The No BS SOC (slides from April 6, 2024 talk)
Tampa BSides - The No BS SOC (slides from April 6, 2024 talk)Mark Simos
 
QMMS Lesson 2 - Using MS Excel Formula.pdf
QMMS Lesson 2 - Using MS Excel Formula.pdfQMMS Lesson 2 - Using MS Excel Formula.pdf
QMMS Lesson 2 - Using MS Excel Formula.pdfROWELL MARQUINA
 
Arizona Broadband Policy Past, Present, and Future Presentation 3/25/24
Arizona Broadband Policy Past, Present, and Future Presentation 3/25/24Arizona Broadband Policy Past, Present, and Future Presentation 3/25/24
Arizona Broadband Policy Past, Present, and Future Presentation 3/25/24Mark Goldstein
 
QCon London: Mastering long-running processes in modern architectures
QCon London: Mastering long-running processes in modern architecturesQCon London: Mastering long-running processes in modern architectures
QCon London: Mastering long-running processes in modern architecturesBernd Ruecker
 
Modern Roaming for Notes and Nomad – Cheaper Faster Better Stronger
Modern Roaming for Notes and Nomad – Cheaper Faster Better StrongerModern Roaming for Notes and Nomad – Cheaper Faster Better Stronger
Modern Roaming for Notes and Nomad – Cheaper Faster Better Strongerpanagenda
 
Microservices, Docker deploy and Microservices source code in C#
Microservices, Docker deploy and Microservices source code in C#Microservices, Docker deploy and Microservices source code in C#
Microservices, Docker deploy and Microservices source code in C#Karmanjay Verma
 
Generative AI - Gitex v1Generative AI - Gitex v1.pptx
Generative AI - Gitex v1Generative AI - Gitex v1.pptxGenerative AI - Gitex v1Generative AI - Gitex v1.pptx
Generative AI - Gitex v1Generative AI - Gitex v1.pptxfnnc6jmgwh
 
Long journey of Ruby standard library at RubyConf AU 2024
Long journey of Ruby standard library at RubyConf AU 2024Long journey of Ruby standard library at RubyConf AU 2024
Long journey of Ruby standard library at RubyConf AU 2024Hiroshi SHIBATA
 
So einfach geht modernes Roaming fuer Notes und Nomad.pdf
So einfach geht modernes Roaming fuer Notes und Nomad.pdfSo einfach geht modernes Roaming fuer Notes und Nomad.pdf
So einfach geht modernes Roaming fuer Notes und Nomad.pdfpanagenda
 
Landscape Catalogue 2024 Australia-1.pdf
Landscape Catalogue 2024 Australia-1.pdfLandscape Catalogue 2024 Australia-1.pdf
Landscape Catalogue 2024 Australia-1.pdfAarwolf Industries LLC
 

Recently uploaded (20)

Kuma Meshes Part I - The basics - A tutorial
Kuma Meshes Part I - The basics - A tutorialKuma Meshes Part I - The basics - A tutorial
Kuma Meshes Part I - The basics - A tutorial
 
[Webinar] SpiraTest - Setting New Standards in Quality Assurance
[Webinar] SpiraTest - Setting New Standards in Quality Assurance[Webinar] SpiraTest - Setting New Standards in Quality Assurance
[Webinar] SpiraTest - Setting New Standards in Quality Assurance
 
React JS; all concepts. Contains React Features, JSX, functional & Class comp...
React JS; all concepts. Contains React Features, JSX, functional & Class comp...React JS; all concepts. Contains React Features, JSX, functional & Class comp...
React JS; all concepts. Contains React Features, JSX, functional & Class comp...
 
All These Sophisticated Attacks, Can We Really Detect Them - PDF
All These Sophisticated Attacks, Can We Really Detect Them - PDFAll These Sophisticated Attacks, Can We Really Detect Them - PDF
All These Sophisticated Attacks, Can We Really Detect Them - PDF
 
Email Marketing Automation for Bonterra Impact Management (fka Social Solutio...
Email Marketing Automation for Bonterra Impact Management (fka Social Solutio...Email Marketing Automation for Bonterra Impact Management (fka Social Solutio...
Email Marketing Automation for Bonterra Impact Management (fka Social Solutio...
 
Top 10 Hubspot Development Companies in 2024
Top 10 Hubspot Development Companies in 2024Top 10 Hubspot Development Companies in 2024
Top 10 Hubspot Development Companies in 2024
 
Design pattern talk by Kaya Weers - 2024 (v2)
Design pattern talk by Kaya Weers - 2024 (v2)Design pattern talk by Kaya Weers - 2024 (v2)
Design pattern talk by Kaya Weers - 2024 (v2)
 
Transcript: New from BookNet Canada for 2024: BNC SalesData and LibraryData -...
Transcript: New from BookNet Canada for 2024: BNC SalesData and LibraryData -...Transcript: New from BookNet Canada for 2024: BNC SalesData and LibraryData -...
Transcript: New from BookNet Canada for 2024: BNC SalesData and LibraryData -...
 
Digital Tools & AI in Career Development
Digital Tools & AI in Career DevelopmentDigital Tools & AI in Career Development
Digital Tools & AI in Career Development
 
Deliver Latency Free Customer Experience
Deliver Latency Free Customer ExperienceDeliver Latency Free Customer Experience
Deliver Latency Free Customer Experience
 
Tampa BSides - The No BS SOC (slides from April 6, 2024 talk)
Tampa BSides - The No BS SOC (slides from April 6, 2024 talk)Tampa BSides - The No BS SOC (slides from April 6, 2024 talk)
Tampa BSides - The No BS SOC (slides from April 6, 2024 talk)
 
QMMS Lesson 2 - Using MS Excel Formula.pdf
QMMS Lesson 2 - Using MS Excel Formula.pdfQMMS Lesson 2 - Using MS Excel Formula.pdf
QMMS Lesson 2 - Using MS Excel Formula.pdf
 
Arizona Broadband Policy Past, Present, and Future Presentation 3/25/24
Arizona Broadband Policy Past, Present, and Future Presentation 3/25/24Arizona Broadband Policy Past, Present, and Future Presentation 3/25/24
Arizona Broadband Policy Past, Present, and Future Presentation 3/25/24
 
QCon London: Mastering long-running processes in modern architectures
QCon London: Mastering long-running processes in modern architecturesQCon London: Mastering long-running processes in modern architectures
QCon London: Mastering long-running processes in modern architectures
 
Modern Roaming for Notes and Nomad – Cheaper Faster Better Stronger
Modern Roaming for Notes and Nomad – Cheaper Faster Better StrongerModern Roaming for Notes and Nomad – Cheaper Faster Better Stronger
Modern Roaming for Notes and Nomad – Cheaper Faster Better Stronger
 
Microservices, Docker deploy and Microservices source code in C#
Microservices, Docker deploy and Microservices source code in C#Microservices, Docker deploy and Microservices source code in C#
Microservices, Docker deploy and Microservices source code in C#
 
Generative AI - Gitex v1Generative AI - Gitex v1.pptx
Generative AI - Gitex v1Generative AI - Gitex v1.pptxGenerative AI - Gitex v1Generative AI - Gitex v1.pptx
Generative AI - Gitex v1Generative AI - Gitex v1.pptx
 
Long journey of Ruby standard library at RubyConf AU 2024
Long journey of Ruby standard library at RubyConf AU 2024Long journey of Ruby standard library at RubyConf AU 2024
Long journey of Ruby standard library at RubyConf AU 2024
 
So einfach geht modernes Roaming fuer Notes und Nomad.pdf
So einfach geht modernes Roaming fuer Notes und Nomad.pdfSo einfach geht modernes Roaming fuer Notes und Nomad.pdf
So einfach geht modernes Roaming fuer Notes und Nomad.pdf
 
Landscape Catalogue 2024 Australia-1.pdf
Landscape Catalogue 2024 Australia-1.pdfLandscape Catalogue 2024 Australia-1.pdf
Landscape Catalogue 2024 Australia-1.pdf
 

Keyless Door Entry via Bluetooth Technology

  • 1. MOBILE PAYMENTS, E-COMMERCE SECURITY, AND CRYPTOCURRENCY - 30319 PROJECT DATE CLIENT JUNE 10TH, 2015 KEYLESS DOOR ENTRY VIA BLUETOOTH TECHNOLOGY BY MATT WEPPLER
  • 2. Problem We live in an increasing & ever evolving mobile world. Yet some things are taking longer than other to catch up.
  • 3. Implementation Bluetooth technology (NFC to follow) Mobile app Android (iOS to follow) Arduino (prototyping kit), microcontroller, bluetooth radio, servo Existing single cylinder deadbolt lock.
  • 5. Hardware Single Cylinder Deadbolt Mobile Phone w/Integrated Bluetooth Arduino Bluetooth Module Servo
  • 7. Android App Scan for device(s) Pair with device(s) Lock/Unlock deadbolt
  • 9. Write the Android app Open a socket to the bluetooth radio public  void  openBTSocket()  throws  IOException  {          mBTSocket  =  mBTDevice.createRfcommSocketToServiceRecord(uuid);          mBTSocket.connect();          mOutputStream  =  mBTSocket.getOutputStream();          mInputStream  =  mBTSocket.getInputStream();          listenForIncomingBTData();          Toast.makeText(getApplicationContext(),  “Ready  to  send  commands",  Toast.LENGTH_SHORT).show();   }   public  void  listenForIncomingBTData()  {      ...      commandResult.setText(data);      ...   }   public  void  sendLockCommandToBTHW(View  view)  throws  IOException  {          mOutputStream.write(msg.getBytes());          Toast.makeText(getApplicationContext(),  "Lock  Command  Sent",  Toast.LENGTH_SHORT).show();   }   public  void  sendUnlockCommandToBTHW(View  view)  throws  IOException  {          mOutputStream.write(msg.getBytes());          Toast.makeText(getApplicationContext(),  "Unlock  Command  Sent",  Toast.LENGTH_SHORT).show();   }
  • 10.
  • 11. Write the Arduino sketch int  UNLOCK_POSITION  =  0;   int  LOCK_POSITION      =  90;   int  btRxPin    =  10;  //  bt  RX-­‐I  pin  <-­‐-­‐>  arduino  d10  pin  (green  jumper)   int  btTxPin    =  11;  //  bt  TX-­‐O  pin  <-­‐-­‐>  arduino  d11  pin  (yellow  jumper)   int  servoPin  =  9;    //  servo  pin  <-­‐-­‐>  arduino  d9  pin  (yellow  jumper)   int  servoPos  =  UNLOCK_POSITION; void  listenForCommands()  {      if  (btSerial.available())  {          handleBluetoothCommand();      }  else  if  (Serial.available()  >  0)  {          handleSerialCommand();      }  else  {          //Serial.println("UNKNOWN  HANDLER");      }   } Setup variables to store some key values. Listen for input from a paired bluetooth device.
  • 12. Handle a “LOCK” command Handle an “UNLOCK” command void  lockHardware()  {      if  (servoPos  !=  LOCK_POSITION)  {          for  (servoPos  =  0;  servoPos  <  LOCK_POSITION;  servoPos++)  {              servo.write(servoPos);              delay(5);          }          servoPos  =  LOCK_POSITION;      }   } void  unlockHardware()  {      if  (servoPos  !=  UNLOCK_POSITION)  {          for  (servoPos  =  LOCK_POSITION;  servoPos  >  UNLOCK_POSITION;  servoPos-­‐-­‐)  {              servo.write(servoPos);              delay(5);          }          servoPos  =  UNLOCK_POSITION;      }   }
  • 13.
  • 14. Support frame to hold the Lock & Electronics
  • 15. …and now the moment we’ve all been waiting for
  • 16. Challenges Faced No experience developing with bluetooth technologies. No Arduino experience, but the community is very helpful. Servos… I went through 3 of them (stripped the gears) Prototype Costs $$$