• Du musst dich registrieren, bevor du Beiträge verfassen kannst. Klicke auf Jetzt registrieren!, um den Registrierungsprozess zu starten. Registrierte User surfen werbefrei, können Suchen durchführen und sehen die volle Darstellung des Forums mit vielen anderen Unterforen!!!

Otto Wilde G32 | Smarthome

Das ist ja echt der Hammer was inzwischen passiert ist. Respekt. @JBecker danke für deine mächtige Arbeit.

Ich habe zwar kein HA am laufen sondern Fhem, und ich hatte bei mir den ersten Code von letzem Jahr nur um dann die Grill Daten mit MQTT an Fhem zu schicken.
Jetzt hab ich wieder lust und hoffentlich Zeit (es mangelt selbst zum Grillen).

Die Daten werden dann nur über HA gefüllt im Display ? Hab mir jetzt den Code noch nicht angesehen, nur zwecks verständniss was Stand Alone geht und was HA für eine Funktion macht.
 
Das ist ja echt der Hammer was inzwischen passiert ist. Respekt. @JBecker danke für deine mächtige Arbeit.

Ich habe zwar kein HA am laufen sondern Fhem, und ich hatte bei mir den ESP nur um dann die Grill Daten mit MQTT an Fhem zu schicken.
Jetzt hab ich wieder lust und hoffentlich Zeit (es mangelt selbst zum Grillen).

Die Daten werden dann nur über HA gefüllt im Display ? Hab mir jetzt den Code noch nicht angesehen, nur zwecks verständniss was Stand Alone geht und was HA für eine Funktion macht.
Ja, die Versionen mit ha im Namen sind speziell für die G32 Home Assistant Integration von Chris (zaubii), wie sie weiter oben beschrieben ist. Sie bekommen ihre Daten komplett von HA.
Ich werde bei Gelegenheit auch meine stand-alone Bluetooth Versionen auf den gleichen Stand bringen. Die hängen von der Funktionalität momentan noch etwas zurück. Funktionieren aber auch ohne HA!
Gruß, Jörg.
 
Mein Display ist gekommen, und erste Versuche waren schon mal erfolgreich.
@JBecker Ich habe mir jetzt mal die Codes angesehen auf git.
wenn ich das jetzt richtig sehe hast du bei dem HA Code die "platform: homeassistant" bereiche so versehen das dann die die variablen füllen wenn HA das schickt.
Im Prinzip wenn ich diese auf "platform: ble_client" umbaue mit den entsprechenden on_value: setze, dann sollte das ja wieder Stand Alone Funktionieren.

Ich hatte mir mqtt eingebaut das ich das in Fhem bekomme. (ohne HA Code).
Dabei ist mir aufgefallen das er gerne öfters mal rebootet. Meine Vermutung das er hier etwas schwach auf der brust ist wenn zuviel zu tun ist und die Verbindung etwas hakt.
 
Mein Display ist gekommen, und erste Versuche waren schon mal erfolgreich.
@JBecker Ich habe mir jetzt mal die Codes angesehen auf git.
wenn ich das jetzt richtig sehe hast du bei dem HA Code die "platform: homeassistant" bereiche so versehen das dann die die variablen füllen wenn HA das schickt.
Im Prinzip wenn ich diese auf "platform: ble_client" umbaue mit den entsprechenden on_value: setze, dann sollte das ja wieder Stand Alone Funktionieren.

Ich hatte mir mqtt eingebaut das ich das in Fhem bekomme. (ohne HA Code).
Dabei ist mir aufgefallen das er gerne öfters mal rebootet. Meine Vermutung das er hier etwas schwach auf der brust ist wenn zuviel zu tun ist und die Verbindung etwas hakt.
Ja, ist soweit richtig. Ich bin weitgehend zu dem Konzept mit globalen Variablen übergegangen, weil das einige Vorteile brachte. Wenn Du diese globalen Variablen per Bluetooth füllst, dann sollte das funktionieren.
Ich habe aber auch eine Version des Codes mit Bluetooth auf Github. Die ist aber viel älter. Werde ich in den nächsten Tagen auf Stand bringen.
Meine letzte Version verbindet die 'arcs' mit der 'numbers' Variante, man kann dann von einer Ansicht zur anderen swipen. Stelle ich wohl heute Nacht auf Github, habe gestern beim Einsatz noch einen Fehler gesehen.
Grüße, Jörg.

