ESP-32, ESP8266, micropython

VMP
ESP32 espressif.com
espressif.com-tools
Esptool для ESP8266
Подготовка к программированию ESP8266 на micropython
espressif/esptool ESP8266 and ESP32 serial bootloader utility
Quick reference for the ESP32
Arduino core for the ESP32
the internet of things with esp-32
ESP32 A Different IoT Power and Performance

NodeMcu Connect Things EASY An open-source firmware and development kit that helps you to prototype your IOT product within a few Lua script lines

ESP32: знакомимся, пишем и запускаем первую прошивку 2016
JavaScript для умного дома. Arduino устарел, да здравствует ESP32!
Wi-Fi модуль ESP-32
Обзор и технические характеристики платы ESP32
ESP32:Модули/ESP32-WROOM-32
ESP32 Youtube

Espressif IoT Development Framework. Official development framework for ESP32.
ESP-IDF Programming Guide
ESP32 English Forum
RTOS & Embedded Software
lwIP – A Lightweight TCP/IP stack
JeeUIFramework – ВЕБ интерфейс и конфигуратор для ESP8266 и ESP32
PlatformIO is an open source ecosystem for IoT development
esp32 Youtubemicropython
MicroPython
MicroPython downloads
Getting started with MicroPython on the ESP8266
MicroPython tutorial for ESP8266
Quick reference for the ESP32
General information about the ESP32 port
Getting started with MicroPython on the ESP32

Micro Python — эффективная реализация Python 3 для микроконтроллеров 2014
MicroPython – a lean and efficient Python implementation for microcontrollers and constrained systems https://micropython.org
Документация Micro Python
MicroPython Forum
MicroPython Forum ESP32 boards
VK Micropython pyboard

Кодинг Прыжок в облако. Строим бюджетное решение для интернета вещей на NodeMCU + Azure IoT Hub
ESP8266 с чего начать или первый опыт 2016
Начало работы с ESP8266 NodeMcu v3 Lua с WiFi
esp8266 – Сообщество разработчиков
ESP8266:Примеры/Прошивка ESP8266 методом OTA
ESPCut IDE for ESP8266 Lua and Micropython
EsPy Micropython IDE for ESP8266

pip install esptool
Чтение прошивки
esptool.py –port COM32 read_flash 0x00000 0x100000 esp8266-backup.bin
esptool.py — запуск утилиты;
–port COM19 — номер COM-порта устройства. Узнайте ваш номер в диспетчере задач;
read_flash — команда считывания данных из флэш-памяти;
0x00000 — адрес начала считывания флэш-памяти;
0x10000 — адрес конца считывания флэш-памяти;
esp8266-backup.bin — имя файла для считываемой прошивки.

Чтение прошивки и backup
esptool.py –port COM32 read_flash 0x00000 0x100000 esp8266-backup.bin
Далее очищаем флеш-память устройства
esptool.py –port COM32 erase_flash
прошивка
esptool.py –port com32 –baud 460800 write_flash –flash_size=detect 0 esp8266-20190125-v1.10.bin
Дождитесь окончания прошивки.

Quick reference for the ESP8266
HTML5 Book

MicroPython примеры
“help()” for more information

Ex

from machine import Pin

p0 = Pin(0, Pin.OUT) # create output pin on GPIO0
p0.on() # set pin to "on" (high) level
p0.off() # set pin to "off" (low) level
p0.value(1) # set pin to on/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

#Ex
from machine import Pin
import time

p = Pin(2, Pin.OUT)

for i in range(5):
print(i)
time.sleep_ms(500)
p.low()
time.sleep_ms(500)
p.high()
#Ex
from machine import Pin
pin = Pin(13, Pin.OUT)
pin.high()
pin.low()

#Ex1
import pyb
# turn on an LED
pyb.LED(1).on()
# print some text to the serial console
print('Hello MicroPython!')

#Ex2
from machine import Pin

# create an I/O pin in output mode
p = Pin('X1', Pin.OUT)

# toggle the pin
p.high()
p.low()
#Ex3
from machine import Pin, I2C

# creat an I2C bus
i2c = I2C(scl=Pin('X1'), sda=Pin('X2'))

# scan for list of attached devices
dev_list = i2c.scan()

