SlideShare une entreprise Scribd logo
1  sur  25
Télécharger pour lire hors ligne
Federico Vanzati
Arduino Yún: Internet for makers

f.vanzati@arduino.cc - Officine Arduino Torino
What is Arduino?
Federico Vanzati

f.vanzati@arduino.cc - Officine Arduino Torino

Arduino is an electronic prototyping platform that can sense the environment by
receiving input from a variety of sensors and can affect its surroundings by
controlling lights, motors, and other actuators.

COMMUNICATION
INPUT

USB
Serial
TWI
SPI

Analog
Digital

OUTPUT
Analog
Digital
Physical to Internet?
Federico Vanzati

Ethernet Shield

f.vanzati@arduino.cc - Officine Arduino Torino

WiFi Shield
Federico Vanzati

Limited number of connections
and modest performances
because all the code is
processed from the AVR

Client
Server
Managing the connection

f.vanzati@arduino.cc - Officine Arduino Torino

TCP/IP stack
only

can't handle secure
connections natively
Arduino Yún
Federico Vanzati

Https
SSL

SSH

AR9331
running OpenWRT

Usual Arduino experience
32U4
[Leonardo]

Tools offered by
the Linux system

f.vanzati@arduino.cc - Officine Arduino Torino

Advanced connectivity capabilities
thanks to Linux
Internet of Things (IoT)
Federico Vanzati

f.vanzati@arduino.cc - Officine Arduino Torino

Arduino: one of the first platform to offer the possibility to connect sensors and
actuators to Internet.
Many projects in different categories, for example:
●

Smart metering (photovoltaic, water flow and level, electrical comsumption)
Internet of Things (IoT)
Federico Vanzati

f.vanzati@arduino.cc - Officine Arduino Torino

●

Enviroment (radiation level, earthquake, air pollution)

●

Security & Emergencies (intrusion detection, fire/gas detection)
Internet of Things (IoT)
Federico Vanzati

f.vanzati@arduino.cc - Officine Arduino Torino

In a few years certainly these projects have influenced the definition of IoT.
The Arduino Yún follows the evolution of internet answering to the new
requirements of access to the web services.
The Arduino Yún gives you a lot of cool features.
Both WiFi and Ethernet
Enhanced connectivity (speed, more protocols, …)
Independent Web Server
Additional peripherals (USB host, SD card
What's on board?
Federico Vanzati

f.vanzati@arduino.cc - Officine Arduino Torino

Thanks to the Linux processor you have all the tools you normally use on
your compurer to develop code that lives on Internet.
Hardware Summary
Federico Vanzati

f.vanzati@arduino.cc - Officine Arduino Torino

Atmega32U4 (Leonardo)

AR9331 (OpenWRT)

Digital I/O Pins

20

Architecture MIPS @400MHz

PWM Channels

7

Ethernet

IEEE 802.3 10/100Mbit/s

Analog Input Channels

12

WiFi

IEEE 802.11b/g/n

Flash Memory

28 KB aval. USB

SRAM

2.5 KB

Card Reader Micro-SD only

EEPROM

1 KB

RAM

Clock Speed

16 MHz

Flash Mem.16 MB

Operating voltage: 5V

Type-A 2.0 Host/Device

64 MB DDR2
Processors Cooperation
Federico Vanzati

f.vanzati@arduino.cc - Officine Arduino Torino
Bridge Concept
Federico Vanzati

f.vanzati@arduino.cc - Officine Arduino Torino

As is common on Linux system, the console to access to the environment is
exposed on the Serial port.
The Arduino microcontroller (32U4) can control the Linux system through
the Serial port.
The Bridge Library has been developed to simplify the way the sketch can
manage the processes and the tools on the Linux side.
Arduino Library
Bridge
Python process on the Linux side
Started by the sketch
Bridge Features – communication protocol
Federico Vanzati

f.vanzati@arduino.cc - Officine Arduino Torino

The Bridge library simplify the communication between the two processors
using a protocol that numbers the packets, manage retrasmission and
timeout.
Classes of the library:
●
●
●
●
●
●
●
●

Storage
Process
Console
FileIO
Mailbox
HttpClient
YunServer
YunClient
Bridge Features – Shared Storage
Federico Vanzati

f.vanzati@arduino.cc - Officine Arduino Torino

With the Bridge library is possible to save data or
variables and share it with the Linux processor
using the shared storage, that has a KEY/VALUE
structure.
Bridge Features – Process
Federico Vanzati

f.vanzati@arduino.cc - Officine Arduino Torino

Process is the base class for all Bridge based calls for communicating with the
Yun's shell. It is not called directly, but invoked whenever you use a function that
relies on it.
Run Process
Process p;            
  p.begin("curl");      
  p.addParameter("http://arduino.cc/asciilogo.txt"); 
  p.run();
Read Output
while (p.available()>0) {
    char c = p.read();
    Serial.print(c);
  }
  Serial.flush();
}
Bridge Features – Console
Federico Vanzati

