weather
<<  <  Декабрь 2025  >  >>
Пн Вт Ср Чт Пт Сб Вс
1234567
891011121314
15161718192021
22232425262728
293031

Категории

 

Новости

июн. 23, 2026

wifi розетка UPDATED


Купил я на али вот такую розетку.

outlet topПоставил на телефон программку, скрестил с роутером и оно все заработало. Но это все не то. А именно, есть привязка к некому ресурсу в интернете и соответственно никакой свободы, и масса подводных камней. Так что проблему нужно было решить и она быстро решилась. 

Прошивка обновлена. Там же есть прошивка под другую розетку с ваттметром на BK7231N и BL0937.

В розетке у меня модуль T102_v1.1 на RTL8710BX. Ваттметра не распаяно, так что с ним я и не заморачивался.

mcu

Можно было-бы написать все с нуля, но для розеток и других подобных штук есть такой проект как  esphome. Так что поехали.

Для прошивки нам потребуется преобразователь уровней rs232<->ttl, или usb<->rs232(ttl).

Их есть всяких разных множество. Так что, что использовать ваше дело. У меня был usb<->rs232 на pl2303.

 t102-v1.1

Паяем ваш RX на TX2 (PA30) модуля и TX на RX2 соответственно.  Ground на GND. Внешнего питания я не подавал, а просто включал все это дело в 220! Соответственно usb<->rx232 был подключен ЧЕРЕЗ USB ИЗОЛЯТОР! И ПОДКЛЮЧЕННУЮ РОЗЕТКУ В СЕТЬ РУКАМИ НЕ ТРОГАТЬ! Мне так было проще. Так как развязка была и развязывающий трансформатор, на всякий случай, тоже. Можно конечно подключить внешнее питание 3.3в (что будет правильно), но как выяснилось, для этого видимо придется выпаять стабилизатор напряжения, или перерезать от него дорожку на питание модуля.

ps: Ничего выпаивать не нужно. 3.3в подается на выход стабилизатора.

Забираем esphome:

git clone https://github.com/esphome/esphome 

Доустановить для python3 нужно будет еще кучу всего.

Что помню, то вот это точно.

sudo apt install python3-argcomplete
sudo apt install python3-voluptuous
sudo apt install python3-jinja2
sudo apt install python3-zeroconf
sudo apt install python3-hid python3-serial python3-tqdm

sudo apt install python3-pip

sudo apt install python3.12-venv
sudo pip install platformio --break-system-packages
sudo pip install zeroconf --break-system-packages

Документации как обычно не читаем :), поэтому просто копируем туда наш готовый конфиг.

В конфиге необходимо поправить ваше название точки доступа wifi и пароль! Остальное опционально и если понимаете, что делаете.

Для теста можно запустить:

python3 -m esphome wizard yourdevice.yml

Ну и за одно посмотреть как конфигурируется новое устройство...

Если всё прошло успешно и вы уверены, что ваше устройство соответствует нашему конфигу, можно собрать прошивку:

python3 -m esphome compile outlet.yaml

Ну и если всё ок — загрузить ее в контроллер:

python3 -m esphome upload outlet.yaml

Во время процедуры прошивки usb<->rs232 должен быть подключен, или существовать нужный вам физический com порт.

Там же будет нарисована распайка программатора и описана процедура прошивки.

Так как вывода RESET на нашем модуле нет, то перевести в режим программирования его можно замыканием (например, пинцетом) TX на GND и его включением.

Запускаем:

python3 -m esphome upload outlet.yaml

и модуль благополучно прошивается.

После прошивки, если розетка подключилась к роутеру, идем на нее по http://<IP>/ нажимает кнопку и радуемся. :)

IP-адрес или имя в DNS, который она получила по DHCP.

В противном случае ищем ее по wifi и в случае удачи пробуем то же самое по адресу http://10.5.5.5/ (SSID: devicename в конфиге, пароль: G9vxWE7UoAB6) и заливаем прошивку с правильными параметрами wifi.

Если с подключением всё в порядке, то розетку можно собрать и дальнейшие эксперименты с прошивкой можно производить, заливая ее по воздуху.

Для этого ее нужно просто пересобрать.

python3 -m esphome compile outlet.yaml

Прошивка находится в .esphome/build/<devicename>/.pioenvs/<devicename>/firmware.bin

Файлы здесь.

Там же файл для другой розетки с ваттметром на BK7231N (T34) и BL0937.

Как подключаться к T34 и прошивать здесь.

 



This is a captcha-picture. It is used to prevent mass-access by robots. (see: www.captcha.net)