HmIP-SMO-2 Empfindlichkeit per Skript ändern

HMIP Sender und Empfänger der Serie Homematic IP

Moderator: Co-Administratoren

Benutzeravatar
Baxxy
Beiträge: 10850
Registriert: 18.12.2018, 15:45
System: Alternative CCU (auf Basis OCCU)
Hat sich bedankt: 610 Mal
Danksagung erhalten: 2230 Mal

Re: HmIP-SMO-2 Empfindlichkeit per Skript ändern

Beitrag von Baxxy » 07.07.2022, 11:59

froema hat geschrieben:
07.07.2022, 11:48
Das Auslesen klappt
Sehr gut.
Passende Tabelle: %/integer erstellt?
froema hat geschrieben:
07.07.2022, 11:48
das Schreiben leider nicht
Nicht gut, muss ich mir nochmal angucken ob ich da was versemmelt habe. Wird erst später was.

Tyfys
Beiträge: 551
Registriert: 17.04.2021, 17:12
System: CCU
Hat sich bedankt: 27 Mal
Danksagung erhalten: 125 Mal

Re: HmIP-SMO-2 Empfindlichkeit per Skript ändern

Beitrag von Tyfys » 07.07.2022, 12:05

Ich Idi.....

Das kommt davon, wenn man später noch etwas ändert...

In der Zeile

Code: Alles auswählen

var DpVal = channels.Get(ChnName).DPByHssDP("PIR_SENSITIVITY").Value();
muss das .Value() auch weg:

Code: Alles auswählen

var DpVal = channels.Get(ChnName).DPByHssDP("PIR_SENSITIVITY");
Hast du den Kanalnamen auch auf deinemn geändert?
Gruß
Harry

froema
Beiträge: 205
Registriert: 19.12.2018, 15:20
Hat sich bedankt: 3 Mal

Re: HmIP-SMO-2 Empfindlichkeit per Skript ändern

Beitrag von froema » 07.07.2022, 12:24

Tyfys hat geschrieben:
07.07.2022, 12:05
Ich Idi.....

Das kommt davon, wenn man später noch etwas ändert...

In der Zeile

Code: Alles auswählen

var DpVal = channels.Get(ChnName).DPByHssDP("PIR_SENSITIVITY").Value();
muss das .Value() auch weg:

Code: Alles auswählen

var DpVal = channels.Get(ChnName).DPByHssDP("PIR_SENSITIVITY");
Hast du den Kanalnamen auch auf deinemn geändert?
Hallo Harry,
ja den Kanalnamen habe ich angepasst. Es funktioniert leider auch die überarbeitete Version nicht.

Code: Alles auswählen

!lesen
string ChnName = 'Bewegungsmelder Terrasse:1 Bewegungserkennung und Helligkeit';
var  DpVal = channels.Get(ChnName).DPByHssDP("PIR_SENSITIVITY").Value();
if(DpVal)
{
  WriteLine(DpVal);
  WriteLine(DpVal.Type());
}

!schreiben
channels.Get(ChnName).DPByHssDP("PIR_SENSITIVITY").State(48);
Gehört der Kanalname nicht in Anführungszeichen?

Code: Alles auswählen

string ChnName = "Bewegungsmelder Terrasse:1 Bewegungserkennung und Helligkeit";
Aber damit ging es bei mir auch nicht.

froema
Beiträge: 205
Registriert: 19.12.2018, 15:20
Hat sich bedankt: 3 Mal

Re: HmIP-SMO-2 Empfindlichkeit per Skript ändern

Beitrag von froema » 07.07.2022, 12:28

Baxxy hat geschrieben:
07.07.2022, 11:59
Passende Tabelle: %/integer erstellt?


Ja habe ich:

10% = 150
20% = 135
30% = 120
40% = 105
50% = 90
60% = 75
70% = 60
80% = 48
90% = 25
100% = 10

Mach dir keinen Stress damit.

Viele Grüße
Marc

Benutzeravatar
Baxxy
Beiträge: 10850
Registriert: 18.12.2018, 15:45
System: Alternative CCU (auf Basis OCCU)
Hat sich bedankt: 610 Mal
Danksagung erhalten: 2230 Mal

Re: HmIP-SMO-2 Empfindlichkeit per Skript ändern

Beitrag von Baxxy » 07.07.2022, 12:42

Interessant.
Das erklärt auch warum ich bei der Testberechnung immer falsche Werte herausbekam. Angegeben ist der Integer Bereich nämlich von 0-255, laut deiner Tabelle ist er aber 10-165.
froema hat geschrieben:
07.07.2022, 12:28
Mach dir keinen Stress damit.
Alles gut. Ich mag solche Sachen und lerne dabei ja selbst auch was. :)

Und nochmal für Harry... :wink:
DP's aus dem MASTER-PARMSET lassen sich nicht mit einem dom.GetObject oder sonstigen dedizierten Zugriffsmethoden greifen. Zumindest ist mir da nichts bekannt. Das kannst du ja mal bei irgendeinem Gerät was du hast bei einem DP aus dem MASTER-PARMSET testen. Muss ja kein SMO sein.

Tyfys
Beiträge: 551
Registriert: 17.04.2021, 17:12
System: CCU
Hat sich bedankt: 27 Mal
Danksagung erhalten: 125 Mal

