Zeitdurchsage mit MP3 Funkgong

Problemlösungen und Hinweise von allgemeinem Interesse zur Haussteuerung mit HomeMatic

Moderator: Co-Administratoren

Benutzeravatar
Obihamster
Beiträge: 407
Registriert: 29.07.2015, 11:31

Re: Zeitdurchsage mit MP3 Funkgong

Beitrag von Obihamster » 11.03.2016, 19:40

Hallo

Ja das liegt an den neuen MP3 Funkgong der spielt mit der Firmware 2.17. genua nur 1 mal ab EQ3 weiß da wohl schon bescheid, habe es auch nur hier aus dem Forum gelesen (habe den Gong nicht selbst).
Alles elektrisch und total überlastet.

Jürgen0749
Beiträge: 120
Registriert: 10.04.2013, 16:40

Re: Zeit/Temperaturdurchsage mit MP3 Funkgong

Beitrag von Jürgen0749 » 10.08.2016, 12:53

Hallo Leute,

Hab jetzt echt alle 7 Seiten durchgelesen und probiert, es will nicht:

Laß ich mir die Uhrzeit ausgeben, dann alles Ok mit:

Code: Alles auswählen

 string gongcmd = "1,1,108000,090";

        integer stunde=system.Date("%H").ToInteger();
        integer minute=system.Date("%M").ToInteger();

        ! Es ist ...
         gongcmd = gongcmd # ",093";

        ! ... Stunden
        gongcmd = gongcmd # "," # (stunde+100).ToString();

        ! Uhr
        gongcmd = gongcmd # ",094";

        ! Minuten
        gongcmd = gongcmd # "," # (minute+100).ToString();

       ! Die Aussentemperatur beträgt ...
       gongcmd = gongcmd # ",095";
       dom.GetObject("BidCos-RF.LEQ1320836:2.SUBMIT").State( gongcmd );
Ausgabe unter Skript testen auch wie es sein soll (090,112 usw)
Jetzt soll noch die Temperatur dazu:

Code: Alles auswählen

    string gongcmd = "1,1,108000,090";

        integer stunde=system.Date("%H").ToInteger();
        integer minute=system.Date("%M").ToInteger();

        ! Es ist ...
         gongcmd = gongcmd # ",093";

        ! ... Stunden
        gongcmd = gongcmd # "," # (stunde+100).ToString();

        ! Uhr
        gongcmd = gongcmd # ",094";

        ! Minuten
        gongcmd = gongcmd # "," # (minute+100).ToString();

       ! Die Aussentemperatur beträgt ...
       gongcmd = gongcmd # ",095";
   
        var atemp = dom.GetObject("BidCos-RF.NEQ0343977:1").DPByHssDP("TEMPERATURE");

real thetemp = atemp.State();

if ( thetemp < 0 )
{
     ! minus
     gongcmd = gongcmd # ",099";
     thetemp = -1.0 * thetemp;
}

integer thetemp2 = 100+(thetemp+0.5).ToInteger();
gongcmd = gongcmd # "," # thetemp2.ToString() # ",092";

 dom.GetObject("BidCos-RF.LEQ1320836:2.SUBMIT").State( gongcmd );   
Der Funkgong macht Nix, auch unter Ausgabe Skript testen (WriteLine) Kommt gar nix ??
Mein Verdacht : Die neue Wetterstation WDS100-C6-O-2 ??

Wer kann mir helfen, wo liegt der Fehler?

Gruß Jürgen

BadenPower

Re: Zeitdurchsage mit MP3 Funkgong

Beitrag von BadenPower » 10.08.2016, 14:37

Mit

Code: Alles auswählen

dom.GetObject("BidCos-RF.NEQ0343977:1")
bekommst Du nicht das Kanal-Objekt geliefert, daher ist der Wert null und somit ist die weitere Systax fehlerhaft.

Am Besten Du holst Dir den Datenpunkt direkt, wenn Du schon die Seriennummer verwenden möchtest:

Code: Alles auswählen

var atemp = dom.GetObject("BidCos-RF.NEQ0343977:1.TEMPERATURE");
.

Jürgen0749
Beiträge: 120
Registriert: 10.04.2013, 16:40

Re: Zeitdurchsage mit MP3 Funkgong

Beitrag von Jürgen0749 » 10.08.2016, 16:02

Hi BadenPower

Danke, ja, so funktioniert es einwandfrei..

Ich stelle es nochmal für andere rein:

Code: Alles auswählen

string gongcmd = "1,1,108000,090";

        integer stunde=system.Date("%H").ToInteger();
        integer minute=system.Date("%M").ToInteger();

        ! Es ist ...
         gongcmd = gongcmd # ",093";

        ! ... Stunden
        gongcmd = gongcmd # "," # (stunde+100).ToString();

        ! Uhr
        gongcmd = gongcmd # ",094";

        ! Minuten
        gongcmd = gongcmd # "," # (minute+100).ToString();

       ! Die Aussentemperatur beträgt ...
       gongcmd = gongcmd # ",095";
   
    var atemp = dom.GetObject("BidCos-RF.NEQ0343977:1.TEMPERATURE");
     real thetemp = atemp.State();

