Comments 59
К слову, сейчас часто встречаются проекты на базе ESP32 - вот эта штука показалась избыточной.
вот когда устройства на 8266 переваливают за 100 и когда добавление нового роутера в систему не решает проблем надёжности коннекта , тогда приходит есп32 с Ethernet и спасает ситуацию)
mesh - именно поэтому.
меш конечно нечто новое для меня - почитаю. Но моя сеть более звезда по топологии и вопрос дистанции я решаю тплинками перешитыми в юбиквити. Честно - пропиетарный протокол написанный любителями не внушает много уверенности что ничего не будет отваливаться. какова надёжность? и сколько занимает прохождение месаджа от последнего нода до потребителя...сервера или что там..? для охранных датчиков этого достаточно?
Когда добавление нового роутера в систему не решает проблем надёжности коннекта
Потому что не роутеры надо брать а нормальные точки. Ubiquiti вполне держат 100+ клиентов даже на дешевых Lite Точках, а старая ac pro без проблем держит 200+.
Ubiquiti вполне держат 100+ клиентов даже на дешевых Lite Точках, а старая ac pro без проблем держит 200+.
Это вы пробовали на регулярной основе или так думаете ? Я очень уважаю продукцию Юбиквити , но в таких цифрах позвольте усомниться , это первое. Второе - я бы и Циско каталист 9 серии бы поставил , если б они не стоили на несколько порядков дороже кинетика.. )) К тому ж даже циско утверждает , что больше 30 клиентов на точку это "швах" , а уж 200 ... как вы себе представляете тайм-аут на точке к которой обращаются 200 клиентов ?
Настраивал сети в офисах, ubiquiti действительно очень хороши в сфере wifi, и своими глазами я видел 209 клиентов на AC PRO.
У меня же дома висит 6 Pro и проблем не знает, 60+ клиентов при одной точке на 60 квадратов. Ловит везде стабильно, ни единого разрыва так сказать, и это в многоквартирном доме где сама точка показывает около 40% помех на канале (чужие точки которых моя точка видит аж 187штук).
Более того, оказалось что умные розетки типа "Tuya WIFI" тоже можно переделать на PainlessMesh, завязав в единую систему.
В последнее время в умных устройствах TUYA активно используются свои контроллеры типа T34 и прочая экзотика. Их тоже можно прошить на PainlessMesh
К слову, сейчас часто встречаются проекты на базе ESP32 - вот эта штука показалась избыточной. Для простых задач ее слишком много, для сложных - слишком мало.
Есть отличный контроллер ESP32C3. ESP8266 очень ущербный сточки зрения режима малого потребления. А вот у ESP32C3 с ним все гораздо лучше
У меня вопрос. Нода PainlessMesh, тот же датчик температуры может жить в режиме DeepSleep и сколько времени нужно для выхода в рабочий режим ESP MESH?
У WiFi это порядка 1 сек, что при потрeблении ESP делает проектирование устройств на батарейках малоперспективным
По факту такая нода просто подключается к ближайшей точке доступа - другой такой же ноде. Экономии батареи там нет.
Если нужно устройство на батарейках - используйте режим EspNow, это немного совсем другое: фирменный хак от производителя чипов, устройство может ждать в DeepSleep, потом проснуться и выплюнуть пакет данных, скорость срабатывания примерно меньше 0.2 сек, дальность до 100 м, в общем как раз для датчиков срабатывания на батарейках или чего-то подобного. Но там нужно ответный приемник из той же esp сделать, чтобы он пакеты ловил и mqtt отправлял.
Вот в таком режиме на двух батарейках АА при отправке данных раз в 20 минут датчик должен больше года прожить, по расчетам...
К слову о zigbee координаторе.
Купил МТS-HC-001 (GTW360)
https://4pda.to/forum/index.php?showtopic=1094707&view=findpost&p=132342724
Перешил, приделал внешние антенны. И zigbee сенсоры ловятся с высоким уровнем сигнала на 10+ метров - дальше у меня некуда поставить.
У меня ворота на акаровском зигби реле работают в 30 метрах от дома вполне стабильно
Антенна внешняя есть? У меня реле висело, обычное "умное", коробочка - летом работало, зимой и во время дождя нет, связь пропадала. Мокрые кусты гасили сигнал
У акары антеннка небольшая есть. Сам блок подключен к шлюзу ми хоум, к которому подключен хоум ассистант. На шлюзе антенн нет, но цепляется он видимо к другому такому же блоку в сарае на высоте 3м, поэтому и работает. Но когда сугробы выше метра, работать хуже начинает, очень редко, но иногда может команду пропустить.
Купил МТS-HC-001 (GTW360)
А сам модуль ZigBee не меняли, в пару мест попадалось, что меняют модуль zigbee
Привыкаешь, что можно всем управлять с экрана планшета на стене, или со смартфона. Это - удобно.
Если честно, лично я уже как то отвыкаю от управлением с экрана, особенно со смартфона. Голосовое управление для моей семьи, стало более удобным и быстрым способом. Особенно с развитием голосовых помощников (Яндекс Алисы в частности) и интеграции .
Пока достанешь смартфон, запустишь приложение или веб интерфейс, легче и быстрее сказать команду в сторону колонки.
легче и быстрее сказать команду в сторону колонки.
А если в квартире не 1 комната а больше?
Несколько колонок)
Вариантов если может быть довольно много: а если не одна колонка, а по количеству комнат, а если есть небольшой ребенок а если...
Я просто озвучил свои наблюдения и указал, что это для меня (моей семьи), универсального принципа построения имхо нет.
Поэтому многие строят /настраивают именно под свои удобства, потребности).
зашёл написать этот же комментарий.
у меня УД на базе Home Assistant (т.е. не умный дом Яндекс), но привязанная к нему Алиса прямо ощутимо добавляет удобства.
плюс появляется возможность использовать устройства по таймеру, не настраивая его руками.
Примеры:
- Алиса, через час (или там "в шесть утра") прогрей машину;
- Алиса, выключи телевизор через полчаса.
ну и голосовые уведомления очень удобны.
наливаю чайник, говорю, — Алиса, напомни про чайник — и ухожу работать. Когда чайник закипает, колонка рядом со мной говорит, — чайник вскипел!
звучит смешно, но пока я не прикрутил этот сценарий, у меня часто бывала ситуация, когда я ставлю чайник, ухожу работать, вспоминаю про чайник, обнаруживаю, что он остыл, включаю его, ухожу работать… Цикл повторялся по нескольку раз.
Может - чайник с автоподдержанием температуры? :)
А меня вот эти привязки казалось бы умных устройств к примитивному и не естественному таймеру ужасно раздражают, а команды казалось бы не сильно сложнее "выключи через три серии мультика" оказываются слишком сложными (а выключать через ровно 30 минут 00 секунд обрывая сцену на середине максимально тупо). Привязать действия к каким-то событиям "на лету" тоже оказывается очень сложно ("запусти робота когда все уйдут из дома", "выключи тв когда все заснут") - или датчиков слежения за состоянием недостаточно, или просто логики не хватает и надо реализовывать глючный алгоритм (потому что доп.проверок на то сё нужна куча).
В общем все реализации "умного дома", которые я видела требовали приспособиться к довольно кривенькой и примитивной реализации, надежности системы я тоже не видела (есть системы, которые в массе безпроблемного работают 10+ лет? Ну вот как сделали розетки-выключатели и с хорошей долей вероятности оно всё будет работать весьма и весьма долго не требуя обслуживания и не глюча)
Голосовое как-то совсем не в кайф )
И так уже привычка собакам и кошкам команды раздавать и разруливать, ещё и с Алисой разговаривать? Да ну нафиг.
Единственная проблема с Алисой, что ей необходимо интернет подключение, что в рядах случаев снижает надежность системы.
Вы помните откуда вообще взялся мем "товарищ майор"? Вот теперь этот древний анекдот сделали реальностью, только майора зовут Алиса.
А Алису можно затьюнить, чтоб она говорила мужским голосом и откликалась на "товарищ майор"?
смартфона у вас, я так понимаю, нет?
Главная проблема Алисы - она тупенькая. И хамоватая.
три наблюдения про УД:
в гостях начинаешь забывать выключить свет (в ванной, например), приходится возвращаться, привычка утрачивается;
летом повредил ногу, передвигался на костылях и осознал, что УД — это не только баловство и излишества. Автоматическое включение/выключение света плюс голосовое управление — это прямо must have.
основная боль — скорость и надёжность датчиков (у меня zigbee).
Реле без нуля (т.е. подключенное к проводам ноль и фаза, но без нейтрального) реагирует с небольшой (менее секунды), но всё же задержкой. Один из датчиков присутствия переставал обнаруживать движение, но впоследствии заработал нормально, второй — так и не обнаруживает, вероятно буду заменять.умный домофон и удалённый съём показаний со счётчиков — недооценены (крайне удобны, но про них очень мало упоминают) : )
В целом же, несмотря на недостатки — к хорошему привыкаешь быстро.
Для управления 1-wire шиной - простейший адаптер для COM-порта, на двух транзисторах, и программка на сервере.
Очень опасная история. В моей практике такая история работала только "на столе", и только с одним датчиком. С кабелем заметной длины и/или с заметным числом датчиков пришлось таки соорудить "честный" 1-wire ("упрощение" с работой через COM-порт ломалось с framing error из-за того, что из-за ёмкости линии после передачи бита ведомым фронт не успевал нарасти до уровня "1" к тому времени, как приёмник ожидал стоп-бит). Нашёл готовую библиотеку для STM32, которая вырабатывала и измеряла импульсы таймерами, а таймерами управляла через DMA. И аппаратный каскад сопряжения с линией тоже был непростой, по-моему, пришлось даже active pull-up задействовать.
Этот самый адаптер для COM-порта просто рассчитан был на "железный" COM-порт, который +15/-15 вольт.
USB-TTL - там 3-вольтовые, поэтому и не хватает для нарастания фронтов. Удивлен если вообще работает.
Но если говорить о микроконтроллерах - там совсем другое дело. И для длинной линии нужно сопряжение на транзисторе между 3.3 и 5в, но это несложно.
Кстати, в "родной" ардуиновской библиотеке для работы с 1-wire тайминги немного отличаются от тех что по даташиту, однако пробовал менять - работает и так и так, не критично. А вот обработку ошибок дописал свою.
Я согласен, что 8266 для модулей УД вполне достаточен в плане мозгов.
Но 32 значительно упростила построение модулей, где требуются несколько портов. У меня это модуль управления котлом и коллектором отопления, а также контроллеры полива.
Спасибо за статью. Перекликается с моей историей )
Напомнило рассказ Конан-Дойля
Пустой дом
После беседы Шерлок Холмс и доктор Ватсон направились в необитаемый дом, из окна которого можно было наблюдать дом Холмса на Бейкер-стрит 221Б. На окне были опущены шторы, и в ярко освещенной комнате, где жил Холмс, на фоне окна четко вырисовывался силуэт детектива, неотличимый от подлинного. Ранее Холмс, обнаружив, что за его квартирой следят, заказал восковую фигуру самого себя и установил её в своей комнате. Каждые 15 минут миссис Хадсон меняла положение скульптуры. Ватсон заметил двух человек, которые как будто бы укрывались от холода неподалёку от того места, откуда они с Холмсом наблюдали за окном. После полуночи в доме появился Себастьян Моран. Открыв окно, он достал ружьё и положил конец ствола на подоконник. Прицелившись, он выстрелил в мишень. Сразу после выстрела на него набросился Холмс, однако Моран смог дать ему отпор и схватил Холмса за горло. Тогда Ватсон ударил Морана рукояткой своего револьвера. После этого Холмс вызвал с помощью свистка подмогу, и в комнату ворвались два полисмена и инспектор Лестрейд.
Там нужно было не свет включать, а время от времени изменять положение восковой копии Холмса. Миссис Хадсон вполне с этим справлялась, незаметно подползая к восковой фигуре раз в четверть часа
У меня это хобби. Ни кому не нужное. Кроме меня. Но.
есть книга на просторах интернета "Building Smart Home Automation Solutions with Home Assistant". Там описана конфигурация, установка и настройка HomeAssistant (HA).
У меня:
В качестве сервера HA используется orangePi zero 2W . 4G памяти. Ну у меня такие лежали несколько штук. Если поискать armbian + orangepi zero 2W в гугле, то можно найти версию HA для этой платки.
В книжке написано как создавать сенсоры и выполняющие устройства на esp32 различных конфигураций. Я взял самую дешевую esp32c3 super mini. Она всем хороша, но требует внешнего питания. Это не гуд.
HA может работать через TLS, это описано в книге. Это позволит установить клиент HA на телефон и иметь сенсоры, которые расположены удаленно. У меня несколько сенсоров расположено на даче. Это гуд!
Однако провода питания сенсоров это не гуд. Для этого я использую zigbee адаптеры. Адаптеры подключены к HA через программу zigbee2mqtt. Она тоже может работать через TLS для секретности. Zigbee сенсоры и исполняющие устройства с zigbee на алиэкспрессе в ассортименте.
Несколько комментариев. У меня orangePi zero 2w с 4Gb памяти. Я так подозреваю, что можно взять и по меньше. Программа zigbee2mqtt установлена на этой же машинке. Нужно также пробрасывать внешние порты внутрь сети. Я хотел купить TP-Link. Но они зараза такое не допускают. То есть они допускают, но нужно обращаться в TP-Link , не помн. может даже платить. А это мне не нравится. Поэтому я взял ASUS.
Результат. У меня три точки
Дом. Там установлен сервер. И какое-то количество esp32 sensors и zigbee sensors. Есть сенсор присутствия, который сделан на базе радара! Работает хорошо.
Дача. Там будет установлен градусник на котел, чтобы его контролировать. Я его попробовал в домашних условиях, но нужно проводить механические работы.
Мобильный телефон. На нем высвечивается вся информация и с него можно управлять подключенными устройствами.
Пардон, если что-то пропустил.
Я считаю платформу HA очень перспективной.
P.S. Я использую сертификат от let's encrypt. Он требует обновления раз в 3 месяца. И HA автоматически обновляет его. Ничего делать не надо.
P.P.S. Я еще планирую использовать esphome. Но пока руки не дошли. Мне не удается подключить ее через TLS, а это плохо. Но видимо я плохо стараюсь.
P.P.P.S В reddit есть субредиты посвященные HA, Tasmota, esphome. Так что без поддержки вы не останетесь.
Может то, что я тут понаписал кому нибудь пригодится.
Если я правильно помню - HA работает с mqtt, правильно?
Можно поставить, например, на домашнем сервере mosquitto, завязать на него HA и всё что дома с mqtt.
Потом взять для дачи недорогой TV-box (вообще до 1000 р видел), перешить его на Armbian, поставить и там тоже mosquitto, связав его по сети с mosquitto дома (куда там порты пробрасывать надо). Там есть защита по сертификатам.
Пусть дачные сенсоры работают с дачным брокером локально, без TLS - он с домашним сам обменяется как надо.
Как-то так.
Правильно я понял, что вы предлагаете дома и на даче поставить по одной инсталляции mosquitto? Интересная идея, правда я не знаю как подсоединить один сервер mosquitto к другому серверу прозрачным образом с сертификатом. Я думал, что там всего два действующих лица. Сервер и клиент. Но надо посмотреть документацию.
Да, действительно, похоже есть такая возможность, ну по крайней мере мне кажется. Называется mosquitto bridge. Правильно я понимаю?
Я правильно понимаю, что сервер (как я его называю) это brocker в терминах mosquitto?
Да, вы можете настроить несколько брокеров, связать их вместе - всё что прилетает на один - прилетает и на остальные.
Там несложная настройка, указываете куда подключать бридж, сертификат (можно самоподписанный, лет на 10), логин и пароль.
На том, к которому можно подключаться снаружи, запрещаете анонимусов и требуете сертификаты - он только связывает остальные.
К тому же, а как температуру узнать?
Поделюсь тем что узнал несколько лет назад. Хотя возможно это многим известно. В те старые вермена о которых вы пишете была такая штука - ВНЕЗАПНО! Game Port
Так вот один из принципов его работы это считывание параметров АНЛОГОВЫХ осей. В нем есть до 4 этих осей. А значит можно было считывать 4 датчика темпереатуры через банальные термо резисторы!
Была даже программа (автор даже когда то исходниками делился) которая как раз считывала показания.
Набрел я на все это совершенно случайно, когда искал как бы заставить джойстик для геймпорта заработать в WINDOWS 64 BIT (для тех кто не в курсе, подлые мелгомягкие выпилили поддержку драйвера из первых же версий 64 битных систем, причем драйвер самого порта можно было найти, а вот драйвера для геймпада самого уже не существовало)
Думаю с вашими умениями, тогда это бы пригодилось!
Там было как минимум 8 проводов, на которых можно было выставить 0 или 1 (+5в), просто записав в порт соответствующий байт.
(забегая вперед - это почти то же самое что сейчас использовать Ардуино)Таким способом удалось получить 8 управляемых линий.
Собрав простейший декодер можно было получить 2^8 = 256 управляемых линий. А если заморочиться, то и столько на сколько хватит фантазии и желания
А не пробовали использовать Wi-Fi заводские устройства? Мне кажется решить проблему с расстоянием может в том числе и заводской Mesh-повторитель. А вот можно ли будет подключить заводское устройство с Wi-Fi к контроллеру?
Это какой заводской mesh?
Mesh - сеть это когда каждое (почти) устройство может быть и клиентом и повторителем, расширяющим сеть. По этому принципу устроено Zigbee, там устройства имеющие постоянное питание могут быть "роутерами" - ретрансляторами сети.
А WiFi - там к точке доступа. То, что называется PainlessMesh - это не-заводской лайфхак, когда каждая ESP-шка работает одновременно в режиме клиента и в режиме точки доступа для других таких же. Заводских WiFi mesh вроде нет.
Те, которые "WiFi smart relay" - просто подключаются к обычной точке доступа и лезут в свое облако.
Их, кстати, можно переделать - перешить или перепаять - но это другая история.
Или речь идет о тех WiFi-повторителях, которые просто существующую сеть расширяют? Но там другая проблема бывает:
Например, висит на стене экран, планшет на Андроиде, работает с сетью "mywifi" через точку 1, все хорошо. Потом спонтанно переключается на точку 2, расширитель той же сети "mywifi", и тоже работает - но точка 2 далеко и поэтому связь плохая, тормозит. Потом может обратно перепрыгнуть, непредсказуемо.
У меня дома уже не первый год висит Keenetic Buddy в паре с роутером. Никаких проблем с переключением между точками. Между собой соединены проводом. Все четко работает.
Насколько я понял, мне Zigbee даже не стоит пробовать. Почитал, и убедился, что они и правда хорошо будут работать только на небольшой площади. Хочу автоматизировать достаточно большой дачный участок. В эфире помех мало из-за удаленности от города, но вот расстояние на участке приличное. Поэтому есть идея развернуть сеть повторителей Mesh-сети от Keentic и покрыть всю площадь участка Wi-Fi.
Осталось только научиться какие-нибудь заводские реле включать-выключать. Может удастся разобраться в протоколе Tuya Wi-Fi - где-то видел информацию, что ему необязательно для работы требуется облако. Вроде как может и локально работать.
Если так, то для управления устройствами подойдет даже мини-ПК, например Raspberry... или что-нибудь небольшое, но помощнее.
я не заморачивался особо - в WiFi реле выпаивается штатный модуль wifi (там свой чип, его можно перешить но я хочу возможность писать свою прошивку), вместо него впаивается esp8266 - и все работает.
Это только звучит страшно - на деле припаять 7 проводков.
Кстати, именно WiFi-реле можно питать как от 220, так и от 12В. Там интересно питание устроено...
Покопался, нашел вот такие примеры шлюзов-интеграций без необходимости использования облака:
Localtuya
home-assistant
MajorDoMo
Готовые шлюзы - это хорошо, но родилась идея написать код с использованием библиотеки tuyanet чтобы подключиться к Tuya-устройствам.
Немного некрасивое решение, так как придется девайс регистрировать в платформе Tuya, чтобы получить ключ для доступа к нему. Но если получится, то для управления достаточно будет самого устройства, подключенного к Wi-Fi, и приложения в локальной сети. На чем его будем локально запускать - уже не проблема :)
В качестве бонуса, заодно и через облако можно будет пнуть это устройство. Но и без облака должно будет работать.
Сказ о том, как я «умный дом» делал