The document introduces Arduino and Raspberry Pi for internet of things applications. It discusses the basics of both platforms, including components, programming, and interfacing with sensors and actuators. It provides examples of blinking LEDs, reading button input, and controlling an LED based on light level. Finally, it compares Arduino and Raspberry Pi, concluding they are best used together to take advantage of their complementary capabilities.
1. Explaining the importance of platform based development
2. Understanding The importance of NodeMCU and demonstrate its interfacing with various devices and sensors.
My slide at the Milan Codemotion 2015, a session called "An Adventure with ESP8266 and IOT" about using the esp8266 with NodeMCU, mosquitto, nodejs and an accelerometer. All the sourcecode will be available at http://pestohacks.blogspot.com soon
1. Explaining the importance of platform based development
2. Understanding The importance of NodeMCU and demonstrate its interfacing with various devices and sensors.
My slide at the Milan Codemotion 2015, a session called "An Adventure with ESP8266 and IOT" about using the esp8266 with NodeMCU, mosquitto, nodejs and an accelerometer. All the sourcecode will be available at http://pestohacks.blogspot.com soon
Arduino Workshop Day 2 - Advance Arduino & DIYVishnu
Arduino Workshop Day 2 - IR, Ultrasonic & Temperature - Humidity Sensor Interfacing & Do It Yourself - Line Follower, Light Follower & Obstacle Avoider.
Arduino Workshop Day 1 Slides
Basics of Arduino - Introduction, Basics of Circuits, Signals & Electronics, LED Interfacing, Switch, Buzzer, LCD & Bluetooth Communication.
Introduction to ESP32 Programming [Road to RIoT 2017]Alwin Arrasyid
Introduction to ESP32 programming using official development framework, ESP-IDF and Arduino for ESP32.
Every demo code is published in this github repository:
https://github.com/alwint3r/RTR_Surabaya2017
Arduino vs Raspberry Pi | Which Board to Choose for IoT Projects | IoT Device...Edureka!
** Edureka IoT Training: https://www.edureka.co/iot-certification-training **
Looking for the right kind of development boards for your IoT projects? It obviously boils down to either the Raspberry Pi or the Arduino. Now, while both might look very similar, but they’re actually very different. They’re both designed for separate utilities and are used under different circumstances. So, it is very important to know when to use which to get the best out of your projects while keeping the entire system energy-efficient and minimal. I’ve explained how the electronic control provided by both these popular boards differ and pointed out their key differences so that you understand which one of these single board systems are better suited to the needs of your projects.
OpenDev Technologies provides slideshare PPT on An introduction to the Raspberry PI computer. More information of the Raspberry PI computer by OpenDev Technologies employee.
its full a description of raspberry pi with an ultimate customized contents, with lots of animation.
it can help anybody to understand the raspberry pi.
Arduino first and foremost is an open-source computer hardware and software company. The Arduino Communityrefers to the project and user community that designs and utilizes microcontroller-based development boards. These development boards are known as Arduino Modules, which are open-source prototyping platforms.
Arduino Workshop Day 2 - Advance Arduino & DIYVishnu
Arduino Workshop Day 2 - IR, Ultrasonic & Temperature - Humidity Sensor Interfacing & Do It Yourself - Line Follower, Light Follower & Obstacle Avoider.
Arduino Workshop Day 1 Slides
Basics of Arduino - Introduction, Basics of Circuits, Signals & Electronics, LED Interfacing, Switch, Buzzer, LCD & Bluetooth Communication.
Introduction to ESP32 Programming [Road to RIoT 2017]Alwin Arrasyid
Introduction to ESP32 programming using official development framework, ESP-IDF and Arduino for ESP32.
Every demo code is published in this github repository:
https://github.com/alwint3r/RTR_Surabaya2017
Arduino vs Raspberry Pi | Which Board to Choose for IoT Projects | IoT Device...Edureka!
** Edureka IoT Training: https://www.edureka.co/iot-certification-training **
Looking for the right kind of development boards for your IoT projects? It obviously boils down to either the Raspberry Pi or the Arduino. Now, while both might look very similar, but they’re actually very different. They’re both designed for separate utilities and are used under different circumstances. So, it is very important to know when to use which to get the best out of your projects while keeping the entire system energy-efficient and minimal. I’ve explained how the electronic control provided by both these popular boards differ and pointed out their key differences so that you understand which one of these single board systems are better suited to the needs of your projects.
OpenDev Technologies provides slideshare PPT on An introduction to the Raspberry PI computer. More information of the Raspberry PI computer by OpenDev Technologies employee.
its full a description of raspberry pi with an ultimate customized contents, with lots of animation.
it can help anybody to understand the raspberry pi.
Arduino first and foremost is an open-source computer hardware and software company. The Arduino Communityrefers to the project and user community that designs and utilizes microcontroller-based development boards. These development boards are known as Arduino Modules, which are open-source prototyping platforms.
A microcontroller (MCU for microcontroller unit, or UC for μ-controller) is a small computer on a single integrated circuit. In modern terminology, it is similar to, but less sophisticated than, a system on a chip (SoC); an SoC may include a microcontroller as one of its components.
Lab Handson: Power your Creations with Intel Edison!Codemotion
by Francesco Baldassarri - Come along and play with Intel Edison, for the Internet of Things? Learn about the Developer Kit for IoT, chose your preferred environment and test it – or test all the possibilities? We will be providing information and hands on training for developers interested in testing our solutions in C/C++, Javascript, Arduino, Wyliodrin and Python. Just bring you laptop and we will help you to get started. We will also provide information about our Cloud Analytics platform, and test hardware samples with the Grove Starter Kit – Intel IoT Edition. Visit us anytime and start making! What will you make?
Advanced View of Atmega Microcontroller Projects List - ATMega32 AVR.pdfWiseNaeem
Most of the electronics geeks are asking the whole list of Atmega AVR projects PDF here we will share list every month as our projects are being updated on daily basis.
Advanced View of Atmega Microcontroller Projects List - ATMega32 AVR.pdfWiseNaeem
Most of the electronics geeks are asking the whole list of Atmega AVR projects PDF here we will share list every month as our projects are being updated on daily basis.
In this presentation, we highlight the details on doing IoT home automation with openHAB on pcDuino3B, and use Bluetooth BLE 4.0 technology to talk to sensors
Advanced View Arduino Projects List - Use Arduino for Projects 4.pdfWiseNaeem
Here we will share list every month as our projects are being updated on daily basis. PDF is a good source to work offline. Most of the electronics geeks are asking the whole list of arduino projects PDF
Similar to Using arduino and raspberry pi for internet of things (20)
Slides from my workshop about node.js which I conducted in Girl Geek Dinner Bangalore. More details at http://sudarmuthu.com/blog/introduction-to-node-js-at-yahoo-girl-geek-dinner
A brief about different JavaScript frameworks and some suggestions on when to use each one of them. More details at http://sudarmuthu.com/blog/slides-from-my-talk-about-using-javascript-at-teched
Key Trends Shaping the Future of Infrastructure.pdfCheryl Hung
Keynote at DIGIT West Expo, Glasgow on 29 May 2024.
Cheryl Hung, ochery.com
Sr Director, Infrastructure Ecosystem, Arm.
The key trends across hardware, cloud and open-source; exploring how these areas are likely to mature and develop over the short and long-term, and then considering how organisations can position themselves to adapt and thrive.
GraphRAG is All You need? LLM & Knowledge GraphGuy Korland
Guy Korland, CEO and Co-founder of FalkorDB, will review two articles on the integration of language models with knowledge graphs.
1. Unifying Large Language Models and Knowledge Graphs: A Roadmap.
https://arxiv.org/abs/2306.08302
2. Microsoft Research's GraphRAG paper and a review paper on various uses of knowledge graphs:
https://www.microsoft.com/en-us/research/blog/graphrag-unlocking-llm-discovery-on-narrative-private-data/
Software Delivery At the Speed of AI: Inflectra Invests In AI-Powered QualityInflectra
In this insightful webinar, Inflectra explores how artificial intelligence (AI) is transforming software development and testing. Discover how AI-powered tools are revolutionizing every stage of the software development lifecycle (SDLC), from design and prototyping to testing, deployment, and monitoring.
Learn about:
• The Future of Testing: How AI is shifting testing towards verification, analysis, and higher-level skills, while reducing repetitive tasks.
• Test Automation: How AI-powered test case generation, optimization, and self-healing tests are making testing more efficient and effective.
• Visual Testing: Explore the emerging capabilities of AI in visual testing and how it's set to revolutionize UI verification.
• Inflectra's AI Solutions: See demonstrations of Inflectra's cutting-edge AI tools like the ChatGPT plugin and Azure Open AI platform, designed to streamline your testing process.
Whether you're a developer, tester, or QA professional, this webinar will give you valuable insights into how AI is shaping the future of software delivery.
Epistemic Interaction - tuning interfaces to provide information for AI supportAlan Dix
Paper presented at SYNERGY workshop at AVI 2024, Genoa, Italy. 3rd June 2024
https://alandix.com/academic/papers/synergy2024-epistemic/
As machine learning integrates deeper into human-computer interactions, the concept of epistemic interaction emerges, aiming to refine these interactions to enhance system adaptability. This approach encourages minor, intentional adjustments in user behaviour to enrich the data available for system learning. This paper introduces epistemic interaction within the context of human-system communication, illustrating how deliberate interaction design can improve system understanding and adaptation. Through concrete examples, we demonstrate the potential of epistemic interaction to significantly advance human-computer interaction by leveraging intuitive human communication strategies to inform system design and functionality, offering a novel pathway for enriching user-system engagements.
Essentials of Automations: Optimizing FME Workflows with ParametersSafe Software
Are you looking to streamline your workflows and boost your projects’ efficiency? Do you find yourself searching for ways to add flexibility and control over your FME workflows? If so, you’re in the right place.
Join us for an insightful dive into the world of FME parameters, a critical element in optimizing workflow efficiency. This webinar marks the beginning of our three-part “Essentials of Automation” series. This first webinar is designed to equip you with the knowledge and skills to utilize parameters effectively: enhancing the flexibility, maintainability, and user control of your FME projects.
Here’s what you’ll gain:
- Essentials of FME Parameters: Understand the pivotal role of parameters, including Reader/Writer, Transformer, User, and FME Flow categories. Discover how they are the key to unlocking automation and optimization within your workflows.
- Practical Applications in FME Form: Delve into key user parameter types including choice, connections, and file URLs. Allow users to control how a workflow runs, making your workflows more reusable. Learn to import values and deliver the best user experience for your workflows while enhancing accuracy.
- Optimization Strategies in FME Flow: Explore the creation and strategic deployment of parameters in FME Flow, including the use of deployment and geometry parameters, to maximize workflow efficiency.
- Pro Tips for Success: Gain insights on parameterizing connections and leveraging new features like Conditional Visibility for clarity and simplicity.
We’ll wrap up with a glimpse into future webinars, followed by a Q&A session to address your specific questions surrounding this topic.
Don’t miss this opportunity to elevate your FME expertise and drive your projects to new heights of efficiency.
GDG Cloud Southlake #33: Boule & Rebala: Effective AppSec in SDLC using Deplo...James Anderson
Effective Application Security in Software Delivery lifecycle using Deployment Firewall and DBOM
The modern software delivery process (or the CI/CD process) includes many tools, distributed teams, open-source code, and cloud platforms. Constant focus on speed to release software to market, along with the traditional slow and manual security checks has caused gaps in continuous security as an important piece in the software supply chain. Today organizations feel more susceptible to external and internal cyber threats due to the vast attack surface in their applications supply chain and the lack of end-to-end governance and risk management.
The software team must secure its software delivery process to avoid vulnerability and security breaches. This needs to be achieved with existing tool chains and without extensive rework of the delivery processes. This talk will present strategies and techniques for providing visibility into the true risk of the existing vulnerabilities, preventing the introduction of security issues in the software, resolving vulnerabilities in production environments quickly, and capturing the deployment bill of materials (DBOM).
Speakers:
Bob Boule
Robert Boule is a technology enthusiast with PASSION for technology and making things work along with a knack for helping others understand how things work. He comes with around 20 years of solution engineering experience in application security, software continuous delivery, and SaaS platforms. He is known for his dynamic presentations in CI/CD and application security integrated in software delivery lifecycle.
Gopinath Rebala
Gopinath Rebala is the CTO of OpsMx, where he has overall responsibility for the machine learning and data processing architectures for Secure Software Delivery. Gopi also has a strong connection with our customers, leading design and architecture for strategic implementations. Gopi is a frequent speaker and well-known leader in continuous delivery and integrating security into software delivery.
Neuro-symbolic is not enough, we need neuro-*semantic*Frank van Harmelen
Neuro-symbolic (NeSy) AI is on the rise. However, simply machine learning on just any symbolic structure is not sufficient to really harvest the gains of NeSy. These will only be gained when the symbolic structures have an actual semantics. I give an operational definition of semantics as “predictable inference”.
All of this illustrated with link prediction over knowledge graphs, but the argument is general.
Builder.ai Founder Sachin Dev Duggal's Strategic Approach to Create an Innova...Ramesh Iyer
In today's fast-changing business world, Companies that adapt and embrace new ideas often need help to keep up with the competition. However, fostering a culture of innovation takes much work. It takes vision, leadership and willingness to take risks in the right proportion. Sachin Dev Duggal, co-founder of Builder.ai, has perfected the art of this balance, creating a company culture where creativity and growth are nurtured at each stage.
Builder.ai Founder Sachin Dev Duggal's Strategic Approach to Create an Innova...
Using arduino and raspberry pi for internet of things
1. Using Arduino and Raspberry Pi
for Internet of Things
Sudar Muthu (@sudarmuthu)
http://hardwarefun.com/
http://github.com/sudar
2. Who am I?
Research Engineer by profession
I build robots as a hobby
Playing with Arduino for more than 4 years
Blogger about Arduino at http://hardwarefun.com
Moderator for Arduino India forum
http://hardwarefun.com 2
3. Objective
Introduce Arduino
Introduce Raspberry Pi
Emphasis on IoT
See how both can be used for IoT
http://hardwarefun.com 3
5. What is Arduino?
Visual Basic for hardware
Includes both Hardware and software
http://hardwarefun.com 5
Photo credit Arduino team
6. Different Arduino types
Arduino Uno (The one I am going to use today)
Arduino Mega
Arduino Due
Lillypad
Arduino BT
Arduino Ethernet
.. and clones
http://hardwarefun.com 6
8. Specs (Uno, Leonardo)
Type Value
Microcontroller ATmega328
Operating Voltage 5v
Digital I/O Pins 14 (of which 6 provide PWM output)
Analog Input Pins 6
Flash Memory 32 KB (ATmega328) of which 0.5 KB used
by bootloader
SRAM 2 KB (ATmega328)
EEPROM 1 KB (ATmega328)
Clock Speed 16 MHz
http://hardwarefun.com 8
9. Identify these components in
Microcontroller
Power jacket
USB jacket
Digital pins
Analog pins
Reset button
Arduino
http://hardwarefun.com 9
10. Identify these components in
Arduino
Voltage Regulator
Power Pins (how many are there?)
Ground Pins (how many are there?)
Vin Pin
Rx and Tx Pins
ICSP Headers
http://hardwarefun.com 10
11. Identify these components in
Power Led
Rx and Tx Led’s
Test Led
Crystal
Anything else?
Arduino
http://hardwarefun.com 11
13. Different ways to power up Arduino
Using USB cable
Using DC power jacket
Giving voltage directly into Vin pin
Giving regulated voltage directly into 5V pin
http://hardwarefun.com 13
17. Making a LED blink
Insert a LED in pin 13
Open File->Examples->Basics->Blink
Select Tools->Boards->Arduino Uno
Select File->Upload (or press ctrl+u)
You should get the message “Done upload”
Your Led should blink
Congrats you can program Arduino now
http://hardwarefun.com 17
19. People with electronics background
Did I miss anything?
Hint: Ohm’s Law
http://hardwarefun.com 19
20. Anatomy of an Arduino sketch
http://hardwarefun.com 20
21. Printing values through Serial
Uno has one UART hardware port, using which we
can exchange information with computer
Very useful for debugging
Works at a specified baud rate
Use Serial Monitor to read values
SoftwareSerial is also available
http://hardwarefun.com 21
23. How to use a breadboard
The first two and the last two rows are connected
In all the other rows, columns are connected
Connect the first and last row to power
Connect the second and second last row to ground
http://hardwarefun.com 23
28. Reading Analog values from sensors
Connect the LDR on pin A0 and Gnd
LDR’s resistance varies based on the amount of light
present
Read the current value using analogRead()
Print the value in Serial Monitor
http://hardwarefun.com 28
29. Control an LED based on light
void setup(){
pinMode(13, OUTPUT);
}
void loop(){
int val = analogRead(A0);
if (val > 50) {
digitalWrite(13, HIGH);
} else {
digitalWrite(13, LOW);
}
}
http://hardwarefun.com 29
31. Analog Output
What is PWM?
Analog like behavior using digital output
Works by switching the LED on and off regularly
Changing the brightness of a Led
http://hardwarefun.com 31
32. This is just the tip of an
iceberg
http://hardwarefun.com 32
There are tons of other
features to Arduino which I
have not talked about
35. LoT is an overloaded term
But I like this definition…
“The Internet of Things is the interconnection of
uniquely identifiable embedded computing devices
within the existing Internet infrastructure”
http://hardwarefun.com 35
36. Connecting Arduino to Internet
Ethernet Shield
WIFI Shield
3G Shield
Using another intermediate component
http://hardwarefun.com 36
37. Demo of network connectivity
using Arduino
http://hardwarefun.com 37
43. Set the status of GPIO Pins
https://github.com/sudar/r http://hardwarefun.com asp4b3erry-pi-sketches/blob/master/led-blink/led-blink.py
44. Set the status of GPIO Pins
import RPi.GPIO as GPIO
import time
GPIO.setmode(GPIO.BOARD)
GPIO.setup(12, GPIO.OUT)
try:
while True:
GPIO.output(12, GPIO.HIGH)
time.sleep(1)
GPIO.output(12, GPIO.LOW)
time.sleep(1)
finally:
GPIO.cleanup()
https://github.com/sudar/raspberry-http://hardwarefun.com 44 pi-sketches/blob/master/led-blink/led-blink.py
45. Demo
Let there be Light
https://github.com/sudar/r http://hardwarefun.com 45aspberry-pi-sketches/blob/master/led-blink/led-blink.py
46. Changing the brightness of the LED
import RPi.GPIO as GPIO
import time
GPIO.setmode(GPIO.BOARD)
GPIO.setup(12, GPIO.OUT)
p = GPIO.PWM(12, 50) # channel=12 frequency=50Hz
p.start(0)
try:
while True:
for dc in range(0, 101, 5):
p.ChangeDutyCycle(dc)
time.sleep(0.1)
for dc in range(100, -1, -5):
p.ChangeDutyCycle(dc)
time.sleep(0.1)
finally:
p.stop()
GPIO.cleanup()
http://hardwarefun.com 46
https://github.com/sudar/raspberry-pi-sketches/blob/master/led-blink/pwm.py
47. Demo
Can you see the brightness changing?
https://github.com/sudar/raspberry-http://hardwarefun.com 47 pi-sketches/blob/master/led-blink/pwm.py
48. Reading the status of the Pin
import RPi.GPIO as GPIO
import time
GPIO.setmode(GPIO.BOARD)
GPIO.setup(11, GPIO.IN, pull_up_down=GPIO.PUD_DOWN)
try:
while True:
if GPIO.input(11):
print "Button is on"
else:
print "Button is off"
time.sleep(0.1)
finally:
GPIO.cleanup()
http://hardwarefun.com 48
https://github.com/sudar/raspberry-pi-sketches/blob/master/button-input/button-input.py
49. Reading the status of the Pin
http://hardwarefun.com 49
https://github.com/sudar/raspberry-pi-sketches/blob/master/button-input/button-input.py
50. Demo
What happens when the button is pressed?
http://hardwarefun.com 50
https://github.com/sudar/raspberry-pi-sketches/blob/master/button-input/button-input.py
51. Combining Input and Output
import RPi.GPIO as GPIO
import time
GPIO.setmode(GPIO.BOARD)
GPIO.setup(11, GPIO.IN, pull_up_down=GPIO.PUD_DOWN)
GPIO.setup(12, GPIO.OUT)
try:
while True:
if GPIO.input(11):
print "Button is on"
GPIO.output(12, 1)
else:
GPIO.output(12, 0)
time.sleep(0.1)
finally:
GPIO.cleanup()
http://hardwarefun.com 51
https://github.com/sudar/raspberry-pi-sketches/blob/master/button-and-led/button-and-led.py
52. Combining Input and Output
http://hardwarefun.com 52
https://github.com/sudar/raspberry-pi-sketches/blob/master/button-and-led/button-and-led.py
53. Demo
Let’s control the LED by pressing the button
http://hardwarefun.com 53
https://github.com/sudar/raspberry-pi-sketches/blob/master/button-and-led/button-and-led.py
56. Interacting with webcam
“PyGame” provides easy interface
Can get fancy using “opencv”
Both USB and GPIO interface are supported
http://hardwarefun.com 56
57. Distributed Computing
Each Pi can be used as cheap node
Form grids using a cluster of Pi’s
Can share CPU, memory and disk space
http://www.cl.cam.ac.uk/projects/raspberrypi/tutorials/
distributed-computing/
http://hardwarefun.com 57
58. Limitations
No built-in Analog to Digital support
Can’t run Inductive load (motors)
Is not real-time (CPU might be busy)
No “safe circuits” present
Operates at 3.3V and is not directly compatible with
Arduino voltage
http://hardwarefun.com 58
60. Advantages of Raspberry Pi
Entire Linux software stack is available
It is very easy to connect to internet
Can be programmed using variety of programming
languages
http://hardwarefun.com 60
61. Disadvantage of Raspberry Pi
Accessing hardware is not real-time. If the CPU is
busy, then interfacing with hardware can be delayed
No built-in Analog to Digital converter available
Does not have enough power to drive inductive loads
The hardware design is not open source. Even though
it is not a big deal, for some people it might a deal
breaker
http://hardwarefun.com 61
62. Advantages of Arduino
Very easy to get started
Very easy to extend it and has tons of user
contributed shields and libraries. Shields are available
to do pretty much anything
Can be used to for real-time applications
Everything (both hardware, software and IDE) are
open source
Not much programming knowledge needed to do
basic stuff
http://hardwarefun.com 62
63. Disadvantages of Arduino
Not very powerful when compared with Raspberry Pi
(Micro processor vs Micro controller)
You need to program using either Arduino or C/C++
(or assembly if you really want to)
Connecting to internet is slightly difficult (you have
shields and libraries, but is not straight forward), but
not impossible.
http://hardwarefun.com 63
64. In Short..
Feature Raspberry Pi Arduino
Processor Speed 700 MHz 16 MHz
Programming Language No limit Arduino, C/C++
Real-time Hardware No real-time In real-time
Analog to Digital Convertor No Yes
Hardware Design Closed source Open source
Internet Connection Very easy Not easy, but doable
http://hardwarefun.com 64
"Internet of Things" by Wilgengebroed on Flickr - Cropped and sign removed from Internet of things signed by the author.jpg. Licensed under Creative Commons Attribution 2.0 via Wikimedia Commons - http://commons.wikimedia.org/wiki/File:Internet_of_Things.jpg#mediaviewer/File:Internet_of_Things.jpg