# write to and read from a device
i2c.writeto(0x42, b'4')
data = i2c.readfrom(0x42, 4)

# memory transactions
i2c.writeto_mem(0x42, 0x12, b'')
data = i2c.readfrom_mem(0x42, 0x12, 2)
#Ex4
from machine import Pin

# create an I/O pin in output mode
p = Pin('X1', Pin.OUT)

# toggle the pin
p.high()
p.low()

#Ex5
# MicroPython has an inline assembler
import micropython
# define a Thumb-code inline-assembler function
@micropython.asm_thumb
def asm_add(r0, r1):
add(r0, r0, r1)

# use it as a normal Python function
total = asm_add(1, 2)
#Ex6
import os

# list root directory
print(os.listdir('/'))

# print current directory
print(os.getcwd())

# open and read a file from the SD card
with open('/sd/readme.txt') as f:
print(f.read())
#Ex7
import machine
# set CPU frequency to 84MHz
machine.freq(84000000)


ESP32, Micropython, что где и как

Что может Python на микроконтроллерах» Андрей Власовских, JetBrains

Программируем электронику на языке Python Денис Хаит

MicroPython #1 – Lets Get Started

Bluetooth и ESP32, Micropython

Программа OpenMV-IDE и ESP32, Micropython
MicroPython Pyboard D-серии с микроконтроллером STM32F7, WiFi и Bluetooth


ESP32, более мощная чем любая другая Ардуино


ESP32. Что под капотом? 2CPU, RTOS, Ethernet, Bluetooth…


Как перейти с Arduino IDE на PlatformIO

Веб интерфейс для ESP8266 и ESP32 JeeUI Framework


M5stack универсальная платформа для создания проектов ESP32 в новом облике


ESP32 для начинающих. Первые шаги с Arduino IDE


ESP32. Что под капотом? 2CPU, RTOS, Ethernet, Bluetooth…


Прошивка и работа с модулем NodeMCU ESP8266


Микроконтроллер NODE MCU достойная замена Ардуино

ESP32 включают в себя
Микроконтроллер и управление
Tensilica Xtensa LX6 двухъядерный (или одноядерный) 32-разрядный процессор, с тактовой частотой 160 или 240 МГц и производительностью до 600 DMIPS (Dhrystone IMPS)
Сопроцессор с ультранизким энергопотреблением
Память: 520 КБ памяти SRAM
Беспроводная связь:
Wi-Fi: 802.11 b / g / N
Bluetooth: v4.2 BR/EDR and BLE
Периферийные интерфейсы:
12-разрядный АЦП до 18 каналов
2 × 8 бит ЦАПа
10 × портов для подключения емкостных датчиков (измеряющие ёмкость GPIO)
Датчик температуры
4 × SPI мастер-интерфейса (ведущие устройства)
2 × I²S мастер-интерфейса
2 × I²C мастер-интерфейса
3 × UART интерфейса
SD/SDIO/CE-ATA/MMC/ eMMC хост-контроллер
SDIO/SPI слейв-контроллеры (ведомые устройства)
Ethernet MAC interface с выделенным DMA и IEEE 1588 Precision Time Protocol support
CAN bus 2.0
ИК дистанционное управление (передатчик/приемник, до 8 каналов)
Возможность подключения двигателей и светодиодов через ШИМ-выход
Датчик Холла
Аналоговый предусилитель низкого энергопотребления
Безопасность:
Поддерживаются все функции безопасности стандарта IEEE 802.11, в том числе WFA, WPA/WPA2 и WAPI
Безопасная загрузка
Шифрование флэш-диска
1024-битный ключ, до 768 бит для клиентов
Криптографическое аппаратное ускорение: AES, SHA-2, RSA, криптографии на основе эллиптических кривых (ЕСС), аппаратный генератор случайных чисел при включеном WiFi или Bluetooth, иначе используется генератор псевдослучайных чисел
Управление питанием:
Линейный регулятор с низким уровнем падения напряжения
Индивидуальнное питание для RTC
потребление 5 мкА в режиме «глубокий сон»
Пробуждение по прерыванию от GPIO, таймера, измерению АЦП, прерыванию емкостного сенсорного датчика