Quantcast
Channel: Configuration - Home Assistant Community
Viewing all 109258 articles
Browse latest View live

Aqara roller shade E1 reporting wrong number as current position

$
0
0

Hello, I have bought Aqara roller shade E1 and I am using it to control venetian blinds. I’ve created scripts for controlling the tilt of the blinds by moving the motor relative to the current position, but this implementation sometimes didn’t work correctly. While investigating why is it sometimes not setting the tilt correctly, I have found that simetimes when I set position of the blinds to some percentage, it will jump to a different percentage once the motor stops. For example when I set the position to 0%, the blinds will completely shut, but after few seconds the position gets set to 2%. However, when I then try to set it again to 0% the blinds don’t move at all and the position then jumps again to 2%. So it doesn’t seem like it’s an issue with the device, because it knows it’s at 0%, but something is setting the current position to some slightly off value.

Has anyone else experienced this issue?

1 post - 1 participant

Read full topic


Command line - rest - scrape? sensor help - can't pull data from non json output metrics url

Control Lock with a Switch entity

$
0
0

Hi guys,

in my home assistant I have a Nuki device that I can control easily with the app and via dashboards. The lock is places at floor 0 so I would like to control it from floor 1 where bedrooms are. At floor 1 I have a switch (that features also on/off light) that is already exposed in home assistant and that now is not used.

My idea is to open/close the lock using also that switch. I setup an automation to open/close the lock when on/off status is triggered via switch.

What frustrates me and what I am struggling with is that almost every time the state of the lock does not correspond to the state of the switch. Ideally I would like that:

  • when the door is open → the switch is on (so led on)
  • when the door is closed → the switch is off (so led off)

This happens because when controlling the door from other ‘positions’ (e.g. app, dashboard or the door itself) the two states are not paired.

Is there any way to force the state of the switch based on the state of the port?

1 post - 1 participant

Read full topic

No Wake - AUDIO_THREAD: Not found right

$
0
0

I’m new to the ESP32-S3 Box 3. I successfully installed the firmware from wake-word-voice-assistant/esp32-s3-box-3.yaml. With this firmware, wake word and voice work. Reciting the wake word wakes the device. Asking the device to activate an entity works (Turns on/off the requested switch or light).

Yesterday morning I updated esphome to version 2024.5.0. Since then, a few warnings and errors occur when the ESP32-S3 Box 3 first starts. The warnings and errors read;


[10:46:21][W][component:237]: Component voice_assistant took a long time for an operation (218 ms).
[10:46:21][W][component:238]: Components should block for at most 30 ms.
[10:46:21][D][esp32_ble:255]: Disabling BLE...
[10:46:21][D][esp-idf:000][BTU_TASK]: W (12643) BT_APPL: bta_dm_disable BTA_DISABLE_DELAY set to 200 ms

[10:46:21][W][component:237]: Component esp32_ble took a long time for an operation (212 ms).
[10:46:21][W][component:238]: Components should block for at most 30 ms.
[10:46:21][D][micro_wake_word:115]: Starting Microphone
[10:46:21][D][micro_wake_word:177]: State changed from START_MICROPHONE to STARTING_MICROPHONE
[10:46:21][D][esp-idf:000][read_task]: I (12863) I2S: DMA Malloc info, datalen=blocksize=512, dma_buf_count=8

[10:46:21][D][esp-idf:000][read_task]: I (12872) I2S: I2S0, MCLK output by GPIO2

[10:46:21][D][esp-idf:000][read_task]: I (12880) AUDIO_PIPELINE: link el->rb, el:0x3d05c484, tag:i2s, rb:0x3d05c898

[10:46:21][D][esp-idf:000][read_task]: I (12887) AUDIO_PIPELINE: link el->rb, el:0x3d05c5f8, tag:filter, rb:0x3d05e8d8

[10:46:21][D][esp-idf:000][read_task]: I (12894) AUDIO_ELEMENT: [i2s-0x3d05c484] Element task created

[10:46:21][D][esp-idf:000][read_task]: I (12902) AUDIO_THREAD: The filter task allocate stack on external memory

[10:46:21][D][esp-idf:000][read_task]: E (12908) AUDIO_THREAD: Not found right xTaskCreateRestrictedPinnedToCore.
Please enter IDF-PATH with "cd $IDF_PATH" and apply the IDF patch with "git apply $ADF_PATH/idf_patches/idf_4.4._freertos.patch" first


[10:46:21][D][esp-idf:000][read_task]: E (12917) AUDIO_THREAD: Error creating RestrictedPinnedToCore filter

[10:46:21][D][esp-idf:000][read_task]: E (12924) AUDIO_ELEMENT: [filter] audio_thread_create failed

[10:46:21][D][esp-idf:000][read_task]: I (12931) AUDIO_ELEMENT: [raw-0x3d05c728] Element task created

[10:46:21][D][esp-idf:000][read_task]: I (12940) AUDIO_PIPELINE: Func:audio_pipeline_run, Line:359, MEM Total:16465159 Bytes, Inter:79372 Bytes, Dram:79372 Bytes


[10:46:21][D][esp-idf:000][i2s]: I (12946) AUDIO_ELEMENT: [i2s] AEL_MSG_CMD_RESUME,state:1

[10:46:21][D][esp-idf:000][read_task]: W (12951) AUDIO_ELEMENT: [filter] Element has not create when AUDIO_ELEMENT_RESUME

[10:46:21][D][esp-idf:000][read_task]: E (12958) AUDIO_PIPELINE: audio_pipeline_resume failed

[10:46:21][W][micro_wake_word:157]: Wake word is already running
[10:46:23][D][esp-idf:000][read_task]: W (14965) AUDIO_ELEMENT: [i2s-0x3d05c484] Element task destroy timeout[2000]

[10:46:23][D][esp-idf:000][read_task]: W (14971) AUDIO_ELEMENT: [filter] Element has not create when AUDIO_ELEMENT_TERMINATE

substitutions:
name: esp32-s3-box-3
friendly_name: ESP32 S3 Box 3
loading_illustration_file: https://github.com/esphome/firmware/raw/main/voice-assistant/casita/loading_320_240.png
idle_illustration_file: https://github.com/esphome/firmware/raw/main/voice-assistant/casita/idle_320_240.png
listening_illustration_file: https://github.com/esphome/firmware/raw/main/voice-assistant/casita/listening_320_240.png
thinking_illustration_file: https://github.com/esphome/firmware/raw/main/voice-assistant/casita/thinking_320_240.png
replying_illustration_file: https://github.com/esphome/firmware/raw/main/voice-assistant/casita/replying_320_240.png
error_illustration_file: https://github.com/esphome/firmware/raw/main/voice-assistant/casita/error_320_240.png

loading_illustration_background_color: “000000”
idle_illustration_background_color: “000000”
listening_illustration_background_color: “FFFFFF”
thinking_illustration_background_color: “FFFFFF”
replying_illustration_background_color: “FFFFFF”
error_illustration_background_color: “000000”

voice_assist_idle_phase_id: “1”
voice_assist_listening_phase_id: “2”
voice_assist_thinking_phase_id: “3”
voice_assist_replying_phase_id: “4”
voice_assist_not_ready_phase_id: “10”
voice_assist_error_phase_id: “11”
voice_assist_muted_phase_id: “12”

These unqiue characters have been extracted from every test file of every language available on GitHub - home-assistant/intents: Intents to be used with Home Assistant (14 March 2024)

