SlideShare a Scribd company logo
1 of 8
Download to read offline
Resistor-Capacitor Timing Basics 
In electronics, sometimes we want to keep a device on for a certain amount of time 
even when an electrical switch is turned off. Ordinary pushbuttons used to turn 
electronic devices on and off can easily be operated by a timed delay switch. How 
awesome would it be to create such a device to delay turning off a simple LED? Such 
a gadget could be used to trick your friends, family, or even the local Makerspace 
when they see the LED staying on after the pushbutton has been released. With a 
few electronic components from the Ultimate Microcontroller Pack, you can make 
an LED (light-emitting diode) stay on for a few extra seconds when a pushbutton 
switch is turned off. Figure 1-1 shows an assembled Trick Switch. The electronic 
components required to build the Trick Switch are shown in the Parts List. 
Parts List 
• Arduino microcontroller 
• SW1: mini pushbutton 
• LED1: red LED 
• C1: 100 uF electrolytic capacitor 
• R1: 10K ohm resistor (brown, black, orange stripes) 
• R2: 330 ohm resistor (orange, orange, brown stripes) 
• Full-size clear breadboard 
1 
The Trick Switch 1
Figure 1-1. Trick Switch circuit built on a full-size clear breadboard (both the 100 uF electrolytic 
capacitor and red LED negative pins are wired to ground) 
Tech Note 
You can create your own electrical circuits and test them using dia-grams 
with an online simulator called Circuit Lab. 
Let’s Build a Trick Switch 
When you press the pushbutton switch on this device, the LED turns on. The ca-pacitor 
will begin storing electrical energy from the +5VDC power supply circuit of 
the Arduino. Releasing the pushbutton switch cuts off the flow of electricity from 
the source, but the energy stored in the capacitor keeps the Arduino running for a 
few extra seconds. The Arduino keeps the LED lit until the capacitor’s stored energy 
is empty. You can build the Trick Switch using the electronic components from the 
Parts List and the Fritzing wiring diagram shown in Figure 1-2. Here are the steps 
required to build the electronic device: 
1. From the Ultimate Microcontroller Pack, place the required parts on your work-bench 
or lab tabletop. 
2. Wire the electronic parts using the Fritzing wiring diagram of Figure 1-2 or the 
actual Trick Switch device shown in Figure 1-1. 
2 Make: Basic Arduino Projects
3. Type the Pushbutton sketch shown in Example 1-1 into the Arduino text editor. 
4. Upload the Pushbutton sketch to the Arduino. 
5. Press the mini pushbutton for a moment. The red LED turns on. After one to 
two minutes, the red LED will turn off. 
Figure 1-2. Trick Switch Fritzing diagram 
Troubleshooting Tip 
If the Trick Switch device doesn’t work, check for incorrect resistor 
values, incorrect wiring, sketch typos, and improper orientation of 
polarized electronic components (the LED and capacitor). 
Example 1-1. Pushbutton sketch 
/* 
Pushbutton Sketch 
Reads the capacitor voltage at digital pin 2 and turns on and off a light-emitting 
diode (LED) connected to digital pin 12. 
17 Nov 2012 
Chapter 1: The Trick Switch 3
by Don Wilcher 
*/ 
// constants won't change; they're used here to 
// set pin numbers: 
const int buttonPin = 2; // the number of the pushbutton pin 
const int ledPin = 12; // the number of the LED pin 
// variables will change: 
int buttonStatus = 0; // variable for reading the pushbutton status 
void setup() { 
// initialize the LED pin as an output: 
pinMode(ledPin, OUTPUT); 
// initialize the pushbutton pin as an input: 
pinMode(buttonPin, INPUT); 
} 
void loop(){ 
// read the status of the pushbutton value: 
buttonStatus = digitalRead(buttonPin); 
// check if the pushbutton is pressed 
// if it is, the buttonEvent is HIGH: 
if (buttonStatus == HIGH) { 
// turn LED on: 
digitalWrite(ledPin, HIGH); 
} 
else { 
// turn LED off: 
digitalWrite(ledPin, LOW); 
} 
} 
Tech Note 
The ledPin value can be changed to 13 to operate the onboard LED. 
Trick Switch with On/Off Indicators 
In developing new products, electronics designers are always improving designs by 
adding features and functions that excite the customer. The Trick Switch device you 
built can be improved by adding an LED indicator. This LED indicates when the Trick 
Switch timing cycle is done. Figure 1-3 shows you where to add a green LED to the 
Trick Switch on the full-size clear breadboard. 
4 Make: Basic Arduino Projects
Figure 1-3. Adding a green LED indicator to the Trick Switch circuit built on a full-size clear 
breadboard 
To complete the new product design, you need to make a few changes to the Push-button 
sketch. Modify the sketch using the code changes shown in Example 1-2. 
Example 1-2. Pushbutton sketch modified to include LED indicators 
// constants won't change; they're used here to 
// set pin numbers: 
const int buttonPin = 2; // the number of the pushbutton pin 
const int ledPin = 12; // the number of the LED pin 
const int ledPin13 = 13; // onboard LED 
void setup() { 
// initialize the LED pins as outputs: 
pinMode(ledPin, OUTPUT); 
pinMode(ledPin13, OUTPUT); 
// initialize the pushbutton pin as an input: 
pinMode(buttonPin, INPUT); 
} 
void loop(){ 
// read the state of the pushbutton value: 
int buttonStatus; 
buttonStatus = digitalRead(buttonPin); 
// check if the pushbutton is pressed 
// if it is, the buttonStatus is HIGH: 
if (buttonStatus == HIGH) { 
Chapter 1: The Trick Switch 5
// turn LED on: 
digitalWrite(ledPin, HIGH); 
// turn off onboard LED: 
digitalWrite(ledPin13,LOW); 
} 
else { 
// turn LED off: 
digitalWrite(ledPin, LOW); 
// turn on onboard LED: 
digitalWrite(ledPin13, HIGH); 
} 
} 
After you’ve saved the sketch changes and uploaded them to the Arduino, the green 
LED will turn on. When you press the mini pushbutton, the green LED will turn off, 
and the red LED will turn on. Pretty awesome stuff. Enjoy! 
The block diagram in Figure 1-4 shows the electronic component blocks and the 
electrical signal flow for the Trick Switch. A Fritzing electronic circuit schematic di-agram 
of the switch is shown in Figure 1-5. Electronic circuit schematic diagrams 
are used by electrical/electronic engineers to design and build cool electronic prod-ucts 
for society. 
Figure 1-4. Trick Switch block diagram 
Something to Think About 
Try different resistor and capacitor values and see what happens. Can you detect 
any patterns? How can a small piezo buzzer be used with the Trick Switch? 
6 Make: Basic Arduino Projects
Figure 1-5. Trick Switch circuit schematic diagram 
Chapter 1: The Trick Switch 7

