-
Compteur de contenus
28 287 -
Inscrit(e) le
-
Dernière visite
-
Jours gagnés
780
Récompenses de Motard Geek
Grand Master (14/14)
- Rare
- Rare
Badges récents
9,9k
Réputation sur la communauté
203
Sujets solutionnés !
Favoris
-
Kiss Setpoint Weight
La Kiss FC V2 est là !Nouvelle version du matos V2 : http://kiss.flyduino.net/new-firmwares-guis-for-kissfcv2-and-esc32a/
Je viens de tout mettre à jour et ça décolle bien dans mon ptit jardin. On verra demain ce que ça donne sur le terrain
Les principales nouveautés sont le setpoint D weight réglable et les 7 aux !
Pour le setpoint ne me demandez pas encore d'aide, c'est un truc que j'ai jamais potassé, pas même pour BF ^^
-
GEPRC Mark4 Kiss / FETtec
GEPRC Mark4 Kiss / FETtecJ'ai enfin monté mon nouveau 5" avec une frame vraiment agréable tant par son poids que son espace et sa conception ! Ça a très bien volé 4 petites LiPos... Après ça a cramé comme vous pouvez le voir sur le topic FETtec. Le poids indiqué est avec le support de GoPro (mais sans la GoPro). Je vous mets des photos du montage et des différentes pesées dans le message d'après !
POIDS : 348 grammesListe des composants
Frame
GEPRC Mark4 45 € FC
Kiss FC V2 60 € ESCs
1 x FETtec ESC 4in1 - 6S 35A 55 € Moteurs
4 x Amax AMAXinno 2207.5 1800KV 88 € Jeu d'hélices
1 x HQProp ETHIX S3 5X3.1X3 PC 3 € Caméra FPV
Foxeer Predator V4 Micro 33 € Émetteur vidéo
TBS Unify Pro32 HV 50 € Antenne vTx
VAS MINION MMCX 90° 5.8GHZ - RHCP 18 € Récepteur radio
FrSky R-XSR 22 € LiPo
Tattu R-LINE 6S 1050MAH 95C 30 € Prix total : 404 €
-
Acrobrat F1
Acrobrat F1Voici la première version de l'Acrobrat WaF avec du matos de récup excepté la RunCam Split Mini V1 !
Il mériterait de plus gros moteurs, une FC plus moderne faisant dans l'idéal ESCs et un vTx stackable au format 20 x 20.
Plus de détails sur le montage dans le topic unique Acrobrat :
Liste des composants
Frame
Acrobrat 49 € FC
RaceFlight Millivolt (V1 sans OSD) 40 € ESCs
1 x RaceFlight Spark 4 en 1 V1 60 € Moteurs
4 x T-Motor F20 (V1) 1406 4100KV 4 € Jeu d'hélices
1 x Gemfan 3052 2 € Caméra FPV
RunCam Split Mini V1 70 € Émetteur vidéo
Tramp HV 40 € Récepteur radio
R-XSR 20 € LiPo
Tattu 850mAh 75C 20 € Prix total : 305 €
-
Kissed (V1) Sloop (V2)
Kissed (V1) Sloop (V2)Voici mon montage Sloop v2 en partie fait de pièces recyclées de mon Alien et de trucs qui traînaient dans mon atelier (XSR par exemple). En matos neuf y'a juste le combo Foxeer pour la vidéo La Kiss et les ESCs datent de juin 2016, c'est plutôt fiable comme matos ! Le bazar pèse 660g en ordre de vol mais ça se sent pas !
Plus de détails sur mon topic dans la section PiratFrames :
Liste des composants
Frame
Sloop v2 90 € FC
Kiss FC v1 34 € PDB
Airbot Matrix PDB 19 € ESCs
4 x Kiss 24A Race Edition 88 € Moteurs
4 x Rotor Riot Hypetrain 2306 2450KV 104 € Jeu d'hélices
1 x DALprop Cyclone T5040C 3 € Caméra FPV
Foxeer Predator Micro v2 31 € Émetteur vidéo
Foxeer ClearTX 19 € Antenne vTx
Foxeer Lollipop MMCX 19 € Récepteur radio
FrSky XSR 14 € LiPo
Acehe 4S 1500mAh 95C 33 € Prix total : 454 €
-
TBS Oblivion Beast Mode
TBS Oblivion Beast ModeAprès quelques galères, j'ai fini par faire voler ce ptit engin plutôt plaisant finalement. Il a même résisté à une petite séance de crash tests à venir
Topic du montage :
Liste des composants
Frame
TBS Oblivion 50 € FC
HelioRC Spring IMU-F 41 € ESCs
1 x Aikon AK32 35A 4 en 1 3~6S 69 € Moteurs
4 x HyperLite 2307-2722 Team Edition 100 € Jeu d'hélices
1 x Dalprop T5051C 2 € Caméra FPV
Foxeer Arrow V3 32 € Émetteur vidéo
AKK X2 Ultimate 23 € Antenne vTx
Lumenier Antenne AXII Stubby 21 € Récepteur radio
FrSky R-XSR 23 € LiPo
Tattu 5S 1550mAh 95C R-Line 42 € Prix total : 403 €
-
Alien Motard Geek
Alien Motard GeekMon bon vieil Alien de juillet 2016 sur lequel j'ai juste changé les moteurs (les Lumenier 2206 2350KV commençaient à être mous) et le vTx (juste pour tester un AKK) en 2017 !
Liste des composants
Frame
ImpulseRC Alien 5" 140 € FC
Kiss FC 40 € PDB
ImpulseRC Alien fournie avec la frame ESCs
4 x Kiss 24A Race Edition 100 € Moteurs
4 x Rotor Riot Hypetrain Freestyle 2306 2450KV 100 € Jeu d'hélices
1 x HQProp Propellers DURABLE DP5X4.3X3V1S - PC 3 € Caméra FPV
Foxeer HS1177 30 € Émetteur vidéo
AKK FX2 20 € Antenne vTx
TBS Triump (x2) en SMA 40 € Récepteur radio
FrSky XSR 30 € LiPo
Tattu 1300mAh 14.8V 75C 4S1P 25 € Prix total : 528 €
-
Flowride Full Kiss V2
Flowride Full Kiss V2Petit Flowride Full Kiss V2, plus de détails ici :
Liste des composants
Frame
Hyperlite Flowride 5" 50 € FC
Kiss FV V2 65 € PDB
Matrix PDB by Airbot 19 € ESCs
4 x Kiss 32A 112 € Moteurs
4 x PyroDrone HyperLite 2307-2722 Team Edition 100 € Jeu d'hélices
1 x HQProp DP 4X4.3X3 V1S PC 3 € Caméra FPV
Foxeer Predator Micro 30 € Émetteur vidéo
Tramp HV V3 35 € Antenne vTx
Pagoda WE are FPV by Gemini 8 € Récepteur radio
FrSk 20 € LiPo
Tattu 5S 1550mAh 95C R-Line 50 € Prix total : 492 €
-
Acrobrat Kiss CC
Acrobrat Kiss CCAprès la version sous F1, voici l'Acrobrat sous Kiss ! J'en ai déjà pas mal parlé sur le topic unique Acrobrat et dans ce test, je vous laisse lire tout ça
POIDS : 187 grammesListe des composants
Frame
Ummagawd Acrobrat 49 € FC
KISS CompactCTRL CC All-in-One FC&ESC 99 € ESCs
4 x 4 en 1 sur la FC AIO Moteurs
4 x Rotor Riot Hypetrain Brat 1407 4140KV 68 € Jeu d'hélices
1 x HQ Durable Prop T3X3X3 1 € Caméra FPV
Caddx Turtle 60 € Émetteur vidéo
AKK FX3 Ultimate 19 € Antenne vTx
Lumenier AXII U.FL 21 € Récepteur radio
R-XSR 20 € LiPo
Tattu 850mAh 4S 75C XT30 20 € Prix total : 357 €
-
Kissed Armattan Marmotte 🐹 6S 🚀
Kissed Armattan Marmotte 🐹 6S 🚀J'ai pété la PDB de mon Flowride et comme fallait dessouder les 4 ESCs de la Kiss et les moteurs pour y accéder j'en ai profité pour changer un peu (après plus d'un an de bons et loyaux services) et surtout passer en 6S avec... Une marmotte ! J'ai tout racheté sauf la FC et les ESC
Si vous voulez plus de détails sur le montage, je vous invite à lire ce topic :
Y'a aussi le maiden failed...
J'espère pouvoir poster rapidement une vidéo quand ça vole bien
Pour les accessoires qui sont pas dans la liste y'a un buzzer Vifly et 4 condensateurs LOW ESR 470uF (1 sur chaque ESC).
POIDS : 376 grammesListe des composants
Frame
Armattan Marmotte 114 € FC
Kiss V2 55 € PDB
ImpulseRC ImpulseOSD WOLF 54 € ESCs
4 x Kiss 32A 112 € Moteurs
4 x Hypetrain Stingy 2207 2150KV 100 € Jeu d'hélices
1 x HQProp ETHIX S3 5X3.1X3 PC 3 € Caméra FPV
Foxeer Falkor Mini 43 € Émetteur vidéo
TBS Unify Pro32 Nano 5G8 31 € Antenne vTx
Foxeer Lollipop u.FL 9 € Récepteur radio
FrSky R-XSR 22 € LiPo
Batterie Lipo Tattu R-Line 6S 1050mAh 95C 30 € Prix total : 573 €
-
GEPRC Mark4 FalcoX
GEPRC Mark4 FalcoXAprès la version Kiss / FETtec, voici la version FalcoX du Mark4
Depuis que j'ai pris les photos j'ai remplacé le condo 1000uF 50V de mauvaise qualité par 2 condos 680uF 35V de bonne qualité (Panasonic FM), j'ai branché le buzzer avec un connecteur (comme ça plus rien n'est soudé sur la carte), j'ai fait passer la pigtail XT60 à l'arrière et j'ai alimenté la cam FPV avec le vTx (via la FC c'était parasité à mort).
J'ai pas encore trouvé la conf idéale pour FalcoX mais ça vole plutôt bien
POIDS : 352 grammesListe des composants
Frame
GEPRC Mark4 45 € FC
Revolt OSD 40 € ESCs
1 x Airbot Furling32 F3 4 en 1 45A V1.2 40 € Moteurs
4 x iFlight XING Camo Pink X2208 1800KV 88 € Jeu d'hélices
1 x HQProp ETHIX S3 5X3.1X3 PC 3 € Caméra FPV
Foxeer Predator V4 Micro 33 € Émetteur vidéo
TBS Unify Pro32 HV 50 € Antenne vTx
VAS MINION MMCX 90° 5.8GHZ - RHCP 18 € Récepteur radio
FrSky R-XSR 22 € LiPo
CNHL 1300mAh 6S 100C Black Edition 30 € Prix total : 369 €
-
Rotor Riot CL1 Hybrid
Rotor Riot CL1 HybridIl me fallait un kwad pour tester la RunCam Hybrid (dont la review arrive ce soir). Du coup, j'ai récupéré le châssis CL1 qui m'avait servi à tester le kit FPV HD R2Teck. J'ai remplacé les vieux F60 par les Hypetrain Stingy que j'arrive pas à vendre J'ai aussi remplacé les ESCs AK32 par des Furling32 Mini 45A en F3. La FC n'a pas changé, c'est une Foxeer F405 AIO. J'ai rajouté un vTx TBS Unify Pro32 Nano (puisque j'ai viré le vTx HD) avec une antenne SpeedyBee customisée pour WaF et laissé le bon vieux X4R-SB.
Si les premiers tours d'hélices ont été assez flippants, j'ai vite compris que les réglages PID et filtres de BetaFlight 4.0 ne sont pas du tout adaptés aux 6S Du coup j'ai suivi le tuning guide qui m'a permis de voler. Les réglages sont largement perfectibles mais j'ai pas eu le temps de m'y coller encore...
Liste des composants
Frame
Rotor Riot CL1 49 € FC
Foxeer F405 AIO 40 € ESCs
4 x Airbot Furlin32 Mini 45A 76 € Moteurs
4 x Rotor Riot Hypetrain Stingy 2207 2150KV 100 € Jeu d'hélices
1 x Ethix S4 3 € Caméra FPV
RunCam Hybrid 99 € Émetteur vidéo
TBS Unify Pro32 Nano 5G8 24 € Antenne vTx
Speedy Bee 5,8 GHz 2dBi WE are FPV 7 € Récepteur radio
FrSky X4R-SB 29 € LiPo
CNHL Black Series 1300mAh 22.2V 6S 100C 29 € Prix total : 456 €
-
Comparo mousses
[TOPIC UNIQUE] DJI Digital FPV System, FPV HDAlors j'ai pu tester ma nouvelle mousse :
Alors c'est super confortable, c'est le même type de revêtement que j'ai sur mon Transformer HD et c'est ce que je préfère.
Par contre elle n'est pas assez épaisse du tout et le profil ne correspond pas à mon visage, y'a énormément de jour.
De plus je pige pas l'intérêt du trou dans la mousse, ça pince le nez c'est horrible
Bref, je suis repassé à la version "confort" de chez DJI qui me correspond mieux
-
LQ in channel map
[TOPIC UNIQUE] DJI Digital FPV System, FPV HDSur la T2 t'appuies sur Menu :
Tu rentres dans Crossfire Menu et t'as :
Tu vas donc dans les paramètres de ton Rx (qui doit être bien évidemment) :
Ici tu passes en 12 canaux et tu reviens le temps que ça rafraichisse les canaux et dans le 9ème tu mets ton LQ ou RSSI :
Et tu repasses en 8 canaux.
Comme ça tu monopolises pas un des 8 canaux entre ta radio et le Rx et tu gardes la latence au plus bas.
Le Rx lui envoie toujours le canal 9 à la FC
EDIT : pas la peine de le dire, ma T2 est dégueu
-
Molette SMA
[TOPIC UNIQUE] DJI Digital FPV System, FPV HD@Motard Geek Voilà, bague de vissage custom faite, normalement c'est nickel, ca serre bien la vis et c'est pas trop épais ni trop large. Je mets le .STL en PJ.
-
La télémétrie c'est quoi
La Télémétrie, c'est quoi ? (Débutant)# La télémétrie pour les Débutants
## Pour qui, pour quoi ?- Bonjour à toi qui lis ce post.
- Avant d'aller plus loin, si tu te sers déjà de la télémétrie, je risque de ne rien t'apprendre, tu peux t’arrêter ici
- Sinon la suite peut peut être t'apporter quelques infos.
- Je me présente, je m'appelle Florent, je fais du FPV depuis quelques mois, j'ai monté mon premier drone à partir d'un kit tyro79.
- J'ai bien galéré pour relier mon RX et mon VTX alors quand ça a été terminé, j'ai fait un post ici pour aider mon prochain (parce que chez eachine ils changent les composants des kits, ils ne mettent pas de doc, et il n'y a pas toujours du monde pour faire une vidéo ou un tuto à chaque changement).
- Dans un commentaire, on m'a dit "pour ton r-xsr, si il te reste un UART de libre, tu peux connecter le jaune du r-xsr sur le TX de ce dernier, cela t’apportera la télémétrie."
- C'est quoi ça la télémétrie ? J'ai alors commencé à me poser plein de question sur la télémétrie.
- Qu'est ce que ça m'apporte ? Est ce que c'est utile quand on débute ?
- Maintenant que j'ai un peu creusé le sujet et que j'ai trouvé des réponses à mes questions, je me suis dit que ça pourrait aider d'autres pilotes, d'où ce post.
- Rentrons dans le vif du sujet !
## A quoi ça sert la télémétrie ?
- La télémétrie ça permet de faire discuter ta radio et ton qwad pour échanger des infos autres que "j'ai bougé un switch ou un gimball" et le RSSI.
-
La télémétrie te permet de recevoir des infos supplémentaires en plus du RSSI quand tu fais la détection des "sensors" (page 12 de ton modèle de mémoire).
- Les coordonnées GPS de ton drone, les niveaux de batteries ... Plein d'infos que tu peux déjà avoir dans l'OSD de ton masque ou tes lunettes.
- La télémétrie de permet de modifier ton paramétrage via des scripts LUA (https://oscarliang.com/betaflight-change-pid-vtx-settings-taranis).
## Comment je met la télémétrie en place ?
- Il te faut un RX qui supporte la télémétrie (type XSR, R-XSR par exemple)
- Si tu as une FC F4, il te faudra jouer du fer a souder pour relier ce fameux fil jaune entre ton RX et un TX de ta FC (l'histoire de l'inverted port).
- Un peu de paramétrage dans ton outil de config pour ta FC (il y a plein de tuto pour BF et ce n'est pas le sujet ici )
## Qu'est ce que ca peut m'apporter ?
- Si tu as un GPS tu pourras enregistrer les coordonnées GPS lors de ton vol par exemple. Si malheureusement tu perdais ton qwad, ca peut t'aider à le retrouver.
- Tu peux enregistrer tes métriques et le suivre via des graphs si t'as envie de t'éclater à comparer tes vols.
- Si tu n'as pas la motive de regarder ton OSD pour avoir le niveau de batterie, tu peux faire hurler ta radio quand tu passes sous un seuil de voltage batterie .
- Le point précédent s'applique à ce que tu veux, tu peux faire parler ta radio en fonction de dépassement de seuil des différents sensor.
- Tu pourras modifier tes réglages PID, VTX, Rates, Filtres directement depuis ta radio (cf script LUA).
## Est ce qu'on en a vraiment besoin ?
-
Tout le monde en parle alors ça doit être cool.
- C'est ce que je me suis dis !
- Pour ma part, j'ai le smart audio sur mes drones, je peux donc via mon masque modifier mes réglages au besoin, en tant que débutant ca ne va pas bien loin comme modification pendant les sessions.
- Je vole sur des surfaces grandes comme un terrain de foot au max, je n'ai pas de GPS donc pas besoin de connaitre la position du drône, mon spotter s'en charge !
- En conclusion, quand on débute, c'est bien de savoir ce que ça fait, mais pas besoin de passer du temps à la mettre en place si elle ne sert pas.
- Autant utiliser son temps pour maitriser d'autres parties de sa machine, pour savoir comment elle vole et pour comprendre pourquoi elle vole mal si c'est le cas.
## Mot de la fin
- Je ne me prétend pas expert du FPV ou de la télémétrie, je fais juste un retour d'expérience de mes débuts en tant que pilote qui a passé du temps à comprendre les tenants et les aboutissants de la télémétrie.
- Si j'ai dis des bêtises, préviens moi pour que je mette à jour l'article.
- Merci à toi d'être arrivé jusqu'ici ! Bons vols et à bientôt !
-
Tuto balise Wi-Fi
[TUTO] Balise WIFI de signalement électronique, DRONE 800g+ LEGIT FRSalut les pirates !
Bon ça faisait longtemps que j'avais pas fais de tutos, du coup vu le tournant législatif que prend le hobby et vu que j'ai pas mal potassé le sujet j'ai décider de vous pondre un petit sujet sur ... LES BALISES DE SIGNALEMENT ELECTRONIQUES !
Comme vous le savais surement, depuis le 1er Janvier 2021 TOUS les drones de plus de 800g prêts à voler (donc avec lipo/li-ion et cam hd) doivent êtres équipés de balise wifi électroniques émettant une trame beacon (oui y va y avoir des termes techniques ce coup-ci lol) sur le Channel 6, contenant les coordonnées de géolocalisation du drone (vitesse, altitude, longitude, latitude et point de départ).
C'est bien jolie tout ça mais après avoir checké les prix ... plus d'une centaine d'euro pour UNE seule balise (minimum syndical), et même si la fédération d'aéromodélisme va en sortir une à bas coûts (40€ de mémoire), elle ne sera distribué que dans els clubs et rapidement en rupture.
C'est la que pleins de projets ont émergés ! (merci l'open source et les dev !), nous permettant de fabriquer pleins de types de balises pour différents usages et ce en pleine légalité (attention il est nécessaire que savoir que la législation FR diffère de la future législation Européenne, la France pousse pour que l'UE prenne exemple sur nous mais d'ici deux ans on risque de se retrouvé avec 2 balises différentes pour être dans la légalité, situation UBUESQUE mais bon, c'est la France!) !
Pour fabriquer cela nous allons utiliser des ESP, ce sont de petits circuits électroniques équipés de puces wifi, bt ou encore gps.
Voici les différents modèles et projets pour les usages :
ESP32 TTGO BEAM:
Cette balise est la plus simple à créé car tout y est intégré, le gps, le wifi, le BT et même une alimentation li-ion pour la rendre totalement indépendante du drone !
Désavantage me direz vous ? Elle est GROSSE, parfaite pour des phantom 4, Inspires ou des gros porteurs mais à oublier pour nos racers.
Lien d'achat:
Upgrade Antenne gps TTGO (15x15)
Upgrade Antenne wifi coudé TTGO
Lien du code à implanter:
Lien PACK AIO (avec STL):
Je vous donne le lien original avec toutes les indications qu'il faut afin de la programmer (ce code utilise Visual studio code et le plugin platform.io, largement utilisé par les maker d'impression 3d).
Source 1 (base de tous les projets et échanges communautaires très actifs)
Source 2 (avec un petit point rapide sur l'enregistrement alpha tango)ESP01 V1D:
Ce modèle est un très bon compromis entre l'autonomie du système et la légèreté (11g environ).
Il à l'avantage de se branché en 5v et couplé avec un petit BN220 (N'hésitez pas à aller voir mon tuto sur les upgrades GPS ) et buzzer, permet une balise compact et facile d'utilisation (encore un peux gros pour un racer mais est diablement efficace).
De plus le code permet d'embarquer un petit serveur web local qui, en étant connecté au wifi de la balise et en tapant l'adresse ip dans votre navigateur internet, vous permet de visualiser en temps réel les coordonnées et d'afficher le trajet effectué par le drone sur une carte et de télécharger un fichier gpx ! (pour les téléphones android il est nécessaire d'avoir en plus l'application "speedify", afin de recevoir les donnée cellulaire tout en étant connecté en wifi).
Lien d'achat:
Lien du code à implanter:
ESP01:
Alors celui la c'est le Graal ! le must , celui qu'on recherche et qui en plus est le moins cher !
On est ici réduit à un système simple d'émission wifi mais qui pour le coup est diablement efficace et ultra légé et compact (8g avec un gps dédié, 3.35g avec le récepteur et 1.5g en ultra light).
L'esp01:
Ici le récepteur:
Il y as 2 manières de faire et quelques spécificités sur ce module.
La première est une utilisation avec un gps autonome (obligation pour celui-ci d'être en 9600 de baudrate et 1hz de rate), l'avantage de ce montage est qu'il suffit de tirer un 3v et un gnd de votre fc pour alimenter tout le montage ! (oui c'est du 3V !! pas du 5V, j'en ai fais les frais alors attention ! lol).
De plus il permet de n'alimenter le gps QUE si la balise est monté sur le drone (le récepteur permet de monter et démonter l'esp si vous avez des modifications à faire sans avoir à tout dessouder, vous perdez 1.5g en light mais perdez aussi en confort).
La seconde, et qui est à mon sens la meilleur dans notre utilisation est l'usage en MSP, c'est dire brancher votre ESP01 à un UART, un 3V et un gnd de votre fc et de récupérer les informations du gps déjà existant !!
De ce fais vous gagnez en poids, en montage et en simplicité (au prix d'un uart).
Actuellement c'est fonctionnel au niveau de INAV et BF (je n'ai pas encore fais de test sur EMU mais pas de raison que cela ne fonctionne pas, à voir si les données GPS et les HDOP sont bien transmis).
Lien d'achat:
ESP01 / Récepteur / Programmeur
Lien du code à implanter:
Note:
Pour flasher les esp01 (contrairement aux ESP01V1D et ESP32), vous aurez besoin d'un programmeur usb.
2 sortes existes:
Le classique
Vous aurais besoin ici de faire un pont de soudure pour mettre l'esp en mode bootloader (soit avec un fil, des cavaliers ou carrément un switch).
ou la version avec bouton intégré.
ESP32 :
Et enfin pour finir, un autre model d'esp 32.
Celui-ci va nous permettre non pas de créer une balise mais un DECODEUR DE BALISE ! Oui Monsieur l'agent !
En effet, les trames beacon émises par les balises sont codé dans le réseau et donc ne se lisent pas facilement pour le cerveau humain, à moins de connaitre le langage.
Déplus à part pour l'ESP01V1D qui détient un serveur web, c'est la seule manière de savoir sur le terrain si votre balise émet ou non !
Il y a plusieurs manière de les déchiffrer, pour cela il suffit d'avoir une antenne wifi en mode "monitoring " (attention toutes ne le font pas) et d'un script python (comme celui de la gendarmerie).
Mais le plus simple ne serait il pas un module qui intègre tout ça et qui en plus permettrais de lire sur un écran dédier ou un smartphone ? c'est de cela dont il est question ici !
Lien d'achat:
Lien du code à implanter:
Bon maintenant que l'on à fais le tour du propriétaire et que vous voyez le principe de ces petites puces, on va pouvoir attaquer le dur ! LA PROGRAMATION !
Tout cela ce passe par Arduino IDE (sauf pour la TTGO que nous n'aborderons pas ici vu que les liens disponibles plus haut expliquent très bien comment flasher le tout).
Le problème majeur de compiler de l'Arduino est le manques de librairies de base, en effet CHAQUE codes que vous souhaitez compiler nécessite des bibliothèques (ou Library en English) et si l'une de ces dernière est manquante cela ne fonctionnera pas, de plus il faut également implanter chaque modèles de carte que le code va utiliser car l'infrastructure est différente en fonction.
Bon vu que je me suis bien cramé les neurones sur le sujets (merci d'ailleurs à AKEX_ du forum d'EMU qui m'a grandement aidé pour ce coté), je vous met un petit lien vers ma version (portable, donc pas d'installation nécessaire) de mon Arduino IDE avec toutes les architectures et Library qui vont bien !
Je vous ai également archivé tous les codes github dans un petit dossier:
Bon du coup comment on programme ces bestioles ?
Un fois Arduino IDE téléchargé on peut le lancer, voila à quoi ça ressemble:
Si vous avez besoin de rajouter une Library il faut faudra l'identifier puis vous pouvez la rajouter en faisant une rechercher cet onglet:
Pour certaines cartes ou codes il vous rajouter une repository (un dépôt) dans les sources du logiciel, pour cela rendez-vous dans :
Voici la ligne qui nous intéresse dans le menu préférence:
Puis vous rentrez à chaque lignes le dépôt voulus.
(Note: vous n'avez pas besoins de toucher à cette partie dans le cadre de ce tuto).
Si vous devez changer l'architecture de la carte ca sera dans l'onglet outil qu'il faudra le sélectionner (vous devrez la changer pour pouvoir flasher un esp01 ou un esp32).
Pour mettre l'architecture ESP32 (esp32 et TTGO):
Pour mettre l'architecture ESP01 (esp01 et esp01v1D):
Maintenant on branche l'esp01 au programmateur, on le met en mode bootloader, et on le branche au pc:
Maintenant il ne nous reste plus qu'à utiliser le code que l'on souhaite en ouvrant le fichier .ino :
Maintenant que nous avons ouvert le fichier nous allons devoir le modifier les id dans les fichiers "balise" et "DroneID_FR.h".
Pour avoir un numéro valide auprès de la DGAC, il vous faut un trigramme : 000 (officiel pour toutes balises DIY) suivis de 3 lettres (par exemple XXX) puis de 24 chiffres (le tout composant un ID de 30 caractères).
BALISE:
DroneID_FR:
N'oubliez pas de noter cet ID, c'est celui qu'il faudra référencer dans alpha tango pour votre drone !
Celons les différents montages, vous pouvez changer quelques options pour définir les pin, mettre un buzzer etc ... :
Une fois modifié nous allons téléverser le code dans la balise.
On choisis l'architecture 8266 puis on sélectionne le port où est branché le programmateur et et cliquez sur téléverser (la flèche) :
A partir de la c'est le suspens !! (ou pas ^^) si tout va bien (ce qui normalement devrais être le cas) le programme va se compiler et va se transférer dans la balise (surtout ne fermez pas le programme ou ne retirez pas l'usb sous peine de briquer la carte):
Une fois ce message apparut, vous pouvez retirer l'usb :
Et voila ! votre balise est programmé !
Bon c'est bien gentil de faire click click mais comment on build tout ça ?
J'ai fais de petites notices en fonction des montages (pour l'esp01 en MSP et l'esp01D1):
ESP01 en MSP (lite ou connecteur):
EPS01 avec gps dédié :
Il faut faire également un pont sur l'esp01 :
ESP01D1 autonome:
Voila pour ce qui est de la partie ESP01 (il ne vous reste plus qu'a déclarer les ID dans alpha tango et c'est tout bon !).
Oui mais si je me fais contrôler par les forces de l'ordre ? En théorie ces derniers doivent être équipés d'une antenne monitoring, d'un pc et du code python qui décode les trames pour vérifier la conformité, mais si vous voulez être un bon élève, vous pouvez simplifier le tout en fabriquant un sniffeur de trames ! , c'est à dire un petit appareil qui décode les trames beacon envoyées par votre balise.
Pour cela, il faut vous munir d'un esp32.
En ce qui concerne le modèle peu importe (pour le Bluetooth le vous conseil la TTGO car elle est totalement autonome et permet un accès facile via le smartphone, pour le TFT je vous conseil le model que je vous ai donné plus haut, ce qui suit n'est applicable que pour ce cas précis).
Pour le code de décode balise Bluetooth, il vous suffit d'ouvrir le code avec arduino IDE , de sélectionner l'architecture "ESP32-dev module", le bon port, et de téléversé dans la balise.
Pour voir les trames, il faut télécharger une petit application :
Vous vous connectez en Bluetooth au sniffeur, puis vous verrez les trames beacons décodés qui sont diffusé (du moment que le gps a fixé des satellites).
En ce qui concerne le code avec un TFT c'est un peu plus touchy ! vous devez déclarer quels sont les bon drivers et modèles à utiliser.
Pour cela vous allez aller dans le dossier Arduino IDE, et rechercher dans la Library TFT_eSPI (attention elle peux se trouver à plusieurs endroits) le fichier "User_Setup.h" et "User_Setup_Select.h" :
Dans "User_Setup.h", il vous faut choisir le bon driver graphique concernant l'écran tft, dans notre cas le ST7789_DRIVER.
Pour l'activer nous dé-commentons la ligne (ensupprimant les deux slash "//"), n'oubliez pas de commenter avec "//" la ligne de l'autre driver actif si il y en à un (moi c'était ILI9341_DRIVER).
On enregistre.
Puis on ouvre le fichier "User_Setup_Select.h".
Ici nous allons choisir en dé-commentant (de la même manière que plus haut) le model de notre carte esp32, dans notre cas c'est la "TTGO_T_Display.h".
(N'oubliez pas de commenter avec "//" les autres modèles si il y en à d'actifs).
On enregistre.
Et voila! vous n'avez plus qu'a téléverser le code Decode_balise_TFT dans l'esp32 et vous verrez une vois le module alimenté (par câble ou batterie) les trames affichés sur l'écran !
Et voici la fin de ce tuto !
Un ENORME merci aux dev qui font un job de fou et qui nous permettent d'innover le hobby tous les jours !
Voici les sources du tuto:
Open Source French Drone Identification
A très vite dans les nuages !
-
Tuto upgrade fix GPS M8
[TUTO] Upgrade fix GPS M8 (bn220, bn180, bn880...) UcenterSalut les pirates !
Bon suite à de nombreuses demandes je me lance dans la conception d'un petit tuto concernant le GPS de nos machines.
L'intérêt de ce dernier et d'augmenter significativement le fix des gps type M8n (!attention! Apparemment les séries M8q ne sont pas assez puissants pour save les changements, ce tuto ne leurs convient donc pas).
12 satellites fix en 10sec dans mon sous-sol et 20-25 sur le terrain en permanence pour mon cas avec un bn220.
DISCLAMER: LES DONNÉES ANNONCÉS PLUS HAUT SONT POUR MON CAS PARTICULIER, VOTRE GPS SERA PLUS STABLE ET PLUS PERFORMANT EN RÉCEPTION ET FIX MAIS MON EXPÉRIENCE N'EST EN AUCUN CAS UN MODÈLE DE CE QUE VOUS OBTIENDREZ (dépend du modèles, des sats etc...).
Ceci étant dis commençons !
En premier lieux il va vous falloir 3 choses:
- Le soft Ucenter (dispo à cette adresse : https://www.u-blox.com/en/product/ucenter)
- Un périphérique Ftdi (le modèle que j'utilise est dispo ici : https://www.amazon.fr/gp/aw/d/B01N9RZK6I?psc=1&ref=ppx_pop_mob_b_asin_image)
Vous pouvez également utiliser l'option cli passthrough de votre configurator :
Citationserialpassthrough (numero de votre uart -1, dans notre cas uart 6) 5 (le baudrate actuel de votre GPS, de base 9600) 57600
(vous l'activez et et fermez le soft sans cliquer sur déconnexion) mais vous ne pourrez pas changer le baudrate sous peine de devoir repasser dessu avec un ftdi (par contre pour la modification du rate et galileo pas de soucis) je conseille donc vivement l'investissement dans ce petit périphérique (par contre une fois tout programmé si vous voulez toucher autre chose que le baudrate sans avoir à démonter le GPS du quad cette option est top).
- bah... Un GPS (je recommande particulièrement le Bn220 qui augmente grandement le fix avec la sauvegarde de ces derniers dues à sa pile intégré).
Une fois toutes ces conditions remplis nous allons pouvoir attaquer le vif du sujet !
- 1. Installez le soft ucenter (bon je ne vais pas m'attarder sur cette partie, c'est un soft classique, si vous avez réussi à installer votre configurator celui ci devrais ce faire les doigts dans le nez ).
- 2. Brancher son GPS à son périphérique FTDI; pour cela utilisez la petite prise JST fourni avec les pins noirs, le branchement étant le suivant :
5v du gps sur VCC FTDI
GND sur GND
RX du gps sur TX FTDI
TX du gps sur RX FTDI
Une fois cela fais, vous pouvez brancher votre FTDI au pc.
-
3. Maintenant on peux commencer à configurer !
- A) Vérifier la communication
Tout d'abord vérifions les drivers et PORTCOM de votre FTDI (si vous avez installé les drivers BF ou Emu cela devrais être tout bon), rendez vous dans le gestionnaire de périphérique de Windows, onglet USB, vous devriez voir apparaître le PORTCOM utilisé (COM10 dans mon cas, à adapter en fonction du votre).
Si ce n'est pas le cas je vous invites a utiliser ZADIG pour mettre en place le VIRTUAL PORT manquant.
Connectez le gps sur Ucenter en cliquant sur la flèche à coté de l'icone de connexion en haut a gauche, cliquez sur le COM10 du FTDI, si l'icone devient vert, c'est tout bon !
Il se peux que le firmware gps soit mal intégré de base et que malgré les drivers installés et reconnus, le gps ne soit pas reconnu dans Ucenter , dans ce cas il est nécessaire de télécharger ARDUINO (https://www.arduino.cc/en/Main/Software), de télécharger le code source .ino (https://www.youtube.com/redirect?q=http%3A%2F%2Fwww.iforce2d.net%2Fsketches%2FUBX_GPS.zip&v=TwhCX0c8Xe0&event=video_description&redir_token=RnYR0JhAzSVpTxelTngk3zr6QH58MTU3ODU1OTI0OUAxNTc4NDcyODQ5), ouvrez le via ARDUINO, sélectionnez le PORTCOM concerné dans le menu et faites téléverser (une fois l'update effectué cela devrais être bon).
Nous allons modifier 4 paramètres dans le gps: le Baudrate (9600 de base, qui est la vitesse de transmission des données), le rate (1000ms de base, qui est le débit max envoyé), ajouter le réseau satellite européen GALILEO, et modifier au besoin le protocole de communication (NMEA de base, le passer en UBX) [ce dernier paramètre peut être déjà activé nativement].
Le BAUDRATE de base étant 9600, vérifiez que vous êtes bien sur ce canal pour que le gps puisse communiquer (et au passage DESACTIVEZ l'option autobauding).
En cliquant sur view et binary console, vous devriez voir le gps communiquer.
-
- B) Changer le BAUDRATE et le protocole UBX (si besoin)
Allez dans le menu View et cliquez sur View Configuration.
Cela va vous ouvrir la fenêtre de config du gps (elle être légèrement différente en fonction de la version de Ucenter).
Allez dans l'onget UBX => CFG(Config) => PRT (Ports).
Modifiez le BAUDRATE a 57600 (ne le mettez pas plus haut si votre doc ne le préconise pas sous peine d'avoir des infos erronés ou même griller votre puce) , et verifiez que le protocol IN est sur UBX+NMEA+RTCM2 et que le protocol OUT est sur UBX+NMEA.
Ensuite cliquez sur SEND en bas à gauche de la fenêtre pour déverrouiller le cadenas puis une seconde fois pour valider, fermez la fenêtre (on vous demande si vous voulez save, dites oui, et dans la nouvelle fenêtre faites send également en bas à gauche pour sauvegarder la config de votre gps puis quittez la fenêtre).
Retournez dans le menu Configuration View => INF (inf Messages), mettez le protocol UBX puis recochez error - warning - notice sur les canaux 0 -1 - 3 - 4, faites SEND 2x, sauvegardez la config avec send (voir plus haut), fermez la fenêtre.
A partir de maintenant le BAUDRATE du gps est configuré en 57600, il ne communique donc plus avec Ucenter malgré qu'il soit connecté (vous pouvez le vérifier via la fenêtre binary console), nous allons donc changer le canal BAUDRATE de Ucenter (qui était sur 9600) sur 57600 (miracle ! ça communique de nouveau !).
(Attention la photo est juste la pour illustrer le menu à modifier)
-
- C) Modifier le RATE du gps
Rendez vous dans la fenêtre de configuration, onglet UBX => CFG (Config) => RATE (Rates).
Modifiez la valeur 1000ms par 200ms pour que la fréquence soit à 5hz (attention au delà de cette valeur les paquets seront potentiellement erronés) , faites SEND 2x, sauvegardez la config avec send (voir plus haut), fermez la fenêtre.
-
- D) Ajouter le réseau européen GALILEO au gps
Rendez vous dans la fenêtre de configuration, onglet UBX => CFG (Config) => GNSS (GNSS Config).
Si le gps communique bien vous devriez avoir déjà avoir tout de remplis (en partie) avec 32 channel available et 32 channel to use.
Décochez QZSS (enable) et cochez Galileo (configure, enable et E1 si il ne l'est pas), faites SEND 2x, sauvegardez la config avec send (voir plus haut), fermez la fenêtre.
Ça ne sert à rien de tout cocher, d'une part votre gps ne le prendra pas et d'autre part (dans mon cas), il ne peut gérer que 3 canaux gps simultanément donc 4 canaux actifs est un bon compromis.
Pour vérifier si votre GPS prend plus de canal, rendez vous dans le menu View => Messages View .
Ensuite allez dans UBX => MON (Monitor) => GNSS (Default System Settings)
Vous pouvez vois les canaux supportés par votre gps, les systèmes par défaut, les systèmes actifs ainsi que le nombre de systèmes actifs supportés simultanément.
Revérifiez que les modifications que l'on a faites précédemment ont bien été prises en compte.
Vous pouvez check la communication, le nombres de satellites etc... sur les graphiques à droite et via les consoles binary, paquets et text.
Déconnectez le gps en cliquant sur l'icone de connexion vert.
NE DÉCONNECTEZ PAS LE GPS ALLUMÉ DU FTDI EN PREMIER AVEC L'USB TOUJOURS BRANCHÉ !
DANS L'ORDRE, EN PREMIER L'USB (POUR ÉTEINDRE LE GPS) ET ENSUITE LES PINS GPS DU FTDI POUR ÉVITER TOUS RISQUES DE COUR-CIRCUITS !
LA PREMIÈRE FOIS QUE VOUS CONNECTEZ VOTRE GPS, LES FIX PEUVENT METTRE PLUS DE TEMPS, N’HÉSITEZ PAS A ORIENTER LE GPS VERS LE CIEL POUR MAXIMISER LA CAPTATION DE SIGNAL.
- 4. Modifier le BAUDRATE et le protocole dans votre configurator !
Ouvrez votre configurator et RDV onglet port, mettez le BAUDRATE à 57600.
Ouvrez l'onglet configuration et mettez le protocole UBLOX.
Ensuite direction l'onglet cli et on tape:
CitationSet gps_ublox_use_galileo = on
Save
Tips: placez votre GPS sur un bras où il n'y a pas d'antennes (rx ou tx)!, évitez de le mettre sous l'antenne vtx à l'arrière ou à côté d'une immortal t voir même gopro (le wifi perturbant également l'acquisition de satellites !).
BONUS: petit tuto d'oscar liang pour récupérer en temps réel les log du gps sur la Taranis !!
https://oscarliang.com/log-gps-coordinates-taranis/
ET VOILA ! VOTRE GPS EST UPGRADE !
Vous devriez avoir plus de satellites et bien mieux les fixer !
N'hésitez pas pour des retours ou questions, si vous avez les infos pour compléter je mettrais à jour le tuto avec plaisir !
Sur ce bon fix, bon vol et bon rescue les amis !
NEVER FORGIVE, NEVER FORGET ... WE ARE PILOTS ... WE ARE FPV !
Les sources d'infos du tuto et quelques documentations pour aller plus loin :
https://oscarliang.com/gps-mini-quad/
Docs :
https://www.u-blox.com/sites/default/files/u-center_Userguide_(UBX-13005250).pdf
-
Comprendre et configurer un GPS
Etude technique du GPS - Comprendre et configurer votre GPSComprendre et parler à son GPS NEO-M8
Introduction
Cet article vous aidera (ou pas, car il reste un peu technique) à comprendre ce qu'est cette puce GPS que vous avez acquise et comment réussir à lui parler afin de recevoir ce qu'elle est censée faire. De trop nombreuses questions reviennent en boucle et trop de tuto contiennent des tâtonnements qui induisent souvent à l'erreur.
Il traite uniquement des puces ublox M8 équipant les BN-220, BN-880 (et d'autres encore). N'achetant que les chinoiseries ci-dessous, je vous joins le lien pour vous faire une idée:
- Beitian BN-180 (à oublier)
- Beitian BN-220 https://www.banggood.com/custlink/DDvYILDKEw
- Beitian BN-880 https://www.banggood.com/custlink/vmmESLmGr3
Table des matières
- Le matériel (hardware)
- Connectique et communication
- Interconnexion
- Installation du logiciel
- Connexion au GPS
- Sauvegarde de la config / Backup
- Configuration du GPS et navigation dans la config
- Restauration d'une config
- Réinitialisation usine du GPS
- Vitesse et Optimisation de l'UART
- Les constellations de satellites
- Définition du modèle dynamique
- Fréquence de rafraichissement (rate)
- Les protocoles NMEA, UBX, RTCM et filtrage
- Les messages NMEA et UBX
- Checklist configuration GPS
- Configuration Betaflight/Emuflight
- Commandes CLI serialpassthrough et gpspassthrough
- Conclusion
1 - Le matériel (hardware)
Ces modules GPS contient principalement:
⦁ une puce u-blox M8030-CT : C'est un microcontrôleur intégrant un system de réception satellite. Un microcontrolleur, cela veut dire qu'il embarque de la mémoire flash pour stocker son programme, un microprocesseur, la mémoire vive (RAM), et des ports d'entrée/sortie pour communiquer avec l'extérieur. J'ai lu le datasheet pour vous. Si cela vous intéresse, vous pouvez le consulter à cette adresse : https://www.u-blox.com/sites/default/files/products/documents/u-blox8-M8_ReceiverDescrProtSpec_UBX-13003221.pdf⦁ Une antenne GPS : C'est cette antenne qui va capter les signaux des GPS et les acheminer vers le microcontrôleur. Il est important que cette antenne pointe vers le ciel, ne soit pas recouverte (même de plastique, scotch, ...) et soit éloignée de toute source de perturbation/parasite afin de capter quelque chose (ESC, moteur, Antenne VTX, métaux, ...). Elle est sensible aux ondes.
- (optionel - BN220/BN880) une pile pour la sauvegarde des paramètres (BBR - Battery Backed RAM). Si votre GPS perd sa config, c'est qu'il n'a pas de batterie (BN-180) ou que celle-ci est morte...
- (optionel - BN880) Boussole électronique
Sur le BN-220, il y a deux LEDs:
- 1 bleue clignotante : Elle indique l'utilisation de l'UART. Si elle est éteinte, c'est que le GPS n'envoie pas de données sur l'UART, cela peut être un comportement normal. Si elle clignote vite, c'est que le GPS envoie plein de messages
- 1 rouge clignotante : Elle indique que le GPS a un fix 2D ou 3D et que votre drone est prêt à voler
2 - Connectique et communication
Pour commencer, ce module nécessite une alimentation en 5V (ne pas mettre plus, il grille facilement). Donc vous retrouverez logiquement un + (VCC) et un - (GND).
Ensuite, une interface de communication série. J'entends au loin : C'est quoi une interface série ? C'est une manière de communiquer (ancestrale, date des années 1970) qui permet d'envoyer les messages caractère après caractère, bit après bit sur un et un seul fil (cela peut être long et lent). C'est une communication unidirectionnelle (dans un seul sens), si les deux parties veulent se parler, il faudra prévoir 2 fils, un pour chacun : un fil sur lequel il écoute (RX) et un fil sur lequel il parle (TX), toujours un caractère après l'autre ...
On définit les caractéristiques d'un port série par plusieurs paramètres (ex 9600,8,N,1):
⦁ la vitesse en Baud (bits par secondes). Par exemple : 9600, 57600, 115200...
⦁ le nombre de bits pour former un caractère : en général 8 bits (un octet) pour former un caractère ASCII
⦁ la parité (vérification de l'intégrité): Aucune dans notre cas (N)
⦁ le nombre de bits stop (indique la fin du mot): 1 dans notre cas
L'interface (le port) du microcontrôleur gérant un port série s'appelle une UART (tient, ça vous dit quelque chose ?).
Donc une UART parle à une autre UART à une certaine vitesse. Si vous n'avez pas la même configuration de chaque côté, vous ne comprendrez pas le message, comme si vous parlez deux langues différentes...3 - Interconnexion
Bon maintenant qu'on a fait le tour du propriétaire, passons aux choses sérieuses.
Pour la configuration initiale, je recommande l'utilisation d'un adaptateur USB vers série. Il en existe de nombreuses versions, mais je recommande les FTDI qui ne sont pas chers et très efficaces. Le principal intérêt est l'auto-détection de la vitesse du port. Pour les bidouilleurs, vous le réutiliserez à de très nombreuses occasions (jailbreak, Hack, ...)Voici le mien : https://www.banggood.com/custlink/vmvE8aK3Yc
Vous pouvez utiliser un arduino, perso, je vois pas l'utilité car vous vous complexifiez grave la tache. Je dis ça, mais je configurais mes ESC BLHeli avec l'arduino au début...
Pour la suite, vous pourrez directement utiliser le contrôleur de vol de votre drone, mais pour simplifier la configuration initiale, l'utilisation d'un adaptateur est recommandée.
Donc, une UART possède un TX (fil pour la transmission) et un RX (fil pour la réception). Évidemment, pour que deux UART se comprennent, il faut qu'un TX soit connecté à un RX et vice-versa. On parle avec la bouche -TX - à une oreille -RX-.Cela fait un branchement tel que celui-ci :
Le câble du GPS est fourni en règle générale avec le connecteur pour l'adaptateur série, pas de soudure à prévoir, propre et simple. Ne pas oublier de positionner le jumper sur 5V (en jaune), bien qu'en regardant le datasheet, il se peut que cela fonctionne en 3,3V ...
4 - Installation du logiciel
Rendez-vous à cette adresse pour télécharger u-center pour windows : https://www.u-blox.com/en/product/u-center
Pour l'installation, à vous de jouer ...
5 - Connexion au GPS
Après démarrage, on arrive sur une fenêtre assez austère sur laquelle, on va commencer à sélectionner le port COM (l'UART) du PC et sa configuration actuelle:
Dans "receiver"on commence par sélectionner l'option "Autobauding" qui va nous éviter de tester les valeurs de vitesse et faire la recherche pour nous (attention, cela n'est garanti que dans le cas de l'utilisation de l'interface FTDI ).Puis on sélectionne le port (COM5 dans mon cas), ce qui va connecter automatiquement le PC au GPS.
Si vous ne vous êtes pas trompé sur le port, le logiciel va automatiquement chercher la vitesse du port et se connecter. Vous pouvez visualiser cela en bas, dans la barre d'état avec la référence de la puce GPS, le port série et sa vitesse, le protocole NMEA ou UBX :
6 - Sauvegarde de la config / BackupMaintenant que l'on a établi la connexion, on va commencer par faire une sauvegarde de la configuration actuelle, puis réinitialiser la config, ce qui va nous permettre de vérifier qu'on a un GPS fonctionnel à l'autre bout :
Puis, on sélectionne un dossier et un nom de fichier pour votre fichier de sauvegarde (1), puis on lance la sauvegarde en appuyant sur le bouton "Transfer" (2)
Une fenêtre va s'ouvrir avec la progression du dump de la mémoire du GPS :Oubliez les erreurs (message rejected), le soft est fait pour un tas de puces GPS bien plus sophistiquées que le M8 et le dump ne fait pas dans la dentelle...
7 - Configuration du GPS et navigation dans la config
Après la sauvegarde, nous allons commencer par remettre en configuration usine le GPS. Accédons à la configuration: View - > Configuration View qui va ouvrir la fenêtre de configuration.
Mais avant, apprenons à naviguer dans la fenêtre de configuration :
La zone à gauche (1) permet de sélectionner la famille de paramètres. La zone à droite (2) les différents paramètres et leur valeurs (que vous pouvez visualiser ou modifier). Le bouton "send" (3) permet de sauvegarder.Attention : le bouton "send"applique les valeurs, les rend fonctionnelles sans les enregistrer de manière permanente dans la mémoire non volatile (NVRAM). Si vous redémarrez votre GPS, toutes les valeurs modifiées seront effacées. Cela vous permet de tester une modification sans risquer de briquer votre GPS. Vous revenez aux valeurs précédentes par redémarrage du GPS.
Exception : dans la Zone 1, entrée "CFG (Configuration)", l'entrée sur la gauche "Save current configuraion" suivi d'une validation par "Send" rendra définitves toutes les modifications apportées à la config.
Il est important de comprendre cette notion de "running config"(configuration en cours d'exécution sur le GPS) et de "startup config" (NVRAM - configuration appliquée à chaque redémarrage). Et aussi de ne pas oublier de copier la running-config dans la startup-config si l'on est satisfait du résultat, sinon tout est perdu au prochain démarrage ...
À propos : en bas de toutes les fenêtres se trouve un cadenas. Ce cadenas vous indique si la page est protégée ou pas. Si le cadenas est fermé, la visualisation va s'arrêter de défiler ou l'appui sur un bouton n'aura aucune action. Pour ouvrir le cadenas, il suffit soit de cliquer sur le cadenas, soit d'appuyer sur un bouton - "Send" par exemple - pour libérer la page.
8 - Restauration d'une config
Ok, je vous ai montré comment sauvegarder votre config initiale, au cas où... mais à tout moment, lorsque vous êtes satisfait de votre config, vous pouvez la sauvegarder, l'archiver sur votre PC, la dupliquer sur vos autres GPS, la partager avec vos copains... ce que vous voulez. Fini les fastidieuses reconfigurations de GPS, il suffit de réinjecter un fichier de config, on sauvegarde et fini !
Demandez à vos copains une config fonctionnelle et optimisée, injectez dans le vôtre et partez voler direct sans même avoir à comprendre le pourquoi du comment... personne ne vous l'avait dit celle-là ?
Un fichier de config de GPS est de la sorte :
MON-VER - 0A 04 A0 00 52 4F 4D 20 43 4F 52 45 20 33 2E 30 31 20 28 31 30 37 38 38 38 29 00 00 00 00 00 00 00 00 30 30 30 38 30 30 30 30 00 00 46 57 56 45 52 3D 53 50 47 20 33 2E 30 31 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 50 52 4F 54 56 45 52 3D 31 38 2E 30 30 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 47 50 53 3B 47 4C 4F 3B 47 41 4C 3B 42 44 53 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 53 42 41 53 3B 49 4D 45 53 3B 51 5A 53 53 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
CFG-ANT - 06 13 04 00 1B 00 F0 B9
CFG-DAT - 06 06 02 00 00 00
CFG-GNSS - 06 3E 3C 00 00 20 20 07 00 08 10 00 01 00 01 01 01 01 03 00 01 00 01 01 02 04 08 00 01 00 01 01 03 08 10 00 00 00 01 01 04 00 08 00 00 00 01 03 05 00 03 00 00 00 01 05 06 08 0E 00 01 00 01 01
CFG-INF - 06 02 0A 00 00 00 00 00 07 07 00 07 07 00
CFG-INF - 06 02 0A 00 01 00 00 00 07 07 00 07 07 00
CFG-ITFM - 06 39 08 00 F3 AC 62 2D 1E 03 00 00
CFG-LOGFILTER - 06 47 0C 00 01 00 00 00 00 00 00 00 00 00 00 00
CFG-MSG - 06 01 08 00 0B 30 00 00 00 00 00 00
CFG-MSG - 06 01 08 00 0B 33 00 00 00 00 00 00
CFG-MSG - 06 01 08 00 0B 31 00 00 00 00 00 00
CFG-MSG - 06 01 08 00 0B 01 00 00 00 00 00 00
CFG-MSG - 06 01 08 00 21 08 00 00 00 00 00 00Au début de la ligne, on a la section suivit des valeurs. On ne va pas aller plus loin, mais si comme moi, vous apprenez à lire directement, vous identifiez très vite les problèmes.
Ce fichier peut être réinjecté d'un coup, vous évitant de parcourir toutes les sections pour modifier les valeurs.
Comme pour le backup, on retourne dans "tools / Receiver configuration". On sélectionne le fichier que l'on veut réinjecter (1). Et on appuie sur "Transfer file -> GNSS" (2).Remarques :
- malgré le fait qu'il soit proposé (à gauche de la flèche 2) de sauvegarder tout en NVRAM (paramètres appliqués à chaque redémarrage). J'ai eu de nombreux cas ou cela ne marchait pas. Il est conseillé de doubler la sauvegarde permanente avec un enregistrement manuel dans la section configuration UBX-CFG comme cité un peu plus haut.
- il se peut pour que vous ayez à charger la configuration deux fois dans le cas ou la vitesse de communication du port série est modifiée durant le transfert. En effet, quand la vitesse est changée, le logiciel va rechercher automatiquement (autobauding) la nouvelle vitesse, et pendant ce temps-là quelques lignes de commandes seront oubliées et en erreur (timeout). Dans ce cas, il vous faut à nouveau recharger la config qui se terminera sans erreur cette fois-ci car il n'y aura pas de perte de transmission. Si vous ne voulez pas vous embettez, vous chargez deux fois la config tout le temps, il y aura 100% de réussite.
9 - Réinitialisation usine du GPS
Les GPS reçut de chine où d'ailleurs sont parfois (voire souvent) déja configuré pour un usage qui n'est pas forcément le nôtre. Au lieu de galérer pendant des heures pour comprendre ce qui ne va pas, il est plus simple de repartir de 0. Alors, voici la manière de faire un retour à la config usine.
D'abord, on retourne dans la configuration du GPS. "View" -> "Configuration View".
On sélectionne la section "CFG" (1), puis "Revert to default configuration" et on valide avec "Send".Tous les paramètres usine seront restaurés, en incluant la vitesse du port (mais si vous êtes en Autobauding, le système va automatiquement basculer la vitesse, sinon le faire manuellement vers 9600 - visible en bas à droite dans la barre de status).
Voilà, votre GPS est en configuration usine, seuls les messages NMEA sont envoyés vers la FC. Maintenant on va pouvoir optimiser ...
10 - Vitesse et Optimisation de l'UART
Ok, la vitesse du port série définit la vitesse à laquelle transitent les informations échangées entre la FC et le GPS. Plus cette vitesse est élevée, plus le GPS va pouvoir envoyer de volume d'information.
Pourquoi a-t-on besoin de changer la valeur par défaut ?
Le GPS communique à la FC des messages sur le port série. Ces messages sont par exemple, la vélocité, l'altitude, l'heure, la position géographique, la précision, les infos sur les satellites...
Ces messages sont répétés à une fréquence de rafraichissement. Par défaut, c'est 5Hz soit 5 fois par seconde.Un peu de maths : Typiquement, un GPS "tuné"envoie 200 caractères 5 fois par secondes plus les infos satellite (400 caractères toutes les secondes). soit un total de 1400 caractères toutes les secondes. Le port série consomme 10 bits pour chaque caractère (8 pour le caractère + 1 bit start + 1 bit stop). Les données à communiquer sont donc de 1400 caractères x 10 bits = 14000 bits toutes les secondes. Une interface série configurée a 9600 bauds (défaut) ne peut faire transiter (au maximum dans les meilleures conditions) 9600 bits en une seconde... ça passe clairement pas.
Exemple reproduit pour vous: Je configure en 9600 (3), UART1 est à 100% d'utilisation (2), et 5509 octets restent sur le carreau (3). La théorie aurait voulu plutôt 4400 que 5500, mais il y a toujours des différences entre la théorie et la pratique... d'où l'utilité de booster encore plus.
On passe à 115200 et voila le résultat. La première barre représente l'utilisation instantanée et celle du dessous le maximum. On a de la marge.
Attention, il est important que les deux UART qui communiquent entre elles aient les mêmes capacités. La FC de nos drones supporte jusqu'à 115200 bauds. Il ne sert à rien de booster notre GPS au-dessus, il ne pourra pas communiquer avec la FC. 115200 ou 57600 sont de bonnes valeurs.Avec une valeur comme 115200, on n'est pas prêt de perdre des messages...
Pour configurer la vitesse de l'UART du GPS, sélectionner "PRT (Ports)" dans la fenêtre de configuration et sélectionner le "Baurate" souhaité pour la target "1 - UART1". Valider avec "Send". Ci-dessous, la config recommandée dans les tutos.
Comme d'habitude, n'oubliez pas de sauvegarder dans la NVRAM si besoin (voir chap 7).
11 - Les constellations de satellites
Il existe plusieurs constellations de satellites. La puce M8 est capable de recevoir les grandes familles suivantes :
- GPS: Constellation de 32 satellites du département de la défense Americaine
- GLONASS: Constellation de 24 satellites du département de la defense Russe
- GALILEO: Constellation Europeene de 30 satellites
- BEIDOU: Constellation Chinoise de 37 satellites
Parmi ces systèmes, nous ne pouvons en sélectionner que 3 simultanément. J'ai mis en vert ceux qu'il faut activer (par défaut nous avons GPS,GLONASS,QZSS).
Pour configurer, sélectionner GNSS dans la fenêtre de configuration et cocher les checkboxs "Enable" pour les constellations que vous souhaitez (rajoutez Galileo - retirer BeiDou). Valider avec "Send".
Ci-dessus, la config optimisée. Comme d'habitude, n'oubliez pas de sauvegarder dans la NVRAM (voir chap 7).
Pour vérifier la config, c'est "View"dans le menu, puis "Messages View". Dans la fenêtre, sélectionner dans la partie gauche UBX->MON->GNSS
On peut voir dans la ligne "Current enabled system" ceux activés avec un petit rappel que l'on peut en avoir que 3 ...
12 - Définition du modèle dynamique
C'est quoi le modèle dynamique ? Le GPS possède plusieurs algorithmes de calcul de la position optimisés en fonction du comportement sélectionné (stationnaire, piéton, vélo, automobile, avion ...). Le calcul est plus rapide et plus précis s'il correspond au mode.
Il existe 10 modes. D'après ce que j'ai lu dans le datasheet, celui qui correspond le mieux à l'utilisation de nos drones est le mode "0-Portable". Mais les dev de Betaflight considèrent d'autres valeurs ansi que les divers tutos sur le net. Je vous laisse libre de tester. Pour info, voici la liste des modes :
Pedestrian est un peu léger (108km/h à l'horizontal et 72km/h en vertical). Airbone, la précision est moins bonne. Portable semble effectivement un bon compromis ...
Pour configurer, dans la fenêtre de configuration, on se déplace à la section "NAV5" et on sélectionne ce que vous souhaitez. Valider avec "Send".
Comme d'habitude, n'oubliez pas de sauvegarder dans la NVRAM si besoin (voir chap 7).
13 - Fréquence de rafraichissement (rate)
On peut modifier la fréquence à laquelle le GPS récupère les données des satellites et calcule ses mesures. Chaque calcul génèrera en retour des messages transmis à la FC au travers de l'UART. Chaque calcul solicitera le CPU et ses ressources. Plus la fréquence est élevée, plus le GPS consomme électriquement et génèrera un grand volume de messages. Dans le datasheet, il est préconisé 1Hz/1000ms (un calcul par seconde - le paramètre par défaut). C'est, d'après eux, suffisant pour tous les usages.
La plupart des tuto sur le net recommandent 5Hz, Betaflight initialise aussi à cette valeur ... pourquoi pas ?
Etre trop gourmand va résulter en un calcul de la position impossible ou trop de données envoyées sur l'UART.
Pour configurer les "rates" du GPS, sélectionner "RATE (Rates)" dans la fenêtre de configuration et modifier "Mesurement Period" avec la valeur souhaitée... Valider avec "Send".
Ci-dessus, la config optimisée avec la recommendation. Comme d'habitude, n'oubliez pas de sauvegarder dans la NVRAM (voir chap 7).
Pour vérifier, ouvrir la console affichant les trames de packets envoyé et reçus :
On retrouve bien 5 blos de messages dans la même seconde.
14 - Les protocoles NMEA, UBX, RTCM et filtrage
NMEA qui veut dire "National Marine Electronics Association", édité par l'association du même nom, elle a pour but de définir un standard d'interface pour l'industrie électronique.
Le standard NMEA autorise l'addition de messages propriétaires spécifiques. La seule obligation est que ces messages doivent être tous préfixés par une mnémonique identifiant le constructeur. Et devinez quoi ? u-blox, le fabriquant de la puce NEO-M8N, a choisi le préfix UBX. Puisque le standard l'autorise, son protocole peut se substituer totalement à NMEA.
C'est pour cela que vous avez le choix dans Betaflight/Emuflight/INav entre le protocole NMEA ou UBX. À non ... les développeurs ont confondu le nom de la société et le nom du protocole... vous trouverez UBLOX dans le choix du protocole à la place de UBX ... personne ne peut être parfait. Faudrait peut-être que j'ouvre un ticket ...
Pour être complet, il y a aussi un autre protocole, RTCM (Radio Technical Commission for Maritime Services), utilisé pour améliorer la précision du GPS en lui fournissant des informations de correction de position... dans tous les tutos, on nous demande d'ajouter ce protocole en entrée, perso, il n'y aucune référence à un message RTCM dans le code de Betaflight. Comme moi, vous pouvez le retirer, cela ne changera rien, et mettez "0+1 - UBX+NMEA" en "Protocol in".
Alors, maintenant que les présentations sont faites, il va falloir indiquer au GPS les protocoles que l'on va supporter dans les échanges GPS vers FC et vice-versa. Pour cela on retourne dans "PRT (Ports)" dans la fenêtre de configuration et sélectionner le "Protocol in" et "Protocol out". Valider avec "Send".
- "Protocol in" : C'est ce que la FC va envoyer au GPS. Donc messages de configuration du GPS.
- "Protocol out" : C'est ce que le GPS va envoyer à la FC. Ci-dessus, je laisse les 2 protocoles, comme ça, le choix vous appartient de sélectionner l'un ou l'autre dans votre FC ... mais moi, le choisis "0 - UBX" car je n'utilise par NMEA.
Il est à bien noter que cette configuration n'active pas les protocoles. C'est un filtre que l'on met sur l'UART dans le sens TX (Protocol out) et RX (protocol in). Si vous n'autorisez pas les protocoles, les messages correspondants seront automatiquement mis à la poubelle, d'où l'importance de définir correctement ces champs.
Comme d'habitude, n'oubliez pas de sauvegarder dans la NVRAM si besoin (voir chap 7).
15 - Les messages NMEA et UBX
Là, on rentre dans le vif du sujet. Comment on configure le GPS, comment la FC reçoit le fix, les coordonnées géographiques, la vitesse, la distance ?
Tout échange de données entre la FC et le GPS est basé sur une notion de message.
Exemple :
Pour effectuer un reset de la position Home, la FC envoie au GPS un message CFG-RST avec le protocole UBX (UBX->CFG-RST)
En fait, chaque fois que, dans l'interface, vous sélectionnez une section, et appuyez un "Send", vous envoyez un message au protocole UBX sur l'UART...
Même chose pour le sens retour, le GPS vous envoie des messages.
Exemple : un message UBX - NAV - POSLH envoyé à la FC avec la position géographique, la hauteur et l'estimation de la précision.
Les protocoles UBX et NMEA définissent des centaines de messages différents. Activer tous les messages saturerait sans aucun problème le lien entre les UARTs résultant en la perte de beaucoup d'information. Par contre, ne pas transmettre les messages attendus par Betaflight résulterait en un lock impossible, pas d'info sur la vitesse ou la position géographique.
L'optimisation va nous permettre de définir seulement les messages que Betaflight/Emuflight et Inav attendent et filtrer les autres, donc optimiser le CPU, l'utilisation des UARTs et garantir 100% des fonctionnalités.
Pour cela il faut d'abord lister dans le code de Betaflight les messages utilisés pour la navigation. Le fichier qui contient le code est celui-ci : https://github.com/betaflight/betaflight/blob/master/src/main/io/gps.c
Nous allons retrouver 3 définitions de messages de navigation pour NMEA et 5 pour UBX :
#define FRAME_GGA 1 /* Global Positioning System Fix Data */
#define FRAME_RMC 2 /* Recommended Minimium Data */
#define FRAME_GSV 3 /* GNSS Sattelites in View */enum {
PREAMBLE1 = 0xb5,
PREAMBLE2 = 0x62,
CLASS_NAV = 0x01,
CLASS_ACK = 0x05,
CLASS_CFG = 0x06,
MSG_ACK_NACK = 0x00,
MSG_ACK_ACK = 0x01,
MSG_POSLLH = 0x2, /* Geodetic position solution */
MSG_STATUS = 0x3, /* Receiver navigation status */
MSG_SOL = 0x6, /* Navigation solution information */
MSG_VELNED = 0x12, /* Velocity solution in NED frame */
MSG_SVINFO = 0x30, /* Space vehicle information */
MSG_CFG_PRT = 0x00,
MSG_CFG_RATE = 0x08,
MSG_CFG_SET_RATE = 0x01,
MSG_CFG_NAV_SETTINGS = 0x24
} ubx_protocol_bytes;Si vous voulez connaitre le contenu de chacun des messages, vous trouverez la définition dans le datasheet fourni au début de l'article.
Nous allons donc restreindre l'envoi de messages dans le GPS à ces messages seuls. Il est à noter que si, dans le futur, les développeurs de Betaflight rajoutent des fonctionnalités basées sur d'autre messages, il faudra venir les rajouter ... de plus je laisse les messages NMEA dans l'étude, mais, perso, je les retire car je n'utilise que UBX comme protocole.
Pour cela on retourne dans Configure - > MSG (Messages). Vous allez devoir sélectionner en premier le message souhaité, puis sélectionner l'interface sur lequel le message sera envoyé (nous c'est l'UART1). Il est inutile de sélectionner les autres interfaces, les laisser consommerait des ressources inutiles. A côté se trouve le coefficient diviseur : si vous laissez 1, cela veut dire que le message sera envoyé à tous les cycles du rate (paragraphe 13) que vous avez défini. Si vous mettez 2, c'est une fois tous les deux cycles et ainsi de suite. Cela vous permet de limiter la fréquence de certains messages. Nous allons l'utiliser pour limiter l'envoi des données sur les satellites qui a une importance relative comparée aux coordonnées géographiques ou la vélocité ...
Voici ce que je recommande:
- Commencer par retirer la totalité des messages envoyés. Comme ça, c'est clair. Si vous réussissez, la diode bleue s'arrête totalement de clignoter, plus aucun message n'est envoyé.
- Puis ajouter ces messages :
- 01-06 NAV-SOL, Interface UART1, Diviseur 1
- 01-03 NAV-STATUS, Interface UART1, Diviseur 1
- 01-30 NAV SVINFO, Interface UART1, Diviseur 5
- 01-12 NAV-VELNED, Interface UART1, Diviseur 1
- 01-02 NAV-POSLLH, Interface UART1, Diviseur 1
- F0-00 NMEA GxGGA, Interface UART1, Diviseur 1 (optionel)
- F0-03 NMEA GxGSV, Interface UART1, Diviseur 1 (optionel)
- F0-04 NMEA GxRMC, Interface UART1, Diviseur 1 (optionel)
Terminer par "Send". La diode bleue doit recommencer à clignoter signifiant l'envoi de données par le GPS.
14 - Checklist configuration GPS
Une petite pause pour rappeler les étapes de la configuration du GPS.
- On fait un backup de la config
- On effectue une remise a zéro de la configuration du GPS (UBX-CFG-CFG)
- On configure le port UART (UBX-CFG-PRT) : vitesse (115200 bauds) et le filtrage des messages non NMEA/UBX sur le TX et le RX
- On configure les rates à 200ms (5Hz) dans UBX-CFG-RATE
- On rajoute Galileo et on retire BeiDou dans UBX-CFG-GNSS
- On configure le profile de navigation Portable dans UBX-CFG-NAV5
- On retire tout les messages sur toutes les interfaces UBX-CFG-MSG
- On rajoute la liste de messages NMEA/UBX du paragraphe 15 dans UBX-CFG-MSG
- On sauvegarde la config en mémoire non volatile dans UBX-CFG-CFG
- On refait un backup de la config dans un nouveau fichier texte sur le PC que l'on archive bien
On est prêt à configurer le drone maintenant.
15 - Configuration Betaflight/Emuflight
Connexion physique sur la FC : On sélectionne une UART libre sur la FC composé d'un TX et un RX. On relie un TX à un RX et vice-versa.
On commence par l'onglet "Ports" : Pour l'UART choisie, aller dans la colonne capteur et selectionner "GPS" puis sélectionner la vitesse. Là vous aurez deux choix. Soit vous laissez la FC chercher la vitesse et vous mettez sur AUTO (*). Soit vous fixez directement la vitesse (choix préféré).
(*) Dans le code source de Betaflight, la FC teste les vitesses suivantes: 9600, 19200, 38400, 57600, 115200. Si dans le GPS vous définissez une vitesse non supportée, le mode AUTO ne fonctionnera pas.
On passe à l'onglet "Configuration" : Dans le cadre "GPS", on commence activer le GPS, on choisit le protocole, de préférence UBLOX - UBX en vrai). Ensuite, vous pouvez activer la recherche automatique de la vitesse de l'UART "Baud Auto" ou pas. Même chose que dans l'onglet "Ports".
Vous pouvez sélectionner "Config Auto" ou pas. Un petit paragraphe est nécessaire pour ce paramètre. En premier, il n'a d'effet que si vous avez sélectionné le protocole UBX (pardon UBLOX dans le configurateur). Donc, si vous êtes en UBX et que "Config auto" est selectionné, à la mise sous tension du drone, Betaflight va envoyer la liste de messages de configuration suivants aux GPS (encore un peu de reverse-engineering dans le code source):
- Reset factory sans sauvegarde en NVRAM (startup config)
- Passage de la vitesse de l'UART à 19200
- Passage en mode piéton ou airbone
- Retrait des messages NMEA VGS, GSV, GLL, GGA, GSA, RMC
- Activation les messages UBX POSLLH, STATUS, SOL, SVINFO (tous les 5 cycles), VELNED
- Configuration des rates à 5Hz - 200ms
- Configuration du service d'augmentation de la précision (SBAS) en fonction de ce que vous choisissez dans le champ "Type d'assistance au sol"...
A noter :
- A la mise sous tension du drone, Betafligh exécute en premier un reset usine du GPS, c'est à dire que toutes les modifications que vous avez apportées par vous même dans le GPS ne sont plus prises en compte !!!
- Betaflight ne sauvegarde pas dans la NVRAM à la fin. Donc, à la fin de la Lipo, après extinction du drone, les modifs Betaflight seront perdues.
Donc, pour résumer, si vous sélectionnez "Config auto", oubliez toute la config du GPS, Betaflight retirera tout à chaque démarrage du drone et appliquera ses paramêtres qui sont globalement les mêmes que dans tous les tutos (même la constellation "Galileo").
Si vous souhaitez utiliser votre configuration de GPS, mettez "Config auto" a OFF.
Onglet "CLI" : des commandes ne sont pas disponibles dans l'interface graphique, mais seulement en CLI.
- Celle de la prise en compte de la constellation Galileo : set gps_ublox_use_galileo = on (ou off)
- Celle de la modification du mode dynamique : set gps_ublox_mode = AIRBORNE (ou PEDESTRIAN)
Utilisées seulement dans le cas de "Config Auto" sélectionné, sinon, cette commande n'a aucun effet.
Vérification du bon fonctionnement du GPS dans l'onglet "GPS". exemple ci-dessous. Ça parle tout seul.
18 - Commandes CLI serialpassthrough et gpspassthrough
L'utilisation d'un adaptateur USB/série (FTDI par exemple), n'est pas obligatoire (conseillé quand même). Une fois que tout fonctionne, il n'est plus simple d'utiliser le drone monté et configuré pour piloter le GPS sans aucune modification matérielle.
Vous pouvez utiliser u-center au travers du contrôlleur de vol. Pour cela, il faudra veiller à connaitre votre configuration sur le PC (port série utilisé, celui utilisé pour connecter Betaflight)
Exemple (COM1 ici) :
Avec nos FC, avec une version récente de Beta/Emu/Inav on peut trouver deux fonctions intéressantes en CLI (Command Line Interface) : serialpassthrough et gpspasstrough. Ces commandes permettent de transformer temporairement une FC en adaptateur USB/série. Veuillez toutefois posséder une version de Beta/Emu/Inav pas trop vieille.
1) La commande "serialpassthrough" permet de transférer toute la communication du port USB vers l'UART de la FC. Il faut fournir en paramètres l'index interne du port UART (égal au numéro d'UART -1 ) ainsi que la vitesse du port UART.
Syntaxe : serialpassthrough <num UART -1> <vitesse>
Ex: serialpassthrough 5 115200 ---> (UART 6, 115200 bauds)
A partir du moment la commande est soumise, l'intégralité du port USB est redirigé: On perd la communication avec la FC (MSP) jusqu'au prochain reboot.
2) La commande "gpspassthrough" récupère directement dans la configuration beta/emu/inav les paramètres de port configurés pour le GPS (UART et vitesse) et invoque serialpassthrough en passant les valeurs. Elle ne nécessite aucun argument.
Syntaxe : gpspassthrough
Comme pour l'autre commande, à partir du moment la commande est soumise, l'intégralité du port USB est redirigé: On perd la communication avec la FC (MSP) jusqu'au prochain reboot.
La procédure est plus compliquée, mais ne nécessite rien de plus que votre câble USB connecté au PC et à votre drone. Attention toutefois, le GPS doit être sous tension : Ce qui implique dans la plupart des cas le branchement de la LiPo.
La procédure:
- Connecter la FC au PC
- Connecter une LiPo pour alimenter le GPS
- Ouvrir Beta/Emu/Inav Configurator
- Connecter le configurateur au drone
- Aller dans l'onglet CLI (le dernier en bas à gauche)
- passer la commande "serialpassthrough" ou "gpspassthrough"
- Fermer le configurateur avec la croix en haut à droite pour libérer le port COM du PC (sinon u-center n'arrivera pas a connecter le port)
- Demarrer u-center
- Connecter dans u-center le port COM associé.
Pour que la FC revienne en mode de fonctionnement normal, n'oubliez pas de déconnecter la LiPo ainsi que le port USB.
Conclusion
Je pense avoir couvert la plupart des sujets. Faites-moi vos remarques, je modifierai ou compléterai l'article sur demande. Désolé s'il y a des erreurs, personne n'est infaillible, tout est basé sur mon expérience personnelle, la lecture des datasheets d'UBLOX et du reverse engineering dans le code des developpeurs...
Maintenant, à vous de jouer, de tester, de reporter vos trouvailles et de partager vos fichiers de configuration.
Voici le mien.
-
Guide tuning BF 4.2
Guide de tuning Betaflight 4.2Salut,
Depuis Betaflight 4.1, on a des curseurs pour tuner nos quads. J'étais un peu réticent au début, mais après avoir pas mal joué avec ces derniers temps, je trouve ça absolument génial, ca rend le tuning tellement plus facile.
Du coup, et comme @Next57 était intéressé, j'en profite pour faire un petit tuto, fortement inspiré de la méthodologie de Mark Spatz. Je suis pas expert en tuning, donc n'hésitez pas à me corriger si j'ai dit des bêtises ou si vous avez des astuces.
Le principe est assez simple, même si on va détailler dans la suite du poste, ça ressemble à ça :
- Utilisation d'un preset comme point de départ
- Réduction du filtrage autant que possible/nécessaire
- Ajustement de la balance PD, ajustement du gain PD et du Multiplicateur maître
- Ajustement du feeling aux sticks
1. Config de base
Pour commencer et partir sur une bonne base, mettre les réglages proposés sur la page des presets d'UAV Tech. Il y indique les réglages pour les ESCs, un point de départ pour les différents curseurs PIDs/Filtres, des fonctions à activer/désactiver et quelques commandes à passer dans le CLI. Bien sûr, le RPM filter est fortement recommandé. Normalement, avec ces presets, on a déjà un truc plus que correct et ça peut suffire à certains.
Pour dépasser certaines valeurs, en particulier via les curseurs, il est nécessaire d'activer le mode Expert :
2. Le filtrage
On commence par le filtrage. Moins on filtre, et moins le MCU aura besoin de travailler -> le quad sera plus réactif/connecté et la gestion du propwash en sera améliorée. Le but est donc de diminuer le filtrage autant que possible... sans cramer les moteurs ^^
Avec les curseurs, c'est très simple : plus on pousse à droite (et la valeur monte) et moins on va filtrer. Il est recommandé de bouger les 2 curseurs en même temps (qu'ils gardent toujours la même valeur).
Procéder par itération, en faisant des vols de 30 secondes pour vérifier la température des moteurs. Si les moteurs ne sont pas chauds et qu'il ne se passe rien de bizarre, on peut monter d'un cran, etc.
Plus le build est clean et moins on aura besoin de filtrer.
Je n'avais pas de prbl de chauffe, je me suis arrêté à 1.7. Soyez raisonnables quand même3. Les PIDs
Idéalement, en plus du D Min déjà désactivé, on mettra au minimum le curseur du Gain pour la réponse aux sticks (temporairement).On commence par régler la "Balance PD". On va faire des flips et des rolls très secs. Quand l'équilibre entre les P et les D est trouvé, le quad s'arrête net. En général, s'il y a trop de P et pas assez de D, il y a un rebond qui se produit : le quad dépasse la position avant d'y revenir. S'il y a trop de D et pas assez P, le quad sera "mou" (et les moteurs peuvent chauffer).
Des rebonds, ça ressemble à ça (avec des vibrations en bonus) :Une fois qu'on à trouvé cet équilibre, on peut monter les Gains P et D. Ca va permettre de booster les P et les D pour rendre le quad encore plus réactif, tout en améliorant la gestion du propwash.
Comme ici on monte les D, il faut y aller par étape, et toujours vérifier la température des moteurs après un court vol. Et guetter les bruits ou réactions anormales. On fera notamment des manœuvres générant du propwash (en laissant le quad tomber dans ses perturbations ou en accélérant dans ses perturbations) et toute autre manœuvre permettant de juger de la réactivité du quad.En principe, à ce moment, on a déjà un quad qui vole bien. Le curseur précédent n'a augmenté que les P et les D. Certains pilotes aiment monter assez fortement les I, ça a pour effet de "rigidifier" le quad et renforcer cette impression de "rail". Plus on les augmente et plus le quad aura un comportement "robotique", ce qui ne plaît pas à tout le monde. Il en faut quand même pour que le quad garde bien sa consigne et résiste aux perturbations extérieures. Pour s'assurer que les I sont à une valeur minimale correcte, on mettra un coup de gaz puis on laissera le quad retomber sur le dos ou sur la tranche : le quad ne devrait pas dériver et bien conserver son inclinaison.
Si on veut monter les I, il faudra donc passer par le curseur "Multiplicateur Maître" (c'est le premier dans BF 4.2, mais ça va changer dans la 4.3). Ce curseur va augmenter TOUTES les valeurs (P, I et D).
Si vous décidez de l'augmenter, il faudra reculer le curseur précédent (Gains PD) pour conserver à peu près les mêmes valeurs de P et de D, tout en augmentant les I.
Pour vous donner une idée, voici l'état de mes curseurs. J'ai pas mal remonté le Multiplicateur Maitre pour avoir beaucoup de I.En fin de post, vous avez une vidéo qui donne un aperçu de l'ensemble des manœuvres permettant de tester le comportement du quad sur tous les aspects abordés ici.
4. Le feeling
La dernière étape, c'est l'ajustement du feeling aux sticks, et c'est le rôle du dernier curseur. Là c'est une question de goût : testez pour trouver ce qui vous plaît. En réalité il permet d'ajuster le feedforward. Plus vous irez à droite, plus le quad sera "collé" aux sticks.
Attention, si vous décidez par la suite de modifier le Multiplicateur Maître, ça impacte aussi le Gain de réponse aux sticks, il faudra donc l'ajuster au même titre que les Gains PD.Quelques autres réglages qui impacteront le feelings au bout des doigts et que vous pourrez expérimenter :
- La valeur de coupure de l'I Term Relax change pas mal de feeling. Je le monte un peu (à 17 au lieu de 15) pour un quad plus "rigide"
- Le FeedForward Transition permet de modifier un peu le comportement du feedforward pour obtenir plus de souplesse
- Via le CLI vous pouvez aussi ajuster le FeedForward Boost : set ff_boost = 15 par défaut. En ce moment je l'ai mis à 30.
Pour "nettoyer" un peu nos vols, on peut aussi ajouter un peu de dead band (onglet récepteur). C'est une zone au centre des sticks qui est "morte". Typiquement ça peut effacer qques tremblements et limiter "l'injection de Yaw" sur des gros coups de gaz (le stick peut facilement se déporter un peu sur la gauche ou la droite). J'en ai ajouté un peu récemment et ça ne fait pas de mal (3 sur le Yaw, 2 sur le reste). A vous de trouver la quantité nécessaire pour pas que ça soit gênant : une trop grande zone neutre fera apparaître une sorte de temps mort lors de transition rapide via le centre des sticks.
5. Pour aller plus loin
Normalement, avec l'Antigravity, le nez du quad ne devrait pas piquer lors des coups de gaz. Vous pouvez le tester en "pompant" sur les gaz. Voici un aperçu d'un vol de test d'un quad pas trop mal tuné.
Le TPA dans les dernières versions de BF n'agit plus que sur les D. Il permet d'atténuer les D de X% de manière linéaire à partir d'une valeur de gaz donnée. Idéalement, lors du tuning, il faudrait le désactiver. Honnêtement, je ne me suis pas donné cette peine.
Pour vérifier la qualité de votre tune et trouver des pistes d'amélioration, il vous reste la BlackBox. Mais vraiment rien d'obligatoire. J'utilise un peu la BlackBox pour pour regarder où se trouve le bruit, vérifier l'efficacité du filtrage et voir comment le gyro colle au Setpoint sur les différents axes. 2 outils pratiques :
- BlackBox Explorer : https://github.com/betaflight/blackbox-log-viewer/releases (tuto WAF)
- PID Analyzer (Plasmatree) : https://github.com/Plasmatree/PID-Analyzer (tuto WAF)
- PIDToolbox : https://github.com/bw1129/PIDtoolbox
-
Blackbox des châssis
[Référencement] Qualité des différentes frames du marché en terme de gestion des vibrationsHello,
Mes dernière (més)aventures autour de la conception de frame et l'observation de d'autres frames, m'ont poussé à faire un test tout con : voir comment se comportent différentes frames du commerce en terme de gestion des vibrations.
Sachant que ce que l'on cherche, c'est en avoir le moins possible ET à avoir des pics de résonnance à des fréquences les plus élevées possible (moins d'impact et plus facile à filtrer).
En regardant en détail comment étais foutue l'Apex, avec plein de bonnes idées et des bras facilement remplaçables, j'ai voulu la comparer à mes AK-47.
Quelques infos préliminaires :
- Le AK est en 5.5", avec des moteurs F40 Pro iv 1950 KV (2306 donc), hélices P3
- L'Apex est une copie chinoise, avec des Velox v1 2306 1950 KV, hélices P3, il s'agit du build HD low cost de la rubrique DroneBuilds.
D'abord le AK 47
Roll :
Pitch :Et l'Apex :
Roll :
Pitch :Même si les 2 s'en tirent bien, l'Apex est vraiment exceptionnelle : non seulement les pics sont moins hauts, et moins nombreux, mais également sur des fréquences plus hautes ! J'ai fait une séance de tune de l'Apex en 4.3 cet aprèm, ça se sent qu'on peut pousser plus loin. Franchement, je suis à 2 doigts de commander 2-3 Apex chinois
Une fois filtré, même très peu (curseurs à 1.7) il reste plus rien. Sur l'AK, c'est très bien aussi après filtrage, mais ce n'est pas le néant comme pour l'Apex.
N'hésitez pas à partager vos mesures sur différentes frames, ça permettrait de se constituer une petite base de données avec des chiffres concrets plutôt que juste des ressentis. Je suis curieux de voir notamment ce que donnent les Gravity (coucou @Motard Geek) et Sloop v3
Il faut bien sûr que le build soit clean (moteurs en état corrects, rien qui vienne tapoter le gyro, filtrage avec un condo...), mais ça permet de se faire une idée.
Ensuite la marche à suivre est simple. Configurer la BB pour logger en debug mode "Gyro Scaled", pour récupérer le signal du gyro "brut" (sans filtrage). Quand la boucle est à 8K, je log en 2K, ca semble suffisant.
Puis on fait un vol où on va utiliser toute la plage des gaz. Là j'ai fait comme pour un vol de tuning : qques full, quelques flips/rolls rapides, qques manœuvres à propwash et un peu de vol "normal". Y en a pour moins d'une minute.
On peut enfin ouvrir la BB avec BlackBox Explorer. Il faudra ajouter à minima dans la colonne de droite les infos concernant le Gyro Scaled pour le pitch et le roll, et cliquer sur le bouton pour afficher le graphe d'analyse des fréquences. Ensuite on clique dans la colonne de droite pour switcher entre le pitch et le roll. Vous pouvez bien sûr ajouter les infos du gyro filtré ("gyro" tout court), comme c'est le cas pour la capture ci-dessous (on voit au passage ce que donne l'Apex après un filtrage très léger) :