f.vanzati@arduino.cc - Officine Arduino Torino

Console, based on Bridge, enables you to send information from the Yún to a
computer just as you would with the serial monitor, but wirelessly. It creates a
secure connection between the Yún and your computer via SSH.
#include <Console.h>
const int ledPin = 13;
int incomingByte;
void setup() {
Bridge.begin();
Console.begin();
while (!Console) ; // wait for Console port to connect.
Console.println("You're connected to the Console!!!!");
pinMode(ledPin, OUTPUT);
}
void loop() {
// see if there's incoming serial data:
if (Console.available() > 0) {
incomingByte = Console.read(); // read the oldest byte in the serial buffer:
if (incomingByte == 'H') { // if it's a capital H (ASCII 72), turn on the LED
digitalWrite(ledPin, HIGH);
}
if (incomingByte == 'L') {
// if it's an L (ASCII 76) turn off the LED
digitalWrite(ledPin, LOW);
}
}
}
Bridge Features – FileIO
Federico Vanzati

f.vanzati@arduino.cc - Officine Arduino Torino

FileIO is the base class for manipulating files and directories on the Linux
system directly from the 32U4.
If an SD card is inserted into the slot with an empty folder in the SD root named
"arduino". This will ensure that the Yún will create a link to the SD to the
"/mnt/sd" path.
Bridge Features – Mailbox
Federico Vanzati

f.vanzati@arduino.cc - Officine Arduino Torino

Mailbox Class allows you to exchange messages between the two processors,
putting them in two separate queues.
Bridge Features – Client/Server
Federico Vanzati

f.vanzati@arduino.cc - Officine Arduino Torino

HttpClient:
HttpClient extends Process and acts as a wrapper for common cURL commands
by creating a HTTP client in Linino
YunServer:
YunServer opens a listening socket on the Linino. You can choose to use it only
on localhost or expose the socket on the outside (with or without password)
YunClient:
YunClient is a TCP/IP client, implements the same APIs to connect, read and
write as in the Arduino Ethernet and WiFi Client libraries
WiFi Upload
Federico Vanzati

f.vanzati@arduino.cc - Officine Arduino Torino
“www” folder
Federico Vanzati

f.vanzati@arduino.cc - Officine Arduino Torino
Out of the Box experience
Federico Vanzati

f.vanzati@arduino.cc - Officine Arduino Torino
Temboo
Federico Vanzati

f.vanzati@arduino.cc - Officine Arduino Torino
Sands Project
Federico Vanzati

f.vanzati@arduino.cc - Officine Arduino Torino

Social&Smart is a research project using the housekeeping scenario to
experiment a pervasive Future Internet network that provides real services to a
wide population.
Demo
Federico Vanzati

f.vanzati@arduino.cc - Officine Arduino Torino

Contenu connexe

Tendances

lesson1 - Getting Started with ESP8266
lesson1 -  Getting Started with ESP8266lesson1 -  Getting Started with ESP8266
lesson1 - Getting Started with ESP8266Elaf A.Saeed
 
Attendance system using MYSQL with Raspberry pi and RFID-RC522
Attendance system using MYSQL with Raspberry pi and RFID-RC522Attendance system using MYSQL with Raspberry pi and RFID-RC522
Attendance system using MYSQL with Raspberry pi and RFID-RC522Sanjay Kumar
 
Programando o ESP8266 com Python
Programando o ESP8266 com PythonProgramando o ESP8266 com Python
Programando o ESP8266 com PythonRelsi Maron
 
Esp8266 hack sonoma county 4/8/2015
Esp8266 hack sonoma county 4/8/2015Esp8266 hack sonoma county 4/8/2015
Esp8266 hack sonoma county 4/8/2015mycal1
 
Esp8266 NodeMCU
Esp8266 NodeMCUEsp8266 NodeMCU
Esp8266 NodeMCUroadster43
 
lesson2 - Nodemcu course - NodeMCU dev Board
 lesson2 - Nodemcu course - NodeMCU dev Board lesson2 - Nodemcu course - NodeMCU dev Board
lesson2 - Nodemcu course - NodeMCU dev BoardElaf A.Saeed
 
Esp8266 - Intro for dummies
Esp8266 - Intro for dummiesEsp8266 - Intro for dummies
Esp8266 - Intro for dummiesPavlos Isaris
 
Esp8266 wi fi_module_quick_start_guide_v_1.0.4
Esp8266 wi fi_module_quick_start_guide_v_1.0.4Esp8266 wi fi_module_quick_start_guide_v_1.0.4
Esp8266 wi fi_module_quick_start_guide_v_1.0.4Melvin Gutiérrez Rivero
 
Rdl esp32 development board trainer kit
Rdl esp32 development board trainer kitRdl esp32 development board trainer kit
Rdl esp32 development board trainer kitResearch Design Lab
 
