SlideShare a Scribd company logo
Globalcode – Open4education
Trilha – Arduino e Makers
Relsi Maron
Programando o ESP8266 com Python
Globalcode – Open4education
Quem?
- Programador
- 7 Anos no teclado
- 3 Anos num relacionamento sério com Python
- http://github.com/relsi
- http://pt.slideshare.net/relsi
- http://linkedin.com/in/relsi
- http://ikebanacw.com
Globalcode – Open4education
Para quem?
Globalcode – Open4education
Por que Python?
Globalcode – Open4education
Por que Python?
Globalcode – Open4education
Por que Python?
Globalcode – Open4education
Por que Python?
Bonito é melhor que feio.
Explícito é melhor que implícito.
Simples é melhor que complexo.
Complexo é melhor que complicado.
Linear é melhor do que aninhado.
Esparso é melhor que denso.
Legibilidade conta.
Casos especiais não são especiais o bastante para quebrar as regras.
Ainda que praticidade vença a pureza.
Erros nunca devem passar silenciosamente.
A menos que sejam explicitamente silenciados.
Diante da ambigüidade, recuse a tentação de adivinhar.
Deveria haver um — e preferencialmente só um — modo óbvio para fazer algo.
Embora esse modo possa não ser óbvio a princípio a menos que você seja holandês.
Agora é melhor que nunca.
Embora nunca freqüentemente seja melhor que *já*.
Se a implementação é difícil de explicar, é uma má idéia.
Se a implementação é fácil de explicar, pode ser uma boa idéia.
Namespaces são uma grande idéia — vamos ter mais dessas!
Globalcode – Open4education
Por que Python?
Globalcode – Open4education
Por que Python?
Globalcode – Open4education
Por que Python?
- Linguagem de altíssimo nível (VHLL)
- Criada por Guido van Rossum em 1991
- Interpretada e interativa
- Multiplataforma
- Multipropósito
- Muito Foda
Globalcode – Open4education
ESP8266
- 32-bit RISC CPU 80 MHz
- 64 KiB RAM, 96 KiB of data RAM
- External QSPI flash - 512 KiB to 4 MiB
- IEEE 802.11 b/g/n Wi-Fi
- WEP/WPA/WPA2
- 16 GPIO pins
- SPI, I²C,
- UART
Globalcode – Open4education
ESP8266
Globalcode – Open4education
Por que ESP8266?
Globalcode – Open4education
Por que ESP8266?
Globalcode – Open4education
Por que ESP8266?
Globalcode – Open4education
Porque roda Python! =D
Globalcode – Open4education
Micropython
MicroPython is a lean
and efficient implementation
of the Python 3
programming language
that includes a small subset
of the Python standard library
and is optimised to run on microcontrollers
and in constrained environments.
http://www.micropython.org/
Globalcode – Open4education
MicroPython
- STM32F405RG microcontroller
- 168 MHz Cortex M4 CPU
- 1024KiB flash ROM and 192KiB RAM
- Micro USB connector
- Micro SD card slot
- 3-axis accelerometer (MMA7660)
- Real time clock with optional battery backup
- 24 GPIO on left and right edges
- 5 GPIO on bottom row
- 3x 12-bit analog to digital converters
- 2x 12-bit digital to analog (DAC) converters
- 4 LEDs (red, green, yellow and blue)
- 1 reset and 1 user switch
- On-board 3.3V LDO voltage regulator,
capable of supplying up to 250mA,
input voltage range 3.6V to 16V
- DFU bootloader in ROM
Globalcode – Open4education
- array – arrays of numeric data
- Builtin Functions
- gc – control the garbage collector
- math – mathematical functions
- sys – system specific functions
- ubinascii – binary/ASCII conversions
- ucollections – collection and container types
- uhashlib – hashing algorithm
- uheapq – heap queue algorithm
- uio – input/output streams
- ujson – JSON encoding and decoding
- uos – basic “operating system” services
- ure – regular expressions
- usocket – socket module
- ussl – ssl module
- ustruct – pack and unpack primitive data types
- utime – time related functions
- uzlib – zlib decompression
MicroPython
Standard libraries
https://goo.gl/w1Q3Yy
Globalcode – Open4education
- machine — functions related to the board
- micropython – access and control MicroPython internals
- network — network configuration
- uctypes – access binary data in a structured way
- esp — functions related to the ESP8266
MicroPython
Specific libraries
https://goo.gl/w1Q3Yy
Globalcode – Open4education
import machine
machine.freq() # get the current frequency of the CPU
machine.freq(160000000) # set the CPU frequency to 160 MHz
MicroPython
Módulo machine
https://goo.gl/8hCppg
Globalcode – Open4education
from machine import Pin
p0 = Pin(0, Pin.OUT) # create output pin on GPIO0
p0.high() # set pin to high
p0.low() # set pin to low
p0.value(1) # set pin to high
p2 = Pin(2, Pin.IN) # create input pin on GPIO2
print(p2.value()) # get value, 0 or 1
p4 = Pin(4, Pin.IN, Pin.PULL_UP) # enable internal pull-up resistor
p5 = Pin(5, Pin.OUT, value = 1) # set pin high on creation
MicroPython
Módulo machine
https://goo.gl/8hCppg
Globalcode – Open4education
import network
wlan = network.WLAN(network.STA_IF) # create station interface
wlan.active(True) # activate the interface
wlan.scan() # scan for access points
wlan.isconnected() # check if the station is connected to an AP
wlan.connect('essid', 'password') # connect to an AP
wlan.config('mac') # get MAC adddress
wlan.ifconfig() # get the interface's
#IP/netmask/gw/DNS
MicroPython
Módulo network
https://goo.gl/8hCppg
Globalcode – Open4education
import network
ap = network.WLAN(network.AP_IF) # create access-point interface
ap.active(True) # activate the interface
ap.config(essid='ESP-AP') # set the ESSID of the access point
MicroPython
Módulo network
https://goo.gl/8hCppg
Globalcode – Open4education
ESP8266 + MicroPython
Preparando o Terreno
Globalcode – Open4education
ESP8266 + MicroPython
Globalcode – Open4education
ESP8266 + MicroPython
Globalcode – Open4education
ESP8266 + MicroPython
http://pedrominatel.com.br/arduino/utilizando-o-arduino-para-programar-o-esp/
Globalcode – Open4education
ESP8266 + MicroPython
https://goo.gl/FtgaJ7
Globalcode – Open4education
ESP8266 + MicroPython
Gravando o firmware
Globalcode – Open4education
ESP8266 + MicroPython
Gravando o firmware
Verificar a porta do dispositivo
$ lsusb
Bus 001 Device 006: ID 10c4:ea60 Cygnal Integrated Products, Inc. CP210x UART...
$ dmesg | grep USB
usb 1-1: cp210x converter now attached to ttyUSB0
Instalar o esptool
$ pip install esptool
Ou
$ git clone https://github.com/themadinventor/esptool.git
Python 2.7
Globalcode – Open4education
ESP8266 + MicroPython
Gravando o firmware
Apagar o firmware atual
$ esptool.py --port /dev/ttyUSB0 erase_flash
esptool.py v1.1
Connecting...
Erasing flash (this may take a while)...
$ esptool.py --port /dev/ttyUSB0 --baud 115200 write_flash --flash_size=8m -fm
dio 0 esp8266-20160909-v1.8.4.bin
Connecting...
Running Cesanta flasher stub...
Flash params set to 0x0220
Writing 565248 @ 0x0... 565248 (100 %)
Wrote 565248 bytes at 0x0 in 12.7 seconds (357.1 kbit/s)...
Leaving...
Globalcode – Open4education
ESP8266 + MicroPython
Acessando
Globalcode – Open4education
https://github.com/micropython/webrepl
ESP8266 + MicroPython
Acessando
Globalcode – Open4education
ESP8266 + MicroPython
Acessando
Globalcode – Open4education
ESP8266 + MicroPython
Acessando
Globalcode – Open4education
ESP8266 + MicroPython
Acessando
http://esp8266.ru/esplorer/
Globalcode – Open4education
ESP8266 + MicroPython
Hello World
def blink():
import time
import machine
pin = machine.Pin(5, machine.Pin.OUT)
while True:
pin.high()
time.sleep(1)
pin.low()
time.sleep(1)
Globalcode – Open4education
ESP8266 + MicroPython
Controlando
def lampada(estado):
import machine
pin = machine.Pin(5, machine.Pin.OUT)
if estado == 1:
pin.high()
elif estado == 0:
pin.low()
Globalcode – Open4education
ESP8266 + MicroPython
Monitorando
def medida(tipo):
import dht
import machine
d = dht.DHT11(machine.Pin(4))
d.measure()
if tipo == 't':
r = d.temperature()
print(str(r) + ' °C')
elif tipo == 'h':
r = d.humidity()
print(str(r) + ' %RH')
Globalcode – Open4education
Ajuda
Referência
Tutorial
https://goo.gl/LVKXn9
https://goo.gl/Fw9wPD
Biblioteca
https://goo.gl/9s6DS8
Fórum
http://forum.micropython.org/
Globalcode – Open4education
Perguntas?
Obrigado pela atenção! :)
- http://github.com/relsi
- http://pt.slideshare.net/relsi
- http://linkedin.com/in/relsi
- http://ikebanacw.com