allowed_characters: " !#%'()+,-./0123456789:;<>?@ABCDEFGHIJKLMNOPQRSTUVWYZ_abcdefghijklmnopqrstuvwxyz{|}°²³µ¿ÁÂÄÅÉÖÚßàáâãäåæçèéêëìíîðñòóôõöøùúûüýþāăąćčďĐđēėęěğĮįıļľŁłńňőřśšťũūůűųźŻżŽžơưșțΆΈΌΐΑΒΓΔΕΖΗΘΚΜΝΠΡΣΤΥΦάέήίαβγδεζηθικλμνξοπρςστυφχψωϊόύώАБВГДЕЖЗИКЛМНОПРСТУХЦЧШЪЭЮЯабвгдежзийклмнопрстуфхцчшщъыьэюяёђєіїјљњћאבגדהוזחטיכלםמןנסעפץצקרשת،ءآأإئابةتجحخدذرزسشصضطظعغفقكلمنهوىيٹپچڈکگںھہیےংকচতধনফবযরলশষস়ািু্చయలిెొ్ംഅആഇഈഉഎഓകഗങചജഞടഡണതദധനപഫബഭമയരറലളവശസഹാിീുൂെേൈ്ൺൻർൽൾაბგდევზთილმნოპრსტუფქყშჩცძჭხạảấầẩậắặẹẽếềểệỉịọỏốồổỗộớờởợụủứừửữựỳ—、一上不个中为主乾了些亮人任低佔何作供依侧係個側偵充光入全关冇冷几切到制前動區卧厅厨及口另右吊后吗启吸呀咗哪唔問啟嗎嘅嘛器圍在场執場外多大始安定客室家密寵对將小少左已帘常幫幾库度庫廊廚廳开式後恆感態成我戲戶户房所扇手打执把拔换掉控插摄整斯新明是景暗更最會有未本模機檯櫃欄次正氏水沒没洗活派温測源溫漏潮激濕灯為無煙照熱燈燥物狀玄现現瓦用發的盞目着睡私空窗立笛管節簾籬紅線红罐置聚聲脚腦腳臥色节著行衣解設調請謝警设调走路車车运連遊運過道邊部都量鎖锁門閂閉開關门闭除隱離電震霧面音頂題顏颜風风食餅餵가간감갔강개거게겨결경고공과관그금급기길깥꺼껐꼽나난내네놀누는능니다닫담대더데도동됐되된됨둡드든등디때떤뜨라래러렇렌려로료른를리림링마많명몇모무문물뭐바밝방배변보부불블빨뽑사산상색서설성세센션소쇼수스습시신실싱아안않알았애야어얼업없었에여연열옆오온완외왼요운움워원위으은을음의이인일임입있작잠장재전절정제져조족종주줄중줘지직진짐쪽차창천최추출충치침커컴켜켰쿠크키탁탄태탬터텔통트튼티파팬퍼폰표퓨플핑한함해했행혀현화활후휴힘,?"

micro_wake_word_model: okay_nabu

esphome:
name: ${name}
friendly_name: ${friendly_name}
name_add_mac_suffix: false
platformio_options:
board_build.flash_mode: dio
project:
name: esphome.voice-assistant
version: “2.0”
min_version: 2023.11.5
on_boot:
priority: 600
then:
- script.execute: draw_display
- delay: 30s
- if:
condition:
lambda: return id(init_in_progress);
then:
- lambda: id(init_in_progress) = false;
- script.execute: draw_display

esp32:
board: esp32s3box
flash_size: 16MB
framework:
type: esp-idf
sdkconfig_options:
CONFIG_ESP32S3_DEFAULT_CPU_FREQ_240: “y”
CONFIG_ESP32S3_DATA_CACHE_64KB: “y”
CONFIG_ESP32S3_DATA_CACHE_LINE_64B: “y”
CONFIG_AUDIO_BOARD_CUSTOM: “y”
CONFIG_ESP32_S3_BOX_3_BOARD: “y”
components:
- name: esp32_s3_box_3_board
source: github://jesserockz/esp32-s3-box-3-board@main
refresh: 0s

psram:
mode: octal
speed: 80MHz

external_components:

  • source: github://pr#5230
    components: esp_adf
    refresh: 0s

api:
encryption:
key: ChwtaeieUCD3cc5YcYE7WQhsptx7PeiLOPjG3+BBCTE=
on_client_connected:
- script.execute: draw_display
on_client_disconnected:
- script.execute: draw_display

ota:
logger:
hardware_uart: USB_SERIAL_JTAG

dashboard_import:
package_import_url: github://esphome/firmware/wake-word-voice-assistant/esp32-s3-box-3.yaml@main

wifi:
ssid: !secret wifi_ssid
password: !secret wifi_password
manual_ip:
static_ip: 192.168.86.208
gateway: 192.168.86.1
subnet: 255.255.255.0
ap:
on_connect:
- script.execute: draw_display
- delay: 5s # Gives time for improv results to be transmitted
- ble.disable:
on_disconnect:
- script.execute: draw_display
- ble.enable:

improv_serial:

esp32_improv:
authorizer: none

button:

  • platform: factory_reset
    id: factory_reset_btn
    name: Factory reset

i2c:

  • id: bus_a
    sda: GPIO08
    scl: GPIO18
    scan: true

  • sda: GPIO41
    scl: GPIO40
    id: bus_b

sensor:

  • platform: aht10
    i2c_id: bus_b
    variant: AHT20
    temperature:
    name: “Temperature”
    humidity:
    name: “Humidity”
    update_interval: 60s

binary_sensor:

  • platform: gpio
    pin:
    number: GPIO1
    inverted: true
    name: “Mute”
    disabled_by_default: true
    entity_category: diagnostic

  • platform: gpio
    pin:
    number: GPIO0
    mode: INPUT_PULLUP
    inverted: true
    name: Top Left Button
    disabled_by_default: true
    entity_category: diagnostic
    on_multi_click:

    • timing:
      • ON for at least 10s
        then:
      • button.press: factory_reset_btn

output:

  • platform: ledc
    pin: GPIO47
    id: backlight_output

light:

  • platform: monochromatic
    id: led
    name: LCD Backlight
    entity_category: config
    output: backlight_output
    restore_mode: RESTORE_DEFAULT_ON
    default_transition_length: 250ms

esp_adf:
board: esp32s3box3

microphone:

  • platform: esp_adf
    id: box_mic

speaker:

  • platform: esp_adf
    id: box_speaker

micro_wake_word:
model: ${micro_wake_word_model}
on_wake_word_detected:
- voice_assistant.start:
wake_word: !lambda return wake_word;

voice_assistant:
id: va
microphone: box_mic
speaker: box_speaker
use_wake_word: true
noise_suppression_level: 2
auto_gain: 31dBFS
volume_multiplier: 2.0
vad_threshold: 3
on_listening:
- lambda: id(voice_assistant_phase) = ${voice_assist_listening_phase_id};
- text_sensor.template.publish:
id: text_request
state: “…”
- text_sensor.template.publish:
id: text_response
state: “…”
- script.execute: draw_display
on_stt_vad_end:
- lambda: id(voice_assistant_phase) = ${voice_assist_thinking_phase_id};
- script.execute: draw_display
on_stt_end:
- text_sensor.template.publish:
id: text_request
state: !lambda return x;
- script.execute: draw_display
on_tts_start:
- text_sensor.template.publish:
id: text_response
state: !lambda return x;
on_tts_stream_start:
- lambda: id(voice_assistant_phase) = ${voice_assist_replying_phase_id};
- script.execute: draw_display
on_tts_stream_end:
- lambda: id(voice_assistant_phase) = ${voice_assist_idle_phase_id};
- script.execute: draw_display
on_end:
- if:
condition:
and:
- switch.is_off: mute
- lambda: return id(wake_word_engine_location).state == “On device”;
then:
- wait_until:
not:
voice_assistant.is_running:
- micro_wake_word.start:
on_error:
- if:
condition:
lambda: return !id(init_in_progress);
then:
- lambda: id(voice_assistant_phase) = ${voice_assist_error_phase_id};
- script.execute: draw_display
- delay: 1s
- if:
condition:
switch.is_off: mute
then:
- lambda: id(voice_assistant_phase) = ${voice_assist_idle_phase_id};
else:
- lambda: id(voice_assistant_phase) = ${voice_assist_muted_phase_id};
- script.execute: draw_display
on_client_connected:
- if:
condition:
switch.is_off: mute
then:
- wait_until:
not: ble.enabled
- if:
condition:
lambda: return id(wake_word_engine_location).state == “In Home Assistant”;
then:
- lambda: id(va).set_use_wake_word(true);
- voice_assistant.start_continuous:
- if:
condition:
lambda: return id(wake_word_engine_location).state == “On device”;
then:
- micro_wake_word.start
- lambda: id(voice_assistant_phase) = ${voice_assist_idle_phase_id};
else:
- lambda: id(voice_assistant_phase) = ${voice_assist_muted_phase_id};
- lambda: id(init_in_progress) = false;
- script.execute: draw_display
on_client_disconnected:
- if:
condition:
lambda: return id(wake_word_engine_location).state == “In Home Assistant”;
then:
- lambda: id(va).set_use_wake_word(false);
- voice_assistant.stop:
- if:
condition:
lambda: return id(wake_word_engine_location).state == “On device”;
then:
- micro_wake_word.stop
- lambda: id(voice_assistant_phase) = ${voice_assist_not_ready_phase_id};
- script.execute: draw_display

