Max7219 Intensity gesteuert durch Bewegung

Dondolo

New member
Hallo,
ich möchte gerne die Intensity eines Max7219 Display durch einen Bewegungssensor steuern. Bei Bewegung intensity=15 sonst intensity=0.

Kann mich jemand auf die richtige Spur setzen wie ich das grundsätzlichen lösen kann?

YAML:
platform: max7219
    cs_pin: D8
    num_chips: 1
    intensity: 15
    id: max7297
    lambda: |-
      it.printf(5, "%.1f", id(bme680_temperatur).state);
      it.printf(0, "%.1f", id(bme680_Humidity).state);


binary_sensor:
  - platform: gpio
    pin: D6
    name: "Testsensor Motion"
    device_class: motion
    id: bewegungsmelder
    
    
    on_state:
      then:
        - if:
            condition:
              lambda: 'return id(bewegungsmelder).state = true;'
            
            then:
              - switch.turn_on: led
              - logger.log: "Bewegungsmelder ja"
              - delay: 5s
            else:
              - logger.log: "Bewegungsmelder nein"

        - switch.turn_off: led
 
Würde ich so in der Art machen, damit hast du mehr Kontrolle darüber.

YAML:
sensor:
  - platform: homeassistant
    name: "Pool Temp Display Brightness"
    id: "max7219_bright"
    entity_id: "sensor.light_sensor"
    filters:
      - calibrate_linear:
          - 0 -> 0
          - 1000 -> 15
spi:
  clk_pin: 14
  mosi_pin: 13

display:
  - platform: max7219
    cs_pin: 08
    num_chips: 1
    intensity: id(max7219_bright)
    lambda: |-
      it.printf(0, " ");
      it.printf(1, "%.1f", id(DS18B20_1).state);
      it.printf(4, " ");
      it.printf(5, "%.1f", id(DS18B20_2).state);
      it.printf(8, " ");
      it.printf(9, "%.1f", id(DS18B20_3).state);
      it.printf(12, " ");
      it.printf(13, "%.1f", id(DS18B20_4).state);
 
Würde ich so in der Art machen, damit hast du mehr Kontrolle darüber.

YAML:
sensor:
  - platform: homeassistant
    name: "Pool Temp Display Brightness"
    id: "max7219_bright"
    entity_id: "sensor.light_sensor"
    filters:
      - calibrate_linear:
          - 0 -> 0
          - 1000 -> 15
spi:
  clk_pin: 14
  mosi_pin: 13

display:
  - platform: max7219
    cs_pin: 08
    num_chips: 1
    intensity: id(max7219_bright)
    lambda: |-
      it.printf(0, " ");
      it.printf(1, "%.1f", id(DS18B20_1).state);
      it.printf(4, " ");
      it.printf(5, "%.1f", id(DS18B20_2).state);
      it.printf(8, " ");
      it.printf(9, "%.1f", id(DS18B20_3).state);
      it.printf(12, " ");
      it.printf(13, "%.1f", id(DS18B20_4).state);
Hi, danke probiere ich gleich mal.
 
Hi, danke probiere ich gleich mal.
Den unteren Bereich musst du natürlich an deine Bedürfnisse anpassen, hier werden Temperaturen erfasst.
Aber wen ich mir deinen code anschaue sollte das für dich machbar sein 😉

Edit: bin ich gerade drüber gestolpert als ich nach meinem neuen ESP Projekt gesucht hatte, war auf den ersten Blick sehr hilfreich, vielleicht hilft es dir an der einen oder anderen Stelle weiter.

max7219
 
Zuletzt bearbeitet:
Den unteren Bereich musst du natürlich an deine Bedürfnisse anpassen, hier werden Temperaturen erfasst.
Aber wen ich mir deinen code anschaue sollte das für dich machbar sein 😉

Edit: bin ich gerade drüber gestolpert als ich nach meinem neuen ESP Projekt gesucht hatte, war auf den ersten Blick sehr hilfreich, vielleicht hilft es dir an der einen oder anderen Stelle weiter.

max7219
Hab zu schnell geschaut. Ich wollte nicht den Umweg über HA, auch bei mehr Möglichkeitein, machen. Wie könnte ich mit der If-Verschachtelung die entensity beim Display ändern?
 
Das machst du dann über eine separate Automatisierung
Schaue dir hierzu mal diese Bsp an
If else

Wenn/dann in automation unter Aktion
 

Anhänge

  • Screenshot_20221117-225714_Home Assistant.jpg
    Screenshot_20221117-225714_Home Assistant.jpg
    146,2 KB · Aufrufe: 1
Zuletzt bearbeitet:
Hier man mein bsp. anhand Heizung ein Wenn Temperatur (Raum X) unter 3°C
Dann Heizung an -> aber nur wenn -> Heizung auf Sommer und Manuell Betrieb
If -> Then
In denem Fall währe das dann
Auslöser: "Bewegung" (eventuell für Zeit 00:00:10) 10 Sekunden
Aktion: If "Bewegung" -> Then "Display Hell"


YAML:
alias: Frostüberwachung Räumle gestartet unter 2°C, Heizung Eingeschaltet.
description: Frost Gefahr !!! Temperatur im Räumle unter 2°C, Heizung Eingeschaltet.
trigger:
  - type: temperature
    platform: device
    device_id: 9b2c84506323c96be1a83a9d334a1a73
    entity_id: sensor.lumi_lumi_weather_temperature_2
    domain: sensor
    below: 2
    for:
      hours: 0
      minutes: 5
      seconds: 0
condition: []
action:
  - if:
      - condition: device
        device_id: 127ffdc1c800018393ac8d858b189002
        domain: select
        entity_id: select.thermostat_hc1_mode
        type: selected_option
        option: Manuell
      - condition: device
        device_id: 127ffdc1c800018393ac8d858b189002
        domain: select
        entity_id: select.thermostat_hc1_set_summer_mode
        type: selected_option
        option: Sommer
    then:
      - device_id: 127ffdc1c800018393ac8d858b189002
        domain: select
        entity_id: select.thermostat_hc1_mode
        type: select_option
        option: auto
      - device_id: 127ffdc1c800018393ac8d858b189002
        domain: select
        entity_id: select.thermostat_hc1_set_summer_mode
        type: select_option
        option: auto
      - service: notify.whatsappalex
        data:
          message: >-
            Frost Gefahr !!! Temperatur im Räumle unter 2°C, Heizung
            Eingeschaltet
          title: >-
            Frost Gefahr !!! Temperatur im Räumle unter 2°C, Heizung
            Eingeschaltet.
mode: single
 

Zurzeit aktive Besucher

Letzte Anleitungen

Statistik des Forums

Themen
4.511
Beiträge
46.301
Mitglieder
4.143
Neuestes Mitglied
Knappitaen
Zurück
Oben