На ней находиться esp32 с Ethernet портом, разводка по питанию, и все вводы\выводы с esp. Плата максимально универсальная, с заделом под будущие модули.
- двухядерный процессор, с частотой 240МГц
- Большое количество портов с ADC
- Сопроцессор с низким энергопотреблением
- 520 КБ памяти SRAM
- Wi-Fi: 802.11 b/g/N
- Порт Ethernet
- Bluetooth: v4.2 (в том числе BLE)
- Прошивка EspHome
По сколько решение изначально щиточное, то от питания по 220 я отказался отказать в пользу 5-20v от внешних блоков питания. Которые при наличии светодиодного освещения и так будут там установлены. А так же это обусловлено тем, что блоки AС-DC на 5v, которые бы уместились на данную плату, как например HiLink, выдают всего 0.6а, чего не хватит для большинства шилдов. А для тех кто не планирует установливать в щиток, питать можно плату питать от любого зарядника 1-2а через MicroUsb. На всякий случай есть защита по питания самовосстанавливающимся предохранителем.
Касаемо POE - согласен, было бы удобно. Но сюда так же применимы выводы из предыдущего абзаца, и плюс это значительно усложняет схему базовой платы, и соответственно увеличивает стоимость. Но решение есть. Для тех, кому это необходимо, проще всего использовать POE Сплиттер за 2$например такой
- 8 Портов с подключаемой внешней подтяжкой резистором pulldown на 10к (3 их которых работаю только на вход)
- 1 Порт с подключаемо внешней подтяжкой pullup или pulldown на 10к
- 2 порта* на которые можно припаять внешний резистор (например для подключения светодиодных лент)
- I2c порт, для подключения внешних модулей, модулей второго уровня, , датчиков, экранов итд. В случае не надобности, превращается в обычные 2 порта ввода\вывода Внешняя подтяжка нужна для подключения кнопок\бинарных датчиков, на длинных проводах. К слову esp32 имеет внутренюю подтяжку, но на дальних дистанциях она работает не совсем корректно. К примеру у меня на 20 метрах герконы работали не стабильно.
*По поводу 2 портов. Один из них GPIO0 - его использовать можно только при подключении к серти через wifi. Когда подключен Ethernet - увы. Порт занят.
Плату так же удобно использовать без дополнительных модулей, просто для удобства подключения внешних датчиков.
Некоторые пояснения.- P1 - Питание, вход. Слева на право: +7-20v, GND, 5v. GND общий для подключение как 5v, так и 7-20v
- P2 - Выход, 5v, GND, 3.3v
- P3, P4, P5 - Входы\выходы с возможностью подключение внешней подтяжки резистором на 10к.
- P6 - Порты ввода\вывода, с возможностью распайки резистора для защиты входа. Используется например при подключения адресных светодиодных лент. Если резистор не нужен, паяется просто перемычка.
- I2c-Shield - для подключение дополнительных модулей вторым уровнем.
- I2c - Для подключения внешних модулей, или датчиков. Если не планируете подключать модули второго уровня, то можно использовать как 2 порта ввода\вывода.
- GPIO-Shield для модулей второго уровня. Используется, например, на шилде с мосфетами.
- Link - светодиод показывающий статус подключение по Ethernet кабелю.
Перейдем к сборке.
В Китае полно сервисов для печати плат, но я предпочитаю пользоваться jlcpcb.com поскольку:
5 плат (это минималка) за 2 доллара + доставка, это совсем недорого, за печатные платы заводского исполнения.
На других сервисах малые партии - дороже, но дешевле большие.
Размеры и тип компонентов:
- U3 - Плата Wt32-Eth01 Ali,[ChipDip]
- R - резисторы. Все резисторы номиналом 10к, в размере 0805. Для колодки P6 в случае надобности номинал рассчитывается отдельно. Ali,[ChipDip]
- DC - Уже готовый модуль DC-DC Mini560 Ali,[ChipDip]
- U1 - Самовостанавливающийся предохранитель MF-MSMF110-2 на 1.1а Ali,[ChipDip]
- I2c-Shield Гребенка на 5 пинов, 2.54 Ali,[ChipDip]
- GPIO-Shield Гребенка на 6 пинов, 2.54 Ali,[ChipDip]
- J - Гребенка на 2 пина 2.54, с перемычкой Ali,[ChipDip]
- P1, P2 - Винтовые зажимы на 3 пина, 5.0 Ali,[ChipDip]
- P3, P4, P5 - Винтовые зажимы на 3 пина (или 9 пин), 2.54 Ali, Рекомендую использовать 1 - 9pin.
- P6 - Винтовой зажим на 2 пина, 2.54 Ali,[ChipDip]
- I2c - Либо гребенка на 4 пина, либо 2 винтовых зажима, 2.54 Ali,[ChipDip]
- K - Резистор 1к, размерность 0805 Ali,[ChipDip]
- LINK - Светодиод в в размере 1206 Ali,[ChipDip]
Для заказа компонентов: Файл BOM
Можно несколько упростить схему, если:
- Внешняя подтяжка не нужна? то смело отказываемся от компонентов: R и J.
- Будете питать только от 5v? Не распаиваем DC-DC
- Уверены в блоке питания на 5v? Смело убираем предохранитель и вместо U1 паяем перемычку.
- Не нужен светодиод, или планируете подключать плату по wifi: не распаиваем K и LINK
- Не планируем ставить шилды - не паяем гребенку I2c-Shield и GPIO-Shield
То есть фактически, можно просто припаять клемники и плату с есп :)
В принципе, для просто снятия показаний, и управления реле\мосфетами - можно использовать любые прошивки имеющие совместимость с esp32. Такие как Tasmot, EspEasy, Espurna, которые настраиваться в веб интерфейсе. Но. Но именно EspHome дает возможность, без умения программировать в среде арудино, написать внутреннюю логику и взаимодействия между компонентами системы. Чем то это похоже на создание автоматизаций для Home-assistant но разумеется со своей спецификой. И именно EspHome имеет лучшую поддержку Home-Assistant по собственным API. Хотя при желании можно воспользоваться mqtt, и собственно подключить к любой системе УД, умеющей работать с брокером.
Примеры конфигурационных файлов под эту плату ниже:
- YAML раз (Универсальный)
- YAML Два [Тестируется]
Схема простая, но при пайке - у новичков могут быть сложности из-за использования smd компонентов в размерности 0805 и плотности их расположения. Рекомендация одна - желательно иметь не дрожащие руки, и паяльник с тонким жалом)
Для удобство паяется сначала вся мелочь. А гребенки и клеммы - в самом конце.