Категории

Настройка Raspberry Pi 5 для умного дома: MQTT, Zigbee и PHP-интерфейс

2025-07-19 16:34:19 | Статья из категории: IOT умный дом

Настройка Raspberry Pi 5 для умного дома

Необходимое оборудование

Для создания собственного хаб-центра умного дома на Raspberry Pi 5 вам потребуется:

  • Raspberry Pi 5 (рекомендуется 4ГБ+ RAM)
  • Карта microSD (32ГБ Class 10 или выше)
  • Zigbee-адаптер (CC2531, CC2652 или аналогичный)
  • Блок питания USB-C (минимум 3А)
  • Корпус с охлаждением (опционально)
  • Ethernet-кабель или Wi-Fi-адаптер

Совет: Для стабильной работы Zigbee используйте USB-удлинитель, чтобы отнести адаптер от Raspberry Pi.


Введение

Создание собственного центра управления умным домом на Raspberry Pi 5 - это отличный способ получить полный контроль над своей домашней автоматизацией. В отличие от готовых решений, самописная система на PHP позволяет реализовать любые сценарии и интеграции, которые вам нужны.

В этой статье я подробно расскажу, как:

  1. Выбрать и установить оптимальную ОС
  2. Настроить MQTT-брокер для обмена сообщениями между устройствами
  3. Интегрировать Zigbee-устройства через Zigbee2MQTT
  4. Развернуть легковесный веб-интерфейс на PHP

Требования и подготовка

Перед началом работы убедитесь, что:

  • У вас есть доступ к Raspberry Pi (прямо или через SSH)
  • Установлена свежая версия Raspberry Pi OS (64-bit)
  • Выполнены базовые обновления системы (sudo apt update && sudo apt upgrade -y)
  • Есть статический IP-адрес или настроен DHCP-резервация

Важно: Для работы Zigbee2MQTT потребуется Node.js версии 16.x или выше. Проверить текущую версию можно командой node -v.


Пошаговая настройка системы

1. Установка MQTT-брокера (Mosquitto)

sudo apt install -y mosquitto mosquitto-clients sudo systemctl enable mosquitto sudo systemctl start mosquitto

Проверьте работу брокера, подписавшись на тест-топик в одном терминале:

mosquitto_sub -h localhost -t "test"

И отправив сообщение в другом:

mosquitto_pub -h localhost -t "test" -m "Hello MQTT"

2. Настройка Zigbee2MQTT

Установите необходимые зависимости:

curl -fsSL https://deb.nodesource.com/setup_lts.x | sudo -E bash -
sudo apt install -y nodejs git make g++ gcc

Клонируйте и настройте Zigbee2MQTT:

sudo mkdir /opt/zigbee2mqtt
sudo chown $USER /opt/zigbee2mqtt
git clone --depth 1 https://github.com/Koenkk/zigbee2mqtt.git /opt/zigbee2mqtt
cd /opt/zigbee2mqtt
npm install

Настройка веб-интерфейса на PHP

Установите nginx и PHP:

sudo apt install -y nginx php-fpm php-curl php-mbstring php-xml

Создайте базовую структуру проекта:

sudo mkdir -p /var/www/homeassistant sudo chown -R $USER:$USER /var/www/homeassistant cd /var/www/homeassistant

Пример простого index.php для отображения устройств:

<?php $mqtt = new \PhpMqtt\Client\MqttClient('localhost', 1883); $mqtt->  connect(); $devices = json_decode(file_get_contents('http://localhost:8080/api/devices'), true);
foreach ($devices as $device) {
echo "<div class='device'>  ";
echo "<h3>  " . htmlspecialchars($device['name']) . "</h3>  ";
echo "<p>  Состояние: " . $device['state'] . "</p>  ";
echo "</div>  ";
}
?>  

Заключение

Теперь у вас есть полностью функциональный хаб для умного дома на Raspberry Pi 5. Дальнейшие шаги по развитию системы:

  • Реализовать авторизацию в веб-интерфейсе
  • Добавить поддержку сценариев автоматизации
  • Настроить резервное копирование конфигурации
  • Интегрировать дополнительные протоколы (Z-Wave, Bluetooth LE)

Самописное решение дает неограниченные возможности для кастомизации и идеально подходит для тех, кто хочет иметь полный контроль над своей системой умного дома.

Но это только для синхронизации зигби устройств. Чтобы управлять с помощью сценариев нужно делать свою систему типо хомасистента ну или установить хомасистент. Я делал самописную систему для умного дома на пхп хомасистент для iot устройств. Но это начальная версия уже все переделано сто раз. Но как обзорная статья про умный дом сойдет

Комментарии

Пока нет комментариев. Будьте первым!

Оставить комментарий

← Назад к списку статей

Важно: Блог-эксперимент

Блог только запустил, все статьи генерирую через нейросеть т.к. лень, возможны ошибки. Просто чтобы вы знали и не запускали ядерный реактор по моим статьям ))
Если у вас есть вопросы, или Нашли неточность? пишите в коментах — вместе поправим и сделаем статью более качественной. Я лично объясню нюансы из практики.

Посетителей сегодня: 0


кто я | книга | контакты без контактов

© Digital Specialist | Не являемся сотрудниками Google, Яндекса и NASA