Re: HmIP-SMO-2 Empfindlichkeit per Skript ändern

Beitrag von Tyfys » 07.07.2022, 12:44

Tyfys hat geschrieben:
07.07.2022, 12:05
In der Zeile

Code: Alles auswählen

var DpVal = channels.Get(ChnName).DPByHssDP("PIR_SENSITIVITY").Value();
muss das .Value() auch weg:

Code: Alles auswählen

var DpVal = channels.Get(ChnName).DPByHssDP("PIR_SENSITIVITY");
Hast du das auch gemacht?
froema hat geschrieben:
07.07.2022, 12:24
Gehört der Kanalname nicht in Anführungszeichen?
Als Stringbegrenzungszeichen kann man auf der CCU so wohl ' als auch " nehmen.
Allerdings immer am Anfang und Ende das Gleiche!
Gruß
Harry

froema
Beiträge: 205
Registriert: 19.12.2018, 15:20
Hat sich bedankt: 3 Mal

Re: HmIP-SMO-2 Empfindlichkeit per Skript ändern

Beitrag von froema » 07.07.2022, 12:51

Tyfys hat geschrieben:
07.07.2022, 12:44

Code: Alles auswählen

var DpVal = channels.Get(ChnName).DPByHssDP("PIR_SENSITIVITY");

Hast du das auch gemacht?
Ja, habe ich.
Tyfys hat geschrieben:
07.07.2022, 12:44
froema hat geschrieben:
07.07.2022, 12:24
Gehört der Kanalname nicht in Anführungszeichen?
Als Stringbegrenzungszeichen kann man auf der CCU so wohl ' als auch " nehmen.
Allerdings immer am Anfang und Ende das Gleiche!
Danke, das war mir auch neu.

MichaelN
Beiträge: 9686
Registriert: 27.04.2020, 10:34
System: CCU
Hat sich bedankt: 700 Mal
Danksagung erhalten: 1627 Mal

Re: HmIP-SMO-2 Empfindlichkeit per Skript ändern

Beitrag von MichaelN » 07.07.2022, 12:58

Du kannst auch ^ als string delimeter nutzen. Was den Vorteil hat, dass du dann " und ' im string benutzen kannst. Aber es hat den Nachteil, dass du auf einer unmodifizierten CCU so ein Skript nicht speichern kannst, da der Editor dort das ^ nicht mag. :roll:
LG, Michael.

Wenn du eine App zur Bedienung brauchst, dann hast du kein Smarthome.

Wettervorhersage über AccuWeather oder OpenWeatherMap+++ Rollladensteuerung 2.0 +++ JSON-API-Ausgaben auswerten +++ undokumentierte Skript-Befehle und Debugging-Tipps +++

Tyfys
Beiträge: 551
Registriert: 17.04.2021, 17:12
System: CCU
Hat sich bedankt: 27 Mal
Danksagung erhalten: 125 Mal

Re: HmIP-SMO-2 Empfindlichkeit per Skript ändern

Beitrag von Tyfys » 07.07.2022, 12:58

Baxxy hat geschrieben:
07.07.2022, 12:42
Und nochmal für Harry... 
DP's aus dem MASTER-PARMSET lassen sich nicht mit einem dom.GetObject oder sonstigen dedizierten Zugriffsmethoden greifen.
Ich dachte ja auch nur, weil in der Doku explizit als Datenpunkte angegeben. müsste es so gehen.

Ich guck mal ob ich so ein Gerät habe...
Gruß
Harry

Benutzeravatar
Black
Beiträge: 5483
Registriert: 12.09.2015, 22:31
System: Alternative CCU (auf Basis OCCU)
Wohnort: Wegberg
Hat sich bedankt: 424 Mal
Danksagung erhalten: 1074 Mal
Kontaktdaten:

Re: HmIP-SMO-2 Empfindlichkeit per Skript ändern

Beitrag von Black » 07.07.2022, 13:09

@Baxxy: Die Angabe 0-255 kommt aus dem Schnittstellenprozess, diese wird auch ausgegeben.
die WerteInterpretationstablle habe ich nun mal in die HilfeHints zu PIR_SENSITIVITY aufgenommen, sollte also in der nächsten Version auch angezeigt werden.

Black
Wenn das Fernsehprogramm immer mehr durch nervende Werbung unterbrochen wird und der Radiomoderator nur noch Müll erzählt, ist es besser, die Zeit für sinnvolle Dinge zu nutzen -
mal aufs Klo zu gehen, ein Bier zu holen oder einfach mal den roten AUS-Knopf zu drücken. Klick - und weg

Script Time Scheduler V1.3
AstroSteuerung über Zeitmodul flexibel mit Offset / spätestens, frühestens
SDV 5.03.01 Das umfassende Entwicklungs und Diagnosetool für Homematik
Selektive Backups - Nützliche Dinge, die die WebUI nicht kann

Intel NUC6 Celeron 16GB mit 512GB SSD unter Proxxmox mit insgesamt 5 VM: 2 x bloatwarebefreiter Raspberrymatik, 2 x IOBroker als Middleware und einer MariaDB zur Archivierung. Verbrauch: 6W

technical contribution against annoying advertising

Antworten

Zurück zu „HomeMatic IP Aktoren und Sensoren“