script:

  • id: draw_display
    then:
    • if:
      condition:
      lambda: return !id(init_in_progress);
      then:
      - if:
      condition:
      wifi.connected:
      then:
      - if:
      condition:
      api.connected:
      then:
      - lambda: |
      switch(id(voice_assistant_phase)) {
      case ${voice_assist_listening_phase_id}:
      id(s3_box_lcd).show_page(listening_page);
      id(s3_box_lcd).update();
      break;
      case ${voice_assist_thinking_phase_id}:
      id(s3_box_lcd).show_page(thinking_page);
      id(s3_box_lcd).update();
      break;
      case ${voice_assist_replying_phase_id}:
      id(s3_box_lcd).show_page(replying_page);
      id(s3_box_lcd).update();
      break;
      case ${voice_assist_error_phase_id}:
      id(s3_box_lcd).show_page(error_page);
      id(s3_box_lcd).update();
      break;
      case ${voice_assist_muted_phase_id}:
      id(s3_box_lcd).show_page(muted_page);
      id(s3_box_lcd).update();
      break;
      case ${voice_assist_not_ready_phase_id}:
      id(s3_box_lcd).show_page(no_ha_page);
      id(s3_box_lcd).update();
      break;
      default:
      id(s3_box_lcd).show_page(idle_page);
      id(s3_box_lcd).update();
      }
      else:
      - display.page.show: no_ha_page
      - component.update: s3_box_lcd
      else:
      - display.page.show: no_wifi_page
      - component.update: s3_box_lcd
      else:
      - display.page.show: initializing_page
      - component.update: s3_box_lcd

switch:

  • platform: template
    name: Display conversation
    id: display_conversation
    optimistic: true
    restore_mode: RESTORE_DEFAULT_ON
    entity_category: config

  • platform: template
    name: Mute
    id: mute
    optimistic: true
    restore_mode: RESTORE_DEFAULT_OFF
    entity_category: config
    on_turn_off:

    • if:
      condition:
      lambda: return !id(init_in_progress);
      then:
      - lambda: id(voice_assistant_phase) = ${voice_assist_idle_phase_id};
      - if:
      condition:
      not:
      - voice_assistant.is_running
      then:
      - if:
      condition:
      lambda: return id(wake_word_engine_location).state == “In Home Assistant”;
      then:
      - lambda: id(va).set_use_wake_word(true);
      - voice_assistant.start_continuous
      - if:
      condition:
      lambda: return id(wake_word_engine_location).state == “On device”;
      then:
      - micro_wake_word.start
      - script.execute: draw_display
      on_turn_on:
    • if:
      condition:
      lambda: return !id(init_in_progress);
      then:
      - lambda: id(va).set_use_wake_word(false);
      - voice_assistant.stop
      - micro_wake_word.stop
      - lambda: id(voice_assistant_phase) = ${voice_assist_muted_phase_id};
      - script.execute: draw_display

select:

  • platform: template
    entity_category: config
    name: Wake word engine location
    id: wake_word_engine_location
    optimistic: true
    restore_value: true
    options:
    • In Home Assistant
    • On device
      initial_option: On device
      on_value:
    • wait_until:
      lambda: return id(voice_assistant_phase) == ${voice_assist_muted_phase_id} || id(voice_assistant_phase) == ${voice_assist_idle_phase_id};
    • if:
      condition:
      lambda: return x == “In Home Assistant”;
      then:
      - micro_wake_word.stop
      - delay: 500ms
      - if:
      condition:
      switch.is_off: mute
      then:
      - lambda: id(va).set_use_wake_word(true);
      - voice_assistant.start_continuous:
    • if:
      condition:
      lambda: return x == “On device”;
      then:
      - lambda: id(va).set_use_wake_word(false);
      - voice_assistant.stop
      - delay: 500ms
      - micro_wake_word.start

globals:

  • id: init_in_progress
    type: bool
    restore_value: false
    initial_value: “true”
  • id: voice_assistant_phase
    type: int
    restore_value: false
    initial_value: ${voice_assist_not_ready_phase_id}

image:

font:

  • file:
    type: gfonts
    family: Figtree
    weight: 300
    italic: true
    glyphs: ${allowed_characters}
    id: font_request
    size: 15
  • file:
    type: gfonts
    family: Figtree
    weight: 300
    glyphs: ${allowed_characters}
    id: font_response
    size: 15

text_sensor:

  • id: text_request
    platform: template
    on_value:
    lambda: |-
    if(id(text_request).state.length()>32) {
    std::string name = id(text_request).state.c_str();
    std::string truncated = esphome::str_truncate(name.c_str(),31);
    id(text_request).state = (truncated+“…”).c_str();
    }

  • id: text_response
    platform: template
    on_value:
    lambda: |-
    if(id(text_response).state.length()>32) {
    std::string name = id(text_response).state.c_str();
    std::string truncated = esphome::str_truncate(name.c_str(),31);
    id(text_response).state = (truncated+“…”).c_str();
    }

color:

  • id: idle_color
    hex: ${idle_illustration_background_color}
  • id: listening_color
    hex: ${listening_illustration_background_color}
  • id: thinking_color
    hex: ${thinking_illustration_background_color}
  • id: replying_color
    hex: ${replying_illustration_background_color}
  • id: loading_color
    hex: ${loading_illustration_background_color}
  • id: error_color
    hex: ${error_illustration_background_color}

spi:
clk_pin: 7
mosi_pin: 6

display:

  • platform: ili9xxx
    id: s3_box_lcd
    model: S3BOX
    data_rate: 40MHz
    cs_pin: 5
    dc_pin: 4
    reset_pin:
    number: 48
    inverted: true
    update_interval: never
    pages:
    • id: idle_page
      lambda: |-
      it.fill(id(idle_color));
      it.image((it.get_width() / 2), (it.get_height() / 2), id(casita_idle), ImageAlign::CENTER);
    • id: listening_page
      lambda: |-
      it.fill(id(listening_color));
      it.image((it.get_width() / 2), (it.get_height() / 2), id(casita_listening), ImageAlign::CENTER);
    • id: thinking_page
      lambda: |-
      it.fill(id(thinking_color));
      it.image((it.get_width() / 2), (it.get_height() / 2), id(casita_thinking), ImageAlign::CENTER);
      if (id(display_conversation).state) {
      it.filled_rectangle(20 , 20 , 280 , 30 , Color::WHITE );
      it.rectangle(20 , 20 , 280 , 30 , Color::BLACK );
      it.printf(30, 25, id(font_request), Color::BLACK, “%s”, id(text_request).state.c_str());
      }
    • id: replying_page
      lambda: |-
      it.fill(id(replying_color));
      it.image((it.get_width() / 2), (it.get_height() / 2), id(casita_replying), ImageAlign::CENTER);
      if (id(display_conversation).state) {
      it.filled_rectangle(20 , 20 , 280 , 30 , Color::WHITE );
      it.rectangle(20 , 20 , 280 , 30 , Color::BLACK );
      it.filled_rectangle(20 , 190 , 280 , 30 , Color::WHITE );
      it.rectangle(20 , 190 , 280 , 30 , Color::BLACK );
      it.printf(30, 25, id(font_request), Color::BLACK, “%s”, id(text_request).state.c_str());
      it.printf(30, 195, id(font_response), Color::BLACK, “%s”, id(text_response).state.c_str());
      }
    • id: error_page
      lambda: |-
      it.fill(id(error_color));
      it.image((it.get_width() / 2), (it.get_height() / 2), id(casita_error), ImageAlign::CENTER);
    • id: no_ha_page
      lambda: |-
      it.image((it.get_width() / 2), (it.get_height() / 2), id(error_no_ha), ImageAlign::CENTER);
    • id: no_wifi_page
      lambda: |-
      it.image((it.get_width() / 2), (it.get_height() / 2), id(error_no_wifi), ImageAlign::CENTER);
    • id: initializing_page
      lambda: |-
      it.fill(id(loading_color));
      it.image((it.get_width() / 2), (it.get_height() / 2), id(casita_initializing), ImageAlign::CENTER);
    • id: muted_page
      lambda: |-
      it.fill(Color::BLACK);
