Skip to content
  • Home
  • Aktuell
  • Tags
  • 0 Ungelesen 0
  • Kategorien
  • Unreplied
  • Beliebt
  • GitHub
  • Docu
  • Hilfe
Skins
  • Light
  • Brite
  • Cerulean
  • Cosmo
  • Flatly
  • Journal
  • Litera
  • Lumen
  • Lux
  • Materia
  • Minty
  • Morph
  • Pulse
  • Sandstone
  • Simplex
  • Sketchy
  • Spacelab
  • United
  • Yeti
  • Zephyr
  • Dark
  • Cyborg
  • Darkly
  • Quartz
  • Slate
  • Solar
  • Superhero
  • Vapor

  • Standard: (Kein Skin)
  • Kein Skin
Einklappen
ioBroker Logo

Community Forum

donate donate
  1. ioBroker Community Home
  2. Deutsch
  3. Skripten / Logik
  4. Script verursacht Fehlfunktionen

NEWS

  • Jahresrückblick 2025 – unser neuer Blogbeitrag ist online! ✨
    BluefoxB
    Bluefox
    16
    1
    1.9k

  • Neuer Blogbeitrag: Monatsrückblick - Dezember 2025 🎄
    BluefoxB
    Bluefox
    13
    1
    917

  • Weihnachtsangebot 2025! 🎄
    BluefoxB
    Bluefox
    25
    1
    2.2k

Script verursacht Fehlfunktionen

Geplant Angeheftet Gesperrt Verschoben Skripten / Logik
1 Beiträge 1 Kommentatoren 546 Aufrufe
  • Älteste zuerst
  • Neuste zuerst
  • Meiste Stimmen
Antworten
  • In einem neuen Thema antworten
