chore(edge): retire the heating-can CAN stack from edge-1 #1595

Merged
k.renner merged 1 commits from chore/retire-heating-can into main 2026-11-07 13:01:27 +00:00
Member

The Viessmann E3 CAN bus is read by vitocal-can, an ESP32 gateway (open3e-esp32) at the Vitocal's external CAN port, which publishes open3e/# directly to the cluster broker (S28-28). edge-1 must no longer read the bus: a second UDS client on the bus disturbs the gateway's requests.

  • Remove the roles heating-can and socketcan, the play install-heating-can.yml, its site.yml import and the inventory group [heating_can]. edge-1 stays in edge_host through [zwave_gateway].
  • plays/install-edge-host.yml pre_tasks (the #1203 pattern), each a no-op where already absent:
    • docker compose down --remove-orphans --rmi all and remove /opt/edge-host/heating-can
    • remove /etc/systemd/network/80-can0.network, then networkctl reload
    • ip link set can0 down while the link is up
  • group_vars/edge_host: drop edge_open3e_mqtt_topic, used only by heating-can. edge_open3e_mqtt_user/_password stay for the mqtt-bridge legacy template.
  • Docs: ansible/docs/edge-host.md and images/edge-host-iso/README.md no longer list the CAN stack.

Applied by ansible-playbook site.yml from ansible/. ANSIBLE_CONFIG=ansible/ansible.cfg ansible-playbook --syntax-check ansible/site.yml passes.

🤖 Generated with Claude Code

The Viessmann E3 CAN bus is read by **vitocal-can**, an ESP32 gateway (open3e-esp32) at the Vitocal's external CAN port, which publishes `open3e/#` directly to the cluster broker (S28-28). edge-1 must no longer read the bus: a second UDS client on the bus disturbs the gateway's requests. - Remove the roles `heating-can` and `socketcan`, the play `install-heating-can.yml`, its `site.yml` import and the inventory group `[heating_can]`. edge-1 stays in `edge_host` through `[zwave_gateway]`. - `plays/install-edge-host.yml` `pre_tasks` (the #1203 pattern), each a no-op where already absent: - `docker compose down --remove-orphans --rmi all` and remove `/opt/edge-host/heating-can` - remove `/etc/systemd/network/80-can0.network`, then `networkctl reload` - `ip link set can0 down` while the link is up - `group_vars/edge_host`: drop `edge_open3e_mqtt_topic`, used only by heating-can. `edge_open3e_mqtt_user`/`_password` stay for the mqtt-bridge legacy template. - Docs: `ansible/docs/edge-host.md` and `images/edge-host-iso/README.md` no longer list the CAN stack. Applied by `ansible-playbook site.yml` from `ansible/`. `ANSIBLE_CONFIG=ansible/ansible.cfg ansible-playbook --syntax-check ansible/site.yml` passes. 🤖 Generated with [Claude Code](https://claude.com/claude-code)
claude-bot added 1 commit 2026-11-07 12:59:35 +00:00
chore(edge): retire the heating-can CAN stack from edge-1
ci/woodpecker/pr/ci-scripts-test Pipeline was successful
44cdf84f99
The Viessmann E3 CAN bus is read by vitocal-can, an ESP32 gateway (open3e-esp32)
at the Vitocal's external CAN port, which publishes open3e/# directly to the
cluster broker (S28-28). edge-1 must no longer read the bus: a second UDS
client on the bus disturbs the gateway's requests.

- remove the roles heating-can and socketcan, the play
  install-heating-can.yml, its site.yml import and the inventory group
  heating_can; edge-1 stays in edge_host through zwave_gateway
- install-edge-host.yml pre_tasks: compose down (containers and image) and
  remove /opt/edge-host/heating-can, remove 80-can0.network and reload
  networkd, take can0 down; each step is a no-op where it is already absent
- group_vars edge_host: drop edge_open3e_mqtt_topic, used only by heating-can
- docs: edge-host.md and the ISO README no longer list the CAN stack

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
k.renner merged commit 07e1684bd1 into main 2026-11-07 13:01:27 +00:00
Sign in to join this conversation.