if ( thetemp < 0 )
{
     ! minus
     gongcmd = gongcmd # ",099";
     thetemp = -1.0 * thetemp;
}

integer thetemp2 = 100+(thetemp+0.5).ToInteger();
gongcmd = gongcmd # "," # thetemp2.ToString() # ",092";

 dom.GetObject("BidCos-RF.LEQ1320836:2.SUBMIT").State( gongcmd );       
   
Danke und Gruß

Jürgen

Naldo
Beiträge: 44
Registriert: 11.10.2016, 14:55
Hat sich bedankt: 6 Mal
Danksagung erhalten: 5 Mal

Re: Zeitdurchsage mit MP3 Funkgong

Beitrag von Naldo » 13.10.2016, 20:38

Hallo miteinander,
ich bin neu hier, aber lese schon lange in diesem Forum.
For einigen Wochen hatte ich diese geniale Script gefunden und in mehrere Programme meiner Homematic eingebunden. Es hat auch wunderbar funktioniert - bis vor ein paar Tagen. Ich weiss nicht was passiert ist, habe nichts am Script geändert,
Folgendes ist passiert: Der MP3-Gong gibt über dieses Script bei Aufruf durch ein Programm keinen Laut mehr von sich, obwohl der MP3-Gong bei direktem Aufruf im Programm super funktioniert. Wenn ich eine Fehlerprüfung mache, kommt folgende Fehlermeldung (nur ein Auszug):

Error 1 at row 4 col 23 near ^ # ",031";
! Die Aussentemperatur beträgt ...
gongcmd = gongcmd # ",09
Parse following code failed:
string gongcmd = "0.3,1,108000,1";

Lasse ich das Script im Scripttester ausführen, funktioniert es wunderbar. Ich bin am verzweifeln - kann mir jemande helfen?
Ich habe eigentlich in der Zwischenzeit nur neue Aktoren angelernt.

Vielen Dank im Voraus für eure Hilfe

BadenPower

Re: Zeitdurchsage mit MP3 Funkgong

Beitrag von BadenPower » 13.10.2016, 20:54

Naldo hat geschrieben:Lasse ich das Script im Scripttester ausführen, funktioniert es wunderbar. Ich bin am verzweifeln - kann mir jemande helfen?
Ich habe eigentlich in der Zwischenzeit nur neue Aktoren angelernt.
Eventuell noch andere Programme mit Skripten erstellt?
Wurde die CCU in der letzten Zeit neu gestartet?

Benutzeravatar
papi
Beiträge: 371
Registriert: 18.12.2013, 08:40
Wohnort: Willich, NRW
Hat sich bedankt: 2 Mal
Danksagung erhalten: 5 Mal

Re: Zeitdurchsage mit MP3 Funkgong

Beitrag von papi » 13.10.2016, 21:24

...oder die 200-Variablen-Grenze geknackt?

BadenPower

Re: Zeitdurchsage mit MP3 Funkgong

Beitrag von BadenPower » 13.10.2016, 21:59

papi hat geschrieben:...oder die 200-Variablen-Grenze geknackt?
Genau darauf zielte diese Frage:
BadenPower hat geschrieben:Eventuell noch andere Programme mit Skripten erstellt?
.

Naldo
Beiträge: 44
Registriert: 11.10.2016, 14:55
Hat sich bedankt: 6 Mal
Danksagung erhalten: 5 Mal

Re: Zeitdurchsage mit MP3 Funkgong

Beitrag von Naldo » 13.10.2016, 22:22

Ja, die CCU wurde in den letzten Tagen neu gestartet, aber das sollte ja nicht das Problem sein? Die 200er Grenze bei den Systemvariablen habe ich noch lange nicht erreicht.
Vielen Dank für die Antworten

BadenPower

Re: Zeitdurchsage mit MP3 Funkgong

Beitrag von BadenPower » 13.10.2016, 22:33

Naldo hat geschrieben:Ja, die CCU wurde in den letzten Tagen neu gestartet, aber das sollte ja nicht das Problem sein? Die 200er Grenze bei den Systemvariablen habe ich noch lange nicht erreicht.
Es geht nicht um Systemvariablen, sondern um Skriptvariablenamen.

Führe einmal das Skript zum Zählen der Skriptvariablen aus und poste das Ergebnis.
Den Link dazu findest Du in meiner Signatur.

Und ja, es kann dann eben mit dem Neustart zusammenhängen, falls dises Skript dann erst gestartet wurde, als die Grenze durch andere Skripte bereits durchbrochen war.

.

Antworten

Zurück zu „HomeMatic Tipps & Tricks - keine Fragen!“