More Related Content

What's hot

Transistors
TransistorsTransistors
Transistors
escalon
 
IOT based irrigation system
IOT based irrigation systemIOT based irrigation system
IOT based irrigation system
Shanjedul Hassan
 
AGRICULTURE PROJECTS-EMBEDDED SYSTEM BASED GSM COMMUNICATION FOR AUTOMATIC IR...
AGRICULTURE PROJECTS-EMBEDDED SYSTEM BASED GSM COMMUNICATION FOR AUTOMATIC IR...AGRICULTURE PROJECTS-EMBEDDED SYSTEM BASED GSM COMMUNICATION FOR AUTOMATIC IR...
AGRICULTURE PROJECTS-EMBEDDED SYSTEM BASED GSM COMMUNICATION FOR AUTOMATIC IR...
ASHOKKUMAR RAMAR
 
Introduction to sensors & transducers by Bapi Kumar Das
Introduction to sensors & transducers by Bapi Kumar DasIntroduction to sensors & transducers by Bapi Kumar Das
Introduction to sensors & transducers by Bapi Kumar Das
B.k. Das
 

What's hot (20)

Arduino bt mobile robot r2.0
Arduino bt mobile robot r2.0Arduino bt mobile robot r2.0
Arduino bt mobile robot r2.0
 
Transistors
TransistorsTransistors
Transistors
 
IOT based irrigation system
IOT based irrigation systemIOT based irrigation system
IOT based irrigation system
 
fan speed control by using temperature sensor
fan speed control by using temperature sensorfan speed control by using temperature sensor
fan speed control by using temperature sensor
 
Clap switch
Clap switchClap switch
Clap switch
 
Ardublock tutorial
Ardublock tutorialArdublock tutorial
Ardublock tutorial
 
Pcb designing
Pcb designingPcb designing
Pcb designing
 
