• 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

Kurze Nachfrage an @Smokey Joe Weißt du noch, in welchem G32-Thread du die Platine mal gesehen hast? Ein Foto vom Controller mit Chip-Aufdruck (vor allem der Thermoelement-Wandler) würde enorm helfen — dann muss ich meinen nicht extra aufmachen. Und Danke an @sagdusmir für den Blick in den GasBuddy: STM32F030 + 4-polig (GND/+5V/RX) deckt sich exakt mit dem Firmware-Code (der Grill pollt ihn per UART).
Hilft Dir das weiter?

https://www.grillsportverein.de/for...erfahrungen.352049/post-5273723?referrer=9310
 
Nochmal ganz konkret in die Runde: Hat hier eigentlich schon mal jemand seinen G32 aufgeschraubt und die Platine gesehen? Mir würde schon ein Foto vom Board bzw. der Chip-Aufdruck enorm helfen — vor allem der Thermoelement-Wandler (SPI) und wie der GasBuddy angebunden ist (im Firmware-Code sieht's nach UART aus). Falls nicht, mache ich meinen wohl selbst auf und dokumentiere es hier. Sagt gern, wenn ich auf etwas Bestimmtes achten soll.
Sorry für die späte Antwort, bin gerade erst wieder aus dem Urlaub zurück ...

Ja, ich habe mal einen Grill auseinandergenommen, den OW nicht zurück haben wollte. Da habe ich auch die Platine ausgebaut. Sitz direkt hinter dem dunklen Acryl-Panel in der Front. War bei meinem frühen Exemplar in einem Blechgehäuse und mit der Front verklebt. Absolut 'eklig' auszubauen, also mach das lieber nicht. Das Ding hat dann lange genug hier herumgelegen und ich habe es bei meinen Software-Versuchen auch als Dummy-G32 benutzt ... und dann irgendwann entsorgt. Fotos davon habe ich nur noch drei Stück, auf denen ist der Chiptyp für die Thermofühler nicht lesbar.

IMG_20230307_124416.webp
IMG_20230307_124519.webp
IMG_20230307_124602.webp
 
@sagdusmir: ja, dazu hab ich was. Kurz: läuft komplett über BLE, kein Cloud-Login nötig.

Die GasBuddy-Kalibrierung sitzt in eigenen Characteristics im GasBuddy-Service (64ebc8a...). Aus der dekompilierten App:

Leergewicht der Flasche → 64ebc8a3, uint16 Big-Endian in Gramm (write-with-response; = gasbuddyBottleWeight, auch lesbar)
Füllmenge / Gas-Kapazität → 64ebc8a4, uint16 BE in Gramm (= gasbuddyFullWeight)
Kritischer Prozentwert → 64ebc8a6, 1 Byte (%)
Tara → 64ebc8a7: die App liest hier den aktuellen Rohwert und nimmt ihn als Tara-Referenz (kein Write)
Zum Gegenlesen: Prozent 64ebc8a5 (uint8), Verbunden 64ebc8a9 (bool), Rohgewicht 2a9d (uint16 BE, g)

Gewicht wird als 2 Byte kodiert: [gramm >> 8, gramm & 0xFF].

Firmware-seitig hängt der GasBuddy an UART (Grill pollt ~1x/s mit festem 4-Byte-Kommando, 16-Bit-Gewicht aus der Antwort), Kalibrierwerte liegen im NVS. Fürs BLE-Setzen reichen aber die vier Characteristics oben. Wenn's hilft, pack ich das komplette Schreib-/Lese-Format aller 9elements-Characteristics in ein Markdown und teile es.
Boah, super!
Ich hatte zwar auch schon durch Ausprobieren die BLE Characteristics herausgefunden und konnte dann sowohl das Leergewicht als auch die Füllmenge gezielt 'beeinflussen' aber beim Schreiben ging ganz häufig irgendetwas 'kaputt' und dann kamen nur noch Müll-Werte. Habe dann irgendwann aufgegeben ...
 
Kleines Update: Ich hab das, was ich bisher rausgefunden habe, mal in ein öffentliches Repo gepackt — inkl. der GasBuddy-Kalibrierung und einer Protokoll-Referenz (BLE 9elements + Legacy-Frame, Lesen und Schreiben):

https://github.com/tobsch/g32-investigations

Fairerweise: Das ist erstmal pure Software-Slop und ungetestet — am echten Grill hab ich noch nichts verifiziert. Aber vielleicht hilft's ja dem einen oder anderen hier weiter. MIT-Lizenz, nehmt und ändert, was ihr braucht; Korrekturen und PRs sehr willkommen.
 
Nein, wenn ich das wüsste, würde ich Dir das Foto heraussuchen.

@Admin testet gerade eine neue Funktion, bei der man sich alle Bilder eines Threads anzeigen lassen kann.
Vielleicht könnte er die G32-Threads freischalten, damit wir es einfacher haben.
Ich mach mal alle Foren. Bitte testen.
 
Danke fürs Platinenfoto oben — ich hab die Platine mal aufbereitet und markiert (öffentlich):
https://claude.ai/artifact/LBmjxbgf7Agbi51woku7cm
Kurz mein Gedankengang, warum ich einen seriellen Zugang (UART0) suche: bevor ich blind ESPHome flashe, will ich erst 1) prüfen, ob Secure Boot / Flash Encryption aktiv ist (das GO/NO-GO für eigene Firmware), 2) den Boot-Log sichten und 3) einen vollen Flash-Dump als Backup ziehen.
Aus dem Foto: Der ESP ist ein Ai-Thinker ESP32-S (klassischer ESP32). Die großen 2×N-Header sind die Display-/Frontpanel-Verbindung, nicht UART. Das Werks-Test-/Programmier-Interface scheint bei U3 zu liegen (runde Testpunkte GND/5V/3.3v). Die Signalpunkte (TX0/RX0/IO0/EN) kann ich am Foto aber nicht lesen.
Daher zwei Bitten an alle, die ein Board offen (hatten): ein scharfes Makro vom U3-/Testpunkt-Bereich — oder kurz durchmessen, welcher Testpunkt TX0/RX0 (bzw. IO0/EN) ist (Durchgang zu den ESP-Pads GPIO1/GPIO3).
Für den ersten Schritt (Boot-Log lesen) reichen ja TX0 + GND — damit käme ich der Secure-Boot-Frage schon ohne viel Aufwand näher.
 