NodeMCU with Blynk and Firebase
NodeMCU with Blynk and FirebaseNodeMCU with Blynk and Firebase
NodeMCU with Blynk and FirebaseEueung Mulyana
 
ESP32 WiFi & Bluetooth Module - Getting Started Guide
ESP32 WiFi & Bluetooth Module - Getting Started GuideESP32 WiFi & Bluetooth Module - Getting Started Guide
ESP32 WiFi & Bluetooth Module - Getting Started Guidehandson28
 
Node mcu x raspberrypi2 x mqtt
Node mcu x raspberrypi2 x mqttNode mcu x raspberrypi2 x mqtt
Node mcu x raspberrypi2 x mqtt承翰 蔡
 
How to Install ESP8266 WiFi Web Server using Arduino IDE
How to Install ESP8266 WiFi Web Server using Arduino IDEHow to Install ESP8266 WiFi Web Server using Arduino IDE
How to Install ESP8266 WiFi Web Server using Arduino IDENaoto MATSUMOTO
 
Arduino Meetup with Sonar and 433Mhz Radios
Arduino Meetup with Sonar and 433Mhz RadiosArduino Meetup with Sonar and 433Mhz Radios
Arduino Meetup with Sonar and 433Mhz Radiosroadster43
 
Introduction to ESP32 Programming [Road to RIoT 2017]
Introduction to ESP32 Programming [Road to RIoT 2017]Introduction to ESP32 Programming [Road to RIoT 2017]
Introduction to ESP32 Programming [Road to RIoT 2017]Alwin Arrasyid
 
Nodemcu - introduction
Nodemcu - introductionNodemcu - introduction
Nodemcu - introductionMichal Sedlak
 
Lesson 9- NodeMCU with Arduino UNO (UART)
Lesson 9- NodeMCU with Arduino UNO (UART)Lesson 9- NodeMCU with Arduino UNO (UART)
Lesson 9- NodeMCU with Arduino UNO (UART)Elaf A.Saeed
 

Tendances (20)

lesson1 - Getting Started with ESP8266
lesson1 -  Getting Started with ESP8266lesson1 -  Getting Started with ESP8266
lesson1 - Getting Started with ESP8266
 
Attendance system using MYSQL with Raspberry pi and RFID-RC522
Attendance system using MYSQL with Raspberry pi and RFID-RC522Attendance system using MYSQL with Raspberry pi and RFID-RC522
Attendance system using MYSQL with Raspberry pi and RFID-RC522
 
Programando o ESP8266 com Python
Programando o ESP8266 com PythonProgramando o ESP8266 com Python
Programando o ESP8266 com Python
 
ESP8266 Wifi Nodemcu
ESP8266 Wifi Nodemcu ESP8266 Wifi Nodemcu
ESP8266 Wifi Nodemcu
 
Esp8266 hack sonoma county 4/8/2015
Esp8266 hack sonoma county 4/8/2015Esp8266 hack sonoma county 4/8/2015
Esp8266 hack sonoma county 4/8/2015
 
Esp8266 NodeMCU
Esp8266 NodeMCUEsp8266 NodeMCU
Esp8266 NodeMCU
 
lesson2 - Nodemcu course - NodeMCU dev Board
 lesson2 - Nodemcu course - NodeMCU dev Board lesson2 - Nodemcu course - NodeMCU dev Board
lesson2 - Nodemcu course - NodeMCU dev Board
 
Esp8266 - Intro for dummies
Esp8266 - Intro for dummiesEsp8266 - Intro for dummies
Esp8266 - Intro for dummies
 
Esp8266 wi fi_module_quick_start_guide_v_1.0.4
Esp8266 wi fi_module_quick_start_guide_v_1.0.4Esp8266 wi fi_module_quick_start_guide_v_1.0.4
Esp8266 wi fi_module_quick_start_guide_v_1.0.4
 
Rdl esp32 development board trainer kit
Rdl esp32 development board trainer kitRdl esp32 development board trainer kit
Rdl esp32 development board trainer kit
 
NodeMCU with Blynk and Firebase
NodeMCU with Blynk and FirebaseNodeMCU with Blynk and Firebase
NodeMCU with Blynk and Firebase
 
lwM2M OTA for ESP8266
lwM2M OTA for ESP8266lwM2M OTA for ESP8266
lwM2M OTA for ESP8266
 
ESP32 WiFi & Bluetooth Module - Getting Started Guide
ESP32 WiFi & Bluetooth Module - Getting Started GuideESP32 WiFi & Bluetooth Module - Getting Started Guide
ESP32 WiFi & Bluetooth Module - Getting Started Guide
 
Arduino & NodeMcu
Arduino & NodeMcuArduino & NodeMcu
Arduino & NodeMcu
 
Node mcu x raspberrypi2 x mqtt
Node mcu x raspberrypi2 x mqttNode mcu x raspberrypi2 x mqtt
Node mcu x raspberrypi2 x mqtt
 