More Related Content

PDF
ESP8266 and IOT
dega1999
 
PDF
IoT simple with the ESP8266 - presented at the July 2015 Austin IoT Hardware ...
David Fowler
 
PDF
lwM2M OTA for ESP8266
Manolis Nikiforakis
 
PDF
Adafruit Huzzah Esp8266 WiFi Board
Biagio Botticelli
 
PPTX
Esp8266 Workshop
Stijn van Drunen
 
PPTX
Esp8266 - Intro for dummies
Pavlos Isaris
 
PDF
NodeMCU with Blynk and Firebase
Eueung Mulyana
 
PDF
Esp8266 hack sonoma county 4/8/2015
mycal1
 
ESP8266 and IOT
dega1999
 
IoT simple with the ESP8266 - presented at the July 2015 Austin IoT Hardware ...
David Fowler
 
lwM2M OTA for ESP8266
Manolis Nikiforakis
 
Adafruit Huzzah Esp8266 WiFi Board
Biagio Botticelli
 
Esp8266 Workshop
Stijn van Drunen
 
Esp8266 - Intro for dummies
Pavlos Isaris
 
NodeMCU with Blynk and Firebase
Eueung Mulyana
 
Esp8266 hack sonoma county 4/8/2015
mycal1
 

What's hot (19)

