C’est tout frais, ça vient de tomber sur la chaîne d’AndyRC, un hack des lunettes FPV DJI V1 et V2 pour faire fonctionner la sortie vidéo sur le port USB-C avec un Air Unit ou Caddx Vista ! L’application DJI FPV Goggles over USB a été créée par D3VL, la société à l’origine du crack baptisé B3YOND pour passer le drone FPV DJI en mode FCC gratuitement et ainsi bénéficier de la pleine puissance d’émission. Elle est Open-Source et vous pouvez consulter le code directement sur GitHub. Il n’est donc plus obligatoire d’acheter le très coûteux Smart Controller pour récupérer le retour vidéo HD d’un masque DJI en USB !
La démonstration en vidéo du DJI FPV HD Video Out over USB
Le tutoriel pour utiliser la sortie vidéo sur USB des lunettes FPV DJI HD
Les prérequis
A l’heure où j’écris ces lignes le hack n’est disponible que pour PC (ou tablette Windows). Etant donné qu’il repose sur Node.js et FFmpeg, on peut espérer qu’il sorte sur smartphone et tablettes (à minima Android) et macOS (il existe aussi un guide pour mac publié en bas de cet article). C’est d’ailleurs tout aussi envisageable sous Linux (et donc sur Raspberry Pi pour faire un petit écran de streaming tout en un pour le terrain). En attendant, il faudra se contenter de cet archive DJIVideoOut.zip pour Windows.
Bien évidemment, il vous faudra un drone équipé d’un Vista ou d’un Air Unit ainsi que des lunettes, que ce soit en V1 ou V2 (en mode V1) et un câble USB Type C « data » pour le connecter à la source de diffusion.
Les pilotes
Afin d’installer les drivers capables de lire le flux vidéo DJI FPV HD, il faut tout d’abord connecter les lunettes à l’ordinateur via le port USB-C. Elles doivent être appairées à un drone qui émet avec le contrôle de la température désactivé (auto temp off). Pensez donc à bien ventiler le Air Unit ou (et surtout) le Caddx Vista si vous faites des essais sans voler. Ensuite, il faut exécuter le fichier Install Drivers.exe qui n’est ni plus ni moins que le logiciel Zadig que vous devez connaître si vous bidouillez de la FC.
Ensuite, normalement, le casque est directement affiché sous le nom de BULK Interface (Interface 3) :
Le cas échéant, il faut utiliser le menu Options / List All Devices et le sélectionner :
Finalement, on peut cliquer sur Install Driver (WinUSB) :
L’opération peut durer plusieurs minutes :
Si tout se déroule correctement, on a le message de succès suivant :
Fonctionnement du logiciel
Pour afficher le flux vidéo (drone et lunettes sous tension et ces dernières connectées en USB) il suffit enfin d’exécuter le script Run VOC – Hybrid GPU.bat. Si votre GPU (carte graphique) n’est pas compatible, utilisez donc Run VOC.bat. En quelques secondes l’image doit apparaitre à l’écran !
MAJ du 12/05/2021 : Pour réduire la latence, il y a aussi un troisième script Run VOC – experimental – Low Latency.bat qui affiche donc l’image sur l’ordinateur ou la tablette avec moins de délai. En contrepartie, il peut y avoir des glitchs.
En cas de problème, n’hésitez pas à rejoindre le Discord DJI FPV Video Out Club pour obtenir de l’aide. Le batch a d’ailleurs été mis à jour pour améliorer la latence du protocol.
⚠️ Mise en garde ⚠️
J’ai effectué le test avec les firmwares les plus récents (V01.00.0600) aussi bien pour les lunettes que le Caddx Vista. Cependant, il y a de fortes chances que DJI bloque ce hack via une future mise à jour. Si ça arrive, il faut espérer qu’il y ai du suivi chez D3VL également.
S’il ne semble pas y avoir de latence aussi bien dans le masque qu’à l’écran, je n’ai pas testé en vol. Par conséquent, je ne garantis pas que ce soit stable en vol et qu’il ne puisse pas y avoir de déconnexion vidéo (aussi bien dans les lunettes que sur le PC) !
Si vous avez des remarques ou des questions, n’hésitez pas à venir les poser sur le forum dans la discussion dédiée au DJI Digital FPV System.
EDIT du 12/05/2021 : il existe une procédure pour macOS !
Un guide pour installer Node et de FFmpeg sur macOS avec l’aide de brew a été publié sur le Discord du projet. Vous pouvez le consulter ici et d’après les premiers retours ça fonctionnent très bien !