How to Install ESP8266 WiFi Web Server using Arduino IDE
How to Install ESP8266 WiFi Web Server using Arduino IDEHow to Install ESP8266 WiFi Web Server using Arduino IDE
How to Install ESP8266 WiFi Web Server using Arduino IDE
 
Arduino Meetup with Sonar and 433Mhz Radios
Arduino Meetup with Sonar and 433Mhz RadiosArduino Meetup with Sonar and 433Mhz Radios
Arduino Meetup with Sonar and 433Mhz Radios
 
Introduction to ESP32 Programming [Road to RIoT 2017]
Introduction to ESP32 Programming [Road to RIoT 2017]Introduction to ESP32 Programming [Road to RIoT 2017]
Introduction to ESP32 Programming [Road to RIoT 2017]
 
Nodemcu - introduction
Nodemcu - introductionNodemcu - introduction
Nodemcu - introduction
 
Lesson 9- NodeMCU with Arduino UNO (UART)
Lesson 9- NodeMCU with Arduino UNO (UART)Lesson 9- NodeMCU with Arduino UNO (UART)
Lesson 9- NodeMCU with Arduino UNO (UART)
 

En vedette

Bnba annual report 2011
Bnba annual report 2011Bnba annual report 2011
Bnba annual report 2011Susi Yuliana
 
A non verbális kommunikációs formák
A non verbális kommunikációs formák A non verbális kommunikációs formák
A non verbális kommunikációs formák verebelyigabor
 
Summary of 5major market instruments
Summary of 5major market instrumentsSummary of 5major market instruments
Summary of 5major market instrumentsPeaceMaker
 
Restrict call(Android app discription)
Restrict call(Android app discription)Restrict call(Android app discription)
Restrict call(Android app discription)arunyogi
 
Keolis Group At A Glance
Keolis Group At A GlanceKeolis Group At A Glance
Keolis Group At A GlanceKeolis
 
Ερευνώντας το σχολείο του αύριο
Ερευνώντας το σχολείο του αύριοΕρευνώντας το σχολείο του αύριο
Ερευνώντας το σχολείο του αύριοGeorgios Dimakopoulos
 
Semana Vocacional Enero 2017 Preescolar-Primaria
Semana Vocacional Enero 2017 Preescolar-PrimariaSemana Vocacional Enero 2017 Preescolar-Primaria
Semana Vocacional Enero 2017 Preescolar-PrimariaCesar Flores
 
Vijay news issue 120114
Vijay news issue 120114Vijay news issue 120114
Vijay news issue 120114VIJAY NEWS
 
Animalitos
AnimalitosAnimalitos
Animalitoscarmengz
 
While searching for your passion
While searching for your passionWhile searching for your passion
While searching for your passionorampo
 
Bottl mvp ux result
Bottl  mvp ux resultBottl  mvp ux result
Bottl mvp ux resultAndrew Ku
 

En vedette (20)

Bnba annual report 2011
Bnba annual report 2011Bnba annual report 2011
Bnba annual report 2011
 
02122014
0212201402122014
02122014
 
Ablum covers
Ablum coversAblum covers
Ablum covers
 
A non verbális kommunikációs formák
A non verbális kommunikációs formák A non verbális kommunikációs formák
A non verbális kommunikációs formák
 
Summary of 5major market instruments
Summary of 5major market instrumentsSummary of 5major market instruments
Summary of 5major market instruments
 
Restrict call(Android app discription)
Restrict call(Android app discription)Restrict call(Android app discription)
Restrict call(Android app discription)
 
programgurt
programgurtprogramgurt
programgurt
 
Keolis Group At A Glance
Keolis Group At A GlanceKeolis Group At A Glance
Keolis Group At A Glance
 
Vremena
VremenaVremena
Vremena
 
Ερευνώντας το σχολείο του αύριο
Ερευνώντας το σχολείο του αύριοΕρευνώντας το σχολείο του αύριο
Ερευνώντας το σχολείο του αύριο
 
Everything
EverythingEverything
Everything
 
Semana Vocacional Enero 2017 Preescolar-Primaria
Semana Vocacional Enero 2017 Preescolar-PrimariaSemana Vocacional Enero 2017 Preescolar-Primaria
Semana Vocacional Enero 2017 Preescolar-Primaria
 
Walmart
WalmartWalmart
Walmart
 
27112014
2711201427112014
27112014
 
Vijay news issue 120114
Vijay news issue 120114Vijay news issue 120114
Vijay news issue 120114
 
Storyboard
Storyboard Storyboard
Storyboard
 
Animalitos
AnimalitosAnimalitos
Animalitos
 
Multyone en
Multyone enMultyone en
Multyone en
 
While searching for your passion
While searching for your passionWhile searching for your passion
While searching for your passion
 