PDF
Cassiopeia Ltd - ESP8266+Arduino workshop
tomtobback
 
PDF
lesson1 - Getting Started with ESP8266
Elaf A.Saeed
 
PDF
WiFi SoC ESP8266
Devesh Samaiya
 
PPTX
Esp8266 NodeMCU
roadster43
 
PPTX
Build WiFi gadgets using esp8266
Baoshi Zhu
 
PPTX
Nodemcu - introduction
Michal Sedlak
 
PDF
NodeMCU ESP8266 workshop 1
Andy Gelme
 
PDF
How to Install ESP8266 WiFi Web Server using Arduino IDE
Naoto MATSUMOTO
 
PDF
Esp8266 basics
Eueung Mulyana
 
PDF
Node MCU Fun
David Bosschaert
 
PDF
Home automation-in-the-cloud-with-the-esp8266-and-adafruit-io
Tran Minh Nhut
 
PPTX
Remote tanklevelmonitor
Parshwadeep Lahane
 
PDF
lesson2 - Nodemcu course - NodeMCU dev Board
Elaf A.Saeed
 
PDF
Introduction to ESP32 Programming [Road to RIoT 2017]
Alwin Arrasyid
 
PPTX
Programming esp8266
Baoshi Zhu
 
PPTX
Arduino & NodeMcu
Guhan Ganesan
 
PDF
Home Automation by ESP8266
Gleb Vinnikov
 
PPTX
IoT Hands-On-Lab, KINGS, 2019
Jong-Hyun Kim
 
