Автоматизация управления охранными системами Pandora™, PanDECT® и Benish GUARD Force в Home Assistant.
Автомобиль тоже может быть частью умного дома. С помощью этого компонента вы сможете отслеживать состояние, управлять и автоматизировать свой автомобиль, если он оборудован охранной системой Pandora. После настройки ваши устройства Pandora™ и PanDECT® автоматически добавятся в Home Assistant.
Компонент реализует доступ к API официального приложения Pandora, Pandora Connect, и реализует часть его функционала. Для настройки Вам следует использовать те же авторизационные данные, что вы используете на сайте Pandora (pro.p-on.ru), или в мобильном приложении Pandora Online / Connect / Pro.
На данный момент компонент поддерживает:
- Device Tracker: Местоположение автомобиля.
- Sensors: Температура, скорость, тахометр и т.д.
- Binary Sensors: Статусы открытия, движения, и т.д.
- Switches: Работа двигателя, активная охрана, и т.д.
- Lock: Постановка на охрану
- Number: Регулировка климатических систем
- Services: Команды, например: открыть/закрыть, завести/заглушить и др.
Компонент успешно протестирован и отработан на системах:
- PanDECT X-1700 BT
- PanDECT X-1900 BT
- Pandora DX-4G
- Pandora DX-4G S
- Pandora DX-4GL
- Pandora DX-90BT + NAV-10
- Pandora DX-9X LoRa + NAV-10
- Pandora DXL-4970
- Pandora DXL-5570
- Pandora NAV-08 (маячок)
- Pandora VX-4G GPS
- Сообщите о Вашем успехе!
Доступные виды курсоров трекера
🎉 Рекомендованный метод установки.
- Установите HACS (инструкция по установке на оф. сайте).
- Добавьте репозиторий в список дополнительных:
- Откройте главную страницу HACS.
- Откройте раздел Интеграции (Integrations).
- Нажмите три точки сверху справа (дополнительное меню).
- Выберите Пользовательские репозитории.
- Скопируйте
https://github.com/alryaz/hass-pandora-casв поле ввода - Выберите Интеграция (Integration) в выпадающем списке.
- Нажмите Добавить (Add).
- Найдите
Pandora Car Alarm Systemв поиске по интеграциям. - Установите последнюю версию компонента, нажав на кнопку
Установить(Install). - Перезапустите сервер Home Assistant.
⚠️ Внимание! Данный вариант не рекомендуется в силу сложности поддержки установленной интеграции в актуальном состоянии.
- Скачайте архив с актуальной стабильной версией интеграции
- Создайте папку (если не существует)
custom_componentsвнутри папки с конфигурацией Home Assistant - Создайте папку
pandora_casвнутри папкиcustom_components - Извлеките содержимое скачанного архива в папку
pandora_cas - Перезапустите сервер Home Assistant
Поддерживается базовый функционал конфигурации через веб-интерфейс Home Assistant. Конфигурация данным способов возможна без перезагрузки Home Assistant.
Вручную (если кнопка выше не работает)
Для перехода к настройке, выполните следующие действия:- Перейдите в раздел Настройки ⟶ Интеграции (`/config/integrations`)
- Нажмите на круглую кнопку с плюсом внутри в нижнем правом углу экрана
- Во всплывшем окне, введите в верхнем поле поиска: Pandora; одним из результатов должен оказаться Pandora Car Alarm System (с соответствующим логотипом торговой марки Pandora Car Alarm System)
- Нажмите на предложенный результат
- Введите имя пользователя и пароль в соответствующие поля
- Нажмите внизу справа на кнопку Подтвердить. В случае обнаружения системой каких-либо ошибок, они будут отображены в окошке
- Обновление займёт не более 5-10 секунд (проверено на Raspberry Pi 4), элементы в конфигурации по-умолчанию должны появиться на главном экране (при использовании конфигурациии Lovelace по-умолчанию)
⚠️ Внимание! Данный вариант не рекомендуется в силу сложности поддержки установленной интеграции в актуальном состоянии.
Чтобы активировать компонент, добавьте эти строки в файл configuration.yaml:
# Фрагмент файла configuration.yaml
pandora_cas:
# Учётная запись на портале p-on.ru / pro.p-on.ru
password: !secret YOUR_PASSWORD # обязательно
username: !secret YOUR_USERNAME # обязательноКомпонент также поддерживает работу с несколькими учётными записями:
pandora_cas:
# Первая учётная запись
- username: !secret YOUR_USERNAME_1
password: !secret YOUR_PASSWORD_1
# Вторая учётная запись
- username: !secret YOUR_USERNAME_2
password: !secret YOUR_PASSWORD_2Дополнительно имеется возможость (для всех вариантов конфигурации) использовать раздел устройств для управления включёнными объектами. Для этого:
- Перейдите в раздел Настройки ⟶
Устройства (
/config/devices/dashboard) - Найдите Ваше устройство (в колонке
Интеграция будет написано
Pandora Car Alarm System) - Нажмите на найденную строку с устройством
- Прокрутите страницу вниз до обнаружения надписи
+[N] скрытых объектов - Нажмите на данную надпись
- Нажмите на любой из появившихся объектов
- Во всплывающем окне, переместите переключатель
Отображать объектв положениеВкл. - Нажмите на кнопку
Обновитьв нижнем правом углу всплывающего окна
Пример того, как выглядит наполненная страница для устройства модели X-1911BT (нажмите для увеличения):
Для привязки к автомобилю в имени объекта сенсоров используется
идентификатор PANDORA_ID, в то время как в
человеко-читаемом названии используется название автомобиля с сайта Pandora. Это
сделано для того, чтобы при
изменении названия автомобиля на сайте не менялись имена объектов, а значит не
будет необходимости перенастраивать
lovelace UI и автоматизации.
ВНИМАНИЕ!
При добавлении объектов, компонент в отдельных случаях проверяет поддержку функционала конечным устройством. Во избежание неожиданных ситуаций, Вы можете ознакомиться с таблицами поддержки на официальном сайте Pandora: ссылка на документ.
ПРЕДУПРЕЖДЕНИЕ!
Общее количество различных объектов, доступных в компоненте, в скором времени перевалит за 40. Ввиду этого, по умолчанию отключены объекты, встречающиеся наиболее редко, такие как:
- Состояние зарядки и температура аккумулятора гибридных/электрических автомобилей
- Состояние поднятости стёкол и давление в шинах (TPMS), получаемые по CAN-шине
Такие объекты помечаются символом "⚠" в таблицах ниже. Если Вы уверены, что Ваш автомобиль вкупе с установленной на нём системой поддерживают данные функции, то Вы можете включить перечисленные объекты следуя инструкции выше.
| Объект | Назначение | Примечание |
|---|---|---|
sensor.PANDORA_ID_mileage |
Пробег сигнализации (по GPS) | км |
sensor.PANDORA_ID_can_mileage |
Пробег штатного одометра (по шине CAN) | км |
sensor.PANDORA_ID_fuel |
Наполненность топливом 1 | % |
sensor.PANDORA_ID_interior_temperature |
Температура салона | °C |
sensor.PANDORA_ID_engine_temperature |
Температура двигателя | °C |
sensor.PANDORA_ID_exterior_temperature |
Уличная температура | °C |
sensor.PANDORA_ID_battery_temperature |
Температура аккумулятора | °C |
sensor.PANDORA_ID_balance |
Баланс СИМ-карты | Валюта баланса |
sensor.PANDORA_ID_speed |
Скорость | км/ч |
sensor.PANDORA_ID_tachometer |
Тахометр (обороты двигателя) | rpm |
sensor.PANDORA_ID_gsm_level |
Уровень сигнала GSM | 0 ... 3 |
sensor.PANDORA_ID_battery_voltage |
Напряжение аккумулятора | V |
sensor.PANDORA_ID_last_online |
Последний выход на связь | Метка времени |
sensor.PANDORA_ID_last_state_update |
Последнее получение обновления | Метка времени |
sensor.PANDORA_ID_last_settings_change |
Последнее изменение настроек системы | Метка времени |
sensor.PANDORA_ID_last_command_execution |
Последнее выполнение команды | Метка времени |
⚠ sensor.PANDORA_ID_balance_secondary |
Баланс дополнительной СИМ-карты | Валюта баланса |
⚠ sensor.PANDORA_ID_can_mileage_to_empty |
Пробег до пустого бака (по шине CAN) | км |
⚠ sensor.PANDORA_ID_left_front_tire_pressure |
Давление левой передней шины | кПа (?) |
⚠ sensor.PANDORA_ID_right_front_tire_pressure |
Давление правой передней шины | кПа (?) |
⚠ sensor.PANDORA_ID_left_back_tire_pressure |
Давление левой задней шины | кПа (?) |
⚠ sensor.PANDORA_ID_right_back_tire_pressure |
Давление правой задней шины | кПа (?) |
⚠ sensor.PANDORA_ID_reserve_tire_pressure |
Давление правой задней шины | кПа (?) |
| Объект | Назначение | Примечание |
|---|---|---|
binary_sensor.PANDORA_ID_connection_state |
Связь с автомобилем1 | есть / нет |
binary_sensor.PANDORA_ID_moving |
Статус движения | в движении / без движения |
binary_sensor.PANDORA_ID_left_front_door |
Левая передняя дверь | открыта / закрыта |
binary_sensor.PANDORA_ID_right_front_door |
Правая передняя дверь | открыта / закрыта |
binary_sensor.PANDORA_ID_left_back_door |
Левая задняя дверь | открыта / закрыта |
binary_sensor.PANDORA_ID_right_back_door |
Правая задняя дверь | открыта / закрыта |
binary_sensor.PANDORA_ID_trunk |
Багажник | открыт / закрыт |
binary_sensor.PANDORA_ID_hood |
Капот | открыт / закрыт |
binary_sensor.PANDORA_ID_parking |
Режим паркнинга | включен / выключен |
binary_sensor.PANDORA_ID_brakes |
Педаль тормоза | нажата / отпущена |
⚠ binary_sensor.PANDORA_ID_left_front_glass |
Левое переднее окно (водительское)2 | открыто / закрыто |
⚠ binary_sensor.PANDORA_ID_right_front_glass |
Правое переднее окно (пассажирское)2 | открыто / закрыто |
⚠ binary_sensor.PANDORA_ID_left_back_glass |
Левое заднее окно | открыто / закрыто |
⚠ binary_sensor.PANDORA_ID_right_back_glass |
Правое заднее окно | открыто / закрыто |
⚠ binary_sensor.PANDORA_ID_ev_charging_connected |
Зарядка аккумулятора электрокара | подключено / отключено |
1 Данный объект содержит полный перечень свойств, получаемых в момент
обновления состояния автомобиля,
и тем самым может быть запросто использован для template-выражений.
2 Компонент не тестировался для праворульных транспортных средств.
Может возникнуть
ситуация, что из коробки данные сенсоры перепутаны местами.
| Объект | Назначение | Примечание |
|---|---|---|
lock.PANDORA_ID_central_lock |
Статус блокировки замка | разблокирован / заблокирован |
switch.PANDORA_ID_active_security |
Статус активной защиты | включена / выключена |
switch.PANDORA_ID_coolant_heater |
Статус предпускового подогревателя | включен / выключен |
switch.PANDORA_ID_engine |
Статус двигателя | запущен / заглушен |
switch.PANDORA_ID_tracking |
Статус отслеживания (GPS-трек) | включен / выключен |
switch.PANDORA_ID_service_mode |
Режим сервиса (обслуживания) | включен / выключен |
switch.PANDORA_ID_ext_channel |
Дополнительный канал 3 | включить / выключить |
switch.PANDORA_ID_status_output |
Статусный выход (для нештатных иммобилайзеров) | включить / выключить |
3 Состояние не остслеживается
| Объект | Назначение | Примечание |
|---|---|---|
switch.PANDORA_ID_erase_errors |
Очистка кодов ошибок | |
switch.PANDORA_ID_read_errors |
Считывание кодов ошибок | |
switch.PANDORA_ID_trigger_horn |
Статус двигателя | |
switch.PANDORA_ID_trigger_light |
Статус отслеживания (GPS-трек) | |
switch.PANDORA_ID_trigger_trunk |
Режим сервиса (обслуживания) | |
switch.PANDORA_ID_check |
Дополнительный канал 3 | |
switch.PANDORA_ID_additional_command_1 |
Дополнительная команда №1 | |
switch.PANDORA_ID_additional_command_2 |
Дополнительная команда №2 |
Для каждого автомобиля будет создан объект device_tracker.pandora_PANDORA_ID,
где
PANDORA_ID уникальный идентификатор автомобиля в системе Pandora. Доступны все
обычные действия для Device Tracker: отслеживание местоположения
на карте,
трекинг пути,
контроль зон
и т.д.
Объект обладает следующими атрибутами:
| Параметр | Тип | Описание |
|---|---|---|
| latitude | float |
Широта |
| longitude | float |
Долгота |
| device_id | int |
Идентификатор устройства |
| direction | int |
Направление (в градусах) |
| cardinal | str |
Направление (в сторонах света) |
За период наблюдения компонентом за автомобилем могут происходить некоторые
события, чьи
свойства не позволяют сделать из них удобные к использованию объекты
платформ sensor,
binary_sensor и пр. Ввиду этого, для поддержки дополнительных событий введены
два новых
внутренних делегата:
Данное событие делегирует информацию из системы Pandora прямиком в Home Assistant. Следующие данные будут доступны при получении события:
| Параметр | Тип | Описание |
|---|---|---|
| device_id | int |
Идентификатор устройства |
| event_id_primary | int |
Первичный код события |
| event_id_secondary | int |
Вторичный код события |
| title_primary | str, None |
Заглавное наименование события |
| title_primary | str, None |
Уточняющее наименование события |
| event_type | str |
Код типа события |
| latitude | float |
Широта |
| longitude | float |
Долгота |
| gsm_level | int |
Уровень связи |
| fuel | int |
Уровень топлива |
| exterior_temperature | int |
Температура за бортом |
| engine_temperature | int |
Температура двигателя |
Код типа события является строкой, которая поверхностно описывает смысл события
(на английском языке). Полным списком кодов (кодификатором) возможно обзавестись
в файле
api.py проекта.
Для всех команд будут выполняться события-уведомители. Данные события содержат следующие данные:
| Параметр | Тип | Описание |
|---|---|---|
| device_id | int |
Идентификатор устройства |
| command_id | int |
Номер команды (см. раздел ниже) |
| result | int |
Результат выполнения (0 - успех, любое другое значение - ошибка) |
| reply | int |
Код описания ошибки (больше нуля, если код доступен) |
Ключевые команды включения/выключения определённых функций вынесены в отдельные
переключаемые объекты
(пр. switch и lock). Если же имеется потребность выступить за рамки
предопределённых конфигураций,
существуют два способа передать дополнительные команды на охранную систему.
Для именованого способа требуется вызов службы в
формате pandora_cas.<Постфикс>:
# Именованый способ вызова команд
- action: call-service
service: pandora_cas.start_engine
data:
device_id: 1231234123Для универсального способа идентификаторы команд (command_id) обязательно
должны быть числовыми:
# Универсальный способ вызова команд
- action: call-service
service: pandora_cas.remote_command
data:
device_id: 1234141243
command_id: 1Для справки, ниже представлена таблица доступных к выполнению команд ( сгруппированых по смысловому признаку):
| ID | Постфикс | Действие | Примечание |
|---|---|---|---|
| 1 | lock |
Поставить на охрану | Может быть запрещено настройками блока сигнализации |
| 2 | unlock |
Снять с охраны | Может быть запрещено настройками блока сигнализации |
| 4 | start_engine |
Запустить двигатель | |
| 8 | stop_engine |
Остановить двигатель | |
| 16 | enable_tracking |
Включить GPS-трекинг | Поддерживается не всеми устройствами |
| 32 | disable_tracking |
Выключить GPS-трекинг | Поддерживается не всеми устройствами |
| 17 | enable_active_security |
Включить активную безопасность | Поддерживается не всеми устройствами |
| 18 | disable_active_security |
Выключить активную безопасность | Поддерживается не всеми устройствами |
| 21 | turn_on_coolant_heater |
Включить преднагреватель | Поддерживается не всеми устройствами |
| 22 | turn_off_coolant_heater |
Выключить преднагреватель | Поддерживается не всеми устройствами |
| 33 | turn_on_ext_channel |
Включить дополнительный канал | Поддерживается не всеми устройствами |
| 34 | turn_off_ext_channel |
Выключить дополнительный канал | Поддерживается не всеми устройствами |
| 40 | enable_service_mode |
Включить сервисный режим | |
| 41 | disable_service_mode |
Выключить сервисный режим | |
| 23 | trigger_horn |
Издать сигнал клаксона | |
| 24 | trigger_light |
Включить освещение | |
| 255 | check |
Команда CHECK | ? |
| 100 | additional_command_1 |
Дополнительная команда №1 | Настраивается инструментами конфигурации блока сигнализации |
| 128 | additional_command_2 |
Дополнительная команда №2 | Настраивается инструментами конфигурации блока сигнализации |
| 240 | enable_connection |
Продлить период коммуникации | ? |
| 15 | disable_connection |
Завершить период коммуникации | ? |
| 48 | enable_status_output |
Выключение статусного выхода | Подразумевается поддержка на стороне автомобиля |
| 49 | disable_status_output |
Включение статусного выхода | Подразумевается поддержка на стороне автомобиля |
Вкладка с кнопкой запуска двигателя
- badges: [ ]
cards:
- hold_action:
action: call-service
service: pandora_cas.start_engine
data:
id: 1234567890
icon: 'mdi:fan'
name: Запуск двигателя
show_icon: true
show_name: true
tap_action:
action: more-info
type: button
icon: 'mdi:car'
panel: false
path: honda_pilot
title: Honda PilotАвтоматизация включения доп. канала по событию с условиями. Подробнее см. пример использования.
# Фрагмент файла automations.yaml
- id: switch_on_pilot_seat_heaters
alias: Включить подогрев сидений
trigger:
platform: state
entity_id: binary_sensor.1234567890_engine_state
to: 'on'
condition:
- condition: time
after: 05:58:00
before: 06:12:00
weekday:
- mon
- tue
- wed
- thu
- fri
action:
service: pandora_cas.turn_on_ext_channel
data_template:
id: 1234567890Конфигурация существует трёх видов:
- Карточка ( содержит только графическое изображение транспортного средства)
- Стек ( карточка + элементы управления + сенсоры)
- Панель ( карта по левую сторону, стек по правую)
Чтобы подготовить собственную конфигурацию, выполните следующие действия:
- Открыть папку с подготовленными конфигурациями
- Выбрать файл с желаемым типом конфигурации
- Скопировать содержимое файла в текстовый редактор
- Заменить все вхождения
REPLACE_WITH_PANDORA_IDна идентификатор автомобиля (device_idна сенсорах)
Данное программное обеспечение никак не связано и не одобрено ООО «НПО Телеметрия», владельца торговой марки Pandora. Используйте его на свой страх и риск. Автор ни при каких обстоятельствах не несет ответственности за порчу или утрату вашего имущества и возможного вреда в отношении третьих лиц.
Все названия брендов и продуктов принадлежат их законным владельцам.