
Drone HASAKEE FPV video app for Android

Une application Android pour visualiser le flux vidéo en direct des drones FPV HASAKEE. Construite par rétro-ingénierie du protocole UDP propriétaire utilisé par la caméra WiFi du drone.
HASAKEE-WiFi-XXXXX)192.168.0.1, port vidéo : 40000D'autres drones basés sur HASAKEE/Lewei utilisant le même protocole peuvent également fonctionner.
WifiNetworkSpecifier, API 26-28 vérifie la connexion existante)| Diffusion en continu | Connexion WiFi automatique |
|---|---|
![]() | ![]() |
Icône de l'application :
Icône de drone par Flaticon — gratuit pour usage personnel et commercial avec attribution.
L'application communique avec le drone via UDP :
HASAKEE-WiFi-XXXXX)63 63 01 00 00 00 00) toutes les 1 seconde vers 192.168.0.1:40000Le drone utilise un format de paquet propriétaire rétro-conçu à partir des bibliothèques natives de l'application Android HASAKEE FPV (liblewei-2.3.so, liblewei63.so) :
Offset 0x00-0x01: 0x6363 (en-tête magique)
Offset 0x02: Type de commande (0x01=heartbeat, 0x03=video)
Offset 0x03-0x04: ID de séquence
Offset 0x05-0x06: Longueur du paquet
Offset 0x07: Type de trame
Offset 0x08-0x0B: ID de trame
Offset 0x36 (54): Début des données JPEG
Cette application a été construite à partir de la connaissance du protocole acquise par rétro-ingénierie de l'application Android HASAKEE FPV (version 1.0.4), en particulier ses bibliothèques natives en utilisant Ghidra et l'analyse de paquets Wireshark.
L'ensemble du travail de rétro-ingénierie, y compris la documentation du protocole décompilé, le code de streaming Python de preuve de concept et les notes détaillées sur le protocole, est disponible sur :
git clone https://github.com/mretallack/DroneCamera.git
cd DroneCamera
./gradlew assembleDebug
L'APK se trouvera dans app/build/outputs/apk/debug/app-debug.apk.
Les versions Release nécessitent un keystore de signature :
export KEYSTORE_PATH=release.keystore
export KEYSTORE_PASSWORD=<your-password>
export KEY_ALIAS=release
export KEY_PASSWORD=<your-password>
./gradlew assembleRelease
L'APK signé se trouvera dans app/build/outputs/apk/release/app-release.apk.
./gradlew installDebug
./gradlew test
./gradlew lintDebug
app/src/main/java/uk/org/retallack/dronecamera/
├── FrameAssembler.kt # Analyseur de paquets 0x6363, assemblage de trames, désynchronisation
├── DroneConnection.kt # Envoyeur de heartbeat UDP et récepteur de paquets
├── WifiConnector.kt # Connexion automatique au WiFi du drone HASAKEE
├── DroneStreamViewModel.kt # Gestion d'état (IDLE/CONNECTING/STREAMING/ERROR)
└── MainActivity.kt # Affichage vidéo SurfaceView et UI
Ce projet est sous licence MIT — voir LICENSE pour plus de détails.
Icône de drone par Flaticon — gratuit pour usage personnel et commercial avec attribution.