Das doofe daran ist halt dass Media Player ihre Lautstärke als 0..1 float angeben, nicht als 0..100 oder 0..255 - deshalb braucht man evtl eine Automation oder einen helper den man dann exposed.
Ankündigung
Einklappen
Keine Ankündigung bisher.
Sonos Lautstärke HomeAssistant
Einklappen
X
-
Hallo zusammen,
ja bei mir das gleiche verhalten. Geht nur einmal. Da sonst niemand das "Problem" hatte hab ich den Blueprint nicht weiter verfolgt und da bei mir eh jeder Player andere Funktionen braucht habe ich eine Automation gemacht.
Wie meti geschrieben hat, probiert es mal mit "- service: media_player.volume_up" oder "- service: media_player.volume_down".
Hier mal die Automation von einem Player.
Code:alias: Sonos Eltern Steuerung description: "On/OFF, Lautstärke, Sender " trigger: - platform: event event_type: knx_event event_data: destination: 10/3/100 id: An_Aus - platform: event event_type: knx_event event_data: destination: 10/3/102 id: Lautstärke Dimmen condition: [] action: - choose: - conditions: - condition: template value_template: "{{ trigger.event.data.data == 1 }}" - condition: trigger id: An_Aus sequence: - service: media_player.volume_set data: volume_level: 0.09 target: entity_id: media_player.sonos_eltern - delay: hours: 0 minutes: 0 seconds: 1 milliseconds: 0 - if: - condition: not conditions: - condition: state entity_id: media_player.sonos_eltern state: playing then: - service: media_player.play_media target: entity_id: media_player.sonos_eltern data: media_content_id: FV:2/7 media_content_type: favorite_item_id metadata: title: ANTENNE BAYERN thumbnail: >- http://cdn-profiles.tunein.com/s42824/images/logoq.png?t=151377 media_class: genre children_media_class: null navigateIds: - {} - media_content_type: favorites media_content_id: "" - media_content_type: favorites_folder media_content_id: object.item.audioItem.audioBroadcast - conditions: - condition: trigger id: An_Aus - condition: template value_template: "{{ trigger.event.data.data == 0 }}" sequence: - service: media_player.media_stop data: {} target: entity_id: media_player.sonos_eltern - conditions: - condition: template value_template: "{{ trigger.event.data.data == 9 }}" - condition: trigger id: Lautstärke Dimmen sequence: - repeat: count: "50" sequence: - service: media_player.volume_up data: {} target: entity_id: media_player.sonos_eltern - delay: hours: 0 minutes: 0 seconds: 0 milliseconds: 200 - conditions: - condition: template value_template: "{{ trigger.event.data.data == 1 }}" - condition: trigger id: Lautstärke Dimmen sequence: - repeat: count: "50" sequence: - service: media_player.volume_down data: {} target: entity_id: media_player.sonos_eltern - delay: hours: 0 minutes: 0 seconds: 0 milliseconds: 400 default: [] mode: restart
Beispiel:
Code:##### Sonos und Alexa Volume to Sensor - name: sonos_eltern_volume unique_id: sonos_eltern_volume unit_of_measurement: '%' state: "{{ states.media_player.sonos_eltern.attributes.volume_level | float * 100 }}" ##### Status Sonos und Alexa - name: sonos_eltern_state unique_id: sonos_eltern_state unit_of_measurement: 'on' state: "{% if is_state('media_player.sonos_eltern', 'playing') %}on{% else %}off{% endif %}"
Beispiel:
Code:expose: # send Sonos, Alexa values to KNX bus - entity_id: sensor.sonos_eltern_volume type: percent address: '10/3/4' - entity_id: sensor.sonos_eltern_state type: binary address: '10/3/1'
Gruß Danny
- Likes 1
Kommentar
-
Hallo,
gibt es hierzu schon einen neuen Lösungsansatz? Ich habe es bei mir aktuell auch so gebaut, das mit jedem Mal "Dimmen" drücken, der Lautsprecher entsprechend lauter / leiser geht. Das ist aber kein schönes Verhalten.
Ich habe mir im KNX Busmonitor einmal angesehen, was für Telegramme zu einem normalen Dimmer geschickt werden.
Ich nehme jetzt einmal an, das ein Dimmer auf z.B. DPT3 Value 9 (hochdimmen) reagiert und solange die Aktion auslöst, bis das nächste Telegramm DPT 3 Value 0 (stop) folgt.
Wenn das so richtig ist, müsste man in Home Assistant eine Wiederholungsbedingung konfigurieren können, die die Lautstärke solange erhöht, bis das Event DPT3 Value 0 folgt.
Das scheint aber derzeit mit HA 2024.5 nicht zu funktionieren. Oder habe ich etwas übersehen?
Kommentar
-
Zitat von StefanWE Beitrag anzeigenWiederholungsbedingung konfigurieren können, die die Lautstärke solange erhöht
Code:sequence: - repeat: count: "50" sequence: - service: media_player.volume_up data: {} target: entity_id: media_player.sonos_eltern - delay: hours: 0 minutes: 0 seconds: 0 milliseconds: 200
In 2024.6 (ab morgen) könnte man den `knx.telegram` trigger dafür benutzen - dann spart man sich das ganze Initialize Zeug für die knx_events. Siehe https://gist.github.com/farmio/bc23c...947309408ff164 als Beispiel für Licht.
Zitat von StefanWE Beitrag anzeigenbis das Event DPT3 Value 0 folgt.
- Likes 1
Kommentar
-
Ja, solange die Automation läuft. Durch "mode: restart" wird eine laufende Automation (und ihr "repeat" Block) aber beim nächsten Trigger abgebrochen. Das passiert bei der 0.
Das "count: 50" ist nur zur Sicherheit, damit es nicht unendlich weiterläuft wenn man zB bei einem Test das Dimm-Stop Signal nicht gesendet hat.Zuletzt geändert von meti; 04.06.2024, 12:55.
Kommentar
Kommentar