PDF
Making wearables with NodeMCU - FOSDEM 2017
Etiene Dalcol
 
Cassiopeia Ltd - ESP8266+Arduino workshop
tomtobback
 
lesson1 - Getting Started with ESP8266
Elaf A.Saeed
 
WiFi SoC ESP8266
Devesh Samaiya
 
Esp8266 NodeMCU
roadster43
 
Build WiFi gadgets using esp8266
Baoshi Zhu
 
Nodemcu - introduction
Michal Sedlak
 
NodeMCU ESP8266 workshop 1
Andy Gelme
 
How to Install ESP8266 WiFi Web Server using Arduino IDE
Naoto MATSUMOTO
 
Esp8266 basics
Eueung Mulyana
 
Node MCU Fun
David Bosschaert
 
Home automation-in-the-cloud-with-the-esp8266-and-adafruit-io
Tran Minh Nhut
 
Remote tanklevelmonitor
Parshwadeep Lahane
 
lesson2 - Nodemcu course - NodeMCU dev Board
Elaf A.Saeed
 
Introduction to ESP32 Programming [Road to RIoT 2017]
Alwin Arrasyid
 
Programming esp8266
Baoshi Zhu
 
Arduino & NodeMcu
Guhan Ganesan
 
Home Automation by ESP8266
Gleb Vinnikov
 
IoT Hands-On-Lab, KINGS, 2019
Jong-Hyun Kim
 
Making wearables with NodeMCU - FOSDEM 2017
Etiene Dalcol
 
Ad

Viewers also liked (20)

PDF
Transforme ideias em realidade com python e web2py
Relsi Maron
 
PDF
Multirão Python - introdução ao py serial com gtk3 e arduino
Antonio Thomacelli
 
PDF
Desenvolvimento web com python e web2py
Relsi Maron
 
PDF
Desenvolvimento de Jogos com Software Livre
Relsi Maron
 
PDF
Produção Audiovisual com Software Livre
Relsi Maron
 
PDF
Automação Residencial com Python e Arduino - PySM 2015
Relsi Maron
 
PDF
Desenvolvimento web ágil com python e web2py
Relsi Maron
 
PDF
Arduino + Python: produtividade ao extremo
Álvaro Justen
 
PDF
Apresentando a Godot Game Engine no FISL 16
Relsi Maron
 
PDF
Apunte c a_bajo_nivel
Carlos Arroyo Díaz
 
PDF
Memoria dinámica en el lenguaje de programación c
juan perez
 
PPTX
Basededatosicompleto 091122141836-phpapp02
Cesar Oswaldo Osorio Agualongo
 
PPT
Isaac Asimov
yapsmail
 
PDF
Desenvolvendo games com ferramentas livres
Relsi Maron
 
ODP
Desenvolvendo aplicações web com python e web2py
Gilson Filho
 
PDF
Programação ara não programadores com python e web2py
Relsi Maron
 
PPSX
robotics and its components
Amandeep Kaur
 
PDF
Desenvolvimento web com python e web2py
Relsi Maron
 
PDF
AVR_Course_Day5 avr interfaces
Mohamed Ali
 
Transforme ideias em realidade com python e web2py
Relsi Maron
 
Multirão Python - introdução ao py serial com gtk3 e arduino
Antonio Thomacelli
 
Desenvolvimento web com python e web2py
Relsi Maron
 
Desenvolvimento de Jogos com Software Livre
Relsi Maron
 
Produção Audiovisual com Software Livre
Relsi Maron
 
Automação Residencial com Python e Arduino - PySM 2015
Relsi Maron
 
Desenvolvimento web ágil com python e web2py
Relsi Maron
 
Arduino + Python: produtividade ao extremo
Álvaro Justen
 
Apresentando a Godot Game Engine no FISL 16
Relsi Maron
 
Apunte c a_bajo_nivel
Carlos Arroyo Díaz
 
Memoria dinámica en el lenguaje de programación c
juan perez
 
Basededatosicompleto 091122141836-phpapp02
Cesar Oswaldo Osorio Agualongo
 