Thyristor Based motor speed control system
Thyristor Based motor speed control systemThyristor Based motor speed control system
Thyristor Based motor speed control system
 
Design and Implementation of IOT Based Smart Power Monitoring and Management ...
Design and Implementation of IOT Based Smart Power Monitoring and Management ...Design and Implementation of IOT Based Smart Power Monitoring and Management ...
Design and Implementation of IOT Based Smart Power Monitoring and Management ...
 
home automation using esp8266
home automation using esp8266home automation using esp8266
home automation using esp8266
 
Inductive Transducers.pdf
Inductive Transducers.pdfInductive Transducers.pdf
Inductive Transducers.pdf
 
Thermistors
ThermistorsThermistors
Thermistors
 
AGRICULTURE PROJECTS-EMBEDDED SYSTEM BASED GSM COMMUNICATION FOR AUTOMATIC IR...
AGRICULTURE PROJECTS-EMBEDDED SYSTEM BASED GSM COMMUNICATION FOR AUTOMATIC IR...AGRICULTURE PROJECTS-EMBEDDED SYSTEM BASED GSM COMMUNICATION FOR AUTOMATIC IR...
AGRICULTURE PROJECTS-EMBEDDED SYSTEM BASED GSM COMMUNICATION FOR AUTOMATIC IR...
 
Light sensors seminar
Light sensors seminarLight sensors seminar
Light sensors seminar
 
Home automation using blynk
Home automation using blynkHome automation using blynk
Home automation using blynk
 
Breadboard
BreadboardBreadboard
Breadboard
 
Ceis114 final joshua_brown
Ceis114 final joshua_brownCeis114 final joshua_brown
Ceis114 final joshua_brown
 
Home automation using blynk app with fan direction control and displaying sta...
Home automation using blynk app with fan direction control and displaying sta...Home automation using blynk app with fan direction control and displaying sta...
Home automation using blynk app with fan direction control and displaying sta...
 
IRJET- Smart Water Monitoring System using IoT
IRJET- Smart Water Monitoring System using IoTIRJET- Smart Water Monitoring System using IoT
IRJET- Smart Water Monitoring System using IoT
 
Introduction to sensors & transducers by Bapi Kumar Das
Introduction to sensors & transducers by Bapi Kumar DasIntroduction to sensors & transducers by Bapi Kumar Das
Introduction to sensors & transducers by Bapi Kumar Das
 

Similar to Arduino - CH 1: The Trick Switch

Infrared Temperature Pen
Infrared Temperature PenInfrared Temperature Pen
Infrared Temperature Pen
Charlie Aylward
 
Arduino: Arduino para dummies 2 edición por Wiley Brand parte 2
Arduino: Arduino para dummies 2 edición por Wiley Brand parte 2Arduino: Arduino para dummies 2 edición por Wiley Brand parte 2
Arduino: Arduino para dummies 2 edición por Wiley Brand parte 2
SANTIAGO PABLO ALBERTO
 
Robotics Session day 1
Robotics Session day 1Robotics Session day 1
Robotics Session day 1
Afzal Ahmad
 
LEDs and DIPs Switches
LEDs and DIPs SwitchesLEDs and DIPs Switches
LEDs and DIPs Switches
Bach Nguyen
 

Similar to Arduino - CH 1: The Trick Switch (20)

Electronz_Chapter_2.pptx
Electronz_Chapter_2.pptxElectronz_Chapter_2.pptx
Electronz_Chapter_2.pptx
 
How to hack electronics
How to hack electronics How to hack electronics
How to hack electronics
 
Arduino electronics cookbook
Arduino electronics cookbookArduino electronics cookbook
Arduino electronics cookbook
 
ARDUINO BASED TIME AND TEMPERATURE DISPLAY
ARDUINO BASED TIME AND TEMPERATURE DISPLAY ARDUINO BASED TIME AND TEMPERATURE DISPLAY
ARDUINO BASED TIME AND TEMPERATURE DISPLAY
 
Basic arduino sketch example
Basic arduino sketch exampleBasic arduino sketch example
Basic arduino sketch example
 
Bidirect visitor counter
Bidirect visitor counterBidirect visitor counter
Bidirect visitor counter
 
Arduino
ArduinoArduino
Arduino
 
publish manual
publish manualpublish manual
publish manual
 