A partial log following compile and start up follows;

Microsoft Windows [Version 10.0.22631.3593]
(c) Microsoft Corporation. All rights reserved.

C:\Users\rcbla>cd C:\Users\rcbla\OneDrive\Home_Assistant\ESP32\ESP32_S3_Box_3\

C:\Users\rcbla\OneDrive\Home_Assistant\ESP32\ESP32_S3_Box_3>esphome run ESP32_S3_Box_3_V05152024.01.yaml
INFO ESPHome 2024.5.0
INFO Reading configuration ESP32_S3_Box_3_V05152024.01.yaml…
INFO Updating https://github.com/esphome/esphome.git@pull/5230/head
WARNING GPIO0 is a strapping PIN and should only be used for I/O with care.
Attaching external pullup/down resistors to strapping pins can cause unexpected failures.
See Frequently Asked Questions — ESPHome
INFO Generating C++ source…
INFO Updating https://github.com/jesserockz/esp32-s3-box-3-board.git@main
INFO Updating https://github.com/espressif/esp-adf@v2.5
INFO Updating submodules (components/esp-sr, components/esp-adf-libs) for https://github.com/espressif/esp-adf@v2.5
INFO Updating https://github.com/espressif/esp-dsp@v1.2.0
INFO Updating https://github.com/espressif/esp-tflite-micro@None
INFO Compiling app…
Processing esp32-s3-box-3 (board: esp32s3box; framework: espidf; platform: platformio/espressif32@5.4.0)

Verbose mode can be enabled via -v, --verbose option
CONFIGURATION: Redirecting...
PLATFORM: Espressif 32 (5.4.0) > Espressif ESP32-S3-Box
HARDWARE: ESP32S3 240MHz, 320KB RAM, 16MB Flash
DEBUG: Current (cmsis-dap) External (cmsis-dap, esp-bridge, esp-builtin, esp-prog, iot-bus-jtag, jlink, minimodule, olimex-arm-usb-ocd, olimex-arm-usb-ocd-h, olimex-arm-usb-tiny-h, olimex-jtag-tiny, tumpa)
PACKAGES:

  • framework-espidf @ 3.40407.0 (4.4.7)
  • tool-cmake @ 3.16.4
  • tool-esptoolpy @ 1.40400.0 (4.4.0)
  • tool-idf @ 1.0.1
  • tool-mconf @ 1.4060000.20190628 (406.0.0)
  • tool-ninja @ 1.9.0
  • toolchain-esp32ulp @ 2.35.0-20220830
  • toolchain-riscv32-esp @ 8.4.0+2021r2-patch5
  • toolchain-xtensa-esp32s3 @ 8.4.0+2021r2-patch5
    Reading CMake configuration…
    LDF: Library Dependency Finder → Library Dependency Finder (LDF) — PlatformIO latest documentation
    LDF Modes: Finder ~ off, Compatibility ~ soft
    Found 3 compatible libraries
    Scanning dependencies…
    Dependency Graph
    |-- Improv @ 1.2.3
    |-- noise-c @ 0.1.4
    Building in release mode
    Retrieving maximum program size .pioenvs\esp32-s3-box-3\firmware.elf
    Checking size .pioenvs\esp32-s3-box-3\firmware.elf
    Advanced Memory Usage is available via “PlatformIO Home > Project Inspect”
    RAM: [== ] 18.5% (used 60764 bytes from 327680 bytes)
    Flash: [===== ] 48.6% (used 3951113 bytes from 8126464 bytes)
    ====================================================== [SUCCESS] Took 57.02 seconds ======================================================
    INFO Successfully compiled program.
    INFO Connecting to 192.168.86.208
    INFO Uploading .esphome\build\esp32-s3-box-3.pioenvs\esp32-s3-box-3\firmware.bin (3951472 bytes)
    Uploading: [============================================================] 100% Done…