Bottl mvp ux result
Bottl  mvp ux resultBottl  mvp ux result
Bottl mvp ux result
 

Similaire à [codemotion] Arduino Yun: internet for makers

Taller IoT en la Actualidad
Taller IoT en la ActualidadTaller IoT en la Actualidad
Taller IoT en la ActualidadLaurence HR
 
Windows 10 IoT Core, a real sample
Windows 10 IoT Core, a real sampleWindows 10 IoT Core, a real sample
Windows 10 IoT Core, a real sampleMirco Vanini
 
WiFi mesh network(ESP32 mStar and mesh topology)
WiFi mesh network(ESP32 mStar and mesh topology)WiFi mesh network(ESP32 mStar and mesh topology)
WiFi mesh network(ESP32 mStar and mesh topology)Raziuddin Khazi
 
Internet of Things - An Introdution
Internet of Things - An IntrodutionInternet of Things - An Introdution
Internet of Things - An IntrodutionNarayan Vyas
 
Tac Presentation October 72014- Raspberry PI
Tac Presentation October 72014- Raspberry PITac Presentation October 72014- Raspberry PI
Tac Presentation October 72014- Raspberry PICliff Samuels Jr.
 
Lab Handson: Power your Creations with Intel Edison!
Lab Handson: Power your Creations with Intel Edison!Lab Handson: Power your Creations with Intel Edison!
Lab Handson: Power your Creations with Intel Edison!Codemotion
 
jeevan ppt anits ecec.pptx
jeevan ppt anits ecec.pptxjeevan ppt anits ecec.pptx
jeevan ppt anits ecec.pptxNickKumar17
 
IoT with openHAB on pcDuino3B
IoT with openHAB on pcDuino3BIoT with openHAB on pcDuino3B
IoT with openHAB on pcDuino3BJingfeng Liu
 
Trends of IoT Technology for industrial prototyping and educational markets
Trends of IoT Technology for industrial prototyping and educational marketsTrends of IoT Technology for industrial prototyping and educational markets
Trends of IoT Technology for industrial prototyping and educational marketsWithTheBest
 
TDD in deeply embedded system (Arduino) with TAP
TDD in deeply embedded system (Arduino) with TAPTDD in deeply embedded system (Arduino) with TAP
TDD in deeply embedded system (Arduino) with TAPFrançois Perrad
 
Arduino camera interfacing OV7670
Arduino camera interfacing OV7670Arduino camera interfacing OV7670
Arduino camera interfacing OV7670Somnath Sharma
 
Digital home automation with arduino bluetooth
Digital home automation with arduino bluetoothDigital home automation with arduino bluetooth
Digital home automation with arduino bluetoothShishupal03012015
 
XBee and RFID
XBee and RFIDXBee and RFID
XBee and RFIDTinker
 

Similaire à [codemotion] Arduino Yun: internet for makers (20)

Taller IoT en la Actualidad
Taller IoT en la ActualidadTaller IoT en la Actualidad
Taller IoT en la Actualidad
 
Windows 10 IoT Core, a real sample
Windows 10 IoT Core, a real sampleWindows 10 IoT Core, a real sample
Windows 10 IoT Core, a real sample
 
Report
ReportReport
Report
 
WiFi mesh network(ESP32 mStar and mesh topology)
WiFi mesh network(ESP32 mStar and mesh topology)WiFi mesh network(ESP32 mStar and mesh topology)
WiFi mesh network(ESP32 mStar and mesh topology)
 
Introduction of Arduino Uno
Introduction of Arduino UnoIntroduction of Arduino Uno
Introduction of Arduino Uno
 
Internet of Things - An Introdution
Internet of Things - An IntrodutionInternet of Things - An Introdution
Internet of Things - An Introdution
 
Tac Presentation October 72014- Raspberry PI
Tac Presentation October 72014- Raspberry PITac Presentation October 72014- Raspberry PI
Tac Presentation October 72014- Raspberry PI
 
Wi-Fi Esp8266 nodemcu
Wi-Fi Esp8266 nodemcu Wi-Fi Esp8266 nodemcu
Wi-Fi Esp8266 nodemcu
 
Lab Handson: Power your Creations with Intel Edison!
Lab Handson: Power your Creations with Intel Edison!Lab Handson: Power your Creations with Intel Edison!
Lab Handson: Power your Creations with Intel Edison!
 
Arduino
ArduinoArduino
Arduino
 
jeevan ppt anits ecec.pptx
jeevan ppt anits ecec.pptxjeevan ppt anits ecec.pptx
jeevan ppt anits ecec.pptx
 
IoT with openHAB on pcDuino3B
IoT with openHAB on pcDuino3BIoT with openHAB on pcDuino3B
IoT with openHAB on pcDuino3B
 
Trends of IoT Technology for industrial prototyping and educational markets
Trends of IoT Technology for industrial prototyping and educational marketsTrends of IoT Technology for industrial prototyping and educational markets
Trends of IoT Technology for industrial prototyping and educational markets
 
