Skip to content

Commit c6c59ae

Browse files
author
sidey79
committed
feat: Update documentation to enhance clarity and include Architecture Decision Records
1 parent a1d69fd commit c6c59ae

4 files changed

Lines changed: 12 additions & 24 deletions

File tree

.github/workflows/docs.yml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -31,7 +31,7 @@ jobs:
3131
- name: run asciidoctor with Kroki extension
3232
# Registriere die Kroki-Extension (-r asciidoctor-kroki) und aktiviere sie (-a kroki=).
3333
# Mermaid-Diagramme werden mit dem Kroki-Server gerendert.
34-
run: asciidoctor -R docs -D build/site/html -a docinfo=shared -a toc=left -a toclevels=2 -r asciidoctor-kroki -a kroki= 'docs/index.adoc'
34+
run: find docs -type f -name "*.adoc" -exec asciidoctor -D build/site/html -a docinfo=shared -a toc=left -a toclevels=2 -r asciidoctor-kroki -a kroki= {} \;
3535

3636
- name: Setup Python for Sitemap Generation
3737
uses: actions/setup-python@v5

README.md

Lines changed: 0 additions & 18 deletions
Original file line numberDiff line numberDiff line change
@@ -2,24 +2,6 @@
22

33
Dieses Projekt ist eine moderne Python-Implementierung der SIGNALDuino-Protokolle mit vollständiger **asyncio**-Unterstützung und integrierter **MQTT-Bridge**. Es ermöglicht die Kommunikation mit SIGNALDuino-Hardware (über serielle Schnittstelle oder TCP) und veröffentlicht empfangene Signale sowie empfängt Steuerbefehle über MQTT.
44

5-
## Projektgeschichte
6-
7-
PySignalduino ist Teil des **RFD-FHEM**-Ökosystems, das ursprünglich als Perl-basierte Lösung für die Hausautomationssoftware FHEM begann. Die Entwicklung lässt sich in folgende Meilensteine unterteilen:
8-
9-
### Ursprung: RFD-FHEM und SIGNALDuino
10-
- **2010er Jahre**: Die RFD-FHEM-Community entwickelte Hardware- und Softwarelösungen für die Funkkommunikation mit 433/868 MHz Geräten.
11-
- **SIGNALDuino-Hardware**: Ein Arduino-basierter Transceiver mit CC1101 Funkmodul, der als kostengünstige Alternative zu kommerziellen Lösungen entstand.
12-
- **Perl-Implementierung**: Die ursprüngliche Protokollimplementierung erfolgte in Perl als FHEM-Modul `00_SIGNALduino.pm`.
13-
14-
### Migration zu Python
15-
- **2020er Jahre**: Mit der wachsenden Popularität von Python und MQTT entstand der Bedarf nach einer moderneren, asynchronen Lösung.
16-
- **PySignalduino**: Diese Bibliothek portiert die Perl-Protokolle (`SD_Protocols.pm`, `SD_ProtocolData.pm`) in eine native Python-Implementierung.
17-
- **Asynchrone Architektur**: Vollständige `asyncio`-Integration für bessere Performance und einfachere Integration in moderne IoT-Systeme.
18-
19-
### Community-Entwicklung
20-
- **Open Source**: Das Projekt wird von einer aktiven Community auf GitHub gepflegt und weiterentwickelt.
21-
- **Firmware-Entwicklung**: Die SIGNALDuino-Firmware wird parallel im Repository [RFD-FHEM/SIGNALDuino](https://github.com/RFD-FHEM/SIGNALDuino) entwickelt.
22-
- **Version 3.5.0**: Die aktuelle Firmware-Version bietet erweiterte Funktionen wie WiFi-Unterstützung für ESP32-basierte Boards.
235

246
### Entwicklungsstatus
257

docs/01_user_guide/installation.adoc

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -86,6 +86,6 @@ Details finden Sie in der [DevContainer-Dokumentation](devcontainer_env.md).
8686

8787
Nach der Installation können Sie:
8888

89-
1. Die [Schnellstart-Anleitung](../index.adoc#_schnellstart) befolgen.
90-
2. Die [Konfiguration über Umgebungsvariablen](../usage.adoc#_konfiguration) einrichten.
91-
3. Die [MQTT-Integration](../usage.adoc#_mqtt_integration) testen.
89+
* Die xref:#_schnellstart[Schnellstart-Anleitung] befolgen.
90+
* Die xref:#_konfiguration[Konfiguration über Umgebungsvariablen] einrichten.
91+
* Die xref:#_mqtt_integration[MQTT-Integration] testen.

docs/02_developer_guide/architecture.adoc

Lines changed: 8 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -95,8 +95,14 @@ Alle Requests (Commands) und Responses (Responses/Errors) verwenden eine standar
9595
----
9696

9797
=== Wichtige Architekturentscheidungen
98-
* link:../architecture/decisions/adr-001-mqtt-topic-structure.md[ADR-001: MQTT Topic Struktur und Versionierung]
99-
* link:../architecture/decisions/adr-002-command-dispatcher.md[ADR-002: Command Dispatcher Pattern und JSON-Schema-Validierung]
98+
Die vollständigen Architecture Decision Records (ADR) sind hier aufgelistet und werden im Dokument eingebettet:
99+
100+
// ADRs 001 bis 005 werden direkt eingebunden
101+
include::../architecture/decisions/ADR-001-mqtt-get-frequency.adoc[leveloffset=+1]
102+
include::../architecture/decisions/ADR-002-mqtt-command-dispatcher.adoc[leveloffset=+1]
103+
include::../architecture/decisions/ADR-003-cc1101-parameter-set-logic.adoc[leveloffset=+1]
104+
include::../architecture/decisions/ADR-004-mqtt-response-parsing.adoc[leveloffset=+1]
105+
include::../architecture/decisions/ADR-005-mqtt-cc1101-response-consistency.adoc[leveloffset=+1]
100106

101107
== Komponentendiagramm (Übersicht)
102108

0 commit comments

Comments
 (0)