Isaac Asimov
yapsmail
 
Desenvolvendo games com ferramentas livres
Relsi Maron
 
Desenvolvendo aplicações web com python e web2py
Gilson Filho
 
Programação ara não programadores com python e web2py
Relsi Maron
 
robotics and its components
Amandeep Kaur
 
Desenvolvimento web com python e web2py
Relsi Maron
 
AVR_Course_Day5 avr interfaces
Mohamed Ali
 
Ad

Similar to Programando o ESP8266 com Python (20)

PPTX
Getting started with Intel IoT Developer Kit
Sulamita Garcia
 
PDF
IoT: Internet of Things with Python
Lelio Campanile
 
PDF
[CB20] Vulnerabilities of Machine Learning Infrastructure by Sergey Gordeychik
CODE BLUE
 
PDF
[MakerHN] [IoT] [01] Intro 2
Công Hoàng Văn
 
PDF
Package Management via Spack on SJTU π Supercomputer
Jianwen Wei
 
PPTX
IoT with openHAB on pcDuino3B
Jingfeng Liu
 
PPTX
Attendance system using MYSQL with Raspberry pi and RFID-RC522
Sanjay Kumar
 
PDF
Introduction to FreeRTOS
ICS
 
PPTX
Workshop on IoT and Basic Home Automation_BAIUST.pptx
Redwan Ferdous
 
PPTX
Connected hardware for Software Engineers 101
Pance Cavkovski
 
PDF
Rapid IoT prototyping with mruby
雅也 山本
 
PDF
Webshield internet of things
Raghav Shetty
 
PDF
Practical Introduction to Internet of Things (IoT)
Suraj Kumar Jana
 
PDF
ESP32 WiFi & Bluetooth Module - Getting Started Guide
handson28
 
PDF
Republic of IoT 2018 - ESPectro32 and NB-IoT Workshop
Alwin Arrasyid
 
PDF
Prometheus as exposition format for eBPF programs running on Kubernetes
Leonardo Di Donato
 
PDF
One library for all Java encryption
Dan Cvrcek
 
PDF
Cc internet of things @ Thomas More
JWORKS powered by Ordina
 
PDF
IoT Session Thomas More
Kevin Van den Abeele
 
PDF
IoT: From Arduino MicroControllers to Tizen Products Using IoTivity - Philipp...
WithTheBest
 
Getting started with Intel IoT Developer Kit
Sulamita Garcia
 
IoT: Internet of Things with Python
Lelio Campanile
 
[CB20] Vulnerabilities of Machine Learning Infrastructure by Sergey Gordeychik
CODE BLUE
 
[MakerHN] [IoT] [01] Intro 2
Công Hoàng Văn
 
Package Management via Spack on SJTU π Supercomputer
Jianwen Wei
 
IoT with openHAB on pcDuino3B
Jingfeng Liu
 
Attendance system using MYSQL with Raspberry pi and RFID-RC522
Sanjay Kumar
 
Introduction to FreeRTOS
ICS
 
Workshop on IoT and Basic Home Automation_BAIUST.pptx
Redwan Ferdous
 
Connected hardware for Software Engineers 101
Pance Cavkovski
 
Rapid IoT prototyping with mruby
雅也 山本
 
Webshield internet of things
Raghav Shetty
 
Practical Introduction to Internet of Things (IoT)
Suraj Kumar Jana
 
ESP32 WiFi & Bluetooth Module - Getting Started Guide
handson28
 
Republic of IoT 2018 - ESPectro32 and NB-IoT Workshop
Alwin Arrasyid
 
Prometheus as exposition format for eBPF programs running on Kubernetes
Leonardo Di Donato
 
One library for all Java encryption
Dan Cvrcek
 
Cc internet of things @ Thomas More
JWORKS powered by Ordina
 
IoT Session Thomas More
Kevin Van den Abeele
 
IoT: From Arduino MicroControllers to Tizen Products Using IoTivity - Philipp...
WithTheBest
 

Recently uploaded (20)

PPTX
DOC-20250728-WAprocess releases large amounts of carbon dioxide (CO₂), sulfur...
samt56673
 