TDD in deeply embedded system (Arduino) with TAP
TDD in deeply embedded system (Arduino) with TAPTDD in deeply embedded system (Arduino) with TAP
TDD in deeply embedded system (Arduino) with TAP
 
Arduino camera interfacing OV7670
Arduino camera interfacing OV7670Arduino camera interfacing OV7670
Arduino camera interfacing OV7670
 
Esp8266 v12
Esp8266 v12Esp8266 v12
Esp8266 v12
 
Digital home automation with arduino bluetooth
Digital home automation with arduino bluetoothDigital home automation with arduino bluetooth
Digital home automation with arduino bluetooth
 
XBee and RFID
XBee and RFIDXBee and RFID
XBee and RFID
 
XBee and RFID
XBee and RFIDXBee and RFID
XBee and RFID
 
Arduino
ArduinoArduino
Arduino
 

Dernier

Accelerating Enterprise Software Engineering with Platformless
Accelerating Enterprise Software Engineering with PlatformlessAccelerating Enterprise Software Engineering with Platformless
Accelerating Enterprise Software Engineering with PlatformlessWSO2
 
Connecting the Dots for Information Discovery.pdf
Connecting the Dots for Information Discovery.pdfConnecting the Dots for Information Discovery.pdf
Connecting the Dots for Information Discovery.pdfNeo4j
 
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
 
A Framework for Development in the AI Age
A Framework for Development in the AI AgeA Framework for Development in the AI Age
A Framework for Development in the AI AgeCprime
 
Abdul Kader Baba- Managing Cybersecurity Risks and Compliance Requirements i...
Abdul Kader Baba- Managing Cybersecurity Risks  and Compliance Requirements i...Abdul Kader Baba- Managing Cybersecurity Risks  and Compliance Requirements i...
Abdul Kader Baba- Managing Cybersecurity Risks and Compliance Requirements i...itnewsafrica
 
Microsoft 365 Copilot: How to boost your productivity with AI – Part two: Dat...
Microsoft 365 Copilot: How to boost your productivity with AI – Part two: Dat...Microsoft 365 Copilot: How to boost your productivity with AI – Part two: Dat...
Microsoft 365 Copilot: How to boost your productivity with AI – Part two: Dat...Nikki Chapple
 
Français Patch Tuesday - Avril
Français Patch Tuesday - AvrilFrançais Patch Tuesday - Avril
Français Patch Tuesday - AvrilIvanti
 
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
 
Emixa Mendix Meetup 11 April 2024 about Mendix Native development
Emixa Mendix Meetup 11 April 2024 about Mendix Native developmentEmixa Mendix Meetup 11 April 2024 about Mendix Native development
Emixa Mendix Meetup 11 April 2024 about Mendix Native developmentPim van der Noll
 
The Future Roadmap for the Composable Data Stack - Wes McKinney - Data Counci...
The Future Roadmap for the Composable Data Stack - Wes McKinney - Data Counci...The Future Roadmap for the Composable Data Stack - Wes McKinney - Data Counci...
The Future Roadmap for the Composable Data Stack - Wes McKinney - Data Counci...Wes McKinney
 
Varsha Sewlal- Cyber Attacks on Critical Critical Infrastructure
Varsha Sewlal- Cyber Attacks on Critical Critical InfrastructureVarsha Sewlal- Cyber Attacks on Critical Critical Infrastructure
Varsha Sewlal- Cyber Attacks on Critical Critical Infrastructureitnewsafrica
 
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
 
Bridging Between CAD & GIS: 6 Ways to Automate Your Data Integration
Bridging Between CAD & GIS:  6 Ways to Automate Your Data IntegrationBridging Between CAD & GIS:  6 Ways to Automate Your Data Integration
Bridging Between CAD & GIS: 6 Ways to Automate Your Data Integrationmarketing932765
 
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
 
2024 April Patch Tuesday
2024 April Patch Tuesday2024 April Patch Tuesday
2024 April Patch TuesdayIvanti
 
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
 
MuleSoft Online Meetup Group - B2B Crash Course: Release SparkNotes
MuleSoft Online Meetup Group - B2B Crash Course: Release SparkNotesMuleSoft Online Meetup Group - B2B Crash Course: Release SparkNotes
MuleSoft Online Meetup Group - B2B Crash Course: Release SparkNotesManik S Magar
 
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
 
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
 
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
 

Dernier (20)

Accelerating Enterprise Software Engineering with Platformless
Accelerating Enterprise Software Engineering with PlatformlessAccelerating Enterprise Software Engineering with Platformless
Accelerating Enterprise Software Engineering with Platformless
 
Connecting the Dots for Information Discovery.pdf
Connecting the Dots for Information Discovery.pdfConnecting the Dots for Information Discovery.pdf
Connecting the Dots for Information Discovery.pdf
 
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...
 