Kurzes Update zu „Open Otto“ – und eine Bitte.
Ich hab die Firmware die letzten Tage statisch weiter auseinandergenommen (Ghidra/Xtensa) und kann inzwischen fast die komplette Controller-Hardware aus dem Code belegen, ohne aufzuschrauben:
Temperatur: bit-banged SPI – CLK GPIO18, MOSI GPIO23, MISO GPIO19. Acht Kanäle, zwei Wandler-Typen:
  • Kernfühler (Kanal 4–7): je ein MAX6675, eigener CS GPIO22/32/5/16. Eindeutig am Lesecode (Bit 2 = Thermoelement offen, Temp = Wert >> 3, 0,25 °C).
  • Zonen (Kanal 0–3): zwei register-konfigurierte 2-Kanal-Wandler (CS GPIO17/4), Typ-K-Linearisierung + Kaltstelle rechnet der ESP in Software. Exakter Chip noch offen.
GasBuddy: UART1, TX GPIO2, RX GPIO15, 9600 8N1; Poll mit 4-Byte-Kommando, Gewicht = Antwort-Byte 2–3 (Big-Endian). Passt zu sagdusmirs STM32F030-Fund.
Haube: Sensor GPIO34, Licht GPIO21 (LEDC-PWM). Gas-LEDs GPIO27/14.
Secure Boot: Das OTA-Image vom Hersteller ist unsigniert – das spricht stark dafür, dass Secure Boot aus ist (ein Gerät mit Secure Boot würde ein unsigniertes Update nicht booten). Sicher sagen das aber nur die eFuses am Gerät.
Alles öffentlich dokumentiert (pure Software-Analyse, ungetestet gegen ein echtes Board, Korrekturen willkommen):
https://github.com/tobsch/g32-investigations – siehe HARDWARE.md
Und jetzt die Bitte: Für den letzten Schritt (eFuse-/Secure-Boot-Status lesen, Pinmap per Durchgang gegenprüfen, Chip-Aufdruck der Zonen-Wandler) brauche ich Zugriff auf eine Platine – und ich würde meinen laufenden Grill wirklich ungern öffnen. Hat jemand ein Controller-Mainboard (OPS-Panel) rumliegen – aus einem defekten Grill, als Ersatzteil, aus einem Umbau – das er mir leihen oder schicken würde? Oder einen kaputten Grill, aus dem man es ausbauen könnte? Versand/Pfand/Kosten natürlich von mir, und das Board geht selbstverständlich zurück.
Danke!
 
@JBecker danke nochmal für die Platinenfotos — die haben mir enorm geholfen. Ich hab aus App + Firmware inzwischen fast die komplette G32-Hardware rekonstruiert (SPI-Pins, 4× MAX6675 für die Kernfühler, GasBuddy-UART, Haube) — alles öffentlich: https://github.com/tobsch/g32-investigations
Zwei Dinge krieg ich aus dem Code nicht raus — und du hast die Platine ja ausgebaut in der Hand:
  • Ein scharfes Makro der zwei Zonen-Wandler-Chips (die register-konfigurierten, CS an GPIO17/4) — und falls möglich das schwarze Schirmmodul kurz abgehoben, damit man den Thermofühler-Wandler-Chip darunter ablesen kann.
  • Das U3-/Testpunkt-Areal bzw. das unbestückte 6-Pin-Raster bei R39 — ich vermute da den seriellen Programmier-Port.