PPTX
Final Draft Presentation for dtaa and direct tax
rajbhanushali3981
 
PPTX
22. PSYCHOTOGENIC DRUGS.pptx 60d7co Gurinder
sriramraja650
 
PPTX
G6Q1 WEEK 2 SCIENCE PPT.pptxLVLLLLLLLLLLLLLLLLL
DitaSIdnay
 
PPTX
办理HFM文凭|购买代特莫尔德音乐学院毕业证文凭100%复刻安全可靠的
1cz3lou8
 
PPTX
Query and optimizing operating system.pptx
YoomifTube
 
PDF
Portable Veterinary Ultrasound Scanners & Animal Medical Equipment - TcCryo
3447752272
 
PPTX
PHISHING ATTACKS. _. _.pptx[]
kumarrana7525
 
PDF
INTEL CPU 3RD GEN.pdf variadas de computacion
juancardozzo26
 
PPT
3 01032017tyuiryhjrhyureyhjkfdhghfrugjhf
DharaniMani4
 
PPTX
great itemsgreat itemsgreat itemsgreat items.pptx
saurabh13smr
 
PPTX
Basics of Memristors from zero to hero.pptx
onterusmail
 
PPTX
Intro_S4HANA_Using_Global_Bike_Slides_SD_en_v4.1.pptx
trishalasharma7
 
PPTX
Operating-Systems-A-Journey ( by information
parthbhanushali307
 
PDF
Endalamaw Kebede.pdfvvbhjjnhgggftygtttfgh
SirajudinAkmel1
 
PPTX
原版UMiami毕业证文凭迈阿密大学学费单定制学历在线制作硕士毕业证
jicaaeb0
 
PPTX
13. ANAESTHETICS AND ALCOHOLS.pptx fucking
sriramraja650
 
PPTX
atoma.pptxejejejejeejejjeejeejeju3u3u3u3
manthan912009
 
PPTX
INTERNET OF THINGS (IOT) network of interconnected devices.
rp1256748
 
PPTX
PPT on the topic of programming language
dishasindhava
 
DOC-20250728-WAprocess releases large amounts of carbon dioxide (CO₂), sulfur...
samt56673
 
Final Draft Presentation for dtaa and direct tax
rajbhanushali3981
 
22. PSYCHOTOGENIC DRUGS.pptx 60d7co Gurinder
sriramraja650
 
G6Q1 WEEK 2 SCIENCE PPT.pptxLVLLLLLLLLLLLLLLLLL
DitaSIdnay
 
办理HFM文凭|购买代特莫尔德音乐学院毕业证文凭100%复刻安全可靠的
1cz3lou8
 
Query and optimizing operating system.pptx
YoomifTube
 
Portable Veterinary Ultrasound Scanners & Animal Medical Equipment - TcCryo
3447752272
 
PHISHING ATTACKS. _. _.pptx[]
kumarrana7525
 
INTEL CPU 3RD GEN.pdf variadas de computacion
juancardozzo26
 
3 01032017tyuiryhjrhyureyhjkfdhghfrugjhf
DharaniMani4
 
great itemsgreat itemsgreat itemsgreat items.pptx
saurabh13smr
 
Basics of Memristors from zero to hero.pptx
onterusmail
 
Intro_S4HANA_Using_Global_Bike_Slides_SD_en_v4.1.pptx
trishalasharma7
 
Operating-Systems-A-Journey ( by information
parthbhanushali307
 
Endalamaw Kebede.pdfvvbhjjnhgggftygtttfgh
SirajudinAkmel1
 
原版UMiami毕业证文凭迈阿密大学学费单定制学历在线制作硕士毕业证
jicaaeb0
 
13. ANAESTHETICS AND ALCOHOLS.pptx fucking
sriramraja650
 
atoma.pptxejejejejeejejjeejeejeju3u3u3u3
manthan912009
 
INTERNET OF THINGS (IOT) network of interconnected devices.
rp1256748
 
PPT on the topic of programming language
dishasindhava
 

Programando o ESP8266 com Python