Menu główne

Home Assistant pomoc dla początkujących

Zaczęty przez wswsws, Styczeń 07, 2020, 20:23:23

Poprzedni wątek - Następny wątek

admin

Cytat: wswsws w Listopad 20, 2020, 21:41:29
Co tu jest nie tak:

- id: extalife_restart_id1
  alias: ExtaLife restart
  description: ''
  trigger:
  - at: 06:00
    platform: time
  condition: []
  action:
  - service: extalife.restart
Brakuje cudzysłowu po obu stronach godziny. Powinno być '06:00'.
Skąd to upodobanie do YAML? Nie lepiej wyklinać w GUI? Tam uniknąłbyś takich pomyłek. Trzeba sobie życie upraszczać a nie komplikować 🙂
Elementy systemu, których używam: 3xSRP-22, 5xRDP-21, 3xROP-22, 4x ROP-21, 1xP-456/36, 1xRNK-24, 3x RNP-21, 1xRCT-22, aplikacja na Android oraz iOS + Home Assistant

shibby

Cytat: admin w Listopad 20, 2020, 15:51:13
Cytat: shibby w Listopad 20, 2020, 10:35:40
mam problem z jedną teoretycznie prostą rzeczą. Mianowicie mam encję która ma stan i atrybuty (integracja a routerem EdgeOS). Stan encji to uptime routera w sekundach. Chcę zrobić z tego sensor by wskazywał czas w dniach.

dodałem do konfiguracji

sensor:
  - platform: template
    sensors:
      edge_uptime:
        friendly_name: "EdgeOS Uptime"
        unit_of_measurement: 'days'
        value_template: "{{ states('binary_sensor.edgeos_system_status') | float / 86400 }}"


i niestety pokazuje mi "0.0". Ktoś podpowie gdzie robię błąd?
Zapis / składnia jest poprawna. Myślę, że problem leży w podaniu niewłaściwej encji. binary_sensor nie posiada stanu numerycznego tylko on/off. A niec chodzi przypadkiem o zwykły sensor czyli sensor.edgeos_system_status?

Stan encji jest w sekundach. Ma też dodatkowe atrybuty.

Elementy systemu, których używam: EFC-01, 1x RNK-22, 2x RNK-24, P-457/2, ROP-21, 3x ROP-22, RDP-21, 2x RGT-01, SLR-21, SLR-22, 3x RCK, 2x RCM, RCZ, RCR

admin

Cytat: shibby w Listopad 21, 2020, 11:54:08
Cytat: admin w Listopad 20, 2020, 15:51:13
Cytat: shibby w Listopad 20, 2020, 10:35:40
mam problem z jedną teoretycznie prostą rzeczą. Mianowicie mam encję która ma stan i atrybuty (integracja a routerem EdgeOS). Stan encji to uptime routera w sekundach. Chcę zrobić z tego sensor by wskazywał czas w dniach.

dodałem do konfiguracji

sensor:
  - platform: template
    sensors:
      edge_uptime:
        friendly_name: "EdgeOS Uptime"
        unit_of_measurement: 'days'
        value_template: "{{ states('binary_sensor.edgeos_system_status') | float / 86400 }}"


i niestety pokazuje mi "0.0". Ktoś podpowie gdzie robię błąd?
Zapis / składnia jest poprawna. Myślę, że problem leży w podaniu niewłaściwej encji. binary_sensor nie posiada stanu numerycznego tylko on/off. A niec chodzi przypadkiem o zwykły sensor czyli sensor.edgeos_system_status?

Stan encji jest w sekundach. Ma też dodatkowe atrybuty.
No czyli jednak miałem rację że wpisałeś nie tą encję co trzeba. Binary sensor to tylko on/off a ten sensor to właściwa encja do obliczeń
Elementy systemu, których używam: 3xSRP-22, 5xRDP-21, 3xROP-22, 4x ROP-21, 1xP-456/36, 1xRNK-24, 3x RNP-21, 1xRCT-22, aplikacja na Android oraz iOS + Home Assistant

shibby

dobra mój błąd. Są dwie bliźniacze encje: binary_sensor gdzie uptime jest jako argument i sensor gdzie uptime jest jako stan. Stąd zamieszanie :)



Elementy systemu, których używam: EFC-01, 1x RNK-22, 2x RNK-24, P-457/2, ROP-21, 3x ROP-22, RDP-21, 2x RGT-01, SLR-21, SLR-22, 3x RCK, 2x RCM, RCZ, RCR

shibby

taki zapis działa
Cytatvalue_template: "{{ state_attr('binary_sensor.edgeos_system_status', 'uptime') | float /86400 }}"