PS: reboots habe ich nur in der Bluetooth Variante. Und nur dann, wenn ich zusätzlich den Meater einschalte und er das erste Mal Daten vom Meater bekommt. Aber auch das nur sehr selten und danach läuft es dann komplett ohne Probleme. Grund habe ich noch nicht herausgefunden.
 
das mit dem Meater hatte ich ausgebaut weil ich keins habe, war auch mein Gedanke das es mit den Reboots zu tun haben könnte.
Ich vermute evtl. ein Timing Thema beim Wechsel wenn er versucht eins zu finden obwohl es nicht da ist, dann braucht es etwas länger.

Globale Variablen sind schick. Das Teil hat ja auch eine SD Karte mit 512MB drin gehabt.
Man könnte hier evtl. Config ablegen für Wlan und BT. So das der Compilierte Code garkeine Security sachen hat.
Wie man die SD Anspricht weis ich noch nicht. Werde mal den Beispielcode ansehen.
 
Ich habe was gefunden, was man einbinden könnte.
Aber ich scheitere daran das ich das git nicht einbauen kann, kenne mich da halt auch nicht wirklich aus.


Code:
external_components:
  - source:
      type: git
      url: https://github.com/n-serrette/esphome_sd_card.git
    components: [sd_mmc_card]

sd_mmc_card:
  id: esp_mmc_card
  mode_1bit: true
  clk_pin: GPIO12
  cmd_pin: GPIO11
  data0_pin: GPI13


und schreiben geht wohl darauf dann so:

logger:
  level: VERBOSE #makes uart stream available in esphome logstream
  baud_rate: 0 #disable logging over uart
  on_message:
    level: DEBUG
    then:
      - sd_mmc_card.append_file:
          path: "/test.log" 
          data: !lambda |
            std::string str(message);
            str += "\n";
            return std::vector<uint8_t>(str.begin(), str.end());

Evtl. geht das doch nur in dem man im HA die Komponenten runterlädt ?
 
Ich habe was gefunden, was man einbinden könnte.
Aber ich scheitere daran das ich das git nicht einbauen kann, kenne mich da halt auch nicht wirklich aus.


Code:
external_components:
  - source:
      type: git
      url: https://github.com/n-serrette/esphome_sd_card.git
    components: [sd_mmc_card]

sd_mmc_card:
  id: esp_mmc_card
  mode_1bit: true
  clk_pin: GPIO12
  cmd_pin: GPIO11
  data0_pin: GPI13


und schreiben geht wohl darauf dann so:

logger:
  level: VERBOSE #makes uart stream available in esphome logstream
  baud_rate: 0 #disable logging over uart
  on_message:
    level: DEBUG
    then:
      - sd_mmc_card.append_file:
          path: "/test.log"
          data: !lambda |
            std::string str(message);
            str += "\n";
            return std::vector<uint8_t>(str.begin(), str.end());

Evtl. geht das doch nur in dem man im HA die Komponenten runterlädt ?
Man könnte stattdessen auch die Werte im Flash des ESP32 ablegen. Die Funktionen dazu sind ja immer eingebaut. Dann müsste man den Accesspoint aufrufen und die Daten dort in einer Webseite eingeben. Der Code dafür sollte auch irgendwo zu finden sein ...
 
Wäre natürlich schön, wenn jemand das Gehäuse 'vernünftig' neu designen könnte.
@JBecker besteht noch Bedarf an einem Gehäuse? Ich habe keinen G32, aber inspiriert durch dein Projekt werde ich die Displays vermutlich in einem anderen Projekt nutzen. Dafür habe ich mir ein "Standgehäuse" für das kleine Display erstellt.

PXL_20250726_132124005.jpg

PXL_20250726_132142608.jpg

PXL_20250726_132251711.jpg


