8.0 KiB
Divoom Pixoo64 Update API Research
Dokumentation der Recherche für eine potenzielle RSS-Bridge für Pixoo64 Firmware-Updates.
Zusammenfassung
Die offizielle Divoom API für Firmware-Updates ist nicht öffentlich zugänglich und benötigt Authentifizierung mit einem registrierten Gerät. Eine RSS-Bridge ohne physisches Gerät ist daher nicht umsetzbar.
Gefundene API-Endpoints
Base URLs
Aus der dekompilierten APK (com.divoom.Divoom) gefunden:
https://appin.divoom-gz.com- Haupt-API (international)https://app.divoom-gz.com- Alternative APIhttps://appchina.divoom-gz.com- China-spezifischhttps://appusa.divoom-gz.com- USA-spezifischhttps://apptest.divoom-gz.com- Test-Umgebunghttps://f.divoom-gz.com- File Downloadshttps://ai.divoom-gz.com- KI-Features
Update-Endpoints
Aus APK-Analyse (classes.dex):
Device/GetUpdateInfo - Firmware Update-Informationen
Device/GetUpdateFileList - Liste verfügbarer Update-Dateien
Device/GetFileVersion - Aktuelle Firmware-Version des Geräts
Device/NotifyUpdate - Update-Benachrichtigungen
GetNewAppVersion - App-Versions-Updates
GetUpdateFileV3 - Update-Datei Download (Version 3)
Request/Response-Klassen (gefunden in DEX)
// Requests
com.divoom.Divoom.http.request.device.DeviceGetUpdateInfoRequest
com.divoom.Divoom.http.request.device.DeviceGetUpdateFileListRequest
com.divoom.Divoom.http.request.device.DeviceGetFileVersionRequest
com.divoom.Divoom.http.request.update.GetNewAppVersionRequest
// Responses
com.divoom.Divoom.http.response.device.DeviceGetUpdateInfoResponse
com.divoom.Divoom.http.response.device.DeviceGetUpdateFileListResponse
com.divoom.Divoom.http.response.update.GetNewAppVersionResponse
API-Tests
Test 1: GetUpdateInfo (ohne Parameter)
curl -X POST "https://appin.divoom-gz.com/Device/GetUpdateInfo" \
-H "Content-Type: application/json" -d '{}'
Response:
{"ReturnCode":11,"ReturnMessage":"Token is not match"}
Test 2: GetUpdateInfo (mit DeviceType)
curl -X POST "https://appin.divoom-gz.com/Device/GetUpdateInfo" \
-H "Content-Type: application/json" -d '{"DeviceType": 1}'
Response:
{"ReturnCode":1,"ReturnMessage":"no device"}
Test 3: GetUpdateFileList
curl -X GET "https://appin.divoom-gz.com/Device/GetUpdateFileList"
Response:
{"ReturnCode":1,"ReturnMessage":"Failed"}
Test 4: GetNewAppVersion
curl -X POST "https://appin.divoom-gz.com/GetNewAppVersion" \
-H "Content-Type: application/json" -d '{}'
Response:
{"ReturnCode":3,"ReturnMessage":"Request data is incomplete"}
Authentifizierungs-Anforderungen
Aus APK-Analyse identifizierte Parameter:
Device-Parameter:
DeviceId- Eindeutige Geräte-IDDeviceType- Gerätetyp (Pixoo64, Pixoo16, etc.)DeviceModel- ModellnummerBluetoothDeviceId- Bluetooth-Gerät-ID
Auth-Parameter:
Token- Authentifizierungs-Token- Wird bei
ReturnCode: 11mit "Token is not match" abgelehnt
Error-Codes:
ReturnCode: 1- "Failed" / "no device"ReturnCode: 3- "Request data is incomplete"ReturnCode: 10- "Command is not match"ReturnCode: 11- "Token is not match"
Device-Typen (aus APK)
DeviceTypeEnum {
PIXOO_64,
PIXOO_16,
PIXOO_MAX,
TIMEBOX_EVO,
// weitere...
}
Externe Ressourcen
Reddit-Post
URL: https://old.reddit.com/r/Divoom/comments/1i7fe1u/privacy_check/
Gefundene Server-Adressen:
api.divoom-gz.com
appin.divoom-gz.com
fin.divoom-gz.com
min-api.cryptocompare.com # Crypto-Preise
qt.gtimg.cn # Aktien-Kurse
www.googleapis.com # YouTube/Wetter
GitHub-Projekte
1. Pixoo64-Advanced-Tools
URL: https://github.com/tidyhf/Pixoo64-Advanced-Tools
Relevante Findings:
- Python-Tool für lokale Steuerung
- Nutzt
pixooundpixoo1664Libraries - Cloud API-Endpoints gefunden:
DIV_BASE_URL = "https://app.divoom-gz.com" DIV_FILE_URL = "https://f.divoom-gz.com" - Endpoints:
/User/UserLogin- Login/GetCategoryFileListV2- Gallery/Comment/GetCommentListV3- Kommentare/Cloud/GetLikeUserList- Likes
2. pixoo-homeassistant
URL: https://github.com/gickowtf/pixoo-homeassistant
Info:
- Home Assistant Integration
- Lokale IP-basierte Kommunikation
- Keine Firmware-Update-Features
3. pixoo_api (APK Reverse Engineering)
URL: https://github.com/Grayda/pixoo_api/blob/main/NOTES.md
Relevante Endpoints aus decompilierter APK:
Device/GetUpdateInfoDevice/GetUpdateFileListDevice/NotifyUpdateGetNewAppVersionGetUpdateFileV3
Dokumentation:
- Base URL:
https://appin.divoom-gz.com/ - Undokumentierte Remote API
- Verschlüsselung: AES mit Key/IV aus APK
4. Firmware-Repository
URL: https://github.com/amnemonic/Pixoo64
Verfügbare Versionen:
V90122 - 27 Jul 2022
V90126 - 21 Aug 2022
V90127 - 02 Sep 2022
V90136 - 06 Nov 2022
V90146 - 28 Nov 2022
V90149 - 26 Dec 2022
V90153 - 05 Jan 2023
V90156 - 05 Jan 2023
V90165 - 23 Mar 2023
V90166 - 29 Mar 2023
V90167 - 03 Apr 2023
V90180 - 27 Jul 2023
V90181 - 28 Aug 2023
V90192 - 25 Apr 2024
V90205 - 15 Feb 2025
Limitations:
- Keine offiziellen Releases
- Keine Changelogs
- Nur binäre Firmware-Dateien
- Unvollständige Sammlung (laut README)
APK-Analyse Details
Analysierte APK
- Package:
com.divoom.Divoom - Pfad:
/mnt/d/GitHub/Bridges/com_divoom_Divoom/ - DEX-Dateien: 4 (classes.dex, classes2-4.dex)
Extraktions-Methoden
# URLs extrahieren
strings classes*.dex | grep "divoom-gz.com"
# API-Endpoints finden
strings classes*.dex | grep -E "(Device/|Update/|GetNew)"
# Request/Response-Klassen
strings classes*.dex | grep "Request\|Response"
Weitere gefundene Endpoints (nicht Update-bezogen)
User/UserLogin
Cloud/GetLikeUserList
Comment/GetCommentListV3
GetCategoryFileListV2
SocialPlatform/* (OAuth für Twitter, Reddit, TikTok, etc.)
Mögliche zukünftige Ansätze
Option 1: GitHub-Repository überwachen
- Pro: Öffentlich zugänglich, keine Auth nötig
- Contra:
- Keine Changelogs
- Unvollständige Sammlung
- Manuelle Updates durch Community
Implementation:
// GitHub Commits API
$url = "https://api.github.com/repos/amnemonic/Pixoo64/commits";
// oder Atom Feed:
$url = "https://github.com/amnemonic/Pixoo64/commits/master.atom";
Option 2: APK-Updates überwachen
- APKPure/APKMirror für App-Versionen
- Indirekte Information über neue Features
Option 3: Mit physischem Gerät
Wenn Zugriff auf ein Pixoo64:
- Gerät in App registrieren
- Token/DeviceId aus App extrahieren
- API-Calls mit valider Auth
Token-Extraktion:
# Aus Android App-Daten (Root erforderlich)
adb shell
cd /data/data/com.divoom.Divoom/shared_prefs/
cat *.xml | grep -i "token\|deviceid"
Option 4: Divoom-Website Scraping
- Falls offizielle Changelog-Seite existiert
- Keine API-Auth nötig
Lokale API (Device)
Dokumentation
URL: http://doc.divoom-gz.com/web/#/12?page_id=196
Info:
- Lokale HTTP-API auf Pixoo64-Gerät
- Direkter Netzwerk-Zugriff (IP-basiert)
- Keine Firmware-Update-Funktionen
- Nur für Display-Steuerung
Kategorien:
- Dial control
- Channel control
- System settings
- Tool functions
- Animation functions
Fazit
Eine RSS-Bridge für Pixoo64 Firmware-Updates ist derzeit nicht realisierbar, da:
- Alle Update-APIs benötigen Device-Authentifizierung
- Kein öffentlicher Changelog verfügbar
- GitHub-Repo ist unvollständig und Community-maintained
Empfehlung: Warten auf:
- Offizielle Divoom Changelog-Seite
- Öffentliche API-Dokumentation
- Vollständigeres GitHub-Repository
Kontakt
Divoom Support:
- Website: https://divoom.com
- Developer Email: developer@divoom.com (laut APK)
- Support: https://divoom.com/apps/help-center
Recherche durchgeführt: 2025-01-25 via Claude Code