Replies: 6 comments 35 replies
|
Clothes dryer model GTD72EBPN0DG Been running almost 2 weeks, no issues. Slower than GEA3 response but that is expected. MCU polls 0xBF for wifi adapter / Uconnect+ module. Ignored packet lines in logs. Had a few CRC errors, but nothing problematic.
|
|
I finally got this working. I have a number of appliances I'll be using, this is just the first. gea:
id: gea_hub
uart_id: uart_gea
protocol: gea2
dest_address: 0x23
poll_interval: 1sI'll note that I have no idea how a normal user would determine the correct destination address. I am fortunate to have an "official" homeassistant adapter which can run the gea2 fork, and that code will determine the correct destination address. So I did that first, then updated my yaml config with the correct address, and flashed it on my mulcmu adapter. |
|
I am attempting to get this code working on a dryer, and am not having any success. 1. Appliance — Clothes Dryer GTD75GCPL0DG # 2. Set up the UART (pin numbers depend on your board)
uart:
id: uart_gea
tx_pin:
number: GPIO5
inverted: true
rx_pin:
number: GPIO10
inverted: true
baud_rate: 19200
# 3. Define the GEA hub
gea:
id: gea_hub
uart_id: uart_gea
protocol: gea2
dest_address: 0x2B
src_address: 0xE4
poll_interval: 5s
gea2_discovery: false
erd_lookup: falseUsing the official adapter and the gea2 forked code, I am able to confirm the main board address ( I suspect I'm having issues with collisions but unsure how to further debug. Attached are the very verbose logs. esphome_dryer_logs_very_verbose.txt I have tried this physical board on both the washer and the dryer, and confirmed that it works on the washer (with the appropriate yaml), so there isn't anything wrong with the manufacturing of the board itself. I have tried some debugging with forking the esphome code and leveraging AI, but it is taking me down rabbit holes that doesn't seem fruitful. It was convinced the baud rate should be 9600 and also convinced the bus was very noisy. I went back to the official adapter and code and confirmed that it was working on 19200 and also modified the gea2 code to post to the serial output when messages appeared on the bus that had a destination of something other than the adapter. My washer never has other messages, but my dryer does occasionally have one message from the main board ( |
|
What we’d like to know
|
|
Myself and one other have gotten Bradford White AeroTherm RE2H50S10-1NCTT-CON heat pump hot water heaters working with GEA2. Some more info at https://community.home-assistant.io/t/water-heater-bradford-white/588528/25 and the immediately following post from me. My first GEA2 scan didn't yield anything. I didn't have src or dst address set. I set them both (and jumped through NVS reset hoops), then got the ERD list from my post. Not sure if it was bad luck, or something else. I used first build adapter, mannkind appears to have used mulcmu build |
|
I posted this as an "issue" at first, then tried to delete it. Here's my summary of my exploration of my Dishwasher and Fridge: esphome-gea Investigation Summary — Fridge + DishwasherTwo GE Cafe appliances integrated via the FirstBuild GEA adapter 1. Refrigerator — GE Cafe CYE22TSHGSS
ERD coverageFull Confirmed via GEA2 on-device discovery + brute force: ( Notable entities built from these: refrigerator/freezer temps and
Door pocket light — investigated, concluded hardwiredExhaustively tested: the documented 2. Dishwasher — GE Cafe CDT725SSF6SS
Two-node bus topologyGEA2 address-discovery probe found two nodes:
ERD coverageFull
3. Critical bugs found in the
|









Uh oh!
There was an error while loading. Please reload this page.
Uh oh!
There was an error while loading. Please reload this page.
GEA2 field reports
This component is new and
protocol: gea2has not yet been validated against a real appliance over an extended period of time. The implementation is complete and passes the test suite, but we have no field data on how it behaves on a live multi-node GEA2 bus. Before deciding what to harden next — for example, byte-level collision detection on the half-duplex bus, see docs/protocol.md#collision-handling-gea2 — we need real-world reports.The current implementation does not match GE’s reference firmware (
tiny-gea-api) on collision handling: we filter our own self-echo bydestaddress and rely on retries to recover from collisions, instead of detecting them at the byte level. That may be perfectly fine in practice — or it may cause sluggish writes and dropped requests on busy buses. We don’t know yet.If you’ve wired this up and started using
protocol: gea2, please share what you’re seeing here — including "everything works" reports, which are just as useful as bug reports.What we’d like to know
get_dropped_requests()value after a representative period of uptime. Expose it via atemplate_sensoror check the logs at INFO.WARN/ERRORlines from thegeacomponent? (timeouts, parse errors, dropped requests)gea:block (especiallypoll_interval) and roughly how many ERDs you have declared.How to gather the diagnostics
Or just grep your ESPHome logs for
droppedandWARNlines.What happens next
Reports here will inform whether we:
Either way, no decision is being made in a vacuum — your reports drive this. Thanks!
All reactions