Anmelden zum Antworten
Dieses Thema wurde gelöscht. Nur Nutzer mit entsprechenden Rechten können es sehen.
  • MeistertrM Offline
    MeistertrM Offline
    Meistertr
    Developer
    schrieb am zuletzt editiert von
    #1

    Ich habe ein Script welches Nachrichten über die serielle Schnittstelle an ein Funkkmodul sendet. Leider bekomme ich eine Fehlermeldung(nur ein kleines Dreieck an der seite wo Steht "too many errors"). Im log bekomme ich keine Meldungen. Das script funktioniert auch , jedoch andere Scripte nciht mehr. Kann mir jemand helfen?

    Die Fehlermeldung steht in der bright Funtion beim break von case 1

    ! ````

    var logging= false;
    var SerialPort = require("serialport");
    var messageon="",messageoff=""; //save selected Zone

    ! var port = new SerialPort("/dev/ttyS0", {
    baudRate: 9600,
    xon: true,
    xoff: true,
    //flowControl: false
    //parser: SerialPort.parsers.byteDelimiter([2,4])
    platformOptions: {vmin: 0, vtime: 10, hupcl: false}
    },
    ! function test(err) {
    if (err) {
    return console.log('Error: ', err.message);
    }
    });
    ! subscribe({id:"milight.0.Zone1.bright", change:"ne"}, function (obj) {
    var dim = obj.newState.val;
    var dimold = obj.oldState.val;
    var dim_val=Math.round((dim-dimold)/10) ;

    if (dim === 0){
        valup(-13,true,1,true);
    

    ! if(logging)log("Milight: Zone 1 aus");
    }

    if (obj.newState.val !== 0 ){
        if(obj.newState.val === 100){
            valup(13,false,1,true); 
        }
        else{
            valup(dim_val,false,1,true);
        }
        log("Milight: Zone  "+ dim + "% geändert um "+ dim_val);
    }
    

    });

    ! subscribe({id:"milight.0.Zone2.bright", change:"ne"}, function (obj) {
    var dim = obj.newState.val;
    var dimold = obj.oldState.val;
    var dim_val=Math.round((dim-dimold)/10) ;

    if (dim === 0){
        valup(-13,true,2,true);
    

    ! if(logging)log("Milight: Zone 3 aus");
    }

    if (obj.newState.val !== 0 ){
        if(obj.newState.val === 100){
            valup(13,false,2,true); 
        }
        else{
            valup(dim_val,false,2,true);
        }
        log("Milight: Zone  "+ dim + "% geändert um "+ dim_val);
    }
    

    });
    subscribe({id:"milight.0.Zone3.bright", change:"ne"}, function (obj) {
    var dim = obj.newState.val;
    var dimold = obj.oldState.val;
    var dim_val=Math.round((dim-dimold)/10) ;

    if (dim === 0){
        valup(-13,true,3,true);
    

    ! if(logging)log("Milight: Zone 3 aus");
    }

    if (obj.newState.val !== 0 ){
        if(obj.newState.val === 100){
            valup(13,false,3,true); 
        }
        else{
            valup(dim_val,false,3,true);
        }
        log("Milight: Zone  "+ dim + "% geändert um "+ dim_val);
    }
    

    });
    subscribe({id:"milight.0.Zone4.bright", change:"ne"}, function (obj) {
    var dim = obj.newState.val;
    var dimold = obj.oldState.val;
    var dim_val=Math.round((dim-dimold)/10) ;

    if (dim === 0){
        valup(-13,true,4,true);
    

    ! if(logging)log("Milight: Zone 4 aus");
    }

    if (obj.newState.val !== 0 ){
        if(obj.newState.val === 100){
            valup(13,false,4,true); 
        }
        else{
            valup(dim_val,false,4,true);
        }
        log("Milight: Zone  "+ dim + "% geändert um "+ dim_val);
    }
    

    });
    subscribe({id:"milight.0.Zone1.white"/Farb Tepmperatur/, change:"ne"}, function (obj) {
    var dim = obj.newState.val;
    var dimold = obj.oldState.val;
    var dim_val=Math.round((dim-dimold)/10) ;

    if (dim === 0){
        bright(-13,1,true);
    

    ! if(logging)log("Milight: Zone1 aus");
    }

    if (obj.newState.val !== 0 ){
        if(obj.newState.val === 100){
            bright(13,1,true); 
        }
        else{
            bright(dim_val,1,true);
        }
        log("Milight: Zone  "+ dim + "% geändert um "+ dim_val);
    }
    

    });
    subscribe({id:"milight.0.Zone2.white"/Farb Tepmperatur/, change:"ne"}, function (obj) {
    var dim = obj.newState.val;
    var dimold = obj.oldState.val;
    var dim_val=Math.round((dim-dimold)/10) ;

    if (dim === 0){
        bright(-13,2,true);
    

    ! if(logging)log("Milight: Zone2 aus");
    }

    if (obj.newState.val !== 0 ){
        if(obj.newState.val === 100){
            bright(13,2,true); 
        }
        else{
            bright(dim_val,2,true);
        }
        log("Milight: Zone  "+ dim + "% geändert um "+ dim_val);
    }
    

    });

    ! subscribe({id:"milight.0.Zone3.white"/Farb Tepmperatur/, change:"ne"}, function (obj) {
    var dim = obj.newState.val;
    var dimold = obj.oldState.val;
    var dim_val=Math.round((dim-dimold)/10) ;

    if (dim === 0){
        bright(-13,3,true);
    

    ! if(logging)log("Milight: Zone3 aus");
    }

    if (obj.newState.val !== 0 ){
        if(obj.newState.val === 100){
            bright(13,3,true); 
        }
        else{
            bright(dim_val,3,true);
        }
        log("Milight: Zone  "+ dim + "% geändert um "+ dim_val);
    }
    

    });
    subscribe({id:"milight.0.Zone4.white"/Farb Tepmperatur/, change:"ne"}, function (obj) {
    var dim = obj.newState.val;
    var dimold = obj.oldState.val;
    var dim_val=Math.round((dim-dimold)/10) ;

    if (dim === 0){
        bright(-13,4,true);
    

    ! if(logging)log("Milight: Zone4 aus");
    }

    if (obj.newState.val !== 0 ){
        if(obj.newState.val === 100){
            bright(13,4,true); 
        }
        else{
            bright(dim_val,4,true);
        }
        log("Milight: Zone  "+ dim + "% geändert um "+ dim_val);
    }
    

    });

    ! port.on('data', function (data) {
    console.log('Data: ' + data.toString('hex'));
    });
    ! port.on('open', function() {
    console.log('Connected');
    });
    ! port.on('error', function(err) {
    console.log('Error: ', err.message);
    });
    ! // close port if the script stopped (to be able to open it again)
    onStop(function (callback) {
    if (port && port.isOpen()) {
    port.close();
    console.log('port closed');
    }
    callback();
    });
    ! function serialsend(text){

     // Flush input
    port.flush();
    
     port.write(text, function(err) {
                if (err) {
                    return console.log('Error on write: ', err.message);
                }
    });  
    

    }

    ! var valup = function(i,off,zone,flag) {

    if(flag){
        switch (zone) {
        case 0:
            messageon="\x35\x00\x55";
            messageoff="\x39\x00\x55";
            if(logging)console.log('Milight: Alle Bulbs ausgewählt');
            break;
        case 1:
            messageon="\x38\x00\x55";
            messageoff="\x3b\x00\x55";
            if(logging)console.log('Milight: Alle Zone 1 ausgewählt');
            break;
        case 2:
            messageon="\x3d\x00\x55";
            messageoff="\x33\x00\x55";
            if(logging)console.log('Milight: Alle Zone 2 ausgewählt');
            break;
        case 3:
            messageon="\x37\x00\x55";
            messageoff="\x3a\x00\x55";
            if(logging)console.log('Milight: Alle Zone 3 ausgewählt');
            break;  
        case 4:
            messageon="\x32\x00\x55";
            messageoff="\x36\x00\x55";
            if(logging)console.log('Milight: Alle Zone 4 ausgewählt');
            break;        
        default:
            console.log('milight: Kiene Bulb ausgewählt');
        }
        serialsend(messageon);
        setTimeout(function() { valup(i,off,zone,false) }, 200);
    }
    else{
        i = i || 0;
    
        if(i > 0 && (11-i) < 11){
            serialsend("\x3c\x00\x55");
            if(logging)log(i+ " Durchlauf");
            i--;
            setTimeout(function() { valup(i,off,zone,false) }, 200);
        }
        else if(i < 0 && (11+i) < 11){
            serialsend("\x34\x00\x55");
            if(logging)log(i+ " Durchlauf");
            i++;
            setTimeout(function() { valup(i,off,zone,false) }, 200);
        }
        if(i===0 && off){
             serialsend(messageoff);
        }
    }
    

    ! };
    ! var bright = function(j,zone1,flag1) {
    if(flag1){
    switch (zone1) {
    case 0:
    messageon="\x35\x00\x55";
    messageoff="\x39\x00\x55";
    //if(logging)console.log('Milight: Alle Bulbs ausgewählt');
    break;
    case 1:
    messageon="\x38\x00\x55";
    messageoff="\x3b\x00\x55";
    //if(logging)console.log('Milight: Alle Zone 1 ausgewählt');
    break;
    case 2:
    messageon="\x3d\x00\x55";
    messageoff="\x33\x00\x55";
    if(logging)console.log('Milight: Alle Zone 2 ausgewählt');
    break;
    case 3:
    messageon="\x37\x00\x55";
    messageoff="\x3a\x00\x55";
    if(logging)console.log('Milight: Alle Zone 3 ausgewählt');
    break;
    case 4:
    messageon="\x32\x00\x55";
    messageoff="\x36\x00\x55";
    if(logging)console.log('Milight: Alle Zone 4 ausgewählt');
    break;
    default:
    console.log('milight: Kiene Bulb ausgewählt');
    }
    serialsend(messageon);
    setTimeout(function() { bright(j,zone1,false) }, 200);
    }
    else{
    j = j || 0;

        if(j > 0 && (11-j) < 11){
            serialsend("\x3e\x00\x55");
            if(logging)log(j+ " Durchlauf");
            j--;
            setTimeout(function() { bright(j,zone1,false) }, 200);
        }
        else if(j < 0 && (11+j) < 11){
            serialsend("\x3f\x00\x55");
            if(logging)log(j+ " Durchlauf");
            j++;
            setTimeout(function() { bright(j,zone1,false) }, 200);
        }
    }
    

    };

    ! ````

    1 Antwort Letzte Antwort
    0
    Antworten
    • In einem neuen Thema antworten
    Anmelden zum Antworten
    • Älteste zuerst
    • Neuste zuerst
    • Meiste Stimmen


    Support us

    ioBroker
    Community Adapters
    Donate

    465

    Online

    32.6k

    Benutzer

    82.2k

    Themen

    1.3m

    Beiträge
    Community
    Impressum | Datenschutz-Bestimmungen | Nutzungsbedingungen | Einwilligungseinstellungen
    ioBroker Community 2014-2025
    logo
    • Anmelden

    • Du hast noch kein Konto? Registrieren

    • Anmelden oder registrieren, um zu suchen
    • Erster Beitrag
      Letzter Beitrag
    0
    • Home
    • Aktuell
    • Tags
    • Ungelesen 0
    • Kategorien
    • Unreplied
    • Beliebt
    • GitHub
    • Docu
    • Hilfe