INFO Upload took 13.14 seconds, waiting for result…
INFO OTA successful
INFO Successfully uploaded program.
INFO Starting log output from 192.168.86.208 using esphome API
INFO Successfully connected to esp32-s3-box-3 @ 192.168.86.208 in 7.072s
INFO Successful handshake with esp32-s3-box-3 @ 192.168.86.208 in 0.854s
[10:46:18][I][app:100]: ESPHome version 2024.5.0 compiled on May 15 2024, 17:16:43
[10:46:18][I][app:102]: Project esphome.voice-assistant version 2.0
[10:46:18][C][wifi:580]: WiFi:
[10:46:18][C][wifi:408]: Local MAC: 3C:84:27:05:AE:0C
[10:46:18][C][wifi:413]: SSID: ‘SuperDoodle’
[10:46:18][C][wifi:416]: IP Address: 192.168.86.208
[10:46:18][C][wifi:420]: BSSID: B0:E4:D5:5A:57:E1
[10:46:18][C][wifi:421]: Hostname: ‘esp32-s3-box-3’
[10:46:18][C][wifi:423]: Signal strength: -43 dB ▂▄▆█
[10:46:18][C][wifi:427]: Channel: 11
[10:46:18][C][wifi:428]: Subnet: 255.255.255.0
[10:46:18][C][wifi:429]: Gateway: 192.168.86.1
[10:46:18][C][wifi:430]: DNS1: 0.0.0.0
[10:46:18][C][wifi:431]: DNS2: 0.0.0.0
[10:46:18][C][logger:185]: Logger:
[10:46:18][C][logger:186]: Level: DEBUG
[10:46:18][C][logger:188]: Log Baud Rate: 115200
[10:46:18][C][i2c.idf:075]: I2C Bus:
[10:46:18][C][i2c.idf:076]: SDA Pin: GPIO41
[10:46:18][C][i2c.idf:077]: SCL Pin: GPIO40
[10:46:18][C][i2c.idf:078]: Frequency: 50000 Hz
[10:46:18][C][i2c.idf:084]: Recovery: bus successfully recovered
[10:46:18][I][i2c.idf:094]: Results from i2c bus scan:
[10:46:18][I][i2c.idf:100]: Found i2c device at address 0x28
[10:46:18][I][i2c.idf:100]: Found i2c device at address 0x38
[10:46:18][C][spi:068]: SPI bus:
[10:46:18][C][spi:069]: CLK Pin: GPIO7
[10:46:18][C][spi:070]: SDI Pin:
[10:46:18][C][spi:071]: SDO Pin: GPIO6
[10:46:18][C][spi:076]: Using HW SPI: SPI2_HOST
[10:46:18][C][gpio.binary_sensor:015]: GPIO Binary Sensor ‘Mute’
[10:46:18][C][gpio.binary_sensor:016]: Pin: GPIO1
[10:46:18][C][gpio.binary_sensor:015]: GPIO Binary Sensor ‘Top Left Button’
[10:46:18][C][gpio.binary_sensor:016]: Pin: GPIO0
[10:46:18][C][ledc.output:173]: LEDC Output:
[10:46:18][C][ledc.output:174]: Pin GPIO47
[10:46:18][C][ledc.output:175]: LEDC Channel: 0
[10:46:18][C][ledc.output:176]: PWM Frequency: 1000.0 Hz
[10:46:18][C][ledc.output:177]: Phase angle: 0.0°
[10:46:18][C][ledc.output:178]: Bit depth: 14
[10:46:18][C][template.select:065]: Template Select ‘Wake word engine location’
[10:46:18][C][template.select:066]: Update Interval: 60.0s
[10:46:18][C][template.select:069]: Optimistic: YES
[10:46:18][C][template.select:070]: Initial Option: On device
[10:46:18][C][template.select:071]: Restore Value: YES
[10:46:18][C][template.text_sensor:020]: Template Sensor ‘text_request’
[10:46:18][C][template.text_sensor:020]: Template Sensor ‘text_response’
[10:46:18][C][ili9xxx:075]: ili9xxx
[10:46:18][C][ili9xxx:075]: Rotations: 0 °
[10:46:18][C][ili9xxx:075]: Dimensions: 320px x 240px
[10:46:18][C][ili9xxx:076]: Width Offset: 0
[10:46:18][C][ili9xxx:077]: Height Offset: 0
[10:46:18][C][ili9xxx:083]: Color mode: 16bit
[10:46:18][C][ili9xxx:092]: Data rate: 40MHz
[10:46:18][C][ili9xxx:094]: Reset Pin: GPIO48
[10:46:18][C][ili9xxx:095]: CS Pin: GPIO5
[10:46:18][C][ili9xxx:096]: DC Pin: GPIO4
[10:46:18][C][ili9xxx:098]: Color order: BGR
[10:46:18][C][ili9xxx:099]: Swap_xy: NO
[10:46:18][C][ili9xxx:100]: Mirror_x: YES
[10:46:18][C][ili9xxx:101]: Mirror_y: YES
[10:46:18][C][ili9xxx:106]: Update Interval: never
[10:46:19][C][light:103]: Light ‘LCD Backlight’
[10:46:19][C][light:105]: Default Transition Length: 0.2s
[10:46:19][C][light:106]: Gamma Correct: 2.80
[10:46:19][C][template.switch:068]: Template Switch ‘Display conversation’
[10:46:19][C][template.switch:091]: Restore Mode: restore defaults to ON
[10:46:19][C][template.switch:057]: Optimistic: YES
[10:46:19][C][template.switch:068]: Template Switch ‘Mute’
[10:46:19][C][template.switch:091]: Restore Mode: restore defaults to OFF
[10:46:19][C][template.switch:057]: Optimistic: YES
[10:46:19][C][psram:020]: PSRAM:
[10:46:19][C][psram:021]: Available: YES
[10:46:19][C][psram:024]: Size: 16383 KB
[10:46:19][C][factory_reset.button:011]: Factory Reset Button ‘Factory reset’
[10:46:19][C][factory_reset.button:011]: Icon: ‘mdi:restart-alert’
[10:46:19][C][aht10:160]: AHT10:
[10:46:19][C][aht10:161]: Address: 0x38
[10:46:19][C][aht10:165]: Temperature ‘Temperature’
[10:46:19][C][aht10:165]: Device Class: ‘temperature’
[10:46:19][C][aht10:165]: State Class: ‘measurement’
[10:46:19][C][aht10:165]: Unit of Measurement: ‘°C’
[10:46:19][C][aht10:165]: Accuracy Decimals: 2
[10:46:19][C][aht10:166]: Humidity ‘Humidity’
[10:46:19][C][aht10:166]: Device Class: ‘humidity’
[10:46:19][C][aht10:166]: State Class: ‘measurement’
[10:46:19][C][aht10:166]: Unit of Measurement: ‘%’
[10:46:19][C][esp32_ble:374]: ESP32 BLE:
[10:46:19][C][esp32_ble:376]: MAC address: 3C:84:27:05:AE:0E
[10:46:19][C][esp32_ble:377]: IO Capability: none
[10:46:19][C][esp32_ble_server:200]: ESP32 BLE Server:
[10:46:19][C][esp32_improv.component:261]: ESP32 Improv:
[10:46:19][C][esp32_improv.component:266]: Status Indicator: ‘NO’
[10:46:19][C][mdns:115]: mDNS:
[10:46:19][C][mdns:116]: Hostname: esp32-s3-box-3
[10:46:19][C][ota:096]: Over-The-Air Updates:
[10:46:19][C][ota:097]: Address: 192.168.86.208:3232
[10:46:19][C][ota:103]: OTA version: 2.
[10:46:19][C][api:139]: API Server:
[10:46:19][C][api:140]: Address: 192.168.86.208:6053
[10:46:19][C][api:142]: Using noise encryption: YES
[10:46:19][C][improv_serial:032]: Improv Serial:
[10:46:19][C][micro_wake_word:057]: microWakeWord:
[10:46:19][C][micro_wake_word:058]: Wake Word: okay nabu
[10:46:19][C][micro_wake_word:059]: Probability cutoff: 0.500
[10:46:19][C][micro_wake_word:060]: Sliding window size: 10
[10:46:20][D][micro_wake_word:177]: State changed from IDLE to START_MICROPHONE

1 post - 1 participant

Read full topic

Show the most recent last_change of 3 entities in a lovelace view

$
0
0

I have a question with a template that I can’t do, I have a device that has 3 data:
humidity
temperature
battery

They are 3 different entities and each of them has its last_change and last_update. I have managed to show me FALSE or TRUE if it reaches a number of hours without sending me data from any of the 3 at once.

# Temp Ext Cochera #
{{
now() - states.sensor.battery_158d00010c37e3.last_updated >= timedelta (hours=4)
and
now() - states.sensor.humidity_158d00010c37e3.last_updated >= timedelta (hours=4)
and
now() - states.sensor.temperature_158d00010c37e3.last_updated >= timedelta (hours=4)
}}

That code that I have implemented works for me, but I also wanted to add that of the 3 I would show me the most recent of them. i am using the mushroom card: GitHub - piitaya/lovelace-mushroom: Build a beautiful Home Assistant dashboard easily

so that the display is something like:

Kitchen sensor
without battery? True
Last data: 2024.05.05 13:22:56

I don’t know how to make a conditional that returns the most current of all of them… the one that is less than the NOW time.

@armedad

1 post - 1 participant

Read full topic

Cover / Blind and Voicecommand Percentage

$
0
0

Hello, I managed to make it so that my shutters no longer go down when the windows are open, using the help of a thread. However, it is now no longer possible to control the shutters via voice command to 50% / 30% / 90%, etc. It only works for open or closed. My code is as follows:

- platform: template
  covers:
    arbeitszimmer:
      device_class: shade
      unique_id: arbeitszimmer
      position_template: "{{ state_attr('cover.arbeitsraum', 'current_position') }}"
      open_cover:
        - condition: state
          entity_id: binary_sensor.arbeitszimmer
          state: "off" #window closed
        - service: cover.open_cover
          data:
            entity_id: cover.arbeitsraum
      close_cover:
        - condition: state
          entity_id: binary_sensor.arbeitszimmer
          state: "off" #window closed
        - service: cover.close_cover
          data:
            entity_id: cover.arbeitsraum
      set_cover_position:
        - condition: state
          entity_id: binary_sensor.arbeitszimer
          state: "off" #window closed
        - service: cover.set_cover_position
          data:
            entity_id: cover.arbeitsraum
            position: "{{position}}"
      stop_cover:
        service: cover.stop_cover
        data:
          entity_id: cover.arbeitsraum
      value_template: "{{states('cover.arbeitsraum')}}"
      # Make cover unavailable if window is open
      availability_template: "{{ is_state('binary_sensor.arbeitszimmer', 'off') }}"

The voice control is done via Alexa. Does anyone have any tips for me?

Best regards

1 post - 1 participant

Read full topic

Web local page and cookies

$
0
0