Infrared Temperature Pen
Infrared Temperature PenInfrared Temperature Pen
Infrared Temperature Pen
 
Arduino: Arduino para dummies 2 edición por Wiley Brand parte 2
Arduino: Arduino para dummies 2 edición por Wiley Brand parte 2Arduino: Arduino para dummies 2 edición por Wiley Brand parte 2
Arduino: Arduino para dummies 2 edición por Wiley Brand parte 2
 
Robotics Session day 1
Robotics Session day 1Robotics Session day 1
Robotics Session day 1
 
Arduino Comic-Jody Culkin-2011
Arduino Comic-Jody Culkin-2011Arduino Comic-Jody Culkin-2011
Arduino Comic-Jody Culkin-2011
 
Arduino comic v0004
Arduino comic v0004Arduino comic v0004
Arduino comic v0004
 
home automation digital
home automation digitalhome automation digital
home automation digital
 
Arduino workshop sensors
Arduino workshop sensorsArduino workshop sensors
Arduino workshop sensors
 
LEDs and DIPs Switches
LEDs and DIPs SwitchesLEDs and DIPs Switches
LEDs and DIPs Switches
 
water level edit.docx
water level edit.docxwater level edit.docx
water level edit.docx
 
IoT Basics with few Embedded System Connections for sensors
IoT Basics with few Embedded System Connections for sensorsIoT Basics with few Embedded System Connections for sensors
IoT Basics with few Embedded System Connections for sensors
 
Embedded system application
Embedded system applicationEmbedded system application
Embedded system application
 
Udayan_219209024_DA1001_FTP.pptx
Udayan_219209024_DA1001_FTP.pptxUdayan_219209024_DA1001_FTP.pptx
Udayan_219209024_DA1001_FTP.pptx
 

More from Ratzman III (20)

Tugas Tutorial EKSI4202 Hukum Pajak
Tugas Tutorial EKSI4202 Hukum PajakTugas Tutorial EKSI4202 Hukum Pajak
Tugas Tutorial EKSI4202 Hukum Pajak
 
Tugas Wajib Tutorial I - EKSI4202 - Hukum Pajak
Tugas Wajib Tutorial I  -  EKSI4202 - Hukum PajakTugas Wajib Tutorial I  -  EKSI4202 - Hukum Pajak
Tugas Wajib Tutorial I - EKSI4202 - Hukum Pajak
 
Review Artikel Tinjauan Pustaka
Review Artikel Tinjauan PustakaReview Artikel Tinjauan Pustaka
Review Artikel Tinjauan Pustaka
 
MICRO TEACHING IDIK4013-Memanfaatkan Pustaka dalam Penulisan Karya Ilmiah
MICRO TEACHING IDIK4013-Memanfaatkan Pustaka dalam Penulisan Karya IlmiahMICRO TEACHING IDIK4013-Memanfaatkan Pustaka dalam Penulisan Karya Ilmiah
MICRO TEACHING IDIK4013-Memanfaatkan Pustaka dalam Penulisan Karya Ilmiah
 
Format laporan Tutor Universitas Terbuka 2014
Format laporan Tutor Universitas Terbuka 2014Format laporan Tutor Universitas Terbuka 2014
Format laporan Tutor Universitas Terbuka 2014
 
Bab 3 - Kalkulus Relasional
Bab 3 -  Kalkulus RelasionalBab 3 -  Kalkulus Relasional
Bab 3 - Kalkulus Relasional
 
Bab 2 Aljabar Relasional
Bab 2   Aljabar RelasionalBab 2   Aljabar Relasional
Bab 2 Aljabar Relasional
 
Bab 1 RDBMS Review
Bab 1   RDBMS ReviewBab 1   RDBMS Review
Bab 1 RDBMS Review
 
Kisi kisi basis data uts
Kisi kisi basis data utsKisi kisi basis data uts
Kisi kisi basis data uts
 
Kisi kisi basis data uts
Kisi kisi basis data utsKisi kisi basis data uts
Kisi kisi basis data uts
 
Modul my sql tutorial part 6
Modul my sql tutorial part 6Modul my sql tutorial part 6
Modul my sql tutorial part 6
 
Nilai lab 01pt3
Nilai lab 01pt3Nilai lab 01pt3
Nilai lab 01pt3
 
Format sap
Format sapFormat sap
Format sap
 
Tugas i
Tugas iTugas i
Tugas i
 
