Skip to content

feat: substitution for Modbus slave address#28

Open
malaiwah wants to merge 1 commit into
wildekek:mainfrom
malaiwah:feat/slave-address-substitution
Open

feat: substitution for Modbus slave address#28
malaiwah wants to merge 1 commit into
wildekek:mainfrom
malaiwah:feat/slave-address-substitution

Conversation

@malaiwah
Copy link
Copy Markdown

Closes #27

Replaces the hardcoded address: 0x01 with address: ${slave_address}. Default value unchanged so existing flashes keep working.

The substitution comment notes that the stock dongle is a one-PSU device; the rare multi-drop scenario needs a separate firmware build per PSU with the matching slave_address (since each ESP only addresses one slave).

Verification

  • esphome config passes both YAMLs
  • No runtime behaviour change at default settings

Disclosure

Drafted with Claude (Anthropic). Author-reviewed.

Replaces the hardcoded 0x01 in the modbus_controller section with a
${slave_address} substitution, defined alongside the other
device-level substitutions at the top of the YAML.

Default is unchanged (0x01) so existing flashes keep working as-is.
The PSU exposes a Modbus address knob (1-247 per spec); the stock
dongle is a one-PSU device, so most users never touch it. The
substitution makes the rare multi-drop case (one ESP + external
TTL/RS-485 transceiver driving several PSUs, each on its own
binary) editable without forking the file.

Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

Modbus slave address is hardcoded; expose as substitution

1 participant