Hi, I have an alarm system that is controlled from a local page http.
in home assistant dashboard i created a web page card where I entered the local address of the alarm (http.//192…).
Using firefox browser it is all ok, but using home assistant on tablet by wallpannel or fully kiosk, I have this message:

a page embedded in 192… says: attention: to log in to the system, your browser must support cookies and the cookie activation option must be selected

is there a way to fix it? or is there another way to access the local alarm page without having problems with cookies?

many thanks

1 post - 1 participant

Read full topic

Shark Vacuum Room cleaning on floorplan

$
0
0

Hi,

I’m using the custom:floorplan-card and I’m trying to setup the Shark Vacuum for room cleaning. I have two SVGs (Den and Dining Room) that represent the shark vacuum in the floorplan. When I press the selected vacuum icon, it cleans that room. I have that working. What I can’t figure out is how to spin the icon for that room it is cleaning. The shark vacuum that not return the room its cleaning, so I have no way to tell which room it is cleaning.

                - element: shark.clean_den
                  tap_action:
                    action: call-service
                    service: sharkiq.clean_room
                    service_data:
                      entity_id: vacuum.kitchen                    
                      rooms: Den
                  state_action:
                    service: floorplan.class_set
                    service_data: |
                      >  
                        if (element.state === "cleaning")  return "spinning-vacuum";   
                        else  if (element.state === "returning")  return "returning-vacuum";
                        else if (element.state === "error")  return "error-vacuum";
                        else return "";

                - element: shark.clean_dining
                  tap_action:
                    action: call-service
                    service: sharkiq.clean_room
                    service_data:
                      entity_id: vacuum.kitchen                    
                      rooms: "Dining Room" 
                  state_action:
                    service: floorplan.class_set
                    service_data: |
                      >  
                        if (element.state === "cleaning")  return "spinning-vacuum";   
                        else  if (element.state === "returning")  return "returning-vacuum";
                        else if (element.state === "error")  return "error-vacuum";
                        else return "";

1 post - 1 participant

Read full topic


Trigger template sensor is switching to unknown on reload

$
0
0

I have this template

  - trigger:
      - platform: state
        entity_id: sensor.weather_home_max_temp_today
      - platform: homeassistant
        event: start
      - platform: event
        event_type: event_template_reloaded
    sensor:
      - name: Weather Home Max Temp Today Zeit
        unique_id: unique_id_template_sensor_weather_home_max_temp_today_zeit
        state: |
          {% set max_zeit = namespace(foo=0) %}
          {% set for_break = namespace(foo=false) %}
          {% for my_item in state_attr('sensor.weather_home_hourly','forecast') if for_break.foo == false %}
            {% if as_datetime(my_item['datetime']).date() == now().date() %}
              {% if my_item['temperature']|float(0) == states('sensor.weather_home_max_temp_today')|float(0) %}
                {% set max_zeit.foo = my_item['datetime'] %}
                {% set for_break.foo = true %}
              {% else %}
                {% set max_zeit.foo = states('sensor.weather_home_max_temp_today_zeit') %}
              {% endif %}
            {% endif %}
          {% endfor %}
          {{ max_zeit.foo }}

But when the events start or reload are triggering this sensor, and values with

{% if my_item['temperature']|float(0) == states('sensor.weather_home_max_temp_today')|float(0) %}

are not there anymore, it sets to unknown.

But I expected that the state is restored during restart/reload (as it is a trigger sensor) and then the else-path would set to old/restored value. But it is not woking.

Where is my problem?

1 post - 1 participant

Read full topic

KNX blocking lights from HA is being automatically reset

$
0
0

Hey everyone,
l could use your input with this HA/KNX setup.

I use HA with my KNX setup. All is working well with KNX… Whenever I try to block the detection to stop the light from going on and off, it works for exactly one hour and HA would reset it automatically to the state it had before.

Some screenshots from the ETS configuration as well.

Thank you

Here is the setup I have:
HA specs on VM:

  • Core 2024.4.3
  • Supervisor 2024.05.1
  • Operating System 12.2
  • Frontend 20240404.2

yaml
switch:

switch:
#Bewaesserung using switch
    - name: "Bewaesserung Rechts"
      address: "7/1/1"
      state_address: "7/1/31"
    - name: "Bewaesserung Links"
      address: "7/1/2"
      state_address: "7/1/32"
    - name: "Bewaesserung"
      address: "7/1/3"
      state_address: "7/1/33"

#Blocking lights
    - name: "Sperrung BM Garderobe"
      address: "6/0/0"
      state_address: "6/0/0"
    - name: "Präsenzmelder Garderobe"
      address: "6/0/6"

Front:

``type: custom:mushroom-chips-card
chips:

  • type: template
    entity: switch.sperrung_bm_garderobe
    icon: |-
    {% if is_state(‘switch.sperrung_bm_garderobe’, ‘off’) %}
    mdi:lightbulb-auto
    {% else %}
    mdi:lightbulb-off
    {% endif %}
    content: SAS
    icon_color: |-
    {% if is_state(‘switch.sperrung_bm_garderobe’, ‘off’) %}
    green
    {% else %}
    red
    {% endif %}`
![image002|690x276](upload://eqCX0LWhSG8dpaNzA6koW5mT2ww.png)
![image004|510x500](upload://3R6A5YtX7k3mro0P2xtHWPmfhAM.png)
![image003|639x500](upload://cLinfn0jiRMJkUoHMP2R2fUmxMX.png)

1 post - 1 participant

Read full topic

Sun Cover control with Zemismart switch

$
0
0

I purchased Zemismart Curtain Smart Switch ZN-EC1E Zigbee compatibility for controlling my sun cover. I was able to add the integration, but the default controls do not work properly, because the end positions are not correct. The motor has physical sensors to stop the motor at both end positions, so I would basically only need a command to switch on the motor to one direction and keep turning until switched off by the sensor. In the “Manage Zigbee Device” menu in “Clusters” for cluster “WindowsCovering” there is a command “down_close” that I can issue, which does what I want when clicking “ïssue zigbee command”. For opening I can use “go_to_lift_percentage” with value 255. My question: how to continue? How can I program this and add it to a dashboard?

1 post - 1 participant

Read full topic

Centralite 3157100 thermostat disconnecting

$
0
0

Hello…. For some reason my thermostat keeps vanishing every few months…. It works just fine …. I can delete it and then readd it just fine… but then randomly in a few months it’ll not be readable…It is a zigbee thermostat….i have tried to reconfigure it, but that fails………below is a screen shot of the error…. Any ideas ?

1 post - 1 participant

Read full topic

Cant connect to MQQT docker

$
0
0

Hi,

I am running HA in docker, and I was able to start MQTT docker as well. I can see its running, in the logs.

1715966862: Opening ipv4 listen socket on port 1883.
1715966862: Opening ipv6 listen socket on port 1883.

If I try to connect to connect to port 1883 via telnet from any device on the network it seems to work:

1715969223: New connection from 172.19.0.1:39650 on port 1883.
1715969227: Client <unknown> disconnected due to protocol error.

But when I try to integrate MQTT into HA, and I input the IP adress, nothing happens. After a while I get an Unknown error message and thats it.

Also what I find strange that all the connection I make are coming from 172.19.0.1 according to mosquitto log. I think this is the IP adress of my HA instance.

Any ideas?

2 posts - 2 participants

Read full topic

Hass can't get stuff from Mosquito after upgrade, but works perfectly fine after HASS reboot or Mosquito reload

$
0
0

I’ve managed to actually get some logs out of the system when this problem occurred. I had this issue for a long time, but this time I decided to get some logs etc.
So my problem is that after a system upgrade (today upgraded to 2024.5.4) the hass can’t get anything from Mosquito (I can wait even half an hour, with not effect). If I reload Mosquito broker - seems to fix the problem.
I’ve tested whenever a simple reboot can cause the same issue - but seems to not.

Here goes events.

Life goes as normal:

2024-05-17 18:27:18: New connection from 172.30.32.2:34946 on port 1883.
2024-05-17 18:27:18: Client <unknown> closed its connection.
2024-05-17 18:29:18: New connection from 172.30.32.2:42888 on port 1883.
2024-05-17 18:29:18: Client <unknown> closed its connection.
2024-05-17 18:31:18: New connection from 172.30.32.2:40758 on port 1883.
2024-05-17 18:31:18: Client <unknown> closed its connection.
2024-05-17 18:33:18: New connection from 172.30.32.2:34960 on port 1883.
2024-05-17 18:33:18: Client <unknown> closed its connection.
2024-05-17 18:35:18: New connection from 172.30.32.2:47782 on port 1883.
2024-05-17 18:35:18: Client <unknown> closed its connection.
2024-05-17 18:37:18: New connection from 172.30.32.2:41016 on port 1883.
2024-05-17 18:37:18: Client <unknown> closed its connection.
2024-05-17 18:39:18: New connection from 172.30.32.2:34172 on port 1883.
2024-05-17 18:39:18: Client <unknown> closed its connection.
2024-05-17 18:41:18: New connection from 172.30.32.2:57810 on port 1883.
2024-05-17 18:41:18: Client <unknown> closed its connection.
2024-05-17 18:43:18: New connection from 172.30.32.2:43650 on port 1883.
2024-05-17 18:43:18: Client <unknown> closed its connection.

Performing an upgrade about here:

2024-05-17 18:45:14: Client 0P4JAKn3X0TuxGouQh3L1T closed its connection.
2024-05-17 18:45:18: New connection from 172.30.32.2:56482 on port 1883.
2024-05-17 18:45:18: Client <unknown> closed its connection.

After an upgrade this show up:

2024-05-17 18:45:23: New connection from 172.30.32.1:37163 on port 1883.
2024-05-17 18:45:23: New client connected from 172.30.32.1:37163 as 776MRYuMXaPB1JDQMYJF7t (p2, c1, k60, u'homeassistant').
2024-05-17 18:45:23: Outgoing messages are being dropped for client 776MRYuMXaPB1JDQMYJF7t.

At this point everything related to Z2M inside of HASS is “unknown”, while Z2M works perfectly fine. So I decided to perform a Mosquito plugin reload:

2024-05-17 18:47:10: New connection from 172.30.32.1:43891 on port 1883.
2024-05-17 18:47:10: New client connected from 172.30.32.1:43891 as 3TfHo1uZGSUZ9PiORppUmj (p2, c1, k60, u'homeassistant').
2024-05-17 18:47:18: New connection from 172.30.32.2:48274 on port 1883.
2024-05-17 18:47:18: Client <unknown> closed its connection.
2024-05-17 18:48:41: Client 776MRYuMXaPB1JDQMYJF7t has exceeded timeout, disconnecting.
2024-05-17 18:49:18: New connection from 172.30.32.2:37234 on port 1883.
2024-05-17 18:49:18: Client <unknown> closed its connection.

Here I though “Hey, maybe I should try whenever on simple inside of HASS reboot I’ll be able to replicate this” - so I did the reboot.

2024-05-17 18:50:32: Client 3TfHo1uZGSUZ9PiORppUmj closed its connection.
2024-05-17 18:50:38: New connection from 172.30.32.1:60363 on port 1883.
2024-05-17 18:50:38: New client connected from 172.30.32.1:60363 as 3cfGlRCCZMfwrgaiRW90LL (p2, c1, k60, u'homeassistant').
2024-05-17 18:51:18: New connection from 172.30.32.2:54866 on port 1883.
2024-05-17 18:51:18: Client <unknown> closed its connection.
2024-05-17 18:53:18: New connection from 172.30.32.2:51798 on port 1883.
2024-05-17 18:53:18: Client <unknown> closed its connection.

And everything works just perfectly fine … so a reboot =!= upgrade in terms of results.

Life goes as normal:

2024-05-17 18:27:18: New connection from 172.30.32.2:34946 on port 1883.
2024-05-17 18:27:18: Client <unknown> closed its connection.
2024-05-17 18:29:18: New connection from 172.30.32.2:42888 on port 1883.
2024-05-17 18:29:18: Client <unknown> closed its connection.
2024-05-17 18:31:18: New connection from 172.30.32.2:40758 on port 1883.
2024-05-17 18:31:18: Client <unknown> closed its connection.
2024-05-17 18:33:18: New connection from 172.30.32.2:34960 on port 1883.
2024-05-17 18:33:18: Client <unknown> closed its connection.
2024-05-17 18:35:18: New connection from 172.30.32.2:47782 on port 1883.
2024-05-17 18:35:18: Client <unknown> closed its connection.
2024-05-17 18:37:18: New connection from 172.30.32.2:41016 on port 1883.
2024-05-17 18:37:18: Client <unknown> closed its connection.
2024-05-17 18:39:18: New connection from 172.30.32.2:34172 on port 1883.
2024-05-17 18:39:18: Client <unknown> closed its connection.
2024-05-17 18:41:18: New connection from 172.30.32.2:57810 on port 1883.
2024-05-17 18:41:18: Client <unknown> closed its connection.
2024-05-17 18:43:18: New connection from 172.30.32.2:43650 on port 1883.
2024-05-17 18:43:18: Client <unknown> closed its connection.

Performing an upgrade about here:

2024-05-17 18:45:14: Client 0P4JAKn3X0TuxGouQh3L1T closed its connection.
2024-05-17 18:45:18: New connection from 172.30.32.2:56482 on port 1883.
2024-05-17 18:45:18: Client <unknown> closed its connection.

After an upgrade this show up:

2024-05-17 18:45:23: New connection from 172.30.32.1:37163 on port 1883.
2024-05-17 18:45:23: New client connected from 172.30.32.1:37163 as 776MRYuMXaPB1JDQMYJF7t (p2, c1, k60, u'homeassistant').
2024-05-17 18:45:23: Outgoing messages are being dropped for client 776MRYuMXaPB1JDQMYJF7t.

At this point nothing related to Z2M inside of HASS is “unknown”, while Z2M works perfectly fine. So I decided to perform a Mosquito plugin reload:

2024-05-17 18:47:10: New connection from 172.30.32.1:43891 on port 1883.
2024-05-17 18:47:10: New client connected from 172.30.32.1:43891 as 3TfHo1uZGSUZ9PiORppUmj (p2, c1, k60, u'homeassistant').
2024-05-17 18:47:18: New connection from 172.30.32.2:48274 on port 1883.
2024-05-17 18:47:18: Client <unknown> closed its connection.
2024-05-17 18:48:41: Client 776MRYuMXaPB1JDQMYJF7t has exceeded timeout, disconnecting.
2024-05-17 18:49:18: New connection from 172.30.32.2:37234 on port 1883.
2024-05-17 18:49:18: Client <unknown> closed its connection.

Here I though “Hey, maybe I should try whenever on simple inside of HASS reboot I’ll be able to replicate this” - so I did the reboot.

2024-05-17 18:50:32: Client 3TfHo1uZGSUZ9PiORppUmj closed its connection.
2024-05-17 18:50:38: New connection from 172.30.32.1:60363 on port 1883.
2024-05-17 18:50:38: New client connected from 172.30.32.1:60363 as 3cfGlRCCZMfwrgaiRW90LL (p2, c1, k60, u'homeassistant').
2024-05-17 18:51:18: New connection from 172.30.32.2:54866 on port 1883.
2024-05-17 18:51:18: Client <unknown> closed its connection.
2024-05-17 18:53:18: New connection from 172.30.32.2:51798 on port 1883.
2024-05-17 18:53:18: Client <unknown> closed its connection.

And everything works just perfectly fine … so a reboot =!= upgrade in terms of results.

2 posts - 2 participants

Read full topic

Temperature sensor not reliable

$
0
0

I have two automations that turn on my basement fan when my thermostat detects the temperature is over 70, and turns it off when it goes under. I have minimal conditions, namely that it only turns on when the outdoor temp is >68 and it only turns it off when the outdoor temp is <70

For some reason, it’s not working consistently - and I can’t figure out how to troubleshoot it.

Here are the two YAMLs:

alias: Turn On basement fan when > 70
description: Turns on the outlet when the indoor temperature is 70°F or more
trigger:
  - platform: numeric_state
    entity_id:
      - sensor.family_room_temperature
    above: 69.8
condition:
  - condition: numeric_state
    entity_id: weather.forecast_home
    attribute: temperature
    above: 68
action:
  - type: turn_on
    device_id: 9ca8e4a11be4876c42256d99bb9b6157
    entity_id: 7489520a46e4c4f785d034b020f03a37
    domain: switch
mode: single

alias: Turn off Basement Fan when < 70
description: ""
trigger:
  - platform: numeric_state
    entity_id:
      - climate.family_room
    attribute: current_temperature
    below: 69.8
  - platform: numeric_state
    entity_id:
      - sensor.family_room_temperature
    below: 69.8
condition:
  - condition: numeric_state
    entity_id: weather.forecast_home
    attribute: temperature
    below: 70
  - condition: device
    type: is_on
    device_id: 9ca8e4a11be4876c42256d99bb9b6157
    entity_id: 7489520a46e4c4f785d034b020f03a37
    domain: switch
action:
  - type: turn_off
    device_id: 9ca8e4a11be4876c42256d99bb9b6157
    entity_id: 7489520a46e4c4f785d034b020f03a37
    domain: switch
mode: single

Multiple times now I’ve checked my dashboard and the temperatures SHOULD have triggered this, but for some reason haven’t - and times like this morning that Traces say it triggered, yet the fan is not on - and the dashboard doesn’t see it on - so it SHOULD have re-triggered (I’ve validated their state = 0 so they’re not stuck)
The thing that really confuses me is that it HAS worked properly, so i feel like it should either always work or always not work.

So my question is two fold: How can I troubleshoot this, and does anyone see something obvious I’m missing.

With troubleshooting, my hope was to somehow trace what happens each time my temps update and find out why it isn’t triggering - but that’s my other frustration, i can’t figure out how to even see the refresh period of my Nest integration.

Note: I really SHOULD get some z-wave or other actual temp sensors rather than relying on cloud systems - my goal for 2024 is to get as much off of the cloud as possible, but I’ve sadly invested a lot into ‘cloud’ technology so either have to possibly flash things to local only, or possibly setup some sort of API interceptor that I can use to fake out systems into thinking they’re talking to the cloud (Or, buy new everything which the CFO might not approve of, lovely wife though she may be)

3 posts - 3 participants

Read full topic


Help - convert json to seperate sensors

$
0
0

Hi, I’m having issues converting json into seperate sensors, any help is appreciated.

the api sensor reports:
image

so what I’m trying to achieve is creating a seperate sensor for bounce_rate (with it’s value ofcourse, in this case 0)

I already tried these combinations:

It looks like the second one sees the bounce rate but reports it as {‘value’:0).
instead of 0.

is there a smart way to pick up the value and what goes with it (bounce rate)?

maybe something can be improved in the rest sensor, which I’m still testing:

sensor:
- platform: rest
  scan_interval: 300
  resource: "https://mysite.com/api/v1/stats/aggregate?site_id=mysite.com&period=day&metrics=visitors,visits,pageviews,views_per_visit,bounce_rate"
  headers:
    Authorization: >
      Bearer {{ states("input_text.plausible") }}
  json_attributes:
    - results
  method: GET
  name: "Plausible API"
  value_template: 'Active'

2 posts - 2 participants

Read full topic

Accessing a floor's level in a template

$
0
0

With the 2024.04 release, we got floors as an added feature. The floor has a level attribute, but it doesn’t seem like there’s a way to access that in templates.

Before this, I had some configuration defining floors and their level/area_ids, so this new feature is close to replacing all of that. The only thing I need access to is the level in templates.

Is there any way to do this or should I open a feature request?

4 posts - 2 participants

Read full topic

Haos running in a VM on UN-Raid(expanding space)

$
0
0
I have installed Home Assistant as i VM on my unraid server. Starting to use the VM and working well. But I seam to be burning thought VM's  memory.

Can anyone let me know how to expand HA vm memory. 

in UN-RAID v8.12

thanks John G

4 posts - 2 participants

Read full topic

Automation to arm/disarm alarm - looking for feedback

$
0
0

Hi folks,

I’m new to Home Assistant (via HAOS) and am moving over from SmartThings.

I’ve been working on setting up an automated alarm arm/disarm system using Home Assistant automations, persons/zones, and Alarmo, and since I’m new to this, I wanted to reach out for any feedback from the community on if I’ve missed anything or am making any ignorant mistakes (or alternatively, if I’m on the right track, perhaps others will find this useful). Through my testing thus far, it appears to be working as expected.

The main use cases I have are:

  1. Automatically arm the system when everyone leaves
  2. Automatically disarm the system when anyone arrives
  3. Automatically arm the system into night mode around the time everyone goes to bed
  4. Automatically disarm the system in the morning when people are present

I’m using “Person” and Zone entities to track presence for my wife and I, using both the companion app for GPS as well as our network presence via the router.

Automation 1: Arm when everybody leaves

alias: "Alarm: When nobody is present, arm"
description: ""
trigger:
  - platform: numeric_state
    entity_id:
      - zone.home
    below: 1
condition: []
action:
  - device_id: c6613f8e40fa8575cf6c89d0e95ecb0c
    domain: alarm_control_panel
    entity_id: 388b302d4237b9ed9852ebfc070b1842
    type: arm_away
mode: single

Automation 2: Disarm when anyone arrives
This one looks at the home zone’s state to see if anyone is present and disarm the system if so.

alias: "Alarm: When anyone is present, disarm"
description: ""
trigger:
  - platform: numeric_state
    entity_id: zone.home
    above: 0
condition: []
action:
  - device_id: c6613f8e40fa8575cf6c89d0e95ecb0c
    domain: alarm_control_panel
    entity_id: 388b302d4237b9ed9852ebfc070b1842
    type: disarm
mode: single

Automation 3: Disarm if someone unlocks the front door via the keypad door lock

This one is if a guest etc. visits the house and uses a code to unlock the door. I might have over-complicated it a bit by having the conditional check to see if the system is actually armed before doing the disarm – this could probably be removed to simply always disarm the system regardless of its current state.

alias: "Alarm: Disarm if front door is unlocked with code"
description: ""
trigger:
  - platform: device
    device_id: b118f62e8cae1179bbed81d96dae5e8e
    domain: lock
    entity_id: 7298ce4bf1e7605b8a06ab5d762f82a1
    type: unlocked
condition:
  - condition: or
    conditions:
      - condition: device
        device_id: c6613f8e40fa8575cf6c89d0e95ecb0c
        domain: alarm_control_panel
        entity_id: 388b302d4237b9ed9852ebfc070b1842
        type: is_armed_away
      - condition: device
        device_id: c6613f8e40fa8575cf6c89d0e95ecb0c
        domain: alarm_control_panel
        entity_id: 388b302d4237b9ed9852ebfc070b1842
        type: is_armed_night
action:
  - device_id: c6613f8e40fa8575cf6c89d0e95ecb0c
    domain: alarm_control_panel
    entity_id: 388b302d4237b9ed9852ebfc070b1842
    type: disarm
mode: single

Automation 4: Arm at night

This one uses an arbitrary time (11:45pm in this case) to arm the system. As noted in the description, it looks to see if the system was already disarmed before enabling armed night, because I don’t want this to happen if the system was already armed (i.e. we were away).

alias: "Alarm: Arm at night"
description: >-
  Enable Armed Night mode if the system was already disarmed (i.e. someone is
  home). If not in disarmed mode, then it won't enable night mode (which is
  good, because we want to stay in Armed Away in that case).
trigger:
  - platform: time
    at: "23:45:00"
condition:
  - condition: device
    device_id: c6613f8e40fa8575cf6c89d0e95ecb0c
    domain: alarm_control_panel
    entity_id: 388b302d4237b9ed9852ebfc070b1842
    type: is_disarmed
action:
  - device_id: c6613f8e40fa8575cf6c89d0e95ecb0c
    domain: alarm_control_panel
    entity_id: 388b302d4237b9ed9852ebfc070b1842
    type: arm_night
mode: single

Automation 5: Disarm in the morning

This is the complement to the “arm at night” rule, and similar to that rule, it first checks if the system was already in armed night mode because I don’t want the system disarming if we are away.

alias: "Alarm: Disarm in morning"
description: >-
  If the system was previously in the armed_night mode, then disarm
  automatically in the morning. armed_night mode should only engage if someone
  is present, so therefore this disarm step will only happen if someone is
  present as well.
trigger:
  - platform: time
    at: "07:00:00"
condition:
  - condition: device
    device_id: c6613f8e40fa8575cf6c89d0e95ecb0c
    domain: alarm_control_panel
    entity_id: 388b302d4237b9ed9852ebfc070b1842
    type: is_armed_night
action:
  - device_id: c6613f8e40fa8575cf6c89d0e95ecb0c
    domain: alarm_control_panel
    entity_id: 388b302d4237b9ed9852ebfc070b1842
    type: disarm
mode: single

Thank you for any feedback or suggestions!

4 posts - 3 participants

Read full topic

Need help with Google Generative AI

$
0
0

Hello,

The response I got is completely inaccurate. What am I missing?

Here are the options:

Here’s the prompt and response:

Thanks

10 posts - 5 participants

Read full topic

Viewing all 109258 articles
Browse latest View live


Latest Images

<script src="https://jsc.adskeeper.com/r/s/rssing.com.1596347.js" async> </script>