Navigation

    Logo
    • Register
    • Login
    • Search
    • Recent
    • Tags
    • Unread
    • Categories
    • Unreplied
    • Popular
    • GitHub
    • Docu
    • Hilfe
    1. Home
    2. Carber

    NEWS

    • ioBroker@Smart Living Forum Solingen, 14.06. - Agenda added

    • ioBroker goes Matter ... Matter Adapter in Stable

    • Monatsrückblick - April 2025

    C
    • Profile
    • Following 0
    • Followers 0
    • Topics 0
    • Posts 3
    • Best 2
    • Groups 1

    Carber

    @Carber

    Starter

    3
    Reputation
    6
    Profile views
    3
    Posts
    0
    Followers
    0
    Following
    Joined Last Online

    Carber Follow
    Starter

    Best posts made by Carber

    • RE: SONOFF NSPanel mit Lovelace UI

      Hallo an Alle,

      zuerst einmal ein dickes Lob an alle Mitwirkenden an diesem Projekt.
      Auch ein riesiges Lob an dieses Forum, welches mir durch einen freundlichen und sachlichen Umgang miteinander sehr positiv aufgefallen ist.
      Ich gehöre seit geraumer Zeit auch zu den NSPanel-Infizierten, der bislang sehr von der umfangreichen Arbeit der am Projekt beteiligten profitiert hat.
      Ich habe mich dazu entschlossen mich hier anzumelden um meinerseits zu einem weiteren Gelingen beizutragen und so der Community etwas zurückzugeben.
      Mir sind nämlich Fehler aufgefallen die ich benennen und zu deren Behebung auch gleich einen Bugfix im TS anbieten kann.
      Doch dazu später mehr…
      Gruß an Alle

      posted in Hardware
      C
      Carber
    • RE: SONOFF NSPanel mit Lovelace UI

      Hallo,
      und weitere Bugfix’s:
      Bei der Darstellung eines „door“ oder „window“ Alias kann kein eigenes icon2 definiert werden.
      Dieses befindet sich einmal in der „Funktion CreateEntity“ unter „if (pageItem.navigate)“ unter „case ‚window‘“.

                              case 'door':
                              case 'window':
                                  if (existsState(pageItem.id + '.ACTUAL')) {
                                      if (getState(pageItem.id + '.ACTUAL').val == false) {   //hier fehlte == false (Carber)
                                          iconId = pageItem.icon !== undefined ? Icons.GetIcon(pageItem.icon) : o.common.role == 'door' ? Icons.GetIcon('door-open') : Icons.GetIcon('window-open-variant');
                                          iconColor = GetIconColor(pageItem, false, useColors);
                                      } else {
                                          iconId = pageItem.icon !== undefined ? Icons.GetIcon(pageItem.icon) : o.common.role == 'door' ? Icons.GetIcon('door-closed') : Icons.GetIcon('window-closed-variant');
                      // Zeile hinzugefügt sonst keine Anzeige von icon2 (Carber)
                                          iconId = pageItem.icon2 !== undefined ? Icons.GetIcon(pageItem.icon2) : o.common.role == 'door' ? Icons.GetIcon('door-closed') : Icons.GetIcon('window-closed-variant');
                                          iconColor = GetIconColor(pageItem, true, useColors);
                                      }
                                  }
                                  break;
      
      

      Dieses befindet sich noch einmal in der „Funktion CreateEntity“ unter „switch (o.common.role)“ unter „case ‚window‘“.

                      case 'door':
                      case 'window':
                          type = 'text';
                          let windowState: string;    //hier fehlte die Zuordnung : string (Carber)
      
                          if (existsState(pageItem.id + '.ACTUAL')) {
                              if (getState(pageItem.id + '.ACTUAL').val == false)  {    //hier fehlte == false
                                  iconId = pageItem.icon !== undefined ? Icons.GetIcon(pageItem.icon) : o.common.role == 'door' ? Icons.GetIcon('door-open') : Icons.GetIcon('window-open-variant');
                                  iconColor = GetIconColor(pageItem, false, useColors);
                                  windowState = findLocale('window', 'opened');
                              } else {
                                  iconId = pageItem.icon !== undefined ? Icons.GetIcon(pageItem.icon) : o.common.role == 'door' ? Icons.GetIcon('door-closed') : Icons.GetIcon('window-closed-variant');
                      // Zeile hinzugefügt sonst keine Anzeige von icon2 (Carber)
                                  iconId = pageItem.icon2 !== undefined ? Icons.GetIcon(pageItem.icon2) : o.common.role == 'door' ? Icons.GetIcon('door-closed') : Icons.GetIcon('window-closed-variant');
                                  iconColor = GetIconColor(pageItem, true, useColors);
                                  windowState = findLocale('window', 'closed');
                              }
                          }
      
      
      posted in Hardware
      C
      Carber

    Latest posts made by Carber

    • RE: SONOFF NSPanel mit Lovelace UI

      Hallo,
      und weitere Bugfix’s:
      Bei der Darstellung eines „door“ oder „window“ Alias kann kein eigenes icon2 definiert werden.
      Dieses befindet sich einmal in der „Funktion CreateEntity“ unter „if (pageItem.navigate)“ unter „case ‚window‘“.

                              case 'door':
                              case 'window':
                                  if (existsState(pageItem.id + '.ACTUAL')) {
                                      if (getState(pageItem.id + '.ACTUAL').val == false) {   //hier fehlte == false (Carber)
                                          iconId = pageItem.icon !== undefined ? Icons.GetIcon(pageItem.icon) : o.common.role == 'door' ? Icons.GetIcon('door-open') : Icons.GetIcon('window-open-variant');
                                          iconColor = GetIconColor(pageItem, false, useColors);
                                      } else {
                                          iconId = pageItem.icon !== undefined ? Icons.GetIcon(pageItem.icon) : o.common.role == 'door' ? Icons.GetIcon('door-closed') : Icons.GetIcon('window-closed-variant');
                      // Zeile hinzugefügt sonst keine Anzeige von icon2 (Carber)
                                          iconId = pageItem.icon2 !== undefined ? Icons.GetIcon(pageItem.icon2) : o.common.role == 'door' ? Icons.GetIcon('door-closed') : Icons.GetIcon('window-closed-variant');
                                          iconColor = GetIconColor(pageItem, true, useColors);
                                      }
                                  }
                                  break;
      
      

      Dieses befindet sich noch einmal in der „Funktion CreateEntity“ unter „switch (o.common.role)“ unter „case ‚window‘“.

                      case 'door':
                      case 'window':
                          type = 'text';
                          let windowState: string;    //hier fehlte die Zuordnung : string (Carber)
      
                          if (existsState(pageItem.id + '.ACTUAL')) {
                              if (getState(pageItem.id + '.ACTUAL').val == false)  {    //hier fehlte == false
                                  iconId = pageItem.icon !== undefined ? Icons.GetIcon(pageItem.icon) : o.common.role == 'door' ? Icons.GetIcon('door-open') : Icons.GetIcon('window-open-variant');
                                  iconColor = GetIconColor(pageItem, false, useColors);
                                  windowState = findLocale('window', 'opened');
                              } else {
                                  iconId = pageItem.icon !== undefined ? Icons.GetIcon(pageItem.icon) : o.common.role == 'door' ? Icons.GetIcon('door-closed') : Icons.GetIcon('window-closed-variant');
                      // Zeile hinzugefügt sonst keine Anzeige von icon2 (Carber)
                                  iconId = pageItem.icon2 !== undefined ? Icons.GetIcon(pageItem.icon2) : o.common.role == 'door' ? Icons.GetIcon('door-closed') : Icons.GetIcon('window-closed-variant');
                                  iconColor = GetIconColor(pageItem, true, useColors);
                                  windowState = findLocale('window', 'closed');
                              }
                          }
      
      
      posted in Hardware
      C
      Carber
    • RE: SONOFF NSPanel mit Lovelace UI

      Hallo,
      wie angekündigt meine versprochenen Bugfix’s:
      Bei der Verwendung eines „Thermostat“-Alias im cardGrid wie im Folgenden dargestellt werden die Farben falsch interpretiert.
      Zur Anzeige kommt hier nämlich die aktuelle Temperatur und die Farbgebung basiert auf dem Wert des Set-Points

      let TestGrid = <PageGrid>
      {
          'type': 'cardGrid',
          'heading': 'Temperaturen',
          'useColor': true,
          'items': [
              <PageItem>{ id: 'alias.0.Testgeräte.TestThermostat', name: 'TestThermostat °C', useValue: true, colorScale: {'val_min': 0, 'val_max': 10, 'val_best': 5} },
              <PageItem>{ id: 'alias.0.HMIPanel1.Raumklima1.Feuchte', name: 'BüroFeuchte %', useValue: true, colorScale: {'val_min': 0, 'val_max': 100, 'val_best': 50} },
              <PageItem>{ id: 'alias.0.HMIPanel1.Raumklima1.Taupunkt', name: 'BüroTaup. °C', useValue: true, colorScale: {'val_min': 0, 'val_max': 30, 'val_best': 5} },
              <PageItem>{ id: 'alias.0.HMIPanel1.Raumklima1.QNH', name: 'Büro QNH', useValue: true, colorScale: {'val_min': 950, 'val_max': 1050, 'val_best': 1013} },
              <PageItem>{ navigate: true, id: 'alias.0.Testgeräte.TestFenster', targetPage: 'Thermostat_Test', onColor: On, offColor: HMIOff, icon: 'valve-open', icon2: 'valve-closed', name: 'Fenster'},
              <PageItem>{ id: 'alias.0.Testgeräte.TestBewegung', name: 'Bewegung', },
      
      

      Zur Interpretation der Farben zieht das Skript nämlich den Datenpunkt .SET heran.
      Dieser Fehler kann beseitigt werden in der „Funktion CreateEntity“ unter „switch (o.common.role)“ unter „case ‚thermostat“.

                          if (pageItem.colorScale != undefined) {
                              let iconvalmin = (pageItem.colorScale.val_min != undefined) ? pageItem.colorScale.val_min : 0 ;
                              let iconvalmax = (pageItem.colorScale.val_max != undefined) ? pageItem.colorScale.val_max : 100 ;
                              let iconvalbest = (pageItem.colorScale.val_best != undefined) ? pageItem.colorScale.val_best : iconvalmin ;
                              let valueScale = parseInt(optVal);    //let valueScale = val: zieht den Wert von .SET zur Farbgenerierung heran (Carber)
      
      
      posted in Hardware
      C
      Carber
    • RE: SONOFF NSPanel mit Lovelace UI

      Hallo an Alle,

      zuerst einmal ein dickes Lob an alle Mitwirkenden an diesem Projekt.
      Auch ein riesiges Lob an dieses Forum, welches mir durch einen freundlichen und sachlichen Umgang miteinander sehr positiv aufgefallen ist.
      Ich gehöre seit geraumer Zeit auch zu den NSPanel-Infizierten, der bislang sehr von der umfangreichen Arbeit der am Projekt beteiligten profitiert hat.
      Ich habe mich dazu entschlossen mich hier anzumelden um meinerseits zu einem weiteren Gelingen beizutragen und so der Community etwas zurückzugeben.
      Mir sind nämlich Fehler aufgefallen die ich benennen und zu deren Behebung auch gleich einen Bugfix im TS anbieten kann.
      Doch dazu später mehr…
      Gruß an Alle

      posted in Hardware
      C
      Carber
    Community
    Impressum | Datenschutz-Bestimmungen | Nutzungsbedingungen
    The ioBroker Community 2014-2023
    logo