Der Zuschnitt in 2026-09-15-canopen-scope.md (PR #129) schneidet die Geräterolle zu: den Knoten, der ein eigenes Objektverzeichnis führt, von einem fremden Master konfiguriert wird und PDOs produziert. Das Dokument sagt das inzwischen selbst — vorher stand dort nur „CANopen ist durch", was zu breit war.
Die Master-/Tool-Rolle ist damit nicht zugeschnitten, obwohl sie kein Nachgedanke ist:
- Die SRS nennt als Stakeholder wörtlich „CANopen-Master/-Node-Anwendung".
- FR-CO-007 verlangt NMT ausdrücklich „sowohl als NMT-Master (Kommandos senden) als auch als NMT-Node".
- FR-CO-002/003 sprechen von „entfernten OD-Einträgen" — das ist der SDO-Client.
- FR-CO-008/-010/-011 decken je Produktion und Konsumption ab.
- Die API trägt es:
SendNmtCommandAsync(…, targetNodeId), SdoUploadAsync(serverNodeId, …), AddHeartbeatConsumer(producerNodeId, …), StartNodeGuardingConsumer(…), StartSyncProducer.
Was in dieser Runde zu entscheiden ist
Erste, noch ungeprüfte Sammlung — die Runde selbst arbeitet sie gegen Code und Normtext ab, wie die erste:
- Die EDS/DCF des fremden Knotens. Die erste Runde hat entschieden, dass eine EDS unser Objektverzeichnis und unsere PDO-Konfiguration speist. Für ein Tool ist der häufigere Fall der andere: die Beschreibung des Geräts laden, mit dem man spricht — Indizes benennen, fremde PDO-Nutzdaten in Signale zerlegen, einen Schreibzugriff vor dem Senden gegen die Beschreibung prüfen. Dieselbe Bibliothek (
dborgards/eds-dcf-net), anderer Verwendungszweck.
- Busbeobachtung. Fremde PDOs zu dekodieren braucht deren Mapping — aus der EDS des Geräts oder per SDO aus dessen
1600h/1A00h gelesen. Beides ist heute nicht vorgesehen.
- Knoten-Scan / Discovery.
1000h und 1018h über die Node-IDs abklappern, um zu sehen, was am Bus hängt. Mit dem vorhandenen SDO-Client baubar, aber keine Anforderung.
- Flying Master (CiA 302). Die GAP-Analyse führt ihn als Ausnahmekandidaten, „praktisch nie gebraucht". Dieses Urteil ist unter der Geräteannahme gefällt worden und gehört neu getroffen, wenn die Master-Rolle ein Hauptfall ist.
- Rückwirkung auf die erste Runde. Wenn Tool/Master der Hauptfall ist, schrumpft der Wert einiger Geräteposten — etwa der Fallback-Records ohne EDS. Die Posten bleiben richtig, ihre Priorität wäre neu zu bewerten.
Reihenfolge
Nach dem Maintainer (16.09.): erst die Geräterolle in Anforderungen übersetzen, damit die Traceability-Ratsche greift, dann diese Runde. Nicht davor und nicht parallel — die erste Übersetzung ist der Testfall für die Methode, und zwei offene Zuschnitte gleichzeitig sind genau das, was CLAUDE.md unter one pull request open at a time aus Aufsichtsgründen ausschließt.
Die vier Prüffragen aus dem Scope-Dokument gelten auch hier; die zweite („gilt der Posten für beide Pfade?") bekommt in dieser Runde eine dritte Lesart: gilt er für beide Rollen?
Der Zuschnitt in
2026-09-15-canopen-scope.md(PR #129) schneidet die Geräterolle zu: den Knoten, der ein eigenes Objektverzeichnis führt, von einem fremden Master konfiguriert wird und PDOs produziert. Das Dokument sagt das inzwischen selbst — vorher stand dort nur „CANopen ist durch", was zu breit war.Die Master-/Tool-Rolle ist damit nicht zugeschnitten, obwohl sie kein Nachgedanke ist:
SendNmtCommandAsync(…, targetNodeId),SdoUploadAsync(serverNodeId, …),AddHeartbeatConsumer(producerNodeId, …),StartNodeGuardingConsumer(…),StartSyncProducer.Was in dieser Runde zu entscheiden ist
Erste, noch ungeprüfte Sammlung — die Runde selbst arbeitet sie gegen Code und Normtext ab, wie die erste:
dborgards/eds-dcf-net), anderer Verwendungszweck.1600h/1A00hgelesen. Beides ist heute nicht vorgesehen.1000hund1018hüber die Node-IDs abklappern, um zu sehen, was am Bus hängt. Mit dem vorhandenen SDO-Client baubar, aber keine Anforderung.Reihenfolge
Nach dem Maintainer (16.09.): erst die Geräterolle in Anforderungen übersetzen, damit die Traceability-Ratsche greift, dann diese Runde. Nicht davor und nicht parallel — die erste Übersetzung ist der Testfall für die Methode, und zwei offene Zuschnitte gleichzeitig sind genau das, was
CLAUDE.mdunter one pull request open at a time aus Aufsichtsgründen ausschließt.Die vier Prüffragen aus dem Scope-Dokument gelten auch hier; die zweite („gilt der Posten für beide Pfade?") bekommt in dieser Runde eine dritte Lesart: gilt er für beide Rollen?