Когда говорят об умном доме, почти всегда всплывают одни и те же слова: Zigbee, Wi-Fi, Bluetooth. Это звучит удобно и современно — купил устройство, подключил к сети, нажал пару кнопок в приложении, и вроде бы всё работает. Но когда я подошёл к вопросу не как к игрушке, а как к системе, которая будет жить в стенах десятилетиями, у меня возник вполне приземлённый вопрос: а готов ли я доверить свет, отопление и безопасность радиосигналу, который можно заглушить за пару минут?
Именно с этого сомнения и началась история моего проекта. Я решил пойти не самым популярным, но куда более предсказуемым путём — сделать умный выключатель на проводной CAN-шине. Да, это сложнее на этапе проектирования и монтажа. Зато в итоге получается система, которая ведёт себя не как гаджет, а как инженерное решение. Свет включается быстрее, чем вы успеваете осознать нажатие клавиши, сценарии работают без интернета, а отказ одного модуля не превращает дом в тыкву.
Философия здесь простая и, возможно, немного олдскульная: если что-то критично для комфорта и безопасности, оно должно работать по проводу. Радио — это удобно, но оно по своей природе нестабильно. Помехи от Wi-Fi, соседские сети, плотная застройка, а в худшем случае — целенаправленное глушение. CAN-шина в этом смысле — полная противоположность. Это физический кабель, спрятанный в стене, стандарт, который десятилетиями используется в автомобилях и промышленности. Его нельзя «заглушить» удалённо, он либо работает, либо нет, и это честное поведение системы.
Отдельное удовольствие — скорость. Если вы хоть раз пользовались Zigbee-лампами, вы знаете это ощущение: нажал кнопку, и где-то через долю секунды свет всё-таки включился. Формально задержка минимальна, но мозг её замечает каждый раз. CAN лишён этой проблемы в принципе. Команда летит по шине мгновенно, и свет загорается так, будто вы напрямую замкнули цепь. Нет ощущения, что между выключателем и лампой стоит компьютер — всё происходит здесь и сейчас.

Сам модуль выключателя — это небольшая плата, которая спокойно помещается в глубокий подрозетник за обычным механическим выключателем. Снаружи ничего не меняется: те же клавиши, тот же внешний вид. Внутри же — совсем другая логика. Питание и связь идут по одному двухпарному кабелю: одна пара отвечает за питание, вторая — за дифференциальную CAN-линию. На плате установлены два симистора, благодаря которым можно управлять двумя группами света или аккуратно диммировать освещение. Плавный розжиг ночью — мелочь, но именно из таких мелочей и складывается ощущение уюта.
Приятным бонусом стал датчик температуры в каждом выключателе. В итоге дом сам по себе превращается в распределённую систему измерений. Не один датчик где-то в коридоре, а реальная температурная карта по всем комнатам. Это открывает совсем другой уровень управления отоплением и климатом, без догадок и усреднений. При этом система остаётся универсальной: можно использовать обычные кнопки и выключатели, просто превращая их в умные без изменения привычек.

Вся эта экосистема сходится в центральном контроллере на базе Orange Pi. Он не «командует», а скорее координирует: собирает данные с модулей, исполняет логику, хранит сценарии. Самое важное — всё работает локально. Интернет пропал? Дом даже не заметил. При этом, если хочется голосового управления или интеграции с умным домом Яндекса, это легко делается через библиотеки node-red node-red-contrib-alice и node-red-contrib-alice-self-hosting. Никакой магии, только понятные протоколы.
Отдельно стоит сказать о сценариях. Проходные выключатели, перекрёстные, сложные комбинации — всё это больше не зависит от того, как проложен силовой кабель. Логика живёт в программе. Сегодня кнопка включает свет, завтра — запускает сценарий «ночь», послезавтра — управляет сразу несколькими зонами. И всё это без переделки проводки.
В итоге CAN-шина для меня стала не просто альтернативой Zigbee, а осознанным выбором в пользу стабильности, скорости и контроля. Это умный дом без сюрпризов, где технологии не привлекают к себе внимание, а просто делают жизнь удобнее. Именно так, как и должно быть.
Проект в gitHub