Modul my sql tutorial part 5
Modul my sql tutorial part 5Modul my sql tutorial part 5
Modul my sql tutorial part 5
 
1088
10881088
1088
 
1152
11521152
1152
 
Pengabdian 2
Pengabdian 2Pengabdian 2
Pengabdian 2
 
Format Pengabdian Masyarakat
Format Pengabdian MasyarakatFormat Pengabdian Masyarakat
Format Pengabdian Masyarakat
 
Format makalah knsi 2013
Format makalah knsi 2013Format makalah knsi 2013
Format makalah knsi 2013
 

Recently uploaded

Gardella_PRCampaignConclusion Pitch Letter
Gardella_PRCampaignConclusion Pitch LetterGardella_PRCampaignConclusion Pitch Letter
Gardella_PRCampaignConclusion Pitch Letter
MateoGardella
 
1029-Danh muc Sach Giao Khoa khoi 6.pdf
1029-Danh muc Sach Giao Khoa khoi  6.pdf1029-Danh muc Sach Giao Khoa khoi  6.pdf
1029-Danh muc Sach Giao Khoa khoi 6.pdf
QucHHunhnh
 
1029 - Danh muc Sach Giao Khoa 10 . pdf
1029 -  Danh muc Sach Giao Khoa 10 . pdf1029 -  Danh muc Sach Giao Khoa 10 . pdf
1029 - Danh muc Sach Giao Khoa 10 . pdf
QucHHunhnh
 

Recently uploaded (20)

Advanced Views - Calendar View in Odoo 17
Advanced Views - Calendar View in Odoo 17Advanced Views - Calendar View in Odoo 17
Advanced Views - Calendar View in Odoo 17
 
ICT Role in 21st Century Education & its Challenges.pptx
ICT Role in 21st Century Education & its Challenges.pptxICT Role in 21st Century Education & its Challenges.pptx
ICT Role in 21st Century Education & its Challenges.pptx
 
Unit-IV- Pharma. Marketing Channels.pptx
Unit-IV- Pharma. Marketing Channels.pptxUnit-IV- Pharma. Marketing Channels.pptx
Unit-IV- Pharma. Marketing Channels.pptx
 
Holdier Curriculum Vitae (April 2024).pdf
Holdier Curriculum Vitae (April 2024).pdfHoldier Curriculum Vitae (April 2024).pdf
Holdier Curriculum Vitae (April 2024).pdf
 
psychiatric nursing HISTORY COLLECTION .docx
psychiatric  nursing HISTORY  COLLECTION  .docxpsychiatric  nursing HISTORY  COLLECTION  .docx
psychiatric nursing HISTORY COLLECTION .docx
 
Basic Civil Engineering first year Notes- Chapter 4 Building.pptx
Basic Civil Engineering first year Notes- Chapter 4 Building.pptxBasic Civil Engineering first year Notes- Chapter 4 Building.pptx
Basic Civil Engineering first year Notes- Chapter 4 Building.pptx
 
PROCESS RECORDING FORMAT.docx
PROCESS      RECORDING        FORMAT.docxPROCESS      RECORDING        FORMAT.docx
PROCESS RECORDING FORMAT.docx
 
Unit-IV; Professional Sales Representative (PSR).pptx
Unit-IV; Professional Sales Representative (PSR).pptxUnit-IV; Professional Sales Representative (PSR).pptx
Unit-IV; Professional Sales Representative (PSR).pptx
 
Gardella_PRCampaignConclusion Pitch Letter
Gardella_PRCampaignConclusion Pitch LetterGardella_PRCampaignConclusion Pitch Letter
Gardella_PRCampaignConclusion Pitch Letter
 
Mixin Classes in Odoo 17 How to Extend Models Using Mixin Classes
Mixin Classes in Odoo 17  How to Extend Models Using Mixin ClassesMixin Classes in Odoo 17  How to Extend Models Using Mixin Classes
Mixin Classes in Odoo 17 How to Extend Models Using Mixin Classes
 
1029-Danh muc Sach Giao Khoa khoi 6.pdf
1029-Danh muc Sach Giao Khoa khoi  6.pdf1029-Danh muc Sach Giao Khoa khoi  6.pdf
1029-Danh muc Sach Giao Khoa khoi 6.pdf
 