Im Inneren wäre Platz für Magnete, Summer und Akkupack (dein 10 mm dicker Akkupack würde auch passen). Die USB-Buchse ist zugänglich. Der Button kann aktuell nur mit einer langen Spitze erreicht werden (hätte ich aber noch andere Ideen). An deinem Code muss nur die Rotation des Displays angepasst werden (keine Änderungen an der Platine. Theoretisch lässt sich das Gehäuse im Akkubetrieb auch um 90° kippen (flachere Anzeige); hierfür bräuchte man aber noch eine Lageerkennung um die Anzeige dynamisch zu wechseln.

Ist erstmal ein Entwurf. Falls das von der Form am G32 zu gebrauchen ist, kann ich gern noch ein paar Anpassungen für euch durchführen. Dein aktuelles Gehäuse wird ja am G32-Deckel befestigt, wird das nicht zu warm im Betrieb?
 
Super. Lädst du das auf git oder hier hoch ?
Das mit der Lageerkennung könnte man mit einen Quecksilberschalter auch einfach lösen über einen GPIO.
 
@JBecker Ich bin jetzt einen Schritt weiter mit der SD Karte evtl. nutze... aber leider ohne Erfolg.

Denn das Einbinden von Git geht grundsätzlich schon so:
Code:
external_components:
  source: github://n-serrette/esphome_sd_card

sd_mmc_card:
  id: card
  mode_1bit: true
  clk_pin: GPIO12
  cmd_pin: GPIO11
  data0_pin: GPI13

jedoch ist der Code nicht passend zu dem Bord: esp32-s3-devkitc-1
Daher schlägt das ganze fehl das er die sd_mmc_card nicht findet.

gibt man ihm das hier über variant mit:
Code:
esp32:
  board: esp32-s3-devkitc-1
  flash_size: 16MB
  variant: ESP32

kommt dann das hier dabei raus:

Code:
Option 'variant' does not match selected board.
  variant: ESP32
  framework:
    type: esp-idf
    sdkconfig_options:
      CONFIG_ESP32S3_DEFAULT_CPU_FREQ_240: y
      CONFIG_ESP32S3_DATA_CACHE_64KB: y
      CONFIG_ESP32S3_DATA_CACHE_LINE_64B: y
      CONFIG_SPIRAM_FETCH_INSTRUCTIONS: y
      CONFIG_SPIRAM_RODATA: y
 
@JBecker besteht noch Bedarf an einem Gehäuse? Ich habe keinen G32, aber inspiriert durch dein Projekt werde ich die Displays vermutlich in einem anderen Projekt nutzen. Dafür habe ich mir ein "Standgehäuse" für das kleine Display erstellt.

Anhang anzeigen 3686973
Anhang anzeigen 3686974
Anhang anzeigen 3686975

Im Inneren wäre Platz für Magnete, Summer und Akkupack (dein 10 mm dicker Akkupack würde auch passen). Die USB-Buchse ist zugänglich. Der Button kann aktuell nur mit einer langen Spitze erreicht werden (hätte ich aber noch andere Ideen). An deinem Code muss nur die Rotation des Displays angepasst werden (keine Änderungen an der Platine. Theoretisch lässt sich das Gehäuse im Akkubetrieb auch um 90° kippen (flachere Anzeige); hierfür bräuchte man aber noch eine Lageerkennung um die Anzeige dynamisch zu wechseln.

Ist erstmal ein Entwurf. Falls das von der Form am G32 zu gebrauchen ist, kann ich gern noch ein paar Anpassungen für euch durchführen. Dein aktuelles Gehäuse wird ja am G32-Deckel befestigt, wird das nicht zu warm im Betrieb?
Wow, super!
Das ist ja Klasse. Da hätte ich großes Interesse dran.
Wenn ich das an den G32 Deckel 'klebe' dann ist das der Deckel von meinem 'C32'. Der wird nicht warm. Ansonsten steht das Ding woanders 😎
 
Im "aufgestellten" Zustand finde ich hinten raus persönlich angenehmer. Aber deshalb habe ich nach Vorschlägen gefragt. Ich denke ich könnte einen zweiseitigen Abgang (1x hinten, 1x seite) einfügen. In dem Fall könnte man das USB-Kabel auch im "liegenden" Zustand einstecken. Winkeladapter habe ich zum Testen da.
 
Im "aufgestellten" Zustand finde ich hinten raus persönlich angenehmer. Aber deshalb habe ich nach Vorschlägen gefragt. Ich denke ich könnte einen zweiseitigen Abgang (1x hinten, 1x seite) einfügen. In dem Fall könnte man das USB-Kabel auch im "liegenden" Zustand einstecken. Winkeladapter habe ich zum Testen da.
Die Lage der USB ist für diejenigen besonders interessant, die keinen Akku einbauen. Mit Akku ist es mir fast egal. Mit meinem 2000mAh Akku läuft das Display mit BT ca. 7 Stunden. Wenn das Display über den Timeout dunkel geschaltet wurde ca. 20 Stunden. Also, vor dem Grillen volladen und dann reicht es eigentlich immer.
 
@JBecker Ich bin jetzt einen Schritt weiter mit der SD Karte evtl. nutze... aber leider ohne Erfolg.

Denn das Einbinden von Git geht grundsätzlich schon so:
Code:
external_components:
  source: github://n-serrette/esphome_sd_card

sd_mmc_card:
  id: card
  mode_1bit: true
  clk_pin: GPIO12
  cmd_pin: GPIO11
  data0_pin: GPI13

jedoch ist der Code nicht passend zu dem Bord: esp32-s3-devkitc-1
Daher schlägt das ganze fehl das er die sd_mmc_card nicht findet.

gibt man ihm das hier über variant mit:
Code:
esp32:
  board: esp32-s3-devkitc-1
  flash_size: 16MB
  variant: ESP32

kommt dann das hier dabei raus:

Code:
Option 'variant' does not match selected board.
  variant: ESP32
  framework:
    type: esp-idf
    sdkconfig_options:
      CONFIG_ESP32S3_DEFAULT_CPU_FREQ_240: y
      CONFIG_ESP32S3_DATA_CACHE_64KB: y
      CONFIG_ESP32S3_DATA_CACHE_LINE_64B: y
      CONFIG_SPIRAM_FETCH_INSTRUCTIONS: y
      CONFIG_SPIRAM_RODATA: y
Kann man bei board: nicht hinten den devkit Teil weglassen? Also nur 'esp32-s3' angeben? Nein!
Alternativ mit variant dann aber 'esp32-s3'? nein: muss 'variant: ESPS3' sein!
Habe gerade keine Zeit, dass selbst auszuprobieren ... ob es damit kompiliert, weiß ich daher noch nicht.
 
Ich habe gerade die kombinierte Version (v0.9.9 beta) der Firmware für das Display auf Github hochgeladen, bei der zwischen den Anzeigen 'grafisch' und 'numerisch' per 'swipen' gewechselt werden kann. In der Praxis nicht ganz toll, beim Swipen wird manchmal ein Click auf ein Symbol erkannt. Verbesserungsfähig ... aber vielleicht ist die Version auch gar nicht interessant? Bitte um Eure Meinung!

In der nächsten Zeit werde ich mich wieder mehr der Version mit Bluetooth widmen und dort die neuen Funktionalitäten der HA-Versionen nachziehen. Dort werde ich auch versuchen, das Einwiegen der Gasflasche anzubieten. Weitere Ideen, was man noch sinnvolles machen könnte?

Gruß, Jörg.
 
Gargut Timer 90s bitte wenden.... ok jetzt wollen wir mal nicht übertreiben :-)
Aber du bist ja echt fleissig am werkeln, ich kam am Wochenende zu nichts..... auch nicht mal was gegrillt
 
Gargut Timer 90s bitte wenden.... ok jetzt wollen wir mal nicht übertreiben :-)
Aber du bist ja echt fleissig am werkeln, ich kam am Wochenende zu nichts..... auch nicht mal was gegrillt
Ja, ich möchte die (alle!) Versionen jetzt endlich auf Stand haben und eine V1.0.0 herausbringen. Dann kann jeder weiter dran basteln ...

WE war die Enkelin da, da blieb auch nicht viel Zeit. Habe aber am Samstag das erste Mal Porchetta gemacht, natürlich mit dem Display! Habe dafür auch die Garraumtemperatur auf Limit 180°C überwacht! Da ich aber nebenbei im Garten zu tun hatte ist mir die Temperatur trotzdem weggelaufen. Aber das Display hat tapfer gepiept! So weit geht das also alles :-). Klar, das Display ist dann nachher voller Fettfinger ...

PXL_20250726_164853475.MP.jpg
 
Hi Leute,

grundsätzlich eine geniale Umsetzung!
Hätte mir nun auch gern das Dashboard auf das LCD gespielt.
Nur scheitert es bei mir beim Home Assistant. Ich hab keinen, hätte mir das so vorgestellt. -> Software auf Laptop installieren -> ESP32 App downloaden -> ESPS3 Flashen und Software drauf spielen -> läuft.

Kann mir das mal wer richtig erklären. Wie ich richtig vorgehe?

Besten Dank!
 
Zurück
Oben Unten