v0.3.4 - Eletta Explore beverage support (recipe replay)
Eletta Explore (oem_model=DL-striker-cb) beverages now work via recipe replay.
Captured app frames (issue #1) proved the Eletta beverage frame is not the Soul's fixed 13-byte frame: it carries a variable-length recipe block (quantity in ml, intensity and milk all encoded inline) terminated by a 01 0a trailer before the CRC. The CRC itself is unchanged (CRC16/AUG-CCITT) - it validates once the frame is parsed at the right length.
How it works
The integration learns the exact bytes the official Coffee Link app sends for each beverage (from the v0.3.2 command sniffer) and replays them verbatim with only a fresh timestamp - so quantity, intensity, milk, the correct start-action byte and the device signature are all preserved.
Using it on an Eletta Explore
- Update to v0.3.4 and restart Home Assistant.
- Trigger each drink once from the official Coffee Link app so Home Assistant captures its bytes (watch the Last Captured Command sensor, now showing
style: eletta, the fullrecipe, andcrc_valid: true). - From then on the matching Home Assistant button replays that drink.
Reading the machine's stored recipe datapoints to remove the one-time "trigger from the app" step is the next planned step.
Fixed
decode_commandnow parses the beverage frame by its self-describing length byte, handling both the fixed Soul frame and the variable-length Eletta frame. Captured Eletta frames previously showedcrc_valid: falseand a truncatedparams; they now decode correctly.
The PrimaDonna Soul (DL-millcore) path is untouched. 31 unit tests pass.