Mattingly "AI & Prompt Design: Structured Data, Assistants, & RAG"
Mattingly "AI & Prompt Design: Structured Data, Assistants, & RAG"Mattingly "AI & Prompt Design: Structured Data, Assistants, & RAG"
Mattingly "AI & Prompt Design: Structured Data, Assistants, & RAG"
 
1029 - Danh muc Sach Giao Khoa 10 . pdf
1029 -  Danh muc Sach Giao Khoa 10 . pdf1029 -  Danh muc Sach Giao Khoa 10 . pdf
1029 - Danh muc Sach Giao Khoa 10 . pdf
 
Application orientated numerical on hev.ppt
Application orientated numerical on hev.pptApplication orientated numerical on hev.ppt
Application orientated numerical on hev.ppt
 
microwave assisted reaction. General introduction
microwave assisted reaction. General introductionmicrowave assisted reaction. General introduction
microwave assisted reaction. General introduction
 
Nutritional Needs Presentation - HLTH 104
Nutritional Needs Presentation - HLTH 104Nutritional Needs Presentation - HLTH 104
Nutritional Needs Presentation - HLTH 104
 
SECOND SEMESTER TOPIC COVERAGE SY 2023-2024 Trends, Networks, and Critical Th...
SECOND SEMESTER TOPIC COVERAGE SY 2023-2024 Trends, Networks, and Critical Th...SECOND SEMESTER TOPIC COVERAGE SY 2023-2024 Trends, Networks, and Critical Th...
SECOND SEMESTER TOPIC COVERAGE SY 2023-2024 Trends, Networks, and Critical Th...
 
Web & Social Media Analytics Previous Year Question Paper.pdf
Web & Social Media Analytics Previous Year Question Paper.pdfWeb & Social Media Analytics Previous Year Question Paper.pdf
Web & Social Media Analytics Previous Year Question Paper.pdf
 
INDIA QUIZ 2024 RLAC DELHI UNIVERSITY.pptx
INDIA QUIZ 2024 RLAC DELHI UNIVERSITY.pptxINDIA QUIZ 2024 RLAC DELHI UNIVERSITY.pptx
INDIA QUIZ 2024 RLAC DELHI UNIVERSITY.pptx
 
Measures of Central Tendency: Mean, Median and Mode
Measures of Central Tendency: Mean, Median and ModeMeasures of Central Tendency: Mean, Median and Mode
Measures of Central Tendency: Mean, Median and Mode
 

