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.)
 
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'.

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