16 578
правок
Fizikdaos (обсуждение | вклад) |
|||
(не показано 50 промежуточных версий 6 участников) | |||
Строка 1: | Строка 1: | ||
== | {{DISPLAYTITLE: Программное обеспечение контроллеров Wiren Board}} | ||
== Как устроено ПО Wiren Board == | |||
[[File:DebianLinux.png | thumb | 600px | Структура ПО контроллера. В центре очередь сообщений MQTT, которая используется для обмена информацией между разными частями ПО]] | |||
[ | Wiren Board работает под управлением Debian Linux. Для архитектуры используемого процессора есть [https://www.debian.org/ports/arm/ официальный порт], поэтому любое стандартное Linux-приложение можно установить из репозитория одной командой <code>apt install имя_пакета</code>. | ||
Все сервисы контроллера общаются между собой по общей «шине», в роли которой выступает [[MQTT | Очередь сообщений MQTT]]. | |||
По умолчанию установлены [[Wiren Board Web Interface|Веб-интерфейс Wiren Board]], [[Движок правил wb-rules|Движок правил wb-rules]], а также драйвера и вспомогательные утилиты. | |||
Опционально можно установить шлюзы для интеграции со SCADA-системами и сторонний софт. Полный список смотрите в [[Supported_devices|Таблице поддерживаемых устройств, протоколов и программ]]. | |||
=== Разработка своих решений === | |||
{{Wbincludes:Wiren Board Software Dev}} | |||
== Обновление прошивки и релизный цикл== | |||
=== Кратко о релизах === | |||
{{Wbincludes:Releases}} | |||
{{Wbincludes:Release Log}} | |||
=== Какой релиз на вашем контроллере === | |||
{{Wbincludes:What-release}} | |||
=== Переключение между релизами === | |||
{{Wbincludes:Switch-release}} | |||
=== Обновление прошивки контроллера и откат к заводским настройкам === | |||
{{Anchor|update}} | |||
Прошивку контроллера можно обновить или вернуть его к заводскому состоянию с удалением всех данных. | |||
Все ревизии контроллера можно обновить через менеджер пакетов apt или веб-интерфейс, а в относительно свежих добавилась возможность обновления с флеш-накопителя и через Debug Network. | |||
[[ | Инструкции: | ||
* [[Wiren_Board_7.4_Firmware_Update |Wiren Board 7.4]] | |||
* [[Wiren_Board_7_Firmware_Update|Wiren Board 7.2…7.3]] | |||
* [[Wiren_Board_6_Firmware_Update |Wiren Board 6]] | |||
* [[Wiren_Board_5_Firmware_Update|Wiren Board 5]] | |||
[[ | <gallery mode="packed" heights="140px" caption="Как узнать ревизию контроллера"> | ||
Image: Revision in the web interface.png| Ревизия контроллера в веб-интерфейсе. Устройства → System | |||
Image: Revision in the console.png| Ревизия контроллера в консоли, при подключении по [[SSH]]. Сразу под баннером, зелёными цифрами 6.7.2 | |||
Image: Revision on the stick.png| Ревизия контроллера на наклейке | |||
</gallery> | |||
== Список сервисов и их назначение == | |||
Список сервисов, запущенных на контроллере, их статус и описание можно получить командой: | |||
<syntaxhighlight lang="bash"> | |||
systemctl list-units --type=service | |||
</syntaxhighlight> | |||
Про управление сервисами читайте в статье [[How_to_diagnose#Полезные команды | Диагностика ошибок в работе контроллера]]. | |||
{| border="1" class="wikitable" style="text-align:left" | |||
|- | |||
|| '''Имя сервиса''' || '''Описание''' | |||
|- | |||
|| avahi-daemon.service || Avahi mDNS/DNS-SD Stack | |||
|- | |||
|| bluetooth.service || Bluetooth service | |||
|- | |||
|| cgmanager.service || Cgroup management daemon | |||
|- | |||
|| cron.service || Regular background program processing daemon | |||
|- | |||
|| dbus.service || D-Bus System Message Bus | |||
|- | |||
|| dnsmasq.service || dnsmasq - A lightweight DHCP and caching DNS server | |||
|- | |||
|| getty@tty1.service || Getty on tty1 | |||
|- | |||
|| hostapd.service || LSB: Advanced IEEE 802.11 management daemon | |||
|- | |||
|| kmod-static-nodes.service || Create list of required static device nodes for the current kernel | |||
|- | |||
|| knxd.service || KNX Daemon | |||
|- | |||
|| mosquitto.service || Mosquitto MQTT v3.1/v3.1.1 Broker | |||
|- | |||
|| netplug.service || LSB: Brings up/down network automatically | |||
|- | |||
|| networking.service || Raise network interfaces | |||
|- | |||
|| nginx.service || A high performance web server and a reverse proxy server | |||
|- | |||
|| ntp.service || LSB: Start NTP daemon | |||
|- | |||
|| rsyslog.service || System Logging Service | |||
|- | |||
|| serial-getty@ttymxc0.service || Serial Getty on ttymxc0 | |||
|- | |||
|| ssh.service || OpenBSD Secure Shell server | |||
|- | |||
|| systemd-fsck-root.service || File System Check on Root Device | |||
|- | |||
|| systemd-fsck@dev-mmcblk0p6.service || File System Check on /dev/mmcblk0p6 | |||
|- | |||
|| systemd-journal-flush.service || Flush Journal to Persistent Storage | |||
|- | |||
|| systemd-journald.service || Journal Service | |||
|- | |||
|| systemd-logind.service || Login Service | |||
|- | |||
|| systemd-modules-load.service || Load Kernel Modules | |||
|- | |||
|| systemd-random-seed.service || Load/Save Random Seed | |||
|- | |||
|| systemd-modules-load.service || Load Kernel Modules | |||
|- | |||
|| systemd-random-seed.service || Load/Save Random Seed | |||
|- | |||
|| systemd-remount-fs.service || Remount Root and Kernel File Systems | |||
|- | |||
|| systemd-sysctl.service || Apply Kernel Variables | |||
|- | |||
|| systemd-tmpfiles-setup-dev.service || Create Static Device Nodes in /dev | |||
|- | |||
|| systemd-tmpfiles-setup.service || Create Volatile Files and Directories | |||
|- | |||
|| systemd-udev-trigger.service || udev Coldplug all Devices | |||
|- | |||
|| systemd-udevd.service || udev Kernel Device Manager | |||
|- | |||
|| systemd-update-utmp.service || Update UTMP about System Boot/Shutdown | |||
|- | |||
|| systemd-user-sessions.service || Permit User Sessions | |||
|- | |||
|| user@0.service || User Manager for UID 0 | |||
|- | |||
|| watchdog.service || watchdog daemon | |||
|- | |||
|| wb-configs-early.service || prepare mounts and symlinks to config files | |||
|- | |||
|| wb-configs.service || watch config files | |||
|- | |||
|| wb-gsm-rtc.service || LSB: initscript to use GSM modem integrated RTC | |||
|- | |||
|| wb-homa-ism-radio.service || LSB: MQTT driver for WB HomA for RFM69 ISM radio | |||
|- | |||
|| wb-hwconf-manager.service || LSB: Hardware configuration with Device Tree overlays | |||
|- | |||
|| wb-init.service || LSB: board-specific initscript | |||
|- | |||
|| wb-mqtt-adc.service || MQTT Driver for ADC | |||
|- | |||
|| wb-mqtt-confed.service || LSB: Configuration Editor Backend | |||
|- | |||
|| wb-mqtt-db.service || Wiren Board database logger | |||
|- | |||
|| wb-mqtt-gpio.service || MQTT Driver for GPIO-controlled switches | |||
|- | |||
|| wb-mqtt-knx.service || LSB: : Wiren Board MQTT KNX bridge | |||
|- | |||
|| wb-mqtt-logs.service || Wiren Board journald to MQTT gateway | |||
|- | |||
|| wb-mqtt-mbgate.service || Wiren Board MQTT to Modbus TCP gateway | |||
|- | |||
|| wb-mqtt-opcua.service || Wiren Board MQTT to OPC UA gateway | |||
|- | |||
|| wb-mqtt-serial.service || MQTT Driver for serial devices | |||
|- | |||
|| wb-mqtt-w1.service || Kernel 1-Wire MQTT driver for WB-HomA | |||
|- | |||
|| wb-prepare.service || initialize filesystems at first boot | |||
|- | |||
|| wb-repart.service || prepare partitions at first boot | |||
|- | |||
|| wb-rules.service || MQTT Rule engine for Wiren Board | |||
|- | |||
|| wb-systime-adjust.service || Compensation of systime in PPM from value, stored in device-tree (with opposite sign) | |||
|- | |||
|| wb-watch-update.service || LSB: Firmware update monitor | |||
|} |