A Framework for Development in the AI Age
A Framework for Development in the AI AgeA Framework for Development in the AI Age
A Framework for Development in the AI Age
 
Abdul Kader Baba- Managing Cybersecurity Risks and Compliance Requirements i...
Abdul Kader Baba- Managing Cybersecurity Risks  and Compliance Requirements i...Abdul Kader Baba- Managing Cybersecurity Risks  and Compliance Requirements i...
Abdul Kader Baba- Managing Cybersecurity Risks and Compliance Requirements i...
 
Microsoft 365 Copilot: How to boost your productivity with AI – Part two: Dat...
Microsoft 365 Copilot: How to boost your productivity with AI – Part two: Dat...Microsoft 365 Copilot: How to boost your productivity with AI – Part two: Dat...
Microsoft 365 Copilot: How to boost your productivity with AI – Part two: Dat...
 
Français Patch Tuesday - Avril
Français Patch Tuesday - AvrilFrançais Patch Tuesday - Avril
Français Patch Tuesday - Avril
 
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
 
Emixa Mendix Meetup 11 April 2024 about Mendix Native development
Emixa Mendix Meetup 11 April 2024 about Mendix Native developmentEmixa Mendix Meetup 11 April 2024 about Mendix Native development
Emixa Mendix Meetup 11 April 2024 about Mendix Native development
 
The Future Roadmap for the Composable Data Stack - Wes McKinney - Data Counci...
The Future Roadmap for the Composable Data Stack - Wes McKinney - Data Counci...The Future Roadmap for the Composable Data Stack - Wes McKinney - Data Counci...
The Future Roadmap for the Composable Data Stack - Wes McKinney - Data Counci...
 
Varsha Sewlal- Cyber Attacks on Critical Critical Infrastructure
Varsha Sewlal- Cyber Attacks on Critical Critical InfrastructureVarsha Sewlal- Cyber Attacks on Critical Critical Infrastructure
Varsha Sewlal- Cyber Attacks on Critical Critical Infrastructure
 
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
 
Bridging Between CAD & GIS: 6 Ways to Automate Your Data Integration
Bridging Between CAD & GIS:  6 Ways to Automate Your Data IntegrationBridging Between CAD & GIS:  6 Ways to Automate Your Data Integration
Bridging Between CAD & GIS: 6 Ways to Automate Your Data Integration
 
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
 
2024 April Patch Tuesday
2024 April Patch Tuesday2024 April Patch Tuesday
2024 April Patch Tuesday
 
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
 
MuleSoft Online Meetup Group - B2B Crash Course: Release SparkNotes
MuleSoft Online Meetup Group - B2B Crash Course: Release SparkNotesMuleSoft Online Meetup Group - B2B Crash Course: Release SparkNotes
MuleSoft Online Meetup Group - B2B Crash Course: Release SparkNotes
 
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)
 
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)
 
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
 

