SlideShare a Scribd company logo
2
What is ARDUINO?
Arduino is an open-source electronics platform based
on easy-to-use hardware and software.
• Microcontroller Platform: Arduino boards control
sensors and actuators, enabling interaction with the
physical world.
• Connectivity: Arduino can connect to the internet
using modules like Wi-Fi (ESP8266, ESP32),
Bluetooth, or GSM for IoT applications.
• Sensing and Actuating: It gathers data from sensors
(e.g., temperature, humidity) and controls devices like
OMega TechEd
Most read
3
What is ARDUINO?
• Software and Programming: Arduino uses its
own programming language (based on C++) and
integrates with cloud services or IoT platforms.
• Prototyping: Ideal for rapid development of IoT
devices due to its low cost, simplicity, and large
community support.
• IoT Applications: Used in smart homes,
wearables, health monitoring, industrial
automation, and smart agriculture.
OMega TechEd
Most read
4
Developing On The Arduino
OMega TechEd
Integrated
Development
Environment
Pushing Code
Operating
System
Language Debugging
Most read
Arduino, Developing on
the Arduino
@omega.teched
@omega_teched
Prototyping
Embedded Devices
What is ARDUINO?
Arduino is an open-source electronics platform based
on easy-to-use hardware and software.
• Microcontroller Platform: Arduino boards control
sensors and actuators, enabling interaction with the
physical world.
• Connectivity: Arduino can connect to the internet
using modules like Wi-Fi (ESP8266, ESP32),
Bluetooth, or GSM for IoT applications.
• Sensing and Actuating: It gathers data from sensors
(e.g., temperature, humidity) and controls devices like
OMega TechEd
What is ARDUINO?
• Software and Programming: Arduino uses its
own programming language (based on C++) and
integrates with cloud services or IoT platforms.
• Prototyping: Ideal for rapid development of IoT
devices due to its low cost, simplicity, and large
community support.
• IoT Applications: Used in smart homes,
wearables, health monitoring, industrial
automation, and smart agriculture.
OMega TechEd
Developing On The Arduino
OMega TechEd
Integrated
Development
Environment
Pushing Code
Operating
System
Language Debugging
1. Integrated Development Environment
The Arduino IDE is a simple program we use to
write and upload code to an Arduino board. It’s easy
to understand, with most projects having just one
file of code. We can check the code for mistakes by
clicking "Verify" and upload it to the board by
clicking "Upload." The IDE is designed to be
straightforward, so we can focus on building and
testing projects quickly.
OMega TechEd
2. Pushing Code
1. Connect via USB: We connect the Arduino board to the computer using a USB
cable. Sometimes, we might face driver or USB permission issues, but they are
typically resolved quickly.
2. Select Serial Port and Board: In the Arduino IDE, we choose the correct serial port
and board type to match our setup.
3. Compile the Code: The IDE first checks and compiles the code, reporting any
errors.
4. Upload to Arduino: If the code compiles successfully, it is uploaded to the Arduino
and stored in its flash memory.
5. Arduino Reboots: The Arduino automatically reboots and starts running the newly
uploaded code.
OMega TechEd
3. Operating System
1. No Default OS: The Arduino runs only a bootloader, not a traditional operating system.
2. Code Execution: It executes the uploaded code continuously until powered off or if the
code crashes.
3. Uploading an OS: We can install lightweight real-time operating systems (RTOS) like
FreeRTOS or DuinOS for advanced features.
4. Multitasking: An RTOS provides built-in support for multitasking, allowing multiple
processes to run at the same time.
5. Compiling Without IDE: We can compile code using the avr-gcc toolset without the
Arduino IDE.
6. Toolset Functionality: The avr-gcc toolset allows us to compile and upload code
directly to the Arduino's chip, providing more control for advanced users.
OMega TechEd
4. Language
Arduino uses a slightly altered version of C++ based on the Wiring platform, making it
beginner-friendly. It includes libraries for reading and writing data from input/output
pins and handling interrupts. The language allows functions to be called before they are
defined, improving code readability and organization.
Two Main Functions:
• setup(): Runs once when the Arduino is powered on, used for setting pin modes and
initializing variables.
• loop(): Runs repeatedly while the board is on, typically used to check inputs, perform
calculations, and produce outputs.
OMega TechEd
Example: Code to make the LED blink
OMega TechEd
const int ledPin = 13;
void setup() {
pinMode(ledPin, OUTPUT);
}
void loop() {
digitalWrite(ledPin, HIGH);
delay(1000);
digitalWrite(ledPin, LOW);
delay(1000);
Define the pin for the LED
Initialize the digital pin as an output
This function runs once when the Arduino is powered on.
This function runs continuously.
Turns the LED on.
Turns the LED off.
Pauses the program for one second (1000 milliseconds)
Pauses for one second before repeating the loop
5. Debugging
Error Detection Challenges
• No Direct Output: Since most Arduino boards don’t have a display or
keyboard, it’s challenging to get immediate feedback on errors.
• Lack of Exception Handling: The Arduino environment doesn’t support
standard C++ exception handling (i.e., try...catch), making it harder to manage
errors gracefully.
OMega TechEd
Debugging Strategies
OMega TechEd
• Use Serial Monitor: Print debug information using Serial.print() and Serial.println()
to track variable values and program flow.
• Input Validation: Always check and validate input values from sensors or user
inputs.
• LED Indicators: Use LEDs to signal errors or different program states.
• Modular Code: Break code into functions to simplify testing and debugging.
• Memory Management: Avoid dynamic memory allocation when possible and
always check for allocation success.
• Watchdog Timers: Reset the Arduino if it becomes unresponsive.
• Debugging Libraries: Utilize libraries for enhanced logging and error handling
Conclusion
• Cost-effective: Arduino boards are affordable, making
them ideal for both beginners and large-scale IoT
projects.
• Easy to Learn and Use: With a large community and
extensive documentation, getting started with Arduino
is easy.
• Modular and Scalable: Arduino boards can be
extended with various modules and sensors, making
them highly flexible for different IoT applications.
In summary, Arduino in IoT serves as a versatile and
accessible platform for building smart devices that collect
data, automate tasks, and communicate over the internet,
forming the basis for many DIY and professional IoT
projects.
OMega TechEd
Thank You!
@omega.teched
LIKE,SHARE & SUBSCRIBE
@omega_teched

More Related Content

Similar to Prototyping Embedded Devices: Arduino, Developing on the Arduino. (20)

Introduction to Arduino (Parts of Arduino Microcontroller) .pptx
Introduction to Arduino (Parts of Arduino Microcontroller) .pptxIntroduction to Arduino (Parts of Arduino Microcontroller) .pptx
Introduction to Arduino (Parts of Arduino Microcontroller) .pptx
JhonatanGarciaMendez
 
Arduino by yogesh t s'
Arduino by yogesh t s'Arduino by yogesh t s'
Arduino by yogesh t s'
tsyogesh46
 
arduino introduction by Engr. Kennedy V. Rodriguez.pptx
arduino introduction by Engr. Kennedy V. Rodriguez.pptxarduino introduction by Engr. Kennedy V. Rodriguez.pptx
arduino introduction by Engr. Kennedy V. Rodriguez.pptx
KennedyRodriguez5
 
Oop 2014 embedded systems with open source hardware v2
Oop 2014 embedded systems with open source hardware v2Oop 2014 embedded systems with open source hardware v2
Oop 2014 embedded systems with open source hardware v2
Michael Stal
 
notes about Arduino
notes about Arduinonotes about Arduino
notes about Arduino
Hesham Elsherbieny
 
Introduction to arduino
Introduction to arduinoIntroduction to arduino
Introduction to arduino
Preet Sangha
 
embedded_in_Arduino_with_basic_embedded.pptx
embedded_in_Arduino_with_basic_embedded.pptxembedded_in_Arduino_with_basic_embedded.pptx
embedded_in_Arduino_with_basic_embedded.pptx
acloudinfo2023
 
INTRODUCTION_TO_ARDUINO uno, applications
INTRODUCTION_TO_ARDUINO uno, applicationsINTRODUCTION_TO_ARDUINO uno, applications
INTRODUCTION_TO_ARDUINO uno, applications
ssuser478d0e
 
Introduction to Arduino
Introduction to Arduino Introduction to Arduino
Introduction to Arduino
Dennis Espiritu
 
Ardyib based symmetrical fault calculation of the above ro_Ptation.pptx
Ardyib based symmetrical fault calculation of the above ro_Ptation.pptxArdyib based symmetrical fault calculation of the above ro_Ptation.pptx
Ardyib based symmetrical fault calculation of the above ro_Ptation.pptx
rohitsingh821312
 
Introduction to Arduino
Introduction to ArduinoIntroduction to Arduino
Introduction to Arduino
MasudurRahmanSourav
 
Introduction to arduino ppt main
Introduction to  arduino ppt mainIntroduction to  arduino ppt main
Introduction to arduino ppt main
eddy royappa
 
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
saritasapkal
 
arduino-1
 arduino-1 arduino-1
arduino-1
jhcid
 
Internet of Things prescribed by University
Internet of Things prescribed by UniversityInternet of Things prescribed by University
Internet of Things prescribed by University
Sanjay Kumar
 
IOT and embaded_Internship final Report-2.pdf
IOT and embaded_Internship final Report-2.pdfIOT and embaded_Internship final Report-2.pdf
IOT and embaded_Internship final Report-2.pdf
chandanml127
 
ARDUINO OVERVIEW HARDWARE SOFTWARE AND INSTALLATION.pptx
ARDUINO OVERVIEW HARDWARE  SOFTWARE AND INSTALLATION.pptxARDUINO OVERVIEW HARDWARE  SOFTWARE AND INSTALLATION.pptx
ARDUINO OVERVIEW HARDWARE SOFTWARE AND INSTALLATION.pptx
menchc1207
 
Lecture 7
Lecture 7Lecture 7
Lecture 7
vishal choudhary
 
introductiontoarduino-111120102058-phpapp02.pdf
introductiontoarduino-111120102058-phpapp02.pdfintroductiontoarduino-111120102058-phpapp02.pdf
introductiontoarduino-111120102058-phpapp02.pdf
HebaEng
 
introduction of arduino and node mcu
introduction of arduino and node mcuintroduction of arduino and node mcu
introduction of arduino and node mcu
6305HASANBASARI
 
Introduction to Arduino (Parts of Arduino Microcontroller) .pptx
Introduction to Arduino (Parts of Arduino Microcontroller) .pptxIntroduction to Arduino (Parts of Arduino Microcontroller) .pptx
Introduction to Arduino (Parts of Arduino Microcontroller) .pptx
JhonatanGarciaMendez
 
Arduino by yogesh t s'
Arduino by yogesh t s'Arduino by yogesh t s'
Arduino by yogesh t s'
tsyogesh46
 
arduino introduction by Engr. Kennedy V. Rodriguez.pptx
arduino introduction by Engr. Kennedy V. Rodriguez.pptxarduino introduction by Engr. Kennedy V. Rodriguez.pptx
arduino introduction by Engr. Kennedy V. Rodriguez.pptx
KennedyRodriguez5
 
Oop 2014 embedded systems with open source hardware v2
Oop 2014 embedded systems with open source hardware v2Oop 2014 embedded systems with open source hardware v2
Oop 2014 embedded systems with open source hardware v2
Michael Stal
 
Introduction to arduino
Introduction to arduinoIntroduction to arduino
Introduction to arduino
Preet Sangha
 
embedded_in_Arduino_with_basic_embedded.pptx
embedded_in_Arduino_with_basic_embedded.pptxembedded_in_Arduino_with_basic_embedded.pptx
embedded_in_Arduino_with_basic_embedded.pptx
acloudinfo2023
 
INTRODUCTION_TO_ARDUINO uno, applications
INTRODUCTION_TO_ARDUINO uno, applicationsINTRODUCTION_TO_ARDUINO uno, applications
INTRODUCTION_TO_ARDUINO uno, applications
ssuser478d0e
 
Introduction to Arduino
Introduction to Arduino Introduction to Arduino
Introduction to Arduino
Dennis Espiritu
 
Ardyib based symmetrical fault calculation of the above ro_Ptation.pptx
Ardyib based symmetrical fault calculation of the above ro_Ptation.pptxArdyib based symmetrical fault calculation of the above ro_Ptation.pptx
Ardyib based symmetrical fault calculation of the above ro_Ptation.pptx
rohitsingh821312
 
Introduction to arduino ppt main
Introduction to  arduino ppt mainIntroduction to  arduino ppt main
Introduction to arduino ppt main
eddy royappa
 
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
saritasapkal
 
arduino-1
 arduino-1 arduino-1
arduino-1
jhcid
 
Internet of Things prescribed by University
Internet of Things prescribed by UniversityInternet of Things prescribed by University
Internet of Things prescribed by University
Sanjay Kumar
 
IOT and embaded_Internship final Report-2.pdf
IOT and embaded_Internship final Report-2.pdfIOT and embaded_Internship final Report-2.pdf
IOT and embaded_Internship final Report-2.pdf
chandanml127
 
ARDUINO OVERVIEW HARDWARE SOFTWARE AND INSTALLATION.pptx
ARDUINO OVERVIEW HARDWARE  SOFTWARE AND INSTALLATION.pptxARDUINO OVERVIEW HARDWARE  SOFTWARE AND INSTALLATION.pptx
ARDUINO OVERVIEW HARDWARE SOFTWARE AND INSTALLATION.pptx
menchc1207
 
introductiontoarduino-111120102058-phpapp02.pdf
introductiontoarduino-111120102058-phpapp02.pdfintroductiontoarduino-111120102058-phpapp02.pdf
introductiontoarduino-111120102058-phpapp02.pdf
HebaEng
 
introduction of arduino and node mcu
introduction of arduino and node mcuintroduction of arduino and node mcu
introduction of arduino and node mcu
6305HASANBASARI
 

More from Megha Sharma (20)

Designing Printed Circuit boards, Software Choices, The Design Process
Designing Printed Circuit boards, Software Choices, The Design ProcessDesigning Printed Circuit boards, Software Choices, The Design Process
Designing Printed Circuit boards, Software Choices, The Design Process
Megha Sharma
 
Manufacturing PCB, Etching board, milling board, Third party manufacturing, a...
Manufacturing PCB, Etching board, milling board, Third party manufacturing, a...Manufacturing PCB, Etching board, milling board, Third party manufacturing, a...
Manufacturing PCB, Etching board, milling board, Third party manufacturing, a...
Megha Sharma
 
Business Model, make thing, sell thing, subscription, customization, Key Reso...
Business Model, make thing, sell thing, subscription, customization, Key Reso...Business Model, make thing, sell thing, subscription, customization, Key Reso...
Business Model, make thing, sell thing, subscription, customization, Key Reso...
Megha Sharma
 
Funding an IOT startup, Venture Capital, Government funding, Crowdfunding, Le...
Funding an IOT startup, Venture Capital, Government funding, Crowdfunding, Le...Funding an IOT startup, Venture Capital, Government funding, Crowdfunding, Le...
Funding an IOT startup, Venture Capital, Government funding, Crowdfunding, Le...
Megha Sharma
 
Sketch, Iterate and Explore, Nondigital Methods.
Sketch, Iterate and Explore, Nondigital Methods.Sketch, Iterate and Explore, Nondigital Methods.
Sketch, Iterate and Explore, Nondigital Methods.
Megha Sharma
 
CNC Milling, Software, Repurposing and Recycling.
CNC Milling, Software, Repurposing and Recycling.CNC Milling, Software, Repurposing and Recycling.
CNC Milling, Software, Repurposing and Recycling.
Megha Sharma
 
3D printing, Types of 3D printing: FDM, Laser Sintering, Powder bed, LOM, DLP.
3D printing, Types of 3D printing: FDM,  Laser Sintering,  Powder bed, LOM, DLP.3D printing, Types of 3D printing: FDM,  Laser Sintering,  Powder bed, LOM, DLP.
3D printing, Types of 3D printing: FDM, Laser Sintering, Powder bed, LOM, DLP.
Megha Sharma
 
Laser Cutting, Choosing a laser cutter, Software, Hinges and joints.
Laser Cutting, Choosing a laser cutter, Software, Hinges and joints.Laser Cutting, Choosing a laser cutter, Software, Hinges and joints.
Laser Cutting, Choosing a laser cutter, Software, Hinges and joints.
Megha Sharma
 
Memory management, Types of memory, Making the most of your RAM.
Memory management, Types of memory, Making the most of your RAM.Memory management, Types of memory, Making the most of your RAM.
Memory management, Types of memory, Making the most of your RAM.
Megha Sharma
 
Performance and Battery Life, Libraries, Debugging.
Performance and Battery Life, Libraries, Debugging.Performance and Battery Life, Libraries, Debugging.
Performance and Battery Life, Libraries, Debugging.
Megha Sharma
 
Raspberry-Pi, Developing on Raspberry Pi, Difference between Arduino & Raspbe...
Raspberry-Pi, Developing on Raspberry Pi, Difference between Arduino & Raspbe...Raspberry-Pi, Developing on Raspberry Pi, Difference between Arduino & Raspbe...
Raspberry-Pi, Developing on Raspberry Pi, Difference between Arduino & Raspbe...
Megha Sharma
 
Open Source versus Closed Source in IOT in IOT
Open Source versus Closed Source in IOT in IOTOpen Source versus Closed Source in IOT in IOT
Open Source versus Closed Source in IOT in IOT
Megha Sharma
 
Why closed? Why Open? Mixing open and closed source
Why closed? Why Open? Mixing open and closed sourceWhy closed? Why Open? Mixing open and closed source
Why closed? Why Open? Mixing open and closed source
Megha Sharma
 
Model Performance Metrics. Accuracy, Precision, Recall
Model Performance Metrics. Accuracy, Precision, RecallModel Performance Metrics. Accuracy, Precision, Recall
Model Performance Metrics. Accuracy, Precision, Recall
Megha Sharma
 
Graceful Degradation and Affordance in IOT
Graceful Degradation and Affordance in IOTGraceful Degradation and Affordance in IOT
Graceful Degradation and Affordance in IOT
Megha Sharma
 
Web thinking connected device, Small Pieces Loosely joined.
Web thinking connected device, Small Pieces Loosely joined.Web thinking connected device, Small Pieces Loosely joined.
Web thinking connected device, Small Pieces Loosely joined.
Megha Sharma
 
Production & Mass Personalization, Changing Embedded Platform, Physical proto...
Production & Mass Personalization, Changing Embedded Platform, Physical proto...Production & Mass Personalization, Changing Embedded Platform, Physical proto...
Production & Mass Personalization, Changing Embedded Platform, Physical proto...
Megha Sharma
 
Whose data is it anyways? Public vs Private data collection.
Whose data is it anyways? Public vs Private data collection.Whose data is it anyways? Public vs Private data collection.
Whose data is it anyways? Public vs Private data collection.
Megha Sharma
 
Thinking about Prototyping: Sketching, Familiarity, Cost versus Ease of proto...
Thinking about Prototyping: Sketching, Familiarity, Cost versus Ease of proto...Thinking about Prototyping: Sketching, Familiarity, Cost versus Ease of proto...
Thinking about Prototyping: Sketching, Familiarity, Cost versus Ease of proto...
Megha Sharma
 
Magic as metaphor in Internet of Things.
Magic as metaphor in Internet of Things.Magic as metaphor in Internet of Things.
Magic as metaphor in Internet of Things.
Megha Sharma
 
Designing Printed Circuit boards, Software Choices, The Design Process
Designing Printed Circuit boards, Software Choices, The Design ProcessDesigning Printed Circuit boards, Software Choices, The Design Process
Designing Printed Circuit boards, Software Choices, The Design Process
Megha Sharma
 
Manufacturing PCB, Etching board, milling board, Third party manufacturing, a...
Manufacturing PCB, Etching board, milling board, Third party manufacturing, a...Manufacturing PCB, Etching board, milling board, Third party manufacturing, a...
Manufacturing PCB, Etching board, milling board, Third party manufacturing, a...
Megha Sharma
 
Business Model, make thing, sell thing, subscription, customization, Key Reso...
Business Model, make thing, sell thing, subscription, customization, Key Reso...Business Model, make thing, sell thing, subscription, customization, Key Reso...
Business Model, make thing, sell thing, subscription, customization, Key Reso...
Megha Sharma
 
Funding an IOT startup, Venture Capital, Government funding, Crowdfunding, Le...
Funding an IOT startup, Venture Capital, Government funding, Crowdfunding, Le...Funding an IOT startup, Venture Capital, Government funding, Crowdfunding, Le...
Funding an IOT startup, Venture Capital, Government funding, Crowdfunding, Le...
Megha Sharma
 
Sketch, Iterate and Explore, Nondigital Methods.
Sketch, Iterate and Explore, Nondigital Methods.Sketch, Iterate and Explore, Nondigital Methods.
Sketch, Iterate and Explore, Nondigital Methods.
Megha Sharma
 
CNC Milling, Software, Repurposing and Recycling.
CNC Milling, Software, Repurposing and Recycling.CNC Milling, Software, Repurposing and Recycling.
CNC Milling, Software, Repurposing and Recycling.
Megha Sharma
 
3D printing, Types of 3D printing: FDM, Laser Sintering, Powder bed, LOM, DLP.
3D printing, Types of 3D printing: FDM,  Laser Sintering,  Powder bed, LOM, DLP.3D printing, Types of 3D printing: FDM,  Laser Sintering,  Powder bed, LOM, DLP.
3D printing, Types of 3D printing: FDM, Laser Sintering, Powder bed, LOM, DLP.
Megha Sharma
 
Laser Cutting, Choosing a laser cutter, Software, Hinges and joints.
Laser Cutting, Choosing a laser cutter, Software, Hinges and joints.Laser Cutting, Choosing a laser cutter, Software, Hinges and joints.
Laser Cutting, Choosing a laser cutter, Software, Hinges and joints.
Megha Sharma
 
Memory management, Types of memory, Making the most of your RAM.
Memory management, Types of memory, Making the most of your RAM.Memory management, Types of memory, Making the most of your RAM.
Memory management, Types of memory, Making the most of your RAM.
Megha Sharma
 
Performance and Battery Life, Libraries, Debugging.
Performance and Battery Life, Libraries, Debugging.Performance and Battery Life, Libraries, Debugging.
Performance and Battery Life, Libraries, Debugging.
Megha Sharma
 
Raspberry-Pi, Developing on Raspberry Pi, Difference between Arduino & Raspbe...
Raspberry-Pi, Developing on Raspberry Pi, Difference between Arduino & Raspbe...Raspberry-Pi, Developing on Raspberry Pi, Difference between Arduino & Raspbe...
Raspberry-Pi, Developing on Raspberry Pi, Difference between Arduino & Raspbe...
Megha Sharma
 
Open Source versus Closed Source in IOT in IOT
Open Source versus Closed Source in IOT in IOTOpen Source versus Closed Source in IOT in IOT
Open Source versus Closed Source in IOT in IOT
Megha Sharma
 
Why closed? Why Open? Mixing open and closed source
Why closed? Why Open? Mixing open and closed sourceWhy closed? Why Open? Mixing open and closed source
Why closed? Why Open? Mixing open and closed source
Megha Sharma
 
Model Performance Metrics. Accuracy, Precision, Recall
Model Performance Metrics. Accuracy, Precision, RecallModel Performance Metrics. Accuracy, Precision, Recall
Model Performance Metrics. Accuracy, Precision, Recall
Megha Sharma
 
Graceful Degradation and Affordance in IOT
Graceful Degradation and Affordance in IOTGraceful Degradation and Affordance in IOT
Graceful Degradation and Affordance in IOT
Megha Sharma
 
Web thinking connected device, Small Pieces Loosely joined.
Web thinking connected device, Small Pieces Loosely joined.Web thinking connected device, Small Pieces Loosely joined.
Web thinking connected device, Small Pieces Loosely joined.
Megha Sharma
 
Production & Mass Personalization, Changing Embedded Platform, Physical proto...
Production & Mass Personalization, Changing Embedded Platform, Physical proto...Production & Mass Personalization, Changing Embedded Platform, Physical proto...
Production & Mass Personalization, Changing Embedded Platform, Physical proto...
Megha Sharma
 
Whose data is it anyways? Public vs Private data collection.
Whose data is it anyways? Public vs Private data collection.Whose data is it anyways? Public vs Private data collection.
Whose data is it anyways? Public vs Private data collection.
Megha Sharma
 
Thinking about Prototyping: Sketching, Familiarity, Cost versus Ease of proto...
Thinking about Prototyping: Sketching, Familiarity, Cost versus Ease of proto...Thinking about Prototyping: Sketching, Familiarity, Cost versus Ease of proto...
Thinking about Prototyping: Sketching, Familiarity, Cost versus Ease of proto...
Megha Sharma
 
Magic as metaphor in Internet of Things.
Magic as metaphor in Internet of Things.Magic as metaphor in Internet of Things.
Magic as metaphor in Internet of Things.
Megha Sharma
 
Ad

Recently uploaded (20)

How to Manage Multi Language for Invoice in Odoo 18
How to Manage Multi Language for Invoice in Odoo 18How to Manage Multi Language for Invoice in Odoo 18
How to Manage Multi Language for Invoice in Odoo 18
Celine George
 
Basic English for Communication - Dr Hj Euis Eti Rohaeti Mpd
Basic English for Communication - Dr Hj Euis Eti Rohaeti MpdBasic English for Communication - Dr Hj Euis Eti Rohaeti Mpd
Basic English for Communication - Dr Hj Euis Eti Rohaeti Mpd
Restu Bias Primandhika
 
Webcrawler_Mule_AIChain_MuleSoft_Meetup_Hyderabad
Webcrawler_Mule_AIChain_MuleSoft_Meetup_HyderabadWebcrawler_Mule_AIChain_MuleSoft_Meetup_Hyderabad
Webcrawler_Mule_AIChain_MuleSoft_Meetup_Hyderabad
Veera Pallapu
 
Overview of Off Boarding in Odoo 18 Employees
Overview of Off Boarding in Odoo 18 EmployeesOverview of Off Boarding in Odoo 18 Employees
Overview of Off Boarding in Odoo 18 Employees
Celine George
 
MATERI PPT TOPIK 4 LANDASAN FILOSOFIS PENDIDIKAN
MATERI PPT TOPIK 4 LANDASAN FILOSOFIS PENDIDIKANMATERI PPT TOPIK 4 LANDASAN FILOSOFIS PENDIDIKAN
MATERI PPT TOPIK 4 LANDASAN FILOSOFIS PENDIDIKAN
aditya23173
 
LDMMIA Spring Ending Guest Grad Student News
LDMMIA Spring Ending Guest Grad Student NewsLDMMIA Spring Ending Guest Grad Student News
LDMMIA Spring Ending Guest Grad Student News
LDM & Mia eStudios
 
Exploring Ocean Floor Features for Middle School
Exploring Ocean Floor Features for Middle SchoolExploring Ocean Floor Features for Middle School
Exploring Ocean Floor Features for Middle School
Marie
 
How to Manage & Create a New Department in Odoo 18 Employee
How to Manage & Create a New Department in Odoo 18 EmployeeHow to Manage & Create a New Department in Odoo 18 Employee
How to Manage & Create a New Department in Odoo 18 Employee
Celine George
 
FEBA Sofia Univercity final diplian v3 GSDG 5.2025.pdf
FEBA Sofia Univercity final diplian v3 GSDG 5.2025.pdfFEBA Sofia Univercity final diplian v3 GSDG 5.2025.pdf
FEBA Sofia Univercity final diplian v3 GSDG 5.2025.pdf
ChristinaFortunova
 
How to Manage Upselling of Subscriptions in Odoo 18
How to Manage Upselling of Subscriptions in Odoo 18How to Manage Upselling of Subscriptions in Odoo 18
How to Manage Upselling of Subscriptions in Odoo 18
Celine George
 
Black and White Illustrative Group Project Presentation.pdf (1).pdf
Black and White Illustrative Group Project Presentation.pdf (1).pdfBlack and White Illustrative Group Project Presentation.pdf (1).pdf
Black and White Illustrative Group Project Presentation.pdf (1).pdf
AnnasofiaUrsini
 
THERAPEUTIC COMMUNICATION included definition, characteristics, nurse patient...
THERAPEUTIC COMMUNICATION included definition, characteristics, nurse patient...THERAPEUTIC COMMUNICATION included definition, characteristics, nurse patient...
THERAPEUTIC COMMUNICATION included definition, characteristics, nurse patient...
parmarjuli1412
 
Paper 108 | Thoreau’s Influence on Gandhi: The Evolution of Civil Disobedience
Paper 108 | Thoreau’s Influence on Gandhi: The Evolution of Civil DisobediencePaper 108 | Thoreau’s Influence on Gandhi: The Evolution of Civil Disobedience
Paper 108 | Thoreau’s Influence on Gandhi: The Evolution of Civil Disobedience
Rajdeep Bavaliya
 
PEST OF WHEAT SORGHUM BAJRA and MINOR MILLETS.pptx
PEST OF WHEAT SORGHUM BAJRA and MINOR MILLETS.pptxPEST OF WHEAT SORGHUM BAJRA and MINOR MILLETS.pptx
PEST OF WHEAT SORGHUM BAJRA and MINOR MILLETS.pptx
Arshad Shaikh
 
What is FIle and explanation of text files.pptx
What is FIle and explanation of text files.pptxWhat is FIle and explanation of text files.pptx
What is FIle and explanation of text files.pptx
Ramakrishna Reddy Bijjam
 
Introduction to Generative AI and Copilot.pdf
Introduction to Generative AI and Copilot.pdfIntroduction to Generative AI and Copilot.pdf
Introduction to Generative AI and Copilot.pdf
TechSoup
 
Paper 109 | Archetypal Journeys in ‘Interstellar’: Exploring Universal Themes...
Paper 109 | Archetypal Journeys in ‘Interstellar’: Exploring Universal Themes...Paper 109 | Archetypal Journeys in ‘Interstellar’: Exploring Universal Themes...
Paper 109 | Archetypal Journeys in ‘Interstellar’: Exploring Universal Themes...
Rajdeep Bavaliya
 
How to Manage Inventory Movement in Odoo 18 POS
How to Manage Inventory Movement in Odoo 18 POSHow to Manage Inventory Movement in Odoo 18 POS
How to Manage Inventory Movement in Odoo 18 POS
Celine George
 
The Man In The Back – Exceptional Delaware.pdf
The Man In The Back – Exceptional Delaware.pdfThe Man In The Back – Exceptional Delaware.pdf
The Man In The Back – Exceptional Delaware.pdf
dennisongomezk
 
Chalukyas of Gujrat, Solanki Dynasty NEP.pptx
Chalukyas of Gujrat, Solanki Dynasty NEP.pptxChalukyas of Gujrat, Solanki Dynasty NEP.pptx
Chalukyas of Gujrat, Solanki Dynasty NEP.pptx
Dr. Ravi Shankar Arya Mahila P. G. College, Banaras Hindu University, Varanasi, India.
 
How to Manage Multi Language for Invoice in Odoo 18
How to Manage Multi Language for Invoice in Odoo 18How to Manage Multi Language for Invoice in Odoo 18
How to Manage Multi Language for Invoice in Odoo 18
Celine George
 
Basic English for Communication - Dr Hj Euis Eti Rohaeti Mpd
Basic English for Communication - Dr Hj Euis Eti Rohaeti MpdBasic English for Communication - Dr Hj Euis Eti Rohaeti Mpd
Basic English for Communication - Dr Hj Euis Eti Rohaeti Mpd
Restu Bias Primandhika
 
Webcrawler_Mule_AIChain_MuleSoft_Meetup_Hyderabad
Webcrawler_Mule_AIChain_MuleSoft_Meetup_HyderabadWebcrawler_Mule_AIChain_MuleSoft_Meetup_Hyderabad
Webcrawler_Mule_AIChain_MuleSoft_Meetup_Hyderabad
Veera Pallapu
 
Overview of Off Boarding in Odoo 18 Employees
Overview of Off Boarding in Odoo 18 EmployeesOverview of Off Boarding in Odoo 18 Employees
Overview of Off Boarding in Odoo 18 Employees
Celine George
 
MATERI PPT TOPIK 4 LANDASAN FILOSOFIS PENDIDIKAN
MATERI PPT TOPIK 4 LANDASAN FILOSOFIS PENDIDIKANMATERI PPT TOPIK 4 LANDASAN FILOSOFIS PENDIDIKAN
MATERI PPT TOPIK 4 LANDASAN FILOSOFIS PENDIDIKAN
aditya23173
 
LDMMIA Spring Ending Guest Grad Student News
LDMMIA Spring Ending Guest Grad Student NewsLDMMIA Spring Ending Guest Grad Student News
LDMMIA Spring Ending Guest Grad Student News
LDM & Mia eStudios
 
Exploring Ocean Floor Features for Middle School
Exploring Ocean Floor Features for Middle SchoolExploring Ocean Floor Features for Middle School
Exploring Ocean Floor Features for Middle School
Marie
 
How to Manage & Create a New Department in Odoo 18 Employee
How to Manage & Create a New Department in Odoo 18 EmployeeHow to Manage & Create a New Department in Odoo 18 Employee
How to Manage & Create a New Department in Odoo 18 Employee
Celine George
 
FEBA Sofia Univercity final diplian v3 GSDG 5.2025.pdf
FEBA Sofia Univercity final diplian v3 GSDG 5.2025.pdfFEBA Sofia Univercity final diplian v3 GSDG 5.2025.pdf
FEBA Sofia Univercity final diplian v3 GSDG 5.2025.pdf
ChristinaFortunova
 
How to Manage Upselling of Subscriptions in Odoo 18
How to Manage Upselling of Subscriptions in Odoo 18How to Manage Upselling of Subscriptions in Odoo 18
How to Manage Upselling of Subscriptions in Odoo 18
Celine George
 
Black and White Illustrative Group Project Presentation.pdf (1).pdf
Black and White Illustrative Group Project Presentation.pdf (1).pdfBlack and White Illustrative Group Project Presentation.pdf (1).pdf
Black and White Illustrative Group Project Presentation.pdf (1).pdf
AnnasofiaUrsini
 
THERAPEUTIC COMMUNICATION included definition, characteristics, nurse patient...
THERAPEUTIC COMMUNICATION included definition, characteristics, nurse patient...THERAPEUTIC COMMUNICATION included definition, characteristics, nurse patient...
THERAPEUTIC COMMUNICATION included definition, characteristics, nurse patient...
parmarjuli1412
 
Paper 108 | Thoreau’s Influence on Gandhi: The Evolution of Civil Disobedience
Paper 108 | Thoreau’s Influence on Gandhi: The Evolution of Civil DisobediencePaper 108 | Thoreau’s Influence on Gandhi: The Evolution of Civil Disobedience
Paper 108 | Thoreau’s Influence on Gandhi: The Evolution of Civil Disobedience
Rajdeep Bavaliya
 
PEST OF WHEAT SORGHUM BAJRA and MINOR MILLETS.pptx
PEST OF WHEAT SORGHUM BAJRA and MINOR MILLETS.pptxPEST OF WHEAT SORGHUM BAJRA and MINOR MILLETS.pptx
PEST OF WHEAT SORGHUM BAJRA and MINOR MILLETS.pptx
Arshad Shaikh
 
What is FIle and explanation of text files.pptx
What is FIle and explanation of text files.pptxWhat is FIle and explanation of text files.pptx
What is FIle and explanation of text files.pptx
Ramakrishna Reddy Bijjam
 
Introduction to Generative AI and Copilot.pdf
Introduction to Generative AI and Copilot.pdfIntroduction to Generative AI and Copilot.pdf
Introduction to Generative AI and Copilot.pdf
TechSoup
 
Paper 109 | Archetypal Journeys in ‘Interstellar’: Exploring Universal Themes...
Paper 109 | Archetypal Journeys in ‘Interstellar’: Exploring Universal Themes...Paper 109 | Archetypal Journeys in ‘Interstellar’: Exploring Universal Themes...
Paper 109 | Archetypal Journeys in ‘Interstellar’: Exploring Universal Themes...
Rajdeep Bavaliya
 
How to Manage Inventory Movement in Odoo 18 POS
How to Manage Inventory Movement in Odoo 18 POSHow to Manage Inventory Movement in Odoo 18 POS
How to Manage Inventory Movement in Odoo 18 POS
Celine George
 
The Man In The Back – Exceptional Delaware.pdf
The Man In The Back – Exceptional Delaware.pdfThe Man In The Back – Exceptional Delaware.pdf
The Man In The Back – Exceptional Delaware.pdf
dennisongomezk
 
Ad

Prototyping Embedded Devices: Arduino, Developing on the Arduino.

  • 1. Arduino, Developing on the Arduino @omega.teched @omega_teched Prototyping Embedded Devices
  • 2. What is ARDUINO? Arduino is an open-source electronics platform based on easy-to-use hardware and software. • Microcontroller Platform: Arduino boards control sensors and actuators, enabling interaction with the physical world. • Connectivity: Arduino can connect to the internet using modules like Wi-Fi (ESP8266, ESP32), Bluetooth, or GSM for IoT applications. • Sensing and Actuating: It gathers data from sensors (e.g., temperature, humidity) and controls devices like OMega TechEd
  • 3. What is ARDUINO? • Software and Programming: Arduino uses its own programming language (based on C++) and integrates with cloud services or IoT platforms. • Prototyping: Ideal for rapid development of IoT devices due to its low cost, simplicity, and large community support. • IoT Applications: Used in smart homes, wearables, health monitoring, industrial automation, and smart agriculture. OMega TechEd
  • 4. Developing On The Arduino OMega TechEd Integrated Development Environment Pushing Code Operating System Language Debugging
  • 5. 1. Integrated Development Environment The Arduino IDE is a simple program we use to write and upload code to an Arduino board. It’s easy to understand, with most projects having just one file of code. We can check the code for mistakes by clicking "Verify" and upload it to the board by clicking "Upload." The IDE is designed to be straightforward, so we can focus on building and testing projects quickly. OMega TechEd
  • 6. 2. Pushing Code 1. Connect via USB: We connect the Arduino board to the computer using a USB cable. Sometimes, we might face driver or USB permission issues, but they are typically resolved quickly. 2. Select Serial Port and Board: In the Arduino IDE, we choose the correct serial port and board type to match our setup. 3. Compile the Code: The IDE first checks and compiles the code, reporting any errors. 4. Upload to Arduino: If the code compiles successfully, it is uploaded to the Arduino and stored in its flash memory. 5. Arduino Reboots: The Arduino automatically reboots and starts running the newly uploaded code. OMega TechEd
  • 7. 3. Operating System 1. No Default OS: The Arduino runs only a bootloader, not a traditional operating system. 2. Code Execution: It executes the uploaded code continuously until powered off or if the code crashes. 3. Uploading an OS: We can install lightweight real-time operating systems (RTOS) like FreeRTOS or DuinOS for advanced features. 4. Multitasking: An RTOS provides built-in support for multitasking, allowing multiple processes to run at the same time. 5. Compiling Without IDE: We can compile code using the avr-gcc toolset without the Arduino IDE. 6. Toolset Functionality: The avr-gcc toolset allows us to compile and upload code directly to the Arduino's chip, providing more control for advanced users. OMega TechEd
  • 8. 4. Language Arduino uses a slightly altered version of C++ based on the Wiring platform, making it beginner-friendly. It includes libraries for reading and writing data from input/output pins and handling interrupts. The language allows functions to be called before they are defined, improving code readability and organization. Two Main Functions: • setup(): Runs once when the Arduino is powered on, used for setting pin modes and initializing variables. • loop(): Runs repeatedly while the board is on, typically used to check inputs, perform calculations, and produce outputs. OMega TechEd
  • 9. Example: Code to make the LED blink OMega TechEd const int ledPin = 13; void setup() { pinMode(ledPin, OUTPUT); } void loop() { digitalWrite(ledPin, HIGH); delay(1000); digitalWrite(ledPin, LOW); delay(1000); Define the pin for the LED Initialize the digital pin as an output This function runs once when the Arduino is powered on. This function runs continuously. Turns the LED on. Turns the LED off. Pauses the program for one second (1000 milliseconds) Pauses for one second before repeating the loop
  • 10. 5. Debugging Error Detection Challenges • No Direct Output: Since most Arduino boards don’t have a display or keyboard, it’s challenging to get immediate feedback on errors. • Lack of Exception Handling: The Arduino environment doesn’t support standard C++ exception handling (i.e., try...catch), making it harder to manage errors gracefully. OMega TechEd
  • 11. Debugging Strategies OMega TechEd • Use Serial Monitor: Print debug information using Serial.print() and Serial.println() to track variable values and program flow. • Input Validation: Always check and validate input values from sensors or user inputs. • LED Indicators: Use LEDs to signal errors or different program states. • Modular Code: Break code into functions to simplify testing and debugging. • Memory Management: Avoid dynamic memory allocation when possible and always check for allocation success. • Watchdog Timers: Reset the Arduino if it becomes unresponsive. • Debugging Libraries: Utilize libraries for enhanced logging and error handling
  • 12. Conclusion • Cost-effective: Arduino boards are affordable, making them ideal for both beginners and large-scale IoT projects. • Easy to Learn and Use: With a large community and extensive documentation, getting started with Arduino is easy. • Modular and Scalable: Arduino boards can be extended with various modules and sensors, making them highly flexible for different IoT applications. In summary, Arduino in IoT serves as a versatile and accessible platform for building smart devices that collect data, automate tasks, and communicate over the internet, forming the basis for many DIY and professional IoT projects. OMega TechEd
  • 13. Thank You! @omega.teched LIKE,SHARE & SUBSCRIBE @omega_teched