DIY GnuVario : variomètre opensource - openhardware Arduino

Voila, je suis venu à bout de l’affichage de l’heure et de la durée de vol

J’intégrerai rapidement mon code à ta dernière version de variometer.ino, Prunkdump. La bibliothèque NmeaParser est en dernière version

Il restera à gérer plus finement le démarrage du compteur de vol, mais Punkdump tu peux intégrer mon code si tu veux

Bon je part en vacances pour le pont. Je vais pas pouvoir mettre à jour le code de suite :?

Ca te laisseras le temps de chercher des optimisations.

Par exemple pour ton affichage de la batterie. Tu peux le programmer plus simplement, et avec 10 niveaux ainsi :


#define VOLTAGE_BASE_VALUE 3.37 
#define VOLTAGE_LOG_FACTOR 1.0222

.
.
.
  /* set the 10 battery bytes on the screen */
  int bytePos = 0;
  double vPower = VOLTAGE_BASE_VALUE;
  while( voltage > vPower && bytePos<10 ) {
    screen.display( 0xff );
    bytePos++;
    vPower *= VOLTAGE_LOG_FACTOR;
  }

  while( bytePos<10 ) {
    screen.display( 0x81 );
    bytePos++;
  }

Amuses toi bien :wink:

Je parts aussi demain matin, ce sera pour la semaine prochaine :wink:

Je vais effectivement optimiser un peu car l’arduino n’a vraiment pas beaucoup de mémoire et j’avoue que c’est la première fois que je code sur ce type de matériel.

Tes conseils sont un vrai plaisir et un bon moyen d’améliorer mon code.

Ce weekend, je vais tester un peu le vario à la Serrane :ppte: . De retour je me pencherais sur la possibilité d’avoir les paramètres les plus importants dans un fichier sur carte SD, afin de permettre leur modification par ceux qui n’arrivent pas à compiler le code

Je crois que le problème de date dans le fichier IGC est toujours présent même avec la dernière version du code

pour la batterie, le % de charge n’est pas linéaire, les valeurs que j’utilise sont obtenu par une moyenne de mesure. On peut effectivement simplifier par une approximation linéaire, je regarderais combien on gagne sur le code

Bonne vacances Prunkdump

Non non je ne fais pas une approximation linéaire.

C’est bien une multiplication que je fait dans le code. Si tu calcules à la main les valeurs prises par vPower. Tu retrouvera tes valeurs.

Bon bizarre ce bug de date… il faudra que je cherche.

Avant que tout le monde parte voler :vol:
la dernière version du FIRM je la prends ou ? Github ?
est ce que le son est baissé ? ou il faut se compiler sois même une version avec le son moins fort ?

[quote]N’oubliez pas aussi de lancer le sketch “SetVarioParameters” pour personnaliser vos paramètres.
[/quote]
j’ai pas du suivre, comment on lance ? :grat:

Je modifierais le code ce soir avant de partir, sinon la formule d’approximation du calcul de la capacité d’une batterie lipo est :

% (entre 0 et 100) = (Tension - 3.5534) / 0.0059

je vais adapté tout ça pour réduire le source

Van Hurlu la dernière version officiel est sur le GitHub, le son est à 10. Si tu veux essayer l’affichage des satellites et du temps, tu peux ajouter mes sources (posts précédents). J’ai mis le son à 3 c’est peu être un peu bas pour toi. Il va falloir que tu recompile si tu veux plus ou moins

“SetVarioParameters” tu compile le code avec tes paramètres et tu mets à jours FIRM.HEX

Quelques idées pour régler le son :
(C’est peut-être la surprise :stuck_out_tongue: )

  • Retourner le vario une fois allumé (écran vers le sol) et on fait varier le son en vissant ou dévissant (la reco du retournement est déjà implémenté et avec la boussole ça doit pas être trop dur pour le reste).

  • Tapoter sur le vario : ça demande de la reco au niveau de l’accelero, moins facile je pense. Avec 3 niveaux de sons.