[codemotion] Arduino Yun: internet for makers

  • 1. Federico Vanzati Arduino Yún: Internet for makers f.vanzati@arduino.cc - Officine Arduino Torino
  • 2. What is Arduino? Federico Vanzati f.vanzati@arduino.cc - Officine Arduino Torino Arduino is an electronic prototyping platform that can sense the environment by receiving input from a variety of sensors and can affect its surroundings by controlling lights, motors, and other actuators. COMMUNICATION INPUT USB Serial TWI SPI Analog Digital OUTPUT Analog Digital
  • 3. Physical to Internet? Federico Vanzati Ethernet Shield f.vanzati@arduino.cc - Officine Arduino Torino WiFi Shield
  • 4. Federico Vanzati Limited number of connections and modest performances because all the code is processed from the AVR Client Server Managing the connection f.vanzati@arduino.cc - Officine Arduino Torino TCP/IP stack only can't handle secure connections natively
  • 5. Arduino Yún Federico Vanzati Https SSL SSH AR9331 running OpenWRT Usual Arduino experience 32U4 [Leonardo] Tools offered by the Linux system f.vanzati@arduino.cc - Officine Arduino Torino Advanced connectivity capabilities thanks to Linux
  • 6. Internet of Things (IoT) Federico Vanzati f.vanzati@arduino.cc - Officine Arduino Torino Arduino: one of the first platform to offer the possibility to connect sensors and actuators to Internet. Many projects in different categories, for example: ● Smart metering (photovoltaic, water flow and level, electrical comsumption)
  • 7. Internet of Things (IoT) Federico Vanzati f.vanzati@arduino.cc - Officine Arduino Torino ● Enviroment (radiation level, earthquake, air pollution) ● Security & Emergencies (intrusion detection, fire/gas detection)
  • 8. Internet of Things (IoT) Federico Vanzati f.vanzati@arduino.cc - Officine Arduino Torino In a few years certainly these projects have influenced the definition of IoT. The Arduino Yún follows the evolution of internet answering to the new requirements of access to the web services. The Arduino Yún gives you a lot of cool features. Both WiFi and Ethernet Enhanced connectivity (speed, more protocols, …) Independent Web Server Additional peripherals (USB host, SD card
  • 9. What's on board? Federico Vanzati f.vanzati@arduino.cc - Officine Arduino Torino Thanks to the Linux processor you have all the tools you normally use on your compurer to develop code that lives on Internet.
  • 10. Hardware Summary Federico Vanzati f.vanzati@arduino.cc - Officine Arduino Torino Atmega32U4 (Leonardo) AR9331 (OpenWRT) Digital I/O Pins 20 Architecture MIPS @400MHz PWM Channels 7 Ethernet IEEE 802.3 10/100Mbit/s Analog Input Channels 12 WiFi IEEE 802.11b/g/n Flash Memory 28 KB aval. USB SRAM 2.5 KB Card Reader Micro-SD only EEPROM 1 KB RAM Clock Speed 16 MHz Flash Mem.16 MB Operating voltage: 5V Type-A 2.0 Host/Device 64 MB DDR2
  • 12. Bridge Concept Federico Vanzati f.vanzati@arduino.cc - Officine Arduino Torino As is common on Linux system, the console to access to the environment is exposed on the Serial port. The Arduino microcontroller (32U4) can control the Linux system through the Serial port. The Bridge Library has been developed to simplify the way the sketch can manage the processes and the tools on the Linux side. Arduino Library Bridge Python process on the Linux side Started by the sketch
  • 13. Bridge Features – communication protocol Federico Vanzati f.vanzati@arduino.cc - Officine Arduino Torino The Bridge library simplify the communication between the two processors using a protocol that numbers the packets, manage retrasmission and timeout. Classes of the library: ● ● ● ● ● ● ● ● Storage Process Console FileIO Mailbox HttpClient YunServer YunClient
  • 14. Bridge Features – Shared Storage Federico Vanzati f.vanzati@arduino.cc - Officine Arduino Torino With the Bridge library is possible to save data or variables and share it with the Linux processor using the shared storage, that has a KEY/VALUE structure.
  • 15. Bridge Features – Process Federico Vanzati f.vanzati@arduino.cc - Officine Arduino Torino Process is the base class for all Bridge based calls for communicating with the Yun's shell. It is not called directly, but invoked whenever you use a function that relies on it. Run Process Process p;               p.begin("curl");         p.addParameter("http://arduino.cc/asciilogo.txt");    p.run(); Read Output while (p.available()>0) {     char c = p.read();     Serial.print(c);   }   Serial.flush(); }
  • 16. Bridge Features – Console Federico Vanzati f.vanzati@arduino.cc - Officine Arduino Torino Console, based on Bridge, enables you to send information from the Yún to a computer just as you would with the serial monitor, but wirelessly. It creates a secure connection between the Yún and your computer via SSH. #include <Console.h> const int ledPin = 13; int incomingByte; void setup() { Bridge.begin(); Console.begin(); while (!Console) ; // wait for Console port to connect. Console.println("You're connected to the Console!!!!"); pinMode(ledPin, OUTPUT); } void loop() { // see if there's incoming serial data: if (Console.available() > 0) { incomingByte = Console.read(); // read the oldest byte in the serial buffer: if (incomingByte == 'H') { // if it's a capital H (ASCII 72), turn on the LED digitalWrite(ledPin, HIGH); } if (incomingByte == 'L') { // if it's an L (ASCII 76) turn off the LED digitalWrite(ledPin, LOW); } } }
  • 17. Bridge Features – FileIO Federico Vanzati f.vanzati@arduino.cc - Officine Arduino Torino FileIO is the base class for manipulating files and directories on the Linux system directly from the 32U4. If an SD card is inserted into the slot with an empty folder in the SD root named "arduino". This will ensure that the Yún will create a link to the SD to the "/mnt/sd" path.
  • 18. Bridge Features – Mailbox Federico Vanzati f.vanzati@arduino.cc - Officine Arduino Torino Mailbox Class allows you to exchange messages between the two processors, putting them in two separate queues.
  • 19. Bridge Features – Client/Server Federico Vanzati f.vanzati@arduino.cc - Officine Arduino Torino HttpClient: HttpClient extends Process and acts as a wrapper for common cURL commands by creating a HTTP client in Linino YunServer: YunServer opens a listening socket on the Linino. You can choose to use it only on localhost or expose the socket on the outside (with or without password) YunClient: YunClient is a TCP/IP client, implements the same APIs to connect, read and write as in the Arduino Ethernet and WiFi Client libraries
  • 22. Out of the Box experience Federico Vanzati f.vanzati@arduino.cc - Officine Arduino Torino
  • 24. Sands Project Federico Vanzati f.vanzati@arduino.cc - Officine Arduino Torino Social&Smart is a research project using the housekeeping scenario to experiment a pervasive Future Internet network that provides real services to a wide population.