Arduino - CH 1: The Trick Switch

  • 1.
  • 2. Resistor-Capacitor Timing Basics In electronics, sometimes we want to keep a device on for a certain amount of time even when an electrical switch is turned off. Ordinary pushbuttons used to turn electronic devices on and off can easily be operated by a timed delay switch. How awesome would it be to create such a device to delay turning off a simple LED? Such a gadget could be used to trick your friends, family, or even the local Makerspace when they see the LED staying on after the pushbutton has been released. With a few electronic components from the Ultimate Microcontroller Pack, you can make an LED (light-emitting diode) stay on for a few extra seconds when a pushbutton switch is turned off. Figure 1-1 shows an assembled Trick Switch. The electronic components required to build the Trick Switch are shown in the Parts List. Parts List • Arduino microcontroller • SW1: mini pushbutton • LED1: red LED • C1: 100 uF electrolytic capacitor • R1: 10K ohm resistor (brown, black, orange stripes) • R2: 330 ohm resistor (orange, orange, brown stripes) • Full-size clear breadboard 1 The Trick Switch 1
  • 3. Figure 1-1. Trick Switch circuit built on a full-size clear breadboard (both the 100 uF electrolytic capacitor and red LED negative pins are wired to ground) Tech Note You can create your own electrical circuits and test them using dia-grams with an online simulator called Circuit Lab. Let’s Build a Trick Switch When you press the pushbutton switch on this device, the LED turns on. The ca-pacitor will begin storing electrical energy from the +5VDC power supply circuit of the Arduino. Releasing the pushbutton switch cuts off the flow of electricity from the source, but the energy stored in the capacitor keeps the Arduino running for a few extra seconds. The Arduino keeps the LED lit until the capacitor’s stored energy is empty. You can build the Trick Switch using the electronic components from the Parts List and the Fritzing wiring diagram shown in Figure 1-2. Here are the steps required to build the electronic device: 1. From the Ultimate Microcontroller Pack, place the required parts on your work-bench or lab tabletop. 2. Wire the electronic parts using the Fritzing wiring diagram of Figure 1-2 or the actual Trick Switch device shown in Figure 1-1. 2 Make: Basic Arduino Projects
  • 4. 3. Type the Pushbutton sketch shown in Example 1-1 into the Arduino text editor. 4. Upload the Pushbutton sketch to the Arduino. 5. Press the mini pushbutton for a moment. The red LED turns on. After one to two minutes, the red LED will turn off. Figure 1-2. Trick Switch Fritzing diagram Troubleshooting Tip If the Trick Switch device doesn’t work, check for incorrect resistor values, incorrect wiring, sketch typos, and improper orientation of polarized electronic components (the LED and capacitor). Example 1-1. Pushbutton sketch /* Pushbutton Sketch Reads the capacitor voltage at digital pin 2 and turns on and off a light-emitting diode (LED) connected to digital pin 12. 17 Nov 2012 Chapter 1: The Trick Switch 3
  • 5. by Don Wilcher */ // constants won't change; they're used here to // set pin numbers: const int buttonPin = 2; // the number of the pushbutton pin const int ledPin = 12; // the number of the LED pin // variables will change: int buttonStatus = 0; // variable for reading the pushbutton status void setup() { // initialize the LED pin as an output: pinMode(ledPin, OUTPUT); // initialize the pushbutton pin as an input: pinMode(buttonPin, INPUT); } void loop(){ // read the status of the pushbutton value: buttonStatus = digitalRead(buttonPin); // check if the pushbutton is pressed // if it is, the buttonEvent is HIGH: if (buttonStatus == HIGH) { // turn LED on: digitalWrite(ledPin, HIGH); } else { // turn LED off: digitalWrite(ledPin, LOW); } } Tech Note The ledPin value can be changed to 13 to operate the onboard LED. Trick Switch with On/Off Indicators In developing new products, electronics designers are always improving designs by adding features and functions that excite the customer. The Trick Switch device you built can be improved by adding an LED indicator. This LED indicates when the Trick Switch timing cycle is done. Figure 1-3 shows you where to add a green LED to the Trick Switch on the full-size clear breadboard. 4 Make: Basic Arduino Projects
  • 6. Figure 1-3. Adding a green LED indicator to the Trick Switch circuit built on a full-size clear breadboard To complete the new product design, you need to make a few changes to the Push-button sketch. Modify the sketch using the code changes shown in Example 1-2. Example 1-2. Pushbutton sketch modified to include LED indicators // constants won't change; they're used here to // set pin numbers: const int buttonPin = 2; // the number of the pushbutton pin const int ledPin = 12; // the number of the LED pin const int ledPin13 = 13; // onboard LED void setup() { // initialize the LED pins as outputs: pinMode(ledPin, OUTPUT); pinMode(ledPin13, OUTPUT); // initialize the pushbutton pin as an input: pinMode(buttonPin, INPUT); } void loop(){ // read the state of the pushbutton value: int buttonStatus; buttonStatus = digitalRead(buttonPin); // check if the pushbutton is pressed // if it is, the buttonStatus is HIGH: if (buttonStatus == HIGH) { Chapter 1: The Trick Switch 5
  • 7. // turn LED on: digitalWrite(ledPin, HIGH); // turn off onboard LED: digitalWrite(ledPin13,LOW); } else { // turn LED off: digitalWrite(ledPin, LOW); // turn on onboard LED: digitalWrite(ledPin13, HIGH); } } After you’ve saved the sketch changes and uploaded them to the Arduino, the green LED will turn on. When you press the mini pushbutton, the green LED will turn off, and the red LED will turn on. Pretty awesome stuff. Enjoy! The block diagram in Figure 1-4 shows the electronic component blocks and the electrical signal flow for the Trick Switch. A Fritzing electronic circuit schematic di-agram of the switch is shown in Figure 1-5. Electronic circuit schematic diagrams are used by electrical/electronic engineers to design and build cool electronic prod-ucts for society. Figure 1-4. Trick Switch block diagram Something to Think About Try different resistor and capacitor values and see what happens. Can you detect any patterns? How can a small piezo buzzer be used with the Trick Switch? 6 Make: Basic Arduino Projects
  • 8. Figure 1-5. Trick Switch circuit schematic diagram Chapter 1: The Trick Switch 7