ale wyświetla wynik w "brzydki" sposób
sensor.edge_uptime    10.703599537037038

jak to zaokrąglić np do 2 miejsc po przecinku albo chociaż do pełnych jedności?
Elementy systemu, których używam: EFC-01, 1x RNK-22, 2x RNK-24, P-457/2, ROP-21, 3x ROP-22, RDP-21, 2x RGT-01, SLR-21, SLR-22, 3x RCK, 2x RCM, RCZ, RCR

shibby

nie rozumiem... dodanie " | round(2)" powinno załatwić temat ale u mnie to nie robi różnicy... Co gorsza często wywala inne sensory.

Rozwiązaniem w stylu "głupie ale działa" okazało się zaktualizowanie HA z 0.115.2 do 0.118.2, co sprawiło że wartość została automatycznie przycięta do 3 miejsc po przecinku i to już jest dla mnie akceptowalne :D
Elementy systemu, których używam: EFC-01, 1x RNK-22, 2x RNK-24, P-457/2, ROP-21, 3x ROP-22, RDP-21, 2x RGT-01, SLR-21, SLR-22, 3x RCK, 2x RCM, RCZ, RCR

admin

Cytat: shibby w Listopad 21, 2020, 12:54:48
nie rozumiem... dodanie " | round(2)" powinno załatwić temat ale u mnie to nie robi różnicy... Co gorsza często wywala inne sensory.

Rozwiązaniem w stylu "głupie ale działa" okazało się zaktualizowanie HA z 0.115.2 do 0.118.2, co sprawiło że wartość została automatycznie przycięta do 3 miejsc po przecinku i to już jest dla mnie akceptowalne :D
Podejrzewam, że zapomniałeś o nawiasach przed tym |round(2). A przynajmniej u mnie wtedy nie działa.
Czyli powinno być:
value_template: "{{ (state_attr('binary_sensor.edgeos_system_status', 'uptime') | float /86400) | round(2) }}"

W wersji 0.118 wprowadzono (na pierwszy rzut oka) błahą zmianę w szablonach jinja. Mianowicie teraz szblony renderowane są zamiast do string to do natywnego typu python. Ta z pozoru mała zmiana ma ogromne znaczenie. Akurat nie w twoim przypadku, ale w bardziej zaawansowanych przypadkach, gdy przykładowo jako rezultat szablonu ma się utworzyć lista wartości albo dictionary po sparse'owaniu wiadomości JSON to neisamowicie upraszcza automatyzację. A w niektórych wręcz umożliwia jej zrealizowanie, gdy wcześniej nie dało się tego zrobić i trzeba się było ratować np Node Red.
Sam mam 2 przypadki, gdzie ta zmiana to krok milowy, zdecydowanie upraszczający moje automatyzacje.

Dużo dobrego się ostatnio dzieje w HA. Skupili się w ostatnich 5 wersjach na komponencie do automatyki i szablonów i są tego świetne efekty. A w release notes zapowiadają zakończenie roku 2020 z przytupem i wieloma nowościami. Aż nie mogę się doczekać :) Aż ciekawe jakie zakończenie roku dla kontrastu planuje Zamel  ^-^
Elementy systemu, których używam: 3xSRP-22, 5xRDP-21, 3xROP-22, 4x ROP-21, 1xP-456/36, 1xRNK-24, 3x RNP-21, 1xRCT-22, aplikacja na Android oraz iOS + Home Assistant

shibby

Cytat: admin w Listopad 21, 2020, 17:03:58
Cytat: shibby w Listopad 21, 2020, 12:54:48
nie rozumiem... dodanie " | round(2)" powinno załatwić temat ale u mnie to nie robi różnicy... Co gorsza często wywala inne sensory.

Rozwiązaniem w stylu "głupie ale działa" okazało się zaktualizowanie HA z 0.115.2 do 0.118.2, co sprawiło że wartość została automatycznie przycięta do 3 miejsc po przecinku i to już jest dla mnie akceptowalne :D
Podejrzewam, że zapomniałeś o nawiasach przed tym |round(2). A przynajmniej u mnie wtedy nie działa.
Czyli powinno być:
value_template: "{{ (state_attr('binary_sensor.edgeos_system_status', 'uptime') | float /86400) | round(2) }}"

piękne dzięki. Działa jak należy. brałem w nawias samo (float / 86400) a nie całość.
Elementy systemu, których używam: EFC-01, 1x RNK-22, 2x RNK-24, P-457/2, ROP-21, 3x ROP-22, RDP-21, 2x RGT-01, SLR-21, SLR-22, 3x RCK, 2x RCM, RCZ, RCR

