ionpy:hardware:junsi_icharger
Differences
This shows you the differences between two versions of the page.
| ionpy:hardware:junsi_icharger [2026/01/26 21:00] – created dominik | ionpy:hardware:junsi_icharger [2026/01/26 21:02] (current) – dominik | ||
|---|---|---|---|
| Line 1: | Line 1: | ||
| - | # Junsi iCharger 4010Duo - Linux Setup Guide (Debian/ | + | ====== |
| - | Diese Anleitung | + | Diese Dokumentation |
| - | ## 1. Systemvoraussetzungen (Root) | + | ===== 1. System-Voraussetzungen ===== |
| - | Zuerst müssen die notwendigen System-Bibliotheken für die USB-Kommunikation installiert werden: | + | Zuerst müssen die notwendigen System-Bibliotheken für die USB-Kommunikation |
| < | < | ||
| Line 12: | Line 12: | ||
| </ | </ | ||
| - | ## 2. udev-Regeln konfigurieren | + | Innerhalb der virtuellen Umgebung (venv) des Projekts muss PyUSB installiert sein: |
| + | |||
| + | < | ||
| + | pip install pyusb | ||
| + | </ | ||
| + | |||
| + | ===== 2. USB-Architektur des iChargers ===== | ||
| + | |||
| + | Der iCharger meldet sich am USB-Bus als **Composite Device** mit zwei Schnittstellen: | ||
| + | * [cite_start]**Interface 0 (HID):** Zuständig für die Datenübertragung (Modbus via HID). [cite: 178, 179] | ||
| + | * [cite_start]**Interface 1 (Mass Storage):** Stellt die SD-Karte als Laufwerk bereit. [cite: 140] | ||
| + | |||
| + | |||
| + | |||
| + | ===== 3. udev-Regeln konfigurieren | ||
| - | Die udev-Regel | + | Um den Zugriff für Nicht-Root-Benutzer zu erlauben, muss eine udev-Regel |
| - | * Gewährung von Schreibrechten für den User (via Gruppe plugdev). | + | |
| - | * Zuweisung des uaccess-Tags für die aktuelle Session. | + | |
| Erstellen Sie die Datei ''/ | Erstellen Sie die Datei ''/ | ||
| Line 22: | Line 34: | ||
| < | < | ||
| # Junsi iCharger 4010Duo - VID:0483 PID:5751 | # Junsi iCharger 4010Duo - VID:0483 PID:5751 | ||
| - | # Erlaubt | + | # 1. Erlaubt |
| + | # 2. Weist uaccess zu, um dem aktuellen | ||
| SUBSYSTEM==" | SUBSYSTEM==" | ||
| </ | </ | ||
| - | Aktivieren Sie die Regeln | + | Aktivieren Sie die Regeln: |
| < | < | ||
| sudo udevadm control --reload-rules | sudo udevadm control --reload-rules | ||
| sudo udevadm trigger | sudo udevadm trigger | ||
| </ | </ | ||
| - | **Hinweis: | ||
| - | ## 3. Diagnose-Checkliste | + | ===== 4. Diagnose-Verfahren ===== |
| - | Führen Sie diese Befehle aus, um den Status der Verbindung zu prüfen: | + | Sollte das Gerät nicht erkannt werden, prüfen |
| - | ^ Prüfung ^ Befehl ^ Erwartetes Ergebnis ^ | + | ==== A. Kernel-Treiber |
| - | | **Kernel-Treiber** | '' | + | Prüfen Sie, ob ein Treiber das Interface blockiert: |
| - | | **User-Berechtigung** | '' | + | < |
| - | | **ACL Status** | '' | + | Achten Sie auf die Zeile für den iCharger. Wenn dort '' |
| + | ==== B. Rechte-Check ==== | ||
| + | Suchen Sie Bus und Device Nummer: | ||
| + | < | ||
| + | Prüfen Sie dann die Rechte (Beispiel für Bus 002, Device 016): | ||
| + | < | ||
| + | **Soll-Ergebnis: | ||
| + | ==== C. Live-Monitor ==== | ||
| + | Beobachten Sie das System beim Einstecken des Geräts: | ||
| + | < | ||
| + | Achten Sie darauf, ob die Zeile '' | ||
| - | ## 4. Python | + | ===== 5. Integration im Framework |
| - | Innerhalb der virtuellen Umgebung (venv) des Projekts muss PyUSB installiert sein: | + | [cite_start]Der Transport nutzt das Modbus-Protokoll über HID-Reports. [cite: 418, 420] |
| + | * [cite_start]**Anfrage: | ||
| + | * [cite_start]**Antwort: | ||
| - | < | + | ===== 6. Troubleshooting ===== |
| - | pip install pyusb | + | |
| - | </ | + | |
| - | Der Transport in '' | + | | Fehler | Ursache | Lösung | |
| - | + | |---|---|---| | |
| - | ## 5. Bekannte Probleme | + | | '' |
| - | + | | '' | |
| - | * **Massenspeicher-Blockade: | + | | '' |
| - | * **SyntaxError bei Import:** Achten Sie darauf, dass keine Citations oder Metadaten-Tags im Python-Code von '' | + | </ |
ionpy/hardware/junsi_icharger.1769457653.txt.gz · Last modified: by dominik