Falls einfacher: Würdest du die ausgebaute Platine evtl. kurz verleihen? Dann mess ich eFuse-Status + Pins selbst durch und schick sie zurück, Versand/Pfand von mir.
Und noch was: Du hattest ja geschrieben, deiner war verklebt und eklig auszubauen. Hast du Tipps zum Öffnen — von wo und wie man am besten rangeht, ohne was zu zerstören? Ich hab Respekt davor, würde es aber machen.
Danke dir!
Tobi
 
@Admin kurzes Feedback: Die neue „alle Bilder eines Threads“-Funktion ist super hilfreich — ich hab damit gezielt nach Fotos vom Grill-Innenleben gesucht, und das hat prima geklappt. Danke fürs Freischalten!
Tobi
 
@JBecker danke nochmal für die Platinenfotos — die haben mir enorm geholfen. Ich hab aus App + Firmware inzwischen fast die komplette G32-Hardware rekonstruiert (SPI-Pins, 4× MAX6675 für die Kernfühler, GasBuddy-UART, Haube) — alles öffentlich: https://github.com/tobsch/g32-investigations
Zwei Dinge krieg ich aus dem Code nicht raus — und du hast die Platine ja ausgebaut in der Hand:
  • Ein scharfes Makro der zwei Zonen-Wandler-Chips (die register-konfigurierten, CS an GPIO17/4) — und falls möglich das schwarze Schirmmodul kurz abgehoben, damit man den Thermofühler-Wandler-Chip darunter ablesen kann.
  • Das U3-/Testpunkt-Areal bzw. das unbestückte 6-Pin-Raster bei R39 — ich vermute da den seriellen Programmier-Port.
Falls einfacher: Würdest du die ausgebaute Platine evtl. kurz verleihen? Dann mess ich eFuse-Status + Pins selbst durch und schick sie zurück, Versand/Pfand von mir.
Und noch was: Du hattest ja geschrieben, deiner war verklebt und eklig auszubauen. Hast du Tipps zum Öffnen — von wo und wie man am besten rangeht, ohne was zu zerstören? Ich hab Respekt davor, würde es aber machen.
Danke dir!
Tobi
Habe die Platine ja leider nicht mehr. Hat hier zwei Jahre herum gelegen und seit ich Rentner bin habe ich viel Elektroschrott entsorgt >:(.

Habe aber gerade noch jemanden angeschrieben, der noch eine Platine herumliegen hat. Mal sehen (ich denke, er wird sich direkt bei Dir melden).

Ausbau: die vordere Front-Abdeckung abbauen. Dann sitzt da hinter (dort wo nach vorne die dunkle Plexiglasscheibe sitzt) eine Blechkiste. Ich habe die Überwurfmuttern der Temperaturfühlereingänge abgeschraubt. Trotzdem ließ sich die Platine mit dem Blechgehäuse nur mit Gewalt herauslösen. Das Ganze war mit einem schmierigen Kleber vorne an der Front festgeklebt. Ist aber lange her. Meine Erinnerung ist nur noch vage und auch der Einbau kann sich bei späteren Mustern geändert haben.

Gruß, Jörg.
 
Habe die Platine ja leider nicht mehr. Hat hier zwei Jahre herum gelegen und seit ich Rentner bin habe ich viel Elektroschrott entsorgt >:(.

Habe aber gerade noch jemanden angeschrieben, der noch eine Platine herumliegen hat. Mal sehen (ich denke, er wird sich direkt bei Dir melden).

Ausbau: die vordere Front-Abdeckung abbauen. Dann sitzt da hinter (dort wo nach vorne die dunkle Plexiglasscheibe sitzt) eine Blechkiste. Ich habe die Überwurfmuttern der Temperaturfühlereingänge abgeschraubt. Trotzdem ließ sich die Platine mit dem Blechgehäuse nur mit Gewalt herauslösen. Das Ganze war mit einem schmierigen Kleber vorne an der Front festgeklebt. Ist aber lange her. Meine Erinnerung ist nur noch vage und auch der Einbau kann sich bei späteren Mustern geändert haben.

Gruß, Jörg.
danke! dann würde ich die platine von @zaubii bevorzugen :) ggf. muss man ihn dann in zukunft zum flashen garnicht aufmachen (scheint via OTA zu gehen - das mache ich aber nicht ohne es zu validieren :))
 
@zaubii klar, schick mir deine nummer via pn (ich kann scheinbar noch keine nachrichten schicken :))
Wir können Dir leider auch noch keine Nachrichten schicken. Du benötigst mindestens 15 Beiträge hier im Forum oder es ginge auch eine Spende von 5€ an den GSV (so weit ich das verstanden habe).
 
Zurück
Oben Unten