Weiter zum Inhalt
  • Home
  • Aktuell
  • Tags
  • 0 Ungelesen 0
  • Kategorien
  • Unreplied
  • Beliebt
  • GitHub
  • Docu
  • Hilfe
Skins
  • Hell
  • Brite
  • Cerulean
  • Cosmo
  • Flatly
  • Journal
  • Litera
  • Lumen
  • Lux
  • Materia
  • Minty
  • Morph
  • Pulse
  • Sandstone
  • Simplex
  • Sketchy
  • Spacelab
  • United
  • Yeti
  • Zephyr
  • Dunkel
  • 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. ioBroker Allgemein
  4. ESPHome - Name von Sensornamen

NEWS

  • Monatsrückblick Januar/Februar 2026 ist online!
    BluefoxB
    Bluefox
    18
    1
    689

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

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

ESPHome - Name von Sensornamen

Geplant Angeheftet Gesperrt Verschoben ioBroker Allgemein
17 Beiträge 4 Kommentatoren 914 Aufrufe 2 Beobachtet
  • Ä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.
  • W Offline
    W Offline
    WolfgangFB
    schrieb am zuletzt editiert von
    #1

    Nach welchem Schema werden eigentlich die Namen der Sensoren gebildet?
    Wenn ich irgend etwas im yaml File ändere dann bekommen die Sensoren eine neue Nummer (z.B. ändert sich der Teil vor "state" in esphome.0.483FDA36363A.BinarySensor.1951150879.state). Das ist etwas nervig weil man dann alle Skripte oder Vis Elemente, die darauf zugreifen, anpassen muss.
    Wäre es nicht möglich, diese "Namen" selbst zu vergeben? Der erste Teil 0.483FDA36363A ist die Mac Adresse des Teils, aber wie wird der 1951150879 Teil gebildet?

    K 2 Antworten Letzte Antwort
    0
    • W WolfgangFB

      Nach welchem Schema werden eigentlich die Namen der Sensoren gebildet?
      Wenn ich irgend etwas im yaml File ändere dann bekommen die Sensoren eine neue Nummer (z.B. ändert sich der Teil vor "state" in esphome.0.483FDA36363A.BinarySensor.1951150879.state). Das ist etwas nervig weil man dann alle Skripte oder Vis Elemente, die darauf zugreifen, anpassen muss.
      Wäre es nicht möglich, diese "Namen" selbst zu vergeben? Der erste Teil 0.483FDA36363A ist die Mac Adresse des Teils, aber wie wird der 1951150879 Teil gebildet?

      K Offline
      K Offline
      klassisch
      Most Active
      schrieb am zuletzt editiert von klassisch
      #2

      @wolfgangfb Nicht bei jeder Änderung werden die IDs geändert, soweit ich das sehe.

      Hatte das schon mal in einem anderen Thread gefragt. @Dutchman hat das beantwortet. So weit ich das verstanden habe, werden die Ids so von ESPHome generiert und kommen dann vom ESP. Der Adapter übernimmt das dann so.
      Wäre also ein Change Request bei ESPHome. Aber ich fürchte, die haben sich etwas dabei überlegt und werden wohl auf dem Verfahren bestehen.
      Ich persönlich finde es auch nicht superpraktisch.

      Mir perönlich wäre es auch lieber, wenn man statt dieser Nummer den Namen verwenden würde. Aber wahrscheinlich sind dann die Eindeutigkeiten nicht mehr automatisch gewährleistet. Kann ich aber auch selbst machen und bin dann selbst dafür verantwortlich. Also für mich wäre es ok, einfach die ID mit dem Namen gleich zu setzen und diese UUID einfach entfallen zu lassen.

      W 1 Antwort Letzte Antwort
      0
      • K klassisch

        @wolfgangfb Nicht bei jeder Änderung werden die IDs geändert, soweit ich das sehe.

        Hatte das schon mal in einem anderen Thread gefragt. @Dutchman hat das beantwortet. So weit ich das verstanden habe, werden die Ids so von ESPHome generiert und kommen dann vom ESP. Der Adapter übernimmt das dann so.
        Wäre also ein Change Request bei ESPHome. Aber ich fürchte, die haben sich etwas dabei überlegt und werden wohl auf dem Verfahren bestehen.
        Ich persönlich finde es auch nicht superpraktisch.

        Mir perönlich wäre es auch lieber, wenn man statt dieser Nummer den Namen verwenden würde. Aber wahrscheinlich sind dann die Eindeutigkeiten nicht mehr automatisch gewährleistet. Kann ich aber auch selbst machen und bin dann selbst dafür verantwortlich. Also für mich wäre es ok, einfach die ID mit dem Namen gleich zu setzen und diese UUID einfach entfallen zu lassen.

        W Offline
        W Offline
        WolfgangFB
        schrieb am zuletzt editiert von
        #3

        @klassisch
        Wenn ich im yaml den Namen eines Sensors ändere, dann ändert sich die ID. Was ich auch nicht nachvollziehen kann: Ich werde nicht benötigte IDs nicht mehr los. Ich kann die löschen so oft ich will, der ESPHome Adapter legt mir immer alle jemals verwendeten IDs wieder an. Wie kann ich das verhindern?

        K 1 Antwort Letzte Antwort
        0
        • W WolfgangFB

          Nach welchem Schema werden eigentlich die Namen der Sensoren gebildet?
          Wenn ich irgend etwas im yaml File ändere dann bekommen die Sensoren eine neue Nummer (z.B. ändert sich der Teil vor "state" in esphome.0.483FDA36363A.BinarySensor.1951150879.state). Das ist etwas nervig weil man dann alle Skripte oder Vis Elemente, die darauf zugreifen, anpassen muss.
          Wäre es nicht möglich, diese "Namen" selbst zu vergeben? Der erste Teil 0.483FDA36363A ist die Mac Adresse des Teils, aber wie wird der 1951150879 Teil gebildet?

          K Offline
          K Offline
          klassisch
          Most Active
          schrieb am zuletzt editiert von
          #4

          @wolfgangfb sagte in ESPHome - Name von Sensornamen:

          Wäre es nicht möglich, diese "Namen" selbst zu vergeben? Der erste Teil 0.483FDA36363A ist die Mac Adresse des Teils, aber wie wird der 1951150879 Teil gebildet?

          Wir könnten ja versuchen folgenden Änderungsvorschlag auf Github einzureichen:

          The path and IDs of the data points were generated automatically according to the definition made by ESPHome and delivered by the ESPs.
          The Ids follow this pattern:

          esphome.<instance#>.<MAC-Address>.Sensor.<random#>.state
          

          This is ok, as a default.

          Would it be possible to implement an alternative pattern such as

          <user defined path>.<name of the ESP>.<name of data point>.state
          
          

          example: currently we have the following path and ID
          de037826-1928-446b-95c8-08542bf2dbcc-grafik.png
          leading to

          esphome.0.8CAAB57ACB29.Sensor.3409894020.state
          

          more convenient would be

          0_userdata.0.moisture.hobbyroom.hobby-wall-moisture.Dew Point.state
          

          with the correspondence / replacement:

          The user defined path

          0_userdata.0.moisture.hobbyroom
          

          replaces

          esphome.0
          

          The name of the ESP

          hobby-wall-moisture
          

          replaces the MAC of the ESP

          8CAAB57ACB29
          

          and the name of the sensor data point

          Dew Point
          

          replaces the random ID#

          3409894020
          

          The descriptor

          Sensor
          

          can be dropped

          E 1 Antwort Letzte Antwort
          1
          • W WolfgangFB

            @klassisch
            Wenn ich im yaml den Namen eines Sensors ändere, dann ändert sich die ID. Was ich auch nicht nachvollziehen kann: Ich werde nicht benötigte IDs nicht mehr los. Ich kann die löschen so oft ich will, der ESPHome Adapter legt mir immer alle jemals verwendeten IDs wieder an. Wie kann ich das verhindern?

            K Offline
            K Offline
            klassisch
            Most Active
            schrieb am zuletzt editiert von
            #5

            @wolfgangfb sagte in ESPHome - Name von Sensornamen:

            @klassisch
            Wenn ich im yaml den Namen eines Sensors ändere, dann ändert sich die ID.

            Ja, genau

            Was ich auch nicht nachvollziehen kann: Ich werde nicht benötigte IDs nicht mehr los. Ich kann die löschen so oft ich will, der ESPHome Adapter legt mir immer alle jemals verwendeten IDs wieder an. Wie kann ich das verhindern?

            Hast Du die alten Teile in der Instanzenansicht des Adapters gelöscht?

            W 1 Antwort Letzte Antwort
            0
            • K klassisch

              @wolfgangfb sagte in ESPHome - Name von Sensornamen:

              Wäre es nicht möglich, diese "Namen" selbst zu vergeben? Der erste Teil 0.483FDA36363A ist die Mac Adresse des Teils, aber wie wird der 1951150879 Teil gebildet?

              Wir könnten ja versuchen folgenden Änderungsvorschlag auf Github einzureichen:

              The path and IDs of the data points were generated automatically according to the definition made by ESPHome and delivered by the ESPs.
              The Ids follow this pattern:

              esphome.<instance#>.<MAC-Address>.Sensor.<random#>.state
              

              This is ok, as a default.

              Would it be possible to implement an alternative pattern such as

              <user defined path>.<name of the ESP>.<name of data point>.state
              
              

              example: currently we have the following path and ID
              de037826-1928-446b-95c8-08542bf2dbcc-grafik.png
              leading to

              esphome.0.8CAAB57ACB29.Sensor.3409894020.state
              

              more convenient would be

              0_userdata.0.moisture.hobbyroom.hobby-wall-moisture.Dew Point.state
              

              with the correspondence / replacement:

              The user defined path

              0_userdata.0.moisture.hobbyroom
              

              replaces

              esphome.0
              

              The name of the ESP

              hobby-wall-moisture
              

              replaces the MAC of the ESP

              8CAAB57ACB29
              

              and the name of the sensor data point

              Dew Point
              

              replaces the random ID#

              3409894020
              

              The descriptor

              Sensor
              

              can be dropped

              E Abwesend
              E Abwesend
              e-s
              schrieb am zuletzt editiert von
              #6

              @klassisch
              Kannst du bitte einen PR erstellen, ich finde den Vorschlag super. Vielleicht kann @Dutchman etwas dazu sagen.

              K 1 Antwort Letzte Antwort
              0
              • E e-s

                @klassisch
                Kannst du bitte einen PR erstellen, ich finde den Vorschlag super. Vielleicht kann @Dutchman etwas dazu sagen.

                K Offline
                K Offline
                klassisch
                Most Active
                schrieb am zuletzt editiert von
                #7

                @e-s sagte in ESPHome - Name von Sensornamen:

                Kannst du bitte einen PR erstellen,

                Wenn ich git richtig verstanden habe, dann bräuchte ich für einen Pull request Code. Aber ich bin kein Programmierprofi.
                Ich könnte einen issue aufmachen und diesen Vorschlag einbringen.

                ich finde den Vorschlag super.

                vielen Dank, man muß sich dann halt darüber im Klaren sein, daß man dann halt für die Kollisionsfreiheit selbst verantwortlich ist. Aber das wäre es mir wert.

                Vielleicht kann @Dutchman etwas dazu sagen.

                Ja, das wäre prima. Könnte ja sein, daß er keine Zeit dafür hat, oder die ganze Sache zu umfangreich würde oder wir etwas generelles übersehen haben.

                1 Antwort Letzte Antwort
                0
                • K klassisch

                  @wolfgangfb sagte in ESPHome - Name von Sensornamen:

                  @klassisch
                  Wenn ich im yaml den Namen eines Sensors ändere, dann ändert sich die ID.

                  Ja, genau

                  Was ich auch nicht nachvollziehen kann: Ich werde nicht benötigte IDs nicht mehr los. Ich kann die löschen so oft ich will, der ESPHome Adapter legt mir immer alle jemals verwendeten IDs wieder an. Wie kann ich das verhindern?

                  Hast Du die alten Teile in der Instanzenansicht des Adapters gelöscht?

                  W Offline
                  W Offline
                  WolfgangFB
                  schrieb am zuletzt editiert von
                  #8

                  @klassisch said in ESPHome - Name von Sensornamen:

                  @wolfgangfb sagte in ESPHome - Name von Sensornamen:

                  @klassisch
                  Wenn ich im yaml den Namen eines Sensors ändere, dann ändert sich die ID.

                  Ja, genau

                  Was ich auch nicht nachvollziehen kann: Ich werde nicht benötigte IDs nicht mehr los. Ich kann die löschen so oft ich will, der ESPHome Adapter legt mir immer alle jemals verwendeten IDs wieder an. Wie kann ich das verhindern?

                  Hast Du die alten Teile in der Instanzenansicht des Adapters gelöscht?

                  Was meinst Du damit?
                  Ich habe sie bei "Objekte" aus dem Baum esphome.0 gelöscht. Bei den Instanzen kann ich nur ganze Devices löschen.

                  K 1 Antwort Letzte Antwort
                  0
                  • W WolfgangFB

                    @klassisch said in ESPHome - Name von Sensornamen:

                    @wolfgangfb sagte in ESPHome - Name von Sensornamen:

                    @klassisch
                    Wenn ich im yaml den Namen eines Sensors ändere, dann ändert sich die ID.

                    Ja, genau

                    Was ich auch nicht nachvollziehen kann: Ich werde nicht benötigte IDs nicht mehr los. Ich kann die löschen so oft ich will, der ESPHome Adapter legt mir immer alle jemals verwendeten IDs wieder an. Wie kann ich das verhindern?

                    Hast Du die alten Teile in der Instanzenansicht des Adapters gelöscht?

                    Was meinst Du damit?
                    Ich habe sie bei "Objekte" aus dem Baum esphome.0 gelöscht. Bei den Instanzen kann ich nur ganze Devices löschen.

                    K Offline
                    K Offline
                    klassisch
                    Most Active
                    schrieb am zuletzt editiert von
                    #9

                    @wolfgangfb Ja genau. Wenn Du so ein Device umbenannt hast, dann solltest Du das alte device in der Instanzenansicht des Adapters löschen. Danach kannst Du auch die Objekte dieses alten Devices löschen.
                    Bei den aktiven Devices werden alle Datenpunkte angelegt, die im YAML definiert sind.

                    W 1 Antwort Letzte Antwort
                    0
                    • K klassisch

                      @wolfgangfb Ja genau. Wenn Du so ein Device umbenannt hast, dann solltest Du das alte device in der Instanzenansicht des Adapters löschen. Danach kannst Du auch die Objekte dieses alten Devices löschen.
                      Bei den aktiven Devices werden alle Datenpunkte angelegt, die im YAML definiert sind.

                      W Offline
                      W Offline
                      WolfgangFB
                      schrieb am zuletzt editiert von
                      #10

                      @klassisch
                      Hi

                      Das stimmt zumindest bei mir so leider nicht. Ich habe eine neues yaml erstellt und installiert. Es wird bei den Objekten ein Baum erstellt der unter anderem state mit dem Namen "Name1" hat. Jetzt gehe ich in die Instanzen von ESPHome, lösche das gesamte Device (damit wird automatisch bei den Objekten alles von diesem Device entfernt, auch "Name1". Jetzt gehe ich in yaml, benenne den Sensor von "Name1" in Name2" um, speichere und schreibe auf den ESP und anschließend habe ich in den Objekten 2 states, einmal "Name1" und einmal "Name2". Wie werde ich Name1 los?

                      K 1 Antwort Letzte Antwort
                      0
                      • W WolfgangFB

                        @klassisch
                        Hi

                        Das stimmt zumindest bei mir so leider nicht. Ich habe eine neues yaml erstellt und installiert. Es wird bei den Objekten ein Baum erstellt der unter anderem state mit dem Namen "Name1" hat. Jetzt gehe ich in die Instanzen von ESPHome, lösche das gesamte Device (damit wird automatisch bei den Objekten alles von diesem Device entfernt, auch "Name1". Jetzt gehe ich in yaml, benenne den Sensor von "Name1" in Name2" um, speichere und schreibe auf den ESP und anschließend habe ich in den Objekten 2 states, einmal "Name1" und einmal "Name2". Wie werde ich Name1 los?

                        K Offline
                        K Offline
                        klassisch
                        Most Active
                        schrieb am zuletzt editiert von klassisch
                        #11

                        @wolfgangfb Bin nicht sicher, ob ich sowas schon mal hatte, weil ich eher erweitere als rückbaue.
                        Aber Bei Dir hat der Adapter das Device unter dem selben Devicenamen mit name 1 und name 2 "gesehen". Du hast ja das Device und die Objekte gelöscht, während der ESP noch mit name 1 lief. Er könnte sich dann beim Adapter gemeldet haben während Du neu übersetzt hast. Der Adapter hätte dann name 1 gesehen und registriert.
                        Ich würde es so versuchen:

                        • Neues ymal ohne den name 1 erstellen
                        • übersetzen hochladen, laufen lassen
                        • ESP stoppen
                        • Objekte löschen
                        • Device löschen
                        • Nochmals kontrollieren. Alle Objekte weg?
                        • Adapter neu starten und prüfen, ob die Objekte noch immer weg sind (wahrscheinlich unnötig, hilft aber evtl. bei der Fehlersuche)
                        • ESP neu starten
                        • warten bis die Objekte befüllt sind. kommt name1 jetzt immer noch?
                        W 1 Antwort Letzte Antwort
                        0
                        • K klassisch

                          @wolfgangfb Bin nicht sicher, ob ich sowas schon mal hatte, weil ich eher erweitere als rückbaue.
                          Aber Bei Dir hat der Adapter das Device unter dem selben Devicenamen mit name 1 und name 2 "gesehen". Du hast ja das Device und die Objekte gelöscht, während der ESP noch mit name 1 lief. Er könnte sich dann beim Adapter gemeldet haben während Du neu übersetzt hast. Der Adapter hätte dann name 1 gesehen und registriert.
                          Ich würde es so versuchen:

                          • Neues ymal ohne den name 1 erstellen
                          • übersetzen hochladen, laufen lassen
                          • ESP stoppen
                          • Objekte löschen
                          • Device löschen
                          • Nochmals kontrollieren. Alle Objekte weg?
                          • Adapter neu starten und prüfen, ob die Objekte noch immer weg sind (wahrscheinlich unnötig, hilft aber evtl. bei der Fehlersuche)
                          • ESP neu starten
                          • warten bis die Objekte befüllt sind. kommt name1 jetzt immer noch?
                          W Offline
                          W Offline
                          WolfgangFB
                          schrieb am zuletzt editiert von
                          #12

                          @klassisch

                          OK, mit einem Stoppen des ESP Adapters ist jetzt tatsächlich Name1 weg (mal sehen wie lange :-)
                          Wie ist das wenn ich den ESP Adapter stoppe, dann kommen in der Zeit auch keine aktualisierten Sensorwerte (von anderen ESP Devices) an, richtig?

                          Was mich jetzt auch stutzig macht: Ich spiele schon den ganzen Mittag mit verschiedensten ESPs rum, der aktuelle (der mit dem Name1 Problem), hat keinen "Info" Baum. Nach welchen Kriterien wird der angelegt bzw. nicht angelegt?

                          K 1 Antwort Letzte Antwort
                          0
                          • W WolfgangFB

                            @klassisch

                            OK, mit einem Stoppen des ESP Adapters ist jetzt tatsächlich Name1 weg (mal sehen wie lange :-)
                            Wie ist das wenn ich den ESP Adapter stoppe, dann kommen in der Zeit auch keine aktualisierten Sensorwerte (von anderen ESP Devices) an, richtig?

                            Was mich jetzt auch stutzig macht: Ich spiele schon den ganzen Mittag mit verschiedensten ESPs rum, der aktuelle (der mit dem Name1 Problem), hat keinen "Info" Baum. Nach welchen Kriterien wird der angelegt bzw. nicht angelegt?

                            K Offline
                            K Offline
                            klassisch
                            Most Active
                            schrieb am zuletzt editiert von
                            #13

                            @wolfgangfb sagte in ESPHome - Name von Sensornamen:

                            OK, mit einem Stoppen des ESP Adapters ist jetzt tatsächlich Name1 weg (mal sehen wie lange :-)

                            Aber Du hast den Adapter mittlerweile wieder neu gestartet?

                            Wie ist das wenn ich den ESP Adapter stoppe, dann kommen in der Zeit auch keine aktualisierten Sensorwerte (von anderen ESP Devices) an, richtig?

                            Ja, der Adapter arbeitet dann nicht und der ist der Ansprechpartner für die ESPs

                            Was mich jetzt auch stutzig macht: Ich spiele schon den ganzen Mittag mit verschiedensten ESPs rum, der aktuelle (der mit dem Name1 Problem), hat keinen "Info" Baum. Nach welchen Kriterien wird der angelegt bzw. nicht angelegt?

                            Keine Ahnung, bei mir haben alle einen Info-Baum.

                            1 Antwort Letzte Antwort
                            0
                            • DutchmanD Offline
                              DutchmanD Offline
                              Dutchman
                              Developer Most Active Administrators
                              schrieb am zuletzt editiert von
                              #14

                              was ihr auch da wünscht verstehe ich, kan ich aber kaum umsetzen...
                              Wir brauchen immer eine separate ID im object baum von ioBroker, dies muss fest sein.

                              ESPHome generiert selber die so genannte entity ID, warum die sich bei einer kleine aendderung (wieder der name in der YAML) auch ändert kan ich nicht erklären kommt halt von ESPHome und werden die auch nicht aendern.

                              Um name als id's zu übernehmen ist auch gefährlich, im gründe habe wir damit genau dasselbe problem erneut (man ändert den namen in ESPHome und es wird ein neuer state..... also nix geholfen :)) zudem entsteht das risico von sonder Zeichen die wieder einiges kaputt machen in object Strukturen

                              K 1 Antwort Letzte Antwort
                              0
                              • DutchmanD Dutchman

                                was ihr auch da wünscht verstehe ich, kan ich aber kaum umsetzen...
                                Wir brauchen immer eine separate ID im object baum von ioBroker, dies muss fest sein.

                                ESPHome generiert selber die so genannte entity ID, warum die sich bei einer kleine aendderung (wieder der name in der YAML) auch ändert kan ich nicht erklären kommt halt von ESPHome und werden die auch nicht aendern.

                                Um name als id's zu übernehmen ist auch gefährlich, im gründe habe wir damit genau dasselbe problem erneut (man ändert den namen in ESPHome und es wird ein neuer state..... also nix geholfen :)) zudem entsteht das risico von sonder Zeichen die wieder einiges kaputt machen in object Strukturen

                                K Offline
                                K Offline
                                klassisch
                                Most Active
                                schrieb am zuletzt editiert von
                                #15

                                @dutchman sagte in ESPHome - Name von Sensornamen:

                                Um name als id's zu übernehmen ist auch gefährlich, im gründe habe wir damit genau dasselbe problem erneut (man ändert den namen in ESPHome und es wird ein neuer state..... also nix geholfen :))

                                Doch schon - zumindest im Normalzustand. Dann wären die IDs sprechend, was sie jetzt leider nicht sind. Wenn man die Werte z.B. in FLOT nutzen möchte, ist das derzeit umständlich.

                                zudem entsteht das risico von sonder Zeichen die wieder einiges kaputt machen in object Strukturen

                                Ja, Sonderzeichen sind aergerlich. Auch so ein Thema, welches man bei der Rechtschreibreform vor 25 Jahren vergessen hat: Eliminierung der Sonderzeichen.

                                Ich waere da aber recht lieblos und wuerde alle Sonderzeichen einfach skippen.
                                Also aus "Küche" wuerde ich einfach "Kche" machen. Das wurden die user sicher schnell merken - und vermutlich einen neuen CR schreiben, der den Entwickler wieder unnoetig beschaefitigt :-)

                                DutchmanD 1 Antwort Letzte Antwort
                                1
                                • K klassisch

                                  @dutchman sagte in ESPHome - Name von Sensornamen:

                                  Um name als id's zu übernehmen ist auch gefährlich, im gründe habe wir damit genau dasselbe problem erneut (man ändert den namen in ESPHome und es wird ein neuer state..... also nix geholfen :))

                                  Doch schon - zumindest im Normalzustand. Dann wären die IDs sprechend, was sie jetzt leider nicht sind. Wenn man die Werte z.B. in FLOT nutzen möchte, ist das derzeit umständlich.

                                  zudem entsteht das risico von sonder Zeichen die wieder einiges kaputt machen in object Strukturen

                                  Ja, Sonderzeichen sind aergerlich. Auch so ein Thema, welches man bei der Rechtschreibreform vor 25 Jahren vergessen hat: Eliminierung der Sonderzeichen.

                                  Ich waere da aber recht lieblos und wuerde alle Sonderzeichen einfach skippen.
                                  Also aus "Küche" wuerde ich einfach "Kche" machen. Das wurden die user sicher schnell merken - und vermutlich einen neuen CR schreiben, der den Entwickler wieder unnoetig beschaefitigt :-)

                                  DutchmanD Offline
                                  DutchmanD Offline
                                  Dutchman
                                  Developer Most Active Administrators
                                  schrieb am zuletzt editiert von
                                  #16

                                  @klassisch sagte in ESPHome - Name von Sensornamen:

                                  @dutchman sagte in ESPHome - Name von Sensornamen:

                                  Um name als id's zu übernehmen ist auch gefährlich, im gründe habe wir damit genau dasselbe problem erneut (man ändert den namen in ESPHome und es wird ein neuer state..... also nix geholfen :))

                                  Doch schon - zumindest im Normalzustand. Dann wären die IDs sprechend, was sie jetzt leider nicht sind. Wenn man die Werte z.B. in FLOT nutzen möchte, ist das derzeit umständlich.

                                  zudem entsteht das risico von sonder Zeichen die wieder einiges kaputt machen in object Strukturen

                                  Ja, Sonderzeichen sind aergerlich. Auch so ein Thema, welches man bei der Rechtschreibreform vor 25 Jahren vergessen hat: Eliminierung der Sonderzeichen.

                                  Ich waere da aber recht lieblos und wuerde alle Sonderzeichen einfach skippen.
                                  Also aus "Küche" wuerde ich einfach "Kche" machen. Das wurden die user sicher schnell merken - und vermutlich einen neuen CR schreiben, der den Entwickler wieder unnoetig beschaefitigt :-)

                                  Denke mal genau dafür sollte man alias erstellen damit ist die Hardware/Sensor auch austauschbar und ist der Name immer für jeden frei definierbar :)

                                  W 1 Antwort Letzte Antwort
                                  0
                                  • DutchmanD Dutchman

                                    @klassisch sagte in ESPHome - Name von Sensornamen:

                                    @dutchman sagte in ESPHome - Name von Sensornamen:

                                    Um name als id's zu übernehmen ist auch gefährlich, im gründe habe wir damit genau dasselbe problem erneut (man ändert den namen in ESPHome und es wird ein neuer state..... also nix geholfen :))

                                    Doch schon - zumindest im Normalzustand. Dann wären die IDs sprechend, was sie jetzt leider nicht sind. Wenn man die Werte z.B. in FLOT nutzen möchte, ist das derzeit umständlich.

                                    zudem entsteht das risico von sonder Zeichen die wieder einiges kaputt machen in object Strukturen

                                    Ja, Sonderzeichen sind aergerlich. Auch so ein Thema, welches man bei der Rechtschreibreform vor 25 Jahren vergessen hat: Eliminierung der Sonderzeichen.

                                    Ich waere da aber recht lieblos und wuerde alle Sonderzeichen einfach skippen.
                                    Also aus "Küche" wuerde ich einfach "Kche" machen. Das wurden die user sicher schnell merken - und vermutlich einen neuen CR schreiben, der den Entwickler wieder unnoetig beschaefitigt :-)

                                    Denke mal genau dafür sollte man alias erstellen damit ist die Hardware/Sensor auch austauschbar und ist der Name immer für jeden frei definierbar :)

                                    W Offline
                                    W Offline
                                    WolfgangFB
                                    schrieb am zuletzt editiert von
                                    #17

                                    @dutchman
                                    Ich mache das jetzt auch mit Aliasen.
                                    Bin jetzt dazu übergegangen, die Namen der Sensoren nach folgendem Schema zu vergeben

                                    binary_sensor:
                                      - platform: gpio
                                        pin: D2
                                        name: "D2.state Bewegung 1 motion"
                                    

                                    D2 ist der Pin ".state" was es ist (könnte z.B. auch ".temperature" sein). Die letzten 3 Werte sind dafür, was das ganze später steuern soll.

                                    Dann habe ich mir ein Skript geschrieben, dass alle ESPs in meinem System sucht und bei denen, bei denen die Namen nach diesem Schema vergeben sind, 2 Aliase erzeugt. Eines um den ESP bequem abzufragen und eines für die Aufgabe.

                                    var fs = require('fs'); 
                                    const Fn = "/opt/iobroker/Wolfgang/esphome2.txt";       
                                    fs.writeFileSync(Fn, ''); 
                                    const CrLf = String.fromCharCode(13) + String.fromCharCode(10); 
                                    function Log(s){
                                        var AenderungszeitText = ""; //formatDate(getDateObject(new Date().getTime()), "DD.MM hh:mm:ss");         
                                        fs.appendFileSync(Fn, AenderungszeitText + "" +s + CrLf); 
                                        }
                                      
                                    function FirstWord(OrigString){
                                        var OrigStringSplit = OrigString.split(" ");
                                        return(OrigStringSplit[0]);
                                        }
                                    function FirstX(OrigName, Count){
                                        var OrigNameS = OrigName.split(".");
                                        var Result = "";
                                        for (var i = 0;i < Count; i++){Result = Result + OrigNameS[i] + ".";}  
                                        return(Result);
                                        }
                                    function FirstXOhnePunkt(OrigName, Count){
                                        var OrigNameS = OrigName.split(".");
                                        var Result = "";
                                        for (var i = 0;i < Count - 1; i++){Result = Result + OrigNameS[i] + ".";}  
                                        Result = Result + OrigNameS[Count - 1];
                                        return(Result);
                                        }
                                        
                                    const EspStates = $('esphome.0.*.state');  
                                    var LastFirst3 = "";
                                    var LastFirst4 = "";
                                    var Raum = ""
                                    var EspVersion = ".0.";
                                    var AliasName = "D1";
                                    for(var i = 0; i < EspStates.length; i++){
                                        var AktState =  EspStates[i];
                                        var ActFirst3 = FirstX(AktState, 3);
                                        if (LastFirst3 != ActFirst3){
                                            LastFirst3 = ActFirst3;
                                            Log("");
                                            var EspName = getState(ActFirst3 + "info.name").val;
                                            Log("ESP = " + EspName); 
                                            switch(EspName){
                                                case("sauna"):
                                                    Raum = "Sauna";
                                                    break;
                                                case("gallerie2"):
                                                    Raum = "Gallerie";
                                                    break;
                                                case("gast2"):
                                                    Raum = "Gast";
                                                    break;
                                                case("wohnen1"):
                                                    Raum = "Wohnen";
                                                    EspVersion = ".1.";
                                                    break;
                                                }
                                            var EspAlias = "alias.0.Raum." + Raum + ".EspHome" + EspVersion + "alive";
                                            var CS = "createAlias('" + EspAlias + "', '" + ActFirst3 + "info._online', '');";  //esphome.0.8CAAB57CB1E6.info._online"
                                            Log(CS);
                                            } 
                                        var ObjectName = FirstXOhnePunkt(EspStates[i], 5);
                                        var obj = getObject(FirstXOhnePunkt(EspStates[i], 5));
                                        var CommonName = obj.common.name; 
                                        var CommonNameSplit = CommonName.split(" ");
                                        AliasName = FirstWord(CommonName);   
                                        
                                        if (AliasName.includes(".") == true)
                                            {
                                            Log("// " + CommonName); // 
                                            Log("// " + EspStates[i] + " " + getState(EspStates[i]).val);  
                                            // Alias ESPHome -> Raum      
                                            EspAlias = "alias.0.Raum." + Raum + ".EspHome" + EspVersion + AliasName;
                                            var FunktionAlias = "alias.0.Raum." + Raum + "." + CommonNameSplit[1] + "." + CommonNameSplit[2] + "." + CommonNameSplit[3];
                                            var CS = "createAlias('" + EspAlias + "', '" + EspStates[i] + "', '');"; 
                                            Log(CS);
                                            // Alias Raum -> Funktion
                                            CS = "createAlias('" + FunktionAlias + "', '" + EspStates[i] + "', '');"
                                            Log(CS);
                                            //Log("createAlias('alias.0.Raum.' + Raum + '.EspHome.0.' + EspStates[i], idOrigin, '');")
                                            }
                                        }
                                    
                                    

                                    Als Ergebnis erhalte ich die Datei esphome2.txt in der dann z.B. folgendes steht

                                    ESP = wohnen1
                                    createAlias('alias.0.Raum.Wohnen.EspHome.1.alive', 'esphome.0.8CAAB57CB1E6.info._online', '');
                                    // D5.state Fenster 1 opened
                                    // esphome.0.8CAAB57CB1E6.BinarySensor.1094227559.state true
                                    createAlias('alias.0.Raum.Wohnen.EspHome.1.D5.state', 'esphome.0.8CAAB57CB1E6.BinarySensor.1094227559.state', '');
                                    createAlias('alias.0.Raum.Wohnen.Fenster.1.opened', 'esphome.0.8CAAB57CB1E6.BinarySensor.1094227559.state', '');
                                    
                                    

                                    Alle createAlias Zeilen, die ich brauche, kopiere ich in ein zweites Skript, dass dann die Aliase erzeugt. (Das stammt hier aus dem Forum)

                                    In meiner Vis Umgebung oder anderen Skripten greife ich nicht mehr direkt auf die ESP Datenpunkte sondern nur noch auf die Aliase zu. Damit is es relativ egal, wie oft die Namen von ESPHome geändert werden.

                                    1 Antwort Letzte Antwort
                                    0

                                    Hey! Du scheinst an dieser Unterhaltung interessiert zu sein, hast aber noch kein Konto.

                                    Hast du es satt, bei jedem Besuch durch die gleichen Beiträge zu scrollen? Wenn du dich für ein Konto anmeldest, kommst du immer genau dorthin zurück, wo du zuvor warst, und kannst dich über neue Antworten benachrichtigen lassen (entweder per E-Mail oder Push-Benachrichtigung). Du kannst auch Lesezeichen speichern und Beiträge positiv bewerten, um anderen Community-Mitgliedern deine Wertschätzung zu zeigen.

                                    Mit deinem Input könnte dieser Beitrag noch besser werden 💗

                                    Registrieren Anmelden
                                    Antworten
                                    • In einem neuen Thema antworten
                                    Anmelden zum Antworten
                                    • Älteste zuerst
                                    • Neuste zuerst
                                    • Meiste Stimmen


                                    Support us

                                    ioBroker
                                    Community Adapters
                                    Donate
                                    FAQ Cloud / IOT
                                    HowTo: Node.js-Update
                                    HowTo: Backup/Restore
                                    Downloads
                                    BLOG

                                    343

                                    Online

                                    32.7k

                                    Benutzer

                                    82.6k

                                    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