8 отзывов
Контакты
На сайте не действует Программа защиты покупателя Prom.ua . Продавец не прошел верификацию. Будьте бдительны, делая покупки. Рекомендуем проверять информацию и оплачивать товары после получения.
WIA (Wireless Integrated Automation, DIY)
+380 показать номер
+380 показать номер
+380 показать номер
УкраинаКиевг. Киев вул.Богатирська, буд 11
Карта

Установка и настройка MajorDomo на Raspberry PI 3

Установка и настройка MajorDomo на Raspberry PI 3

В данной статье будет описан процесс установки и настройки системы MajorDomo (далее MD) на одноплатный компьютер Raspberry PI 3 (далее RPI3).

В данной статье будет рассмотрен вопрос установки и настройки системы MajorDomo (далее MD) на одноплатный компьютер Raspberry PI3 (далее RPI3). Всё изложенное ниже является аккумулированием трудов пользователей и разработчиков MD. Практически весь материал основан на сообщениях из форума MD, за что особая благодарность всем участникам форума, а товарищу nick7zmail в особенности)). О всех неточностях и ошибках в изложенном материале прошу писать в комментариях. Пару слов про возможности и особенности системы: Файловая система F2FS (оптимизирована для карт памяти);
Оптимизация циклов записи базы данных на карту памяти;
Голосовой движок RHVoice;
Звук через сервис MPD;
MQTT-брокер Mosquitto;
Apple HomeKit-совместимость (через HomeBridge);
Установленные средства разработки: PHP, Python, NodeJS, Perl;
Последние обновления MajorDoMo и Raspbian Jessie (на момент релиза текущей версии);
Работает установка дополнений из Маркета, а так же обновления ядра системы.
Особенность конфигурации - всё настроено так, чтобы минимизировать количество циклов записи на SD-карту. База данных использует tmpfs с периодической "фиксацией" (раз в 15 минут). Т.е. возможен вариант, что при аварийном выключении питания система будет восстановлена c потерей данных за последних несколько минут. После установки работает звук, радио (используется mpd и модуль 101.ru из маркета), обновления, установка модулей из маркета дополнений. Для начала работы по установке системы MD желательно обзавестись следующим: RPI3. Экземпляр, рассматриваемый в данной статье, был приобретён здесь. Понравилась комплектация заказа – всё включено (сам RPI3, красивый корпус, набор радиаторов, блок питания, карта памяти на 16ГБ) и скорость доставки (менее 2 недель);
microSD карта памяти. Объём не менее 16ГБ, класс 10 (настоятельно рекомендую не выбирать SD карту из разряда дешёвых, так как это может отобразиться на дальнейшей стабильности системы);
Картридер;
Аудиоколонки (необязательно);
Программа Win32DiskImager. Скачать можно здесь;
SSH клиент. Как вариант Putty. Скачать можно здесь;
Установочный образ. Скачать можно здесь.
Теперь обо всём по порядку: Подготовка карты памяти. На данном этапе нам необходимо перенести образа MD на SD карту. Значит, берем карту, вставляем ей в картридер и запускаем программу Win32DiskImager. В появившемся окне, в поле «Device», выбираем нашу флешку, а в поле «Image file» указываем распакованный из архива образ MD и нажимаем кнопку «Write». Необходимо дождаться завершения записи, которая должна пройти без всяких ошибок. В противном случае необходимо заменить SD карту на новую и попробовать заново. Первый запуск RPI3. Вставляем карточку в RPI3, подключаем сетевой кабель, колонки и подаём питание. Обратите внимание на выбор БП, нагрузочная способностью которого должна быть не мене 2.5А (лучше 3А), иначе могут наблюдаться сбои при работе системы. Вообще, для долговременной и стабильно работы системы желательно подключить питание от ИБП. После загрузки система должна получить IP-адрес по DHCP и быть доступна по веб-интерфейсу. В моем случае, после подачи питания, через какое-то время я услышал из колонок следующие фразы «Система загружена» и «ай пи адрес 192.168.0.33». Ниже привожу скрин «чистого» экрана системы (главного): Теперь можно зайти на RPI3 через SSH/FTP, данные для входа: Имя пользователя: pi Пароль: raspberrymj Менеджер базы данных(phpMyAdmin): Имя пользователя: root Пароль: rootpsw Сервис MajorDoMo стартует автоматически, но можно управлять им через консоль: sudo /etc/init.d/majordomo stop sudo /etc/init.d/majordomo start Настройка MD Подготовка. В данной статье будет рассмотрена возможность настройки системы через SSH доступ. В принципе, тоже самое можно сделать подключив к RPI3 монитор, клавиатуру и сетевой кабель (без использования Putty). Запускаем программу Putty. В появившемся окне вводим полученный от системы IP адрес и нажимаем кнопку “Open” . Далее, в появившемся окне, жмём кнопку «Да». Теперь вводим стандартные имя пользователя и пароль. Если всё сделано правильно – появится готовая к работе консоль. Подготовка к настройке системы сделана, теперь сама настройка. Настройка статического IP адреса. Для пользователей, которые понимают что это такое, и которым это не требуется, могут пропустить данный пункт. Вводим в консоли: sudo nano /etc/dhcpcd.conf Добавляем следующие строчки (вводим адреса вашего оборудования): nodhcp interface eth0 static ip_address=192.168.0.33 static routers=192.168.0.1 static domain_name_servers=192.168.0.1 нажимаем комбинации клавиш <CTRL+O> и <CTRL+X> (сохраняем в файл и выходим). Перезапускаем сетевой интерфейс: sudo ifconfig eth0 down sudo ifconfig eth0 up ждём 5 секунд и проверяем правильность выполненной работы командой: ifconfig Для проверки доступа к интернету можно также "пингонуть" google: sudo ping 8.8.8.8 Первичная настройка при помощи утилиты «Raspi-config» (чем-то напоминает BIOS компьютера). Вводим в консоли: sudo raspi-config В появившемся окне выполняем следующие действия: в поле “Change User Password” меняем стандартный пароль (не забываем его записать);
в поле “Boot Options”, в подменю “B1 Desktop CLI”, выбираем “B1 Console”;
в поле “Advanced Options” выполняем “A1 Expand Filesystem”, а в поле “Audio” выбираем “Force 3.5 jack”.
Устанавливаем пароли для phpMyAdmin. Заходим через в web интерфейс phpMyAdmin и там меняем пароль (не забываем записывать), для этого вводим следующую строку в браузере: http://_Ваш_IP/phpmyadmin/ Теперь сообщаем MD под каким паролем заходить, для этого вводим в консоли: sudo nano /var/www/html/config.php В появившемся окне меняем стандартный пароль на свой: Define('DB_PASSWORD', 'свой_пароль'); Останавливаем MySQL строчкой sudo service mysql stop копируем текущую базу данных из диска в памяти на SD карту sudo cp -R /tmp/mysql/* /var/lib/mysql/ и перезагружаем систему sudo reboot. Устанавливаем пароль на вход в систему с внешней сети. Для этого вводим в консоли: sudo nano /var/www/html/config.php Находим и раскомментируем следующие строчки: Define('HOME_NETWORK', '192.168.0.*'); Define('EXT_ACCESS_USERNAME', 'user'); Define('EXT_ACCESS_PASSWORD', 'password'); Обратите внимание на маску IP адреса в первой строке!!! Далее вводим свой логин и пароль (также не забываем их записывать), нажимаем комбинации клавиш <CTRL+O> и <CTRL+X> (сохраняем в файл и выходим). Меняем пароль брокера MQTT Mosquitto. Для этого в консоли набираем: sudo nano /etc/mosquitto/mosquitto.conf в появившемся окне добавляем следующие строчки #путь к файлу паролей password_file /etc/mosquitto/passwd #запретить подключения без логина allow_anonymous false Создаём/добавляем пользователя и пароль утилитой mosquitto_passwd: sudo mosquitto_passwd -c /etc/mosquitto/passwd username Сообщаем об этом homebridge sudo nano /home/pi/.homebridge/config.json Также сообщаем модулю MQTT в web интерфейсе MD, для этого в браузере вводим полученный IP адрес, заходим в "Панель управления" в левом боковом меню выбираем "Устройства"->"MQTT"->"Настроить". Ставим галочку "authorization required", вводим имя пользователя и пароль, после чего нажимаем кнопку "Обновить". Перезапускаем mosquitto sudo service mosquitto stop sudo service mosquitto start Увеличиваем размер временного файлового хранилища. Для этого в консоли набираем: sudo nano /etc/fstab В строке "tmpfs /tmp tmpfs defaults,noatime,nosuid,size=100m 0 0" меняем size=100m на size=500m, нажимаем комбинации клавиш <CTRL+O> и <CTRL+X> (сохраняем в файл и выходим). Установка модуля MySensors. Заходим в систему через web интерфейс и нажимаем на кнопку «Панель управления». В левом боковом меню выбираем - «Система» -> «Маркет дополнений» -> «Оборудование», ищем в списке “MySensors” и нажимаем на кнопку добавить. Теперь в закладке «Устройства» мы можем увидеть установленный модуль. В следующих статьях будет рассмотрен вопрос подключения MDMS устройств к данному модулю и созданию на базе «Простых устройств» нескольких узлов управления.
facebook twitter
Предыдущие статьи
  • MDMS устройства. Что это такое?
    MDMS устройства. Что это такое?
    В данной статье будет кратко описано об истории возникновения MDMS устройств, концепции их построения, перечислены задачи решаемые данными устройствами, описано положение дел на текущий момент и планы на будущее. 
    Полная версия статьи