Repository navigation
Conversation
…ases Before v1.3.0 drivers were synced into src/wmbusmeters_drivers. They now go to src/wmbusmeters_generated, and only that directory is pruned. The old directory stayed behind, and esp-idf globs src/ recursively, so upgrading an existing build failed with: wmbusmeters_drivers/amiplus.cpp: fatal error: ../esphome/components/wmbus_common/meters_common_implementation.h: No such file or directory Drop the legacy directory before syncing drivers. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
…h directly str_sprintf(), format_hex() and format_hex_pretty() moved to alloc_helpers.h, and helpers.h stops re-exporting it in ESPHome 2026.11.0 (esphome/esphome#20389). Include it explicitly wherever these helpers are used, as wmbus_meter.cpp, meter.cpp and records.cpp already do. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
ESPHome 2026.10 turned mqtt.publish into an apply action (esphome/esphome#19602) and removed MQTTPublishAction and mqtt_publish_action_to_code, so importing wmbus_meter failed with "Component not found: wmbus_meter". Keep an equivalent action in wmbus_meter instead; it only relies on MQTTClientComponent::publish(), which is unchanged. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
This was referenced Oct 13, 2026
Member
|
Thank you @robsonek! Closing this one, since the three commits went different ways:
|
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Three independent fixes, one commit each.
1.
wmbus_meter: doesn't load on ESPHome 2026.10esphome/esphome#19602 turned
mqtt.publishinto an apply action and removedMQTTPublishActionandmqtt_publish_action_to_code. On 2026.10.0b3 (and dev), every config that useswmbus_metertherefore fails at validation:This PR adds an equivalent
SendTelegramWithMQTTActiontowmbus_meter/automation.h(guarded byUSE_MQTT), along with its ownto_code. The action only relies on things that are identical in 2026.9.1, 2026.10.0b3 and dev:MQTT_PUBLISH_ACTION_SCHEMA,MQTTClientComponent::publish(std::string, std::string, uint8_t, bool),TEMPLATABLE_VALUEandregister_action(..., synchronous=True). The YAML ofwmbus_meter.send_telegram_with_mqttis unchanged.2. Builds upgraded from < v1.3.0 fail on a leftover drivers directory
Before v1.3.0, drivers were synced into
src/wmbusmeters_drivers. They now go tosrc/wmbusmeters_generated, and only that directory is pruned. When an existing build directory gets upgraded (for example wM-Bus Gateway 1.1.x to 1.2.x without "Clean Build Files"), the old directory stays behind. ESP-IDF globssrc/recursively, so the build fails:wmbus_commonnow removes the legacy directory before syncing drivers.3. Include
alloc_helpers.hdirectly (ESPHome 2026.11)helpers.hstops re-exportingalloc_helpers.hin 2026.11.0 (esphome/esphome#20389).quirks.cpp,packet.cppandcomponent.cpp(wmbus_radio) andextractor.h(panasonic_aquarea) usestr_sprintf,format_hexorformat_hex_prettywithout including it.wmbus_meter.cpp,meter.cppandrecords.cppalready include it.Testing
All builds use the
esphome/esphomeDocker images andtests/wmbus/sx1276.yaml(esp32) unless noted otherwise.ImportError(MQTT)'str_sprintf' is not a member of 'esphome'inquirks.cppsend_telegram_with_mqttdriver_amiplus.cppdropped intosrc/wmbusmeters_drivers/and rebuilt (no clean)tests/panasonic_aquarea/test.yamlon devhydrocalm4/amiplusmeters + awmbus_metersensor on 2026.10.0b3panasonic_aquareabuilds on dev even without the extra include, probably because the string extractor template isn't instantiated in the test config. The include follows ESPHome's recommendation to includealloc_helpers.hdirectly, so it doesn't break once that template is instantiated.clang-format --dry-run --Werrorpasses on all touched C++ files.🤖 Generated with Claude Code