timsa.ru

Моя записная книжка. Комментарии отключены из-за спама. Для вопросов используйте эту страничку

Автоматизация, homeassistant + mqtt + zigbee

Немного потупил на тему как увязать три сущности homeassistant + mqtt + zigbee, но разобрался.

Во-первых zigbee2mqtt отправляется на свалку истории. В нем нет вообще никакого смысла, мутное тяжеловесное, глючное дерьмо. Постоянно отваливаются датчики, срет ошибками, невменяемый и неадекватный интерфейс.

HA с установленной интеграцией MQTT прекрасно выполняет все задачи.
Например — транслирует данные с Zigbee датчиков в MQTT брокер. Делается это очень просто.
Создаем файл автоматизации (тоже самое можно через gui) с таким содержимым:

- id: 'send_voltage_on_changes'
  alias: 'Передача показаний zigbee'
  description: ''
  trigger:
  - platform: time_pattern
    seconds: '0'
  condition: []
  action:
  - service: mqtt.publish
    metadata: {}
    data:
      topic: zigbee/kitchen/voltage
      payload: "{{states('sensor.zb_kitchenbacklight_voltage')}}"
  - service: mqtt.publish
    metadata: {}
    data:
      topic: zigbee/kitchen/power
      payload: "{{states('sensor.zb_kitchenbacklight_power')}}"
  - service: mqtt.publish
    metadata: {}
    data:
      topic: zigbee/kitchen/waterleak
      payload: "{{states('sensor.zb_waterleak_kitchen_moisture')}}"
  mode: single

По тексту всё понятно — он запускается каждую минуту и в соответствующие темы кидает значение zigbee датчиков.

Или нужно отправлять MQTT по нажатию кнопки:

- switch:
      unique_id: mqtt_switch1
      name: "MQTT кнопка"
      state_topic: "test/switch1"
      command_topic: "test/switch1"
      payload_on: "on"
      payload_off: "off"
      state_on: "on"
      state_off: "off"
      optimistic: false
      qos: 2
      retain: true

Здесь важный момент — темы state и command совпадают для того, чтобы HA оперативно отражал изменение статуса другим маршрутом (с другого устройства например).

 1   16 ч   ha   homeassistant   mqtt   zigbee

Словарь

«Дипломатические термины времён поздней фазы англосаксонского доминирования».

Разговор был предметным и конструктивным
Стороны обозвали друг друга мудаками, но не успели подраться.

Встреча завершилась в хорошей атмосфере
Никого не убили.

Обсуждались острые темы
Был открыт огонь на поражение, но стороны уворачивались и, благодаря понятийным договорённостям не брать больше одной обоймы в переговорную, всё быстро завершилось.

Представитель Лондона высказал мысль, достойную Черчилля
Спичрайтер-индус мнит себя хрен знает кем и попросил другого индуса, из редакции, похвалить себя за миску карри и два танца из к/ф «Танцор диско.

Стороны договорились продолжать договариваться о потенциальных договорённостях, ведущих в будущем к перспективному обсуждению начала формирования комиссии, которая обсудит общие принципы формирования концепции правил, которые будут использованы для начала переговорного процесса
Группа взрослых мужчин ещё годами будет за госсчёт летать первым классом, ежедневно вечером нахерачиваться коньяком и снимать шлюх за 1500евро/час, и хрен вы им что сделаете.

 1   1 д   политика

Закон Теслера

Он же закон сохранения сложности, утверждает, что для любой системы существует определённая степень сложности, которую нельзя уменьшить.

 4   8 дн   не знал
 9   26 дн   кот

TCS3472 или TCS34725 нюансы I2C

Чип RGB сенсора должен отвечать 0x44 или 0x4D на запрос 0x12, а по факту просто обратно кидает номер регистра.

Но если сделать так:
tcs3472_register_write_byte(0x80 | 0x12, 0x12);
tcs3472_register_read(0x12, data, 1);
то в ответ прилетит то, что нужно.

Для чтения значения CRGB надо также адаптировать функцию и читать не 1 байт, а сразу 8.

 20   1 мес   diy   i2c   электроника

BME280 нюансы I2C

Плата GY-BME280 поддерживает два варианта подключения i2c и SPI.
Чтобы выбрать шину i2c надо подать высокий уровень на CSB (соединить с Vin).
На шине i2c плата может иметь один из двух адресов 0x76 или 0x77. При подаче высокого на SDO будет 0x77, а если заземлить то 0x76.
Оставлять висеть в воздухе нельзя! Адрес назначен не будет!

 18   1 мес   diy   i2c   электроника

Битрикс и FreeIPA

Парочка моментов при установке FreeIPA

чтобы не ругался на уже делегированный домен при установке делаем

ipa-server-install —allow-zone-overlap

если есть готовый серт, то
ставим цепочку

ipa-cacert-manage install chain.pem

обновляем базу CA

ipa-certupdate

ставим свой серт

ipa-server-certinstall -d mycert.pkcs12

рестарт всех сервисов

ipactl restart

А теперь самое главное. Чтобы битрикс мог залогиниться, для него создаем отдельного юзера в freeipa. А в битриксе в поле логин указываем его не так как там написано, иначе будешь получать вечную ошибку ldap_bind: Invalid credentials (49), а вот так:
uid=b24,cn=users,cn=accounts,dc=mycompany,dc=ru

ну и на закладке «настройка полей» кликнуть LDAP, email заменить на mail

Это всё.

 55   2 мес   freeipa   ldap   битрикс

Роли или Группы?

Чтобы запомнить раз и навсегда.

Роль — список прав.
Группа — список людей.

 18   2 мес   it

Правда

У людей вообще почему-то есть ложное убеждение, что им все должны всегда говорить только всю правду.
Причём под правдой — подразумевается достоверное изложение событий с беспристрастной точки зрения и исходящее от полной информированности, да ещё и простыми словами. Без учёта хронологии и обстоятельств принятия решений.

 27   3 мес  

Исправление имен

Учитель ответил:
— Необходимо начать с исправления имен.

Цзы-лу спросил:
— Вы начинаете издалека. Зачем нужно исправлять имена?

Учитель сказал:
— Как ты необразован, Ю! Благородный муж проявляет осторожность по отношению к тому, чего не знает. Если имена неправильны, то слова не имеют под собой оснований. Если слова не имеют под собой оснований, то дела не могут осуществляться. Если дела не могут осуществляться, то ритуал и музыка не процветают. Если ритуал и музыка не процветают, наказания не применяются надлежащим образом. Если наказания не применяются надлежащим образом, народ не знает, как себя вести. Поэтому благородный муж, давая имена, должен произносить их правильно, а то, что произносит, правильно осуществлять. В словах благородного мужа не должно быть ничего неправильного.

Исправление имен в соответствии с действительностью (чжзн мин) — один из основных элементов социально-политической теории Конфуция. Смысл учения об исправлении имен состоит в том, что социальная роль каждого члена общества должна быть не номинальной, а реальной. Это значит, что государь, чиновник, отец, сын должны не только так называться, но и обладать всеми качествами, правами и обязанностями, вытекающими из этих названий.

 60   4 мес   Конфуций   Лунь Юй
Ранее Ctrl + ↓