diff --git a/docs/05_architecture_overview.md b/docs/05_architecture_overview.md
index 8100b57..10558c7 100644
--- a/docs/05_architecture_overview.md
+++ b/docs/05_architecture_overview.md
@@ -11,6 +11,8 @@ This document provides a high-level view of the framework’s components and how
- Mock LIN Adapter — `ecu_framework/lin/mock.py`
- BabyLIN Adapter — `ecu_framework/lin/babylin.py` (SDK wrapper → BabyLIN_library.py)
- Flasher — `ecu_framework/flashing/hex_flasher.py`
+- Power Supply (PSU) control — `ecu_framework/power/owon_psu.py` (serial SCPI)
+- PSU tryout script — `vendor/Owon/tryout.py`
- Reporting Plugin — `conftest_plugin.py` (docstring → report metadata)
- Reports — `reports/report.html`, `reports/junit.xml`
@@ -30,12 +32,15 @@ flowchart TB
MOCK[ecu_framework/lin/mock.py]
BABY[ecu_framework/lin/babylin.py]
FLASH[ecu_framework/flashing/hex_flasher.py]
+ POWER[ecu_framework/power/owon_psu.py]
end
subgraph Artifacts
REP[reports/report.html
reports/junit.xml]
YAML[config/*.yaml
babylin.example.yaml
test_config.yaml]
+ PSU_YAML[config/owon_psu.yaml
OWON_PSU_CONFIG]
SDK[vendor/BabyLIN_library.py
platform-specific libs]
+ OWON[vendor/Owon/tryout.py]
end
T --> CF
@@ -44,10 +49,13 @@ flowchart TB
CF --> MOCK
CF --> BABY
CF --> FLASH
+ T --> POWER
PL --> REP
CFG --> YAML
+ CFG --> PSU_YAML
BABY --> SDK
+ T --> OWON
T --> REP
```
@@ -57,6 +65,9 @@ flowchart TB
- Config loader reads YAML (or env override), returns typed dataclasses
- LIN calls are routed through the interface abstraction to the selected adapter
- Flasher (optional) uses the same interface to program the ECU
+- Power supply control (optional) uses `ecu_framework/power/owon_psu.py` and reads
+ `config.power_supply` (merged with `config/owon_psu.yaml` or `OWON_PSU_CONFIG` when present);
+ the tryout script under `vendor/Owon/` provides a quick manual flow
- Reporting plugin parses docstrings and enriches the HTML report
## Extending the architecture