gs

Witam!!  Mam pytanie potrzebuję do HA podłączyć czujniki wilgotności 2 sztuki jakie polecacie jakie rozwiązanie najlepiej wybrać. Dobrze jak by to były czujniki temperatury i wilgotności i muszą jakoś wyglądać tak by je było można w łazienkach powiesić. Rozsądna cena.Pozdrawiam

admin

Cytat: gs w Styczeń 18, 2021, 20:17:32
Witam!!  Mam pytanie potrzebuję do HA podłączyć czujniki wilgotności 2 sztuki jakie polecacie jakie rozwiązanie najlepiej wybrać. Dobrze jak by to były czujniki temperatury i wilgotności i muszą jakoś wyglądać tak by je było można w łazienkach powiesić. Rozsądna cena.Pozdrawiam
Ja jestem bardzo zadowolony z urzdzeń Xiaomi (Thermometer+Hygrometer). Są dwie wersje - starsze i tańsze z ekranem LCD oraz nowsze z e-paper. / e-ink, ale są droższe od tamtych. Jeśli chodzi o kąty odczytu to zdecydowanie polecam e-ink. Różnica jest kolosalna. Można odczytać nawet z dużego kąta i słabym oświetleniu. z LCD raczej tylko przy dobrym świetle.

Pracują na Bluetooth, więc aby je odczytać w HA podtrzebujesz albo wbudowany Bluetooth albo dongle USB ewentualnie urządzenie na np ESP32, które będzie to odczytywało i przesyłąło do HA po MQTT lub natywnym API (polecam https://esphome.io/)
Pamiętaj także, że Bluetooth to dość mały zasięg. Przez jedną ścianę się przebije, przez dwie już niekoniecznie (ew strop też może byćproblemem).
Innych nie mam i nie znam, ale na pewno coś jeszcze na rynku jest tego typu.
Elementy systemu, których używam: 3xSRP-22, 5xRDP-21, 3xROP-22, 4x ROP-21, 1xP-456/36, 1xRNK-24, 3x RNP-21, 1xRCT-22, aplikacja na Android oraz iOS + Home Assistant

gs

#115
W linii prostej może i jest z 15 metrów ale ścian jest z 7szt i to po 50 cm grubości, raczej widzę połączenie tylko wi-fi. Blisko jest router.

gs

Pytanko!!! Jak Teraz w HA mogę zmienić adres IP który ma kontroler exty. HA na malinie.

shibby

w katalogu .storage/core.config_entries
Elementy systemu, których używam: EFC-01, 1x RNK-22, 2x RNK-24, P-457/2, ROP-21, 3x ROP-22, RDP-21, 2x RGT-01, SLR-21, SLR-22, 3x RCK, 2x RCM, RCZ, RCR

shibby

#118
Moje nowe odkrycia:
- HACS i dodatki do UI
- "grid in grid" czyli wstawianie i układanie encji wewnątrz siatki

Efekt końcowy w załączniku :)

Elementy systemu, których używam: EFC-01, 1x RNK-22, 2x RNK-24, P-457/2, ROP-21, 3x ROP-22, RDP-21, 2x RGT-01, SLR-21, SLR-22, 3x RCK, 2x RCM, RCZ, RCR

gs

Może ktoś pomoże bo nie wiem o co chodzi,....
21-05-24 17:41:21 ERROR (MainThread) [asyncio] Task exception was never retrieved
future: <Task finished name='Task-69790' coro=<Scheduler._run_task.<locals>._wrap_task() done, defined at /usr/src/supervisor/supervisor/misc/scheduler.py:58> exception=TypeError('an integer is required (got type str)')>
Traceback (most recent call last):
  File "/usr/src/supervisor/supervisor/misc/scheduler.py", line 62, in _wrap_task
    await task.coro_callback()
  File "/usr/src/supervisor/supervisor/misc/tasks.py", line 416, in _watchdog_addon_application
    if addon.in_progress or await addon.watchdog_application():
  File "/usr/src/supervisor/supervisor/addons/addon.py", line 479, in watchdog_application
    return await self.sys_run_in_executor(check_port, self.ip_address, port)
  File "/usr/local/lib/python3.8/concurrent/futures/thread.py", line 57, in run
    result = self.fn(*self.args, **self.kwargs)
  File "/usr/src/supervisor/supervisor/utils/__init__.py", line 43, in check_port
    result = sock.connect_ex((str(address), port))
TypeError: an integer is required (got type str)