Mudanças entre as edições de "ESP8266"

De Garoa Hacker Clube
Ir para navegação Ir para pesquisar
(Algumas atualizações, baseadas no encontro de 12 de fevereiro de 2018.)
 
(Uma revisão intermediária por um outro usuário não está sendo mostrada)
Linha 18: Linha 18:
 
= Upload/atualiação do MicroPython (firmware) =
 
= Upload/atualiação do MicroPython (firmware) =
   
Upload do firmware, usando Linux e Python 2:
+
Upload do firmware, usando Linux e Python:
 
$ sudo pip install esptool
 
$ sudo pip install esptool
 
$ esptool.py --port /dev/ttyUSB0 erase_flash
 
$ esptool.py --port /dev/ttyUSB0 erase_flash
 
$ esptool.py --port /dev/ttyUSB0 --baud 460800 write_flash --flash_size=detect 0 esp8266-20171101-v1.9.3.bin
   
Faça o reset do ESP8266
 
 
$ esptool.py --port /dev/ttyUSB0 --baud 460800 write_flash --flash_size=8m 0 esp8266-2016-07-02-v1.8.1.bin
 
 
Faça novo reset do ESP8266.
 
 
Depois disso, conecte-se ao ESP8266 via serial, com velocidade de 115200 bauds.
 
Depois disso, conecte-se ao ESP8266 via serial, com velocidade de 115200 bauds.
  +
 
Você pode utilizar o seguinte comando:
 
Você pode utilizar o seguinte comando:
 
$ screen /dev/ttyUSB0 115200
 
$ screen /dev/ttyUSB0 115200
  +
 
Ao acessar o ESP8266 via serial, aparecerá o prompt do Python REPL >>>, então digite os seguintes comandos para criar o arquivo main.py inicial, contendo a função clear(), para limpeza de tela:
 
Ao acessar o ESP8266 via serial, aparecerá o prompt do Python REPL >>>, então digite os seguintes comandos para criar o arquivo main.py inicial, contendo a função clear(), para limpeza de tela:
   
 
Pressiona CTRL+E, para entrar no modo "paste":
 
Pressiona CTRL+E, para entrar no modo "paste":
   
<nowiki>with open('main.py', 'w') as f:
+
with open('main.py', 'w') as f:
f.write('''
+
f.write('def clear(): print("\x1b[2J\x1b[H", end="")')
# This script is run on boot
 
def clear():
 
print('\x1b[2J', end='')
 
print('\x1b[H', end='')
 
''')</nowiki>
 
   
 
Pressione a tecla ENTER e depois CTRL+D para sair do modo "paste" e gravar o arquivo.
 
Pressione a tecla ENTER e depois CTRL+D para sair do modo "paste" e gravar o arquivo.
Linha 46: Linha 39:
 
Para saber se o arquivo foi gravado corretamente, digite os seguintes comandos:
 
Para saber se o arquivo foi gravado corretamente, digite os seguintes comandos:
   
>>> import os
+
>>> from os import listdir
>>> os.listdir()
+
>>> listdir()
   
 
Na lista que aparece deve constar 'main.py'.
 
Na lista que aparece deve constar 'main.py'.
Linha 53: Linha 46:
 
== Atividades no Garoa com o ESP8266 ==
 
== Atividades no Garoa com o ESP8266 ==
   
12 de fevereiro de 2018 - vamos instalar MicroPython no ESP
+
12 de fevereiro de 2018 - no [[Python Lab]] mutirão de instalar MicroPython no ESP8266
   
 
22 de janeiro de 2018 - [[Encontro MicroPython]]
 
22 de janeiro de 2018 - [[Encontro MicroPython]]

Edição atual tal como às 12h41min de 13 de fevereiro de 2018

Para a discussão caduca sobre uma compra coletiva de ESP8266 em 2015 visite antiga página

ESP8266 CC-BY SparkFun

Sobre o ESP8266 e atividades com ele no Garoa

O que é o ESP8266?
* Microcontrolador programável barato que vem com Wi-fi e pode ser usado com o Arduino
* pode virar um 'pequeno Arduino' - vide post na Make:
http://makezine.com/2015/04/01/esp8266-5-microcontroller-wi-fi-now-arduino-compatible/
* Tem gente usando MicroPython nele também - vide post da Adafruit:
https://learn.adafruit.com/building-and-running-micropython-on-the-esp8266/overview

Circuito para Upload de Firmware (ex: MicroPython)

ESP8266-Circuito.png

o SW1 deve estar pressionado (o pino aterrado) durante toda a gravação do firmware.

Upload/atualiação do MicroPython (firmware)

Upload do firmware, usando Linux e Python:

$ sudo pip install esptool
$ esptool.py --port /dev/ttyUSB0 erase_flash
$ esptool.py --port /dev/ttyUSB0 --baud 460800 write_flash --flash_size=detect 0 esp8266-20171101-v1.9.3.bin

Depois disso, conecte-se ao ESP8266 via serial, com velocidade de 115200 bauds.

Você pode utilizar o seguinte comando:

$ screen /dev/ttyUSB0 115200

Ao acessar o ESP8266 via serial, aparecerá o prompt do Python REPL >>>, então digite os seguintes comandos para criar o arquivo main.py inicial, contendo a função clear(), para limpeza de tela:

Pressiona CTRL+E, para entrar no modo "paste":

with open('main.py', 'w') as f:
    f.write('def clear(): print("\x1b[2J\x1b[H", end="")')

Pressione a tecla ENTER e depois CTRL+D para sair do modo "paste" e gravar o arquivo.

Para saber se o arquivo foi gravado corretamente, digite os seguintes comandos:

>>> from os import listdir
>>> listdir()

Na lista que aparece deve constar 'main.py'.

Atividades no Garoa com o ESP8266

12 de fevereiro de 2018 - no Python Lab mutirão de instalar MicroPython no ESP8266

22 de janeiro de 2018 - Encontro MicroPython

3 de março de 2016 - Mini palestra do Lucas Vido sobre o ESP8266

25 de março de 2016 - Encontro sobre ESP8266 a partir das 15h
- Apresentação do Vido 19h15 - https://github.com/Vido/arduino-day-2016

14 de julho de 2016 - Primeiras experiências programando com a IDE do Arduino