Je voulais tester le vario à la dune hier mais je voulais pas avoir le son (et je voulais pas non plus lui coller du sable :confused: )

Sinon super boulot jpg63 karma+ je vais regarder l’implémentation du niveau de réception.

Désolé Jpg, de ne pas être sur de te comprendre du premier coup.
j’ai ouvert le “SetVarioParameters”, j’y ai mis mes infos, j’ai enregistré et créé un SetVarioParameters.ino.eightanaloginputs.hex
puis j’ai ouvert variometer.ino et j’ai réglé le volume.
mais je ne vois pas comment en recompilant un FIRM.HEX les infos de “SetVarioParameters” sont intégrées dans ce nouveau firm.
???

Tu renome le SetVarioParameters.ino.eightanaloginputs.hex en FIRM.HEX > tu copie sur ta sd > tu fait la procédure pour flasher.

Tu remet ensuite le FIRM.HEX du variometer.ino pour que ce soit fonctionnel.

Le SetVarioParameters.ino n’est à faire qu’une fois pour écrire ce qu’il va bien dans la mêmoire flash de l’arduino. Ça permet d’alléger le code.

Pour les réglages, je pense à un fichier Text avec toutes les valeurs, mais la possibilité de régler le son sans PC ça serait vraiment top. Super idée de tourner dans un sens pour augmenter le son et dans l’autre pour le baisser. Sinon une petite résistance variable à glissière connectée sur une entrée Analogique pour la prochaine version

Van Hurlu, tu renomme SetVarioParameters.ino.eightanaloginputs.hex en FIRM.HEX, tu met à jour le vario. Les infos sont stockées dans l’Eprom. Tu mets le FIRM.HEX de variometer.ino et tu remets à jours le vario et hop :ppte: c’est tout bon

Xiboard a été plus rapide que moi

:trinq: :trinq: merci à vous deux
désolé d’être bourrin, mais beaucoup de choses sont nouvelles pour moi

[EDIT]
trop génial ! tout marche, la réception satellite , la charge batterie, l’heure…
:vol: :vol: :vol: :vol: :vol:

http://doarama.com/view/1368102

juste quelques questions remarques, il m’a semblé que
le démarrage du calcul du temps de vol se fait dès le fix sattelite
le démarrage de l’enregistrement de la trace GPS se fait quand on dépasse les 10 km/h
Bizarre ???

le clignotement entre heure et temps de vol est trop lent, il faut l’accélérer par 2 au mini

le niveau batterie ne marche pas pour moi, elle indique tout le temps vide ???

jamais eu plus de 3 barres aux satellites ? ça veut dire qu’il en accroche 3 ou c’est juste une indication de niveau. au total, il y a combien de barres possibles ???

Je vais l’emmener en vol rapidement, Je le trouve super mignon :oops:

trop trop content
https://imgfast.net/users/2512/45/46/19/smiles/792563399.gif

Bon bin c’est bien tout ça ! :smiley:

Vous allez pouvoir tester les traces et le Bluetooth pour ceux qui l’on installé. Je veux bien que vous me disiez si il y a toujours le bug de la date dans les IGC.

Ouai je me suis fait griller la surprise :grrr:

Je suis en train de tester la détention de frappe. On pourra donc agir sur le vario avec le nombre de tapotements. Effectivement il me semble important de pouvoir couper le son.

À+

VanHurlu pour l’affichage de la batterie il faut faire un pont diviseur de tension. Regarde le schéma de jpg63

Effectivement le temps de vol n’est pas totalement finalisé, il démarre après le fix GPS, je réglerais rapidement ce petit detail
J’ai effectivement eu la même remarque, 5 sec entre l’affichage de l’heure et du temps de vol c’est beaucoup mieux, je vais remettre les nouveaux sources, avec la simplification de l’affichage de la batterie.

Pour la batterie, si tu n’a pas le pont diviseur sur A2, impossible d’afficher la tension RAW

