Compare commits

..

7 Commits

10 changed files with 126 additions and 16 deletions

View File

@@ -1 +1 @@
2025.9.1
2025.10.2

2
.gitignore vendored
View File

@@ -12,3 +12,5 @@ home-assistant.log*
.storage/
zigbee.db*
*__pycache__*
.ha_run.lock

3
.gitmodules vendored Normal file
View File

@@ -0,0 +1,3 @@
[submodule "themes/blackened"]
path = themes/blackened
url = https://github.com/home-assistant-community-themes/blackened.git

View File

@@ -1260,8 +1260,9 @@
- choose:
- conditions:
- condition: template
value_template: '{{ trigger.payload_json.action == ''BUTTON_RING'' and trigger.payload_json.parameters
== ''0560'' }}'
value_template: '{{ (trigger.payload_json.action == ''BUTTON_RING'' and trigger.payload_json.parameters
== ''0560'') or ( trigger.payload_json.action == ''BUTTON_RING'' and trigger.payload_json.parameters
== ''05A0'') }}'
sequence:
- data:
data:
@@ -1281,3 +1282,12 @@
message: Türklingel (innen)
action: notify.alle_mobilen_gerate
mode: single
- id: '1757574193367'
alias: Zone Notification
description: ''
use_blueprint:
path: homeassistant/notify_leaving_zone.yaml
input:
person_entity: person.marcus_scholz
zone_entity: zone.home
notify_device: 773450cae5e93524731940ad081846d9

View File

@@ -71,3 +71,6 @@ generic_hygrostat:
away_humidity: 60
away_fixed: true
sensor_stale_duration: 00:15:00
frontend:
themes: !include_dir_merge_named themes

View File

@@ -0,0 +1,58 @@
substitutions:
name: "aussensensor"
friendly_name: "Außensensor"
esphome:
name: ${name}
friendly_name: ${friendly_name}
name_add_mac_suffix: false
project:
name: sensor.outdoor
version: "0.8"
min_version: 2022.1.0
esp32:
board: nodemcu-32s
framework:
type: arduino
wifi:
ssid: "Voltage-legacy"
password: !secret voltage_legacy_psk
use_address: ${name}.home
power_save_mode: high
fast_connect: on
# Enable fallback hotspot (captive portal) in case wifi connection fails
ap:
ssid: "Aussensensor Fallback Hotspot"
password: !secret fallback_psk
captive_portal:
# Enable logging
logger:
# Enable Home Assistant API
api:
encryption:
key: !secret apikey
ota:
platform: esphome
password: !secret ota
# DHT22 sensor
sensor:
- platform: dht
model: dht22
pin: 25
temperature:
name: "Temperatur außen"
humidity:
name: "Luftfeuchtigkeit außen"
update_interval: 60s
# WiFi signal strength
- platform: wifi_signal
name: "WiFi Signalstärke"
update_interval: 60s

View File

@@ -67,12 +67,12 @@ esp32_camera:
href_pin: GPIO23
pixel_clock_pin: GPIO22
power_down_pin: GPIO32
resolution: SVGA
resolution: XGA
max_framerate: 24 fps
idle_framerate: 0.2 fps
jpeg_quality: 30
jpeg_quality: 15
agc_mode: auto
agc_gain_ceiling: 4x
agc_gain_ceiling: 8x
wb_mode: auto
vertical_flip: true
horizontal_mirror: true

View File

@@ -56,12 +56,12 @@ esp32_camera:
href_pin: GPIO23
pixel_clock_pin: GPIO22
power_down_pin: GPIO32
resolution: SVGA
resolution: XGA
max_framerate: 24 fps
idle_framerate: 0.2 fps
jpeg_quality: 30
jpeg_quality: 15
agc_mode: auto
agc_gain_ceiling: 4x
agc_gain_ceiling: 8x
wb_mode: auto
vertical_flip: true
horizontal_mirror: true

View File

@@ -22,9 +22,6 @@ ota:
external_components:
- source: github://RASPIAUDIO/esphomeLuxe@main
# - source:
# type: local
# path: components
components: [es8388]
refresh: 0s
@@ -47,6 +44,9 @@ esphome:
platformio_options:
board_build.flash_mode: dio
board_build.arduino.memory_type: qio_opi
project:
name: raspiaudio.voice-assistant
version: "2025.2.6"
on_boot:
priority: -100.0
then:
@@ -213,6 +213,19 @@ sensor:
- lambda: return clamp(x, 0.0f, 100.0f);
binary_sensor:
- platform: gpio
pin:
number: GPIO27
mode:
input: true
pullup: true
id: jack_detect
name: Jack Detect
internal: true
on_press:
- script.execute: jack_detect_high
on_release:
- script.execute: jack_detect_low
- platform: gpio
pin:
number: GPIO19
@@ -292,6 +305,7 @@ light:
update_interval: 2s
i2s_audio:
id: i2s0
i2s_lrclk_pin: GPIO25
i2s_bclk_pin: GPIO5
i2s_mclk_pin: GPIO0
@@ -299,6 +313,7 @@ i2s_audio:
microphone:
- platform: i2s_audio
id: luxe_mic
i2s_audio_id: i2s0
sample_rate: 16000
i2s_din_pin: GPIO35
bits_per_sample: 16bit
@@ -312,20 +327,22 @@ speaker:
dac_type: external
sample_rate: 48000
bits_per_sample: 16bit
channel: stereo
num_channels: 2
buffer_duration: 100ms
media_player:
- platform: speaker
name: None
id: luxe_media_player
internal: false
# task_stack_in_psram: true
# volume_min: 0.5
# volume_max: 0.8
announcement_pipeline:
speaker: luxe_speaker
format: FLAC
sample_rate: 48000
num_channels: 2
num_channels: 1
files:
- id: little_sound
file: https://github.com/esphome/home-assistant-voice-pe/raw/dev/sounds/timer_finished.flac
@@ -384,6 +401,7 @@ voice_assistant:
on_tts_start:
- logger.log: "answering 4 => phase"
- micro_wake_word.stop:
- lambda: |-
id(phase) = 4;
- script.execute: update_led
@@ -403,8 +421,23 @@ voice_assistant:
#########
# Scripts
script:
- id: jack_detect_high
then:
- logger.log: "Jack detect high -> route to speaker"
- output.turn_off: dac_mute
- lambda: |-
id(my_es8388).write_byte(0x1D, 0x20);
id(my_es8388).write_byte(0x1C, 0x10);
id(my_es8388).write_byte(0x04, 0x30);
- id: jack_detect_low
then:
- logger.log: "Jack detect low -> route to line out"
- output.turn_on: dac_mute
- lambda: |-
id(my_es8388).write_byte(0x1D, 0x00);
id(my_es8388).write_byte(0x1C, 0x00);
id(my_es8388).write_byte(0x04, 0x0C);
- id: update_led
then:
- logger.log: "==>>>update_led"
@@ -429,7 +462,7 @@ script:
- lambda: id(phase) = 1;
- media_player.speaker.play_on_device_media_file:
media_file: little_sound
announcement: true
announcement: false
- script.execute: update_led
- id: waiting

1
themes/blackened Submodule

Submodule themes/blackened added at 4393cc34a9