Sous KISS, il n’y a pas de mémoire flash sur les cartes de vol, donc pas moyen d’analyser ce qu’il se passe dans les tréfonds de nos quads… Mais heureusement, il est possible d’ajouter cette option par un module nommé OpenLog. Vous le trouverez sur le site de Flyduino ou sur celui de SparkFun et celui-ci arrive tout prêt. Cette version sur Banggood devrait également faire l’affaire mais nous ne l’avons pas testée. Quoi qu’il en soit, le firmware d’origine est un petit peu gourmand et pas toujours à jour. Je vais donc vous guider dans l’upgrade de cette petite bestiole.
Pour un détail des changements au cours des différentes versions, visitez le github de Sparkfun.
Le nécessaire
Un module OpenLog :
Un adaptateur FTDI :
Un câble USB de ce type :
La dernière version du firmware se trouve sur le github de SpakrFun (téléchargez le dossier complet en cliquant en haut à droite sur « Clone or download »). Dé-zippez ensuite ce dossier à l’emplacement que vous voudrez.
Et la version 1.6.5 d’Arduino téléchargeable ici (ainsi qu’un PC évidemment).
Choix du firmware
Tout d’abord, il va vous falloir décider quel firmware vous allez uploader dans votre module, car il y a trois types :
-
- OpenLog (Complet) : c’est le firmware pré chargé par défaut dans OpenLog.
- OpenLog_Light : cette version supprime le menu et le mode commande, permettant au buffer de réception d’être augmenté. C’est une bonne option pour loguer à haute vitesse.
- OpenLog_Minimal : le « baud rate » doit être paramétré dans le code puis uploadé. Ce « sketch » est recommandé pour les utilisateurs expérimentés mais c’est aussi la meilleure option pour une vitesse de log optimale.
Je vous conseillerai ici de prendre la version Light.
Le logiciel Arduino
Installez Arduino et lancez-le.
Rendez-vous dans Files/Preferences puis notez le chemin du dossier « Sketchbook location »:
Rendez-vous dans ce dossier, puis, collez le firmware choisi (notez la présence du dossier libraries):
Collez ensuite les deux dossiers « SdFat » et « SerialPort » contenus dans OpenLog-master\Libraries dans le dossier du « Sketchbook location » C:\Users\<username>\Documents\Arduino\libraries :
Et fermez Arduino.
Avant d’uploader tout ceci dans notre Openlog, il faut modifier deux valeurs du fichier SerialPort.h qui se trouve dans C:\Users\<username>\Documents\Arduino\OpenLog-master\Libraries\SerialPort.
Ouvrez ce fichier avec un éditeur de texte (Notepad++ par exemple), puis recherchez la ligne #define BUFFERED_TX.
Remplacez le « 1 » par un zéro, puis faites de même pour la ligne #define ENABLE_RX_ERROR_CHECKING.
Puis enregistrer les modifications et fermez le fichier.
Relancez Arduino et sélectionnez votre firmware.
Le contenu du firmware devrait s’afficher dans une nouvelle fenêtre :
Sélectionnez ensuite le type de carte sur Arduino/Genuino Uno dans Tools/Board/Arduino :
Laissez le logiciel ouvert.
Un peu de soudure.
Raccordons maintenant notre OpenLog au FTDI comme ceci (bien penser à croiser les RX/TX) :
Branchez le FTDI à votre PC avec un câble USB.
Vérifiez avant toute chose que ce périphérique soit reconnu sur votre PC. Si ça n’est pas le cas, téléchargez et installez les drivers ICI.
L’upload du firmware
Votre FTDI est désormais reconnu et porte un N° de port COM (exemple ici : COM10).
Dans Arduino, Tools=>Ports, vous devriez retrouver ce même port COM (si ce n’est pas le cas, relancer Arduino). Sélectionnez-le.
Cliquer sur Sketch=>Verify/Compile (patientez en regardant la barre de chargement à droite) puis que le petit message « Done Compiling » en bas à gauche s’affiche.
Et enfin, uploadez le firmware dans votre openlogger en cliquant sur Sketch=>Upload.
Votre Openlog est maintenant à jour. Vous pouvez le dé-souder du FTDI.
Installation d’OpenLog sur Kiss FC
Pour coupler ce petit module à votre setup Kiss, voici le schéma de câblage.
Sous Kiss V1, connectez le RXI du module au pin TX de la FC, le VCC sur un pin délivrant entre 3.3V et 12V, et le GND sur un GND.
Sur une Kiss V1
Sur une Kiss V2
Le GUI
Dans l’onglet Advanced, sélectionnez « Logger / 100% ».
Dans le champ Configuration du Logger Debug, si vous ne mettez rien (–), la FC va envoyer tout ce qu’il est possible de loguer. Si vous souhaitez loguer quelque chose en particulier, sélectionnez-le dans le menu déroulant.
Au premier enregistrement, un fichier texte Config.txt se créé sur votre carte SD et contient ceci:
Pour les curieux, voici ce à quoi correspond tout ce petit monde (chaque valeur du haut correspond au texte du bas). Je vous laisse traduire.
La seule chose à modifier dans ce fichier config.txt est le baud rate que vous pouvez passer à 250000. Et il est conseillé d’utiliser une Micro SD class 10.
Les fichiers ont comme extension .txt et sont exploitables dans Blackbox Explorer.
Il ne reste plus qu’a aller voler.
Pour aller un peu plus loin…
A savoir : si le firmware de votre carte de vol est antérieur à la version 1.3RC36c, vous ne pourrez pas visualiser l’analyseur de spectre Blackbox Explorer « en l’état » (il manquera les échelles de valeurs). Il faudra, pour chaque fichier de log que vous souhaiterez analyser, l’éditer afin d’ajouter cette ligne : H looptime:1000.
Plus d’informations sur la page Openlog de Sparkfun.
Sauvegardez, volez, analysez 🙂
Just high five your nearest neighbor and happy flying !
Salut,
Super ton tuto !!! merci déjà j’avais jamais fat de BB pour kiss, j’ai tous bien suivi mais j’ai un soucis le fichier est illisible par blackbox explorer il pèse bien quelque KO pour 30 sec de test donc ça s’enregistre bien a l’armement mais je vois pas de quoi ça peut venir une piste peut être ?
Salut,
peut-être la qualité de la SD ? J’ai eu le cas.
Voila le message que je me tape « Error opening log: No logs in this file could be parsed successfully »
j’ai test avec une samsung 8GO class 4 et une 32go sandisk class 10 mais je crois que les 32 c’est trop gros il me semble 16go max non ? mais le même mess sur les 2 après j’ai que des 64Go…….
Tu as mis le baud à 250000 dans le fichier texte ?
oui j’ai même essayer different taux
oui j’ai même essayer différent taux
Essaie de reflasher en suivant le tuto à la lettre. On a vite fait de flasher avec l’entièreté des 3 FW ou alors de ne pas voir un message d’erreur dans Arduino…
Sinon ouvre un post sur le forum ?
Vais tenter le Forum merci car j’ai même flash avec un vieux FW de Fedor et ça veut rien savoir