Pour le GPS c’est 1 barres 1 GPS, 2 barres 3 GPS, 3 barres 5 GPS et 4 barres 10 GPS

Voila je code modifié avec le temps de vol qui déclenche dès que le vol débute. La batterie est gérer par pas de 10% de charge et le code est simplifié. Et l’heure et la durée du vol bascule toutes les sec

Prunkdump j’ai fais de nouveau test pour la date IGC, j’ai obtenu à chaque fois la date, je referais des test en vrai (en vol). Peu être que si la qualité de reception du gps n’est pas super, la date n’est pas valide. A voir

:bravo: bravo jpg, ça c’est de la réactivité

J’ai finalement retrouvé tes explications sur le pont diviseur
http://www.parapentiste.info/forum/bons-plans/variometre-maison-a-base-darduino-t33538.0.html;msg596535#msg596535
si à l’occase tu ouvres à nouveau ta petite boite, essaye de faire une photo pour nous montrer comment concrètement tu as rajouté ces résistances.
Je n’en ai pas en stock, il faut que je commande 2 résistances (R1 = 270K et R2 = 1M), la fonctionnalité attendra un peu pour moi.
Je vais en profiter pour commander de la gaine thermorétractable pour sécuriser mon bidouillage.
Quelqu’un sait-il quelle taille de gaine il faut ??? Voir un lien vers de la gaine qui va bien ?

Une remarque :
Pour l’avoir vécu plusieurs fois, c’est fastidieux de retrouver la bonne info dans 33 pages, car même si on trouve, on est plus ou moins obligé de relire toutes les pages suivantes au cas ou l’explication que l’on a trouvé soit modifiée ultérieurement. Je me doute bien qu’en phase de développement vous n’avez pas le temps de mettre au propre.
Comme je suis complètement dépassé au niveau du code et que je ne peux pas vous aider dans ce domaine, peut-être que ma contribution pourrait être dans ce domaine ? en rassemblant les infos à la suite de la page http://glpano.free.fr/vario/

Encore une question : :roll:
En attendant … je n’arrive plus à retrouver ou en en est pour la mise à jour du FIRM sans tout re-démonter pour utiliser le bouton de l’Arduino (j’ai encore perdu 3/4 h à fouiller le fil). Il fallait le retourner au démarrage ???

Retour d’expérience sur agencement général :
J’expérimente quelques modifications au niveau de l’agencement.
J’ai remplacé le lecteur de carte SD par un lecteur de mini-carte SD. Le gain de place permet de mettre la carte bluetooth à coté. La carte mini SD est plus enfoncé du fait de mon montage. Il suffit d’une pointe de stylo pour mettre et éjecter la mini sd. Ce qui me plait assez. Comme je n’ai pas modifié le circuit imprimé, mes connections (pour la mini SD et le BT) sont faites avec des petites map de fil se qui réduit le gain de place obtenu. Mais même avec cet inconvénient, mon boitier se ferme beaucoup mieux qu’avant. et la carte BT est loin de l’antenne du GPS

Réflexion :
Malgré le déplacement de la carte BT, le GNUVario est beaucoup plus long que mon skytraxx pour faire le fix. D’après ce que j’ai pu lire de vos tests, l’écran situé juste au-dessus de l’antenne serait aussi une cause de cette mauvaise réception.
Si c’est vraiment le cas, il ne faudra pas tergiverser et modifier complètement la disposition en mettant l’antenne juste sous le capot. La qualité de la réception satellite DOIT être optimale. J’imagine même de faire un trou dans le capot pour y coller l’antenne à fleur (encore un gain de place).
On pourrait peut-être aussi envisager de prendre un boitier de la taille au-dessus sans compromettre l’intérêt du GNUVario si on améliore la réception et que l’on augmente énormément l’autonomie avec une plus grosse batterie.

Bons vols à tous pour cette journée de l’ascension :coucou: jm

:sos:
http://www.parapentiste.info/forum/bons-plans/variometre-maison-a-base-darduino-t33538.0.html;msg595971#msg595971 :wink: