Navigation et FlightGear

207 views
Skip to first unread message

Clément de l'Hamaide

unread,
Jan 25, 2012, 1:20:50 PM1/25/12
to Forum NAVIGATION
Bonjour,

Je suis un membre actif de développement du simulateur (encore peu
connu) FlightGear ( http://www.flightgear.org/ )
Ce simulateur gratuit, open source, sous licence GPL et multi-
plateforme (Linux, Mac, Windows, FreeBSD, Solaris, SGI Irix) ne
possède pas de carte détaillée.

Pour ce simulateur nous avons un logiciel nommé Atlas assez
contraignant puisqu'il est nécessaire de générer les cartes via des
lignes de commande (on est dans le monde de Linux alors forcément...)
Nous pouvons aussi utiliser Google Map (
http://mpmap02.flightgear.org/?fg_server=mpserver13,mpserver13.flightgear.org,5001&ll=45,6&z=6
Sur cette carte chaque petit avion rouge représente une personne qui
est en vol devant son ordinateur en temps réel) mais très peu
d'informations sont affichées, c'est surtout un moyen de voir qui vol
où et d'afficher des informations de navigation (fréquence ILS, VOR,
radio...)

Ayant parcouru la documentation j'ai pu m'apercevoir que Navigation
serait parfait pour la visualisation en temps réel. De plus la
connectivité avec Navigation semble bonne puisqu'il existe des plugin
pour X-Plan, FSX, on peut s'y connecter en port série et j'ai même vu
apparaître le mot "IP" lorsque l'on sélectionne Ai Nav Pro.

FlightGear a beaucoup de possibilité en termes de communication. Il
est possible d'envoyer des data sur un port série, sur socket (UDP et
TCP) et dans un fichier (parfait pour l'audit de protocole par
exemple). Il est possible de créer ses propres protocoles ou bien
d'utiliser des protocoles tel que le NMEA, GARMIN, OPENGC, PVE... et
bien d'autre. (cf : http://wiki.flightgear.org/Command_line_options#IO_Options
)

Voilà pour la petite introduction qui me semblait nécessaire :)
Désormais rentrons dans le sujet :

Je cherche donc à interconnecté le simulateur FlightGear avec le
logiciel Navigation.
Du côté de FlightGear j'ai le choix d'envoyer des données :
- via port série (port COM)
- via socket (UDP et TCP)
- dans un fichier
Du côté de Navigation on peut recevoir des données
- via un GPS connecté sur un port série (port COM)
- via socket ? (ayant vu le protocol Air Nav Pro qui requiert une
adresse IP je me pose la question)
- via un fichier ? (j'ai vu, dans un menu, que l'on avait la
possibilité de lire des données depuis un fichier pour l'affichage en
temps réel)

De ces 3 possibilités je met tout de suite de côté l'utilisation d'un
fichier. J'explique tout de même le principe qui pourrait être
utiliser :
FlightGear écrit dans un fichier des instructions NMEA en temps réel
tandis que Navigation vient lire ce fichier en temps réel. Ce fichier
ferait alors "tampon" entre FlightGear et Navigation. Je trouve cette
solution assez peu élégante c'est pourquoi je n'y donnerai pas suite.

Autre système que je pense mettre de côté c'est le système par port
série. D'une part parce que j'ai déjà fait des test non concluant et
d'autre part car l'utilisation de socket est bien plus avantageuse.
Pour le détail, j'utilise Linux. J'ai donc installer Navigation via
Wine (solution qui fonctionne très bien d'ailleurs) puis à l'aide du
paquet "socat" j'ai créer un pont virtuel de port série. Ainsi
FlightGear écrivait dans /tmp/ttyS1 et l'autre bout était redirigé
dans les devices de Wine /.wine/dosdevices/com1. Je récupérai alors
les data envoyé par FlightGear (sous Linux) dans Navigation (sous
Wine) mais la navigation temps réel ne fonctionne pas (problème de DLL
user32.dll) malgré que Navigation voyait bien les data série (suite à
un clic sur le petit point d'interrogation dans l'onglet "GPS" du menu
"Options".
Bref cette solution ne fonctionne pas.

Dernière solution : les sockets. Cette solution me parait la plus
intéressante puisqu'elle permet de faire tourner FlightGear sur un
ordinateur et Navigation sur un autre ordinateur (peu importe l'OS) et
les data seront transmise. Il est bien entendu aussi possible
d'utiliser 127.0.0.1 dans la cas où FlightGear et Navigation tourne
sur le même ordinateur.
Sous FlightGear, pour utiliser un protocole nous utilisons ceci :
--generic=socket,out,1,127.0.0.1,1234,udp,nmea
Cette ligne indique :
socket = l'utilisation de socket (on aurait pu mettre "serial" ou
"file")
out = envoie de données (on aurait pu mettre "in" pour recevoir des
données de Navigation)
1 = la fréquence en Hz
127.0.0.1 = l'adresse IP de destination
1234 = le port sur lequel envoyer les data
udp = la méthode de socket à utiliser (l'utilisation du TCP n'est pas
nécessaire)
nmea = le protocole à utiliser pour formater l'envoi des datas

Avec ceci, FlightGear générera cette suite de donnée 1 fois par
secondes :
$GPRMC,115910,A,4513.2575,N,00551.1318,E,0.0,227.1,250112,0.9,E,A*10
$GPGGA,115910,4513.2575,N,00551.1318,E,1,08,0.9,220.0,M,0.0,M,,*72
$GPGSA,A,3,01,02,03,,05,,07,,09,,11,12,0.9,0.9,2.0*38

La ligne $GPGSA n'est pas reconnue par Navigation (je ne sais pas quel
genre de data contient cette instruction)

Après ces longues explications, mais qui me semblaient nécessaire,
place aux questions :
1) Pourriez-vous implémenter une solution de type socket dans
Navigation ? (peut-être est-ce déjà fait avec Air Nav Pro)
2) Pourriez-vous ajouter un choix "FlightGear" dans la liste des GPS ?
3) Serait-il possible de choisir le port d'écoute dans Navigation ?
(le port 5500 semble être un standard mais si l'utilisateur a le choix
cela ne peut-être que mieux)
4) Quel serait pour vous le plus simple à mettre en place en termes de
protocole ? Le protocole NMEA semble être un bon choix mais si vous
souhaitez un autre protocole FligthGear peut s'y adapter.

Voilà, j'espère que cette demande d'ajout de fonctionnalité saura vous
séduire et que trouverez bon d'ajouter cette fonctionnalité à votre
logiciel afin que FlightGear puisse lui aussi profiter de votre
superbe logiciel.

Je reste à votre disposition pour de plus ample informations.

Cordialement,
Clément

Clément de l'Hamaide

unread,
Jan 28, 2012, 2:43:40 PM1/28/12
to forum-na...@googlegroups.com
Bonsoir,
Je reviens vers vous pour connaître vos intentions vis-à-vis de ma demande.
Êtes-vous intéressé ? ou pas du tout ? Pensez-vous pouvoir le mettre en place facilement/rapidement ?

Personne d'autres n'est intéressé par une tel fonctionnalité pour FlightGear ? (y'a-t-il des utilisateurs de FlightGear?)
Si d'autres personnes sont intéressé je pense qu'un message de soutien pourra apporter motivation à François Fouchet (on est toujours content de savoir que ce que l'on crée / va créer est attendant avec impatience par plusieurs personnes)

Dans l'attente de vos nouvelles,

Cordialement,
Clément

Roland

unread,
Jan 28, 2012, 4:34:35 PM1/28/12
to forum-na...@googlegroups.com
Salut Clément,
Bon... Va falloir être patient. Au dernier message, Foufou était dans la Vodka et les glaçons. Mais il va certainement te proposer un p'tit kekchose.
Sinon, je pense que ta proposition est bien ; et étoffer Navigation avec une nouvelle interface vers un simulateur de vol est toujours un plus, et ce, pour les deux parties.
Bons vols virtuels,
Roland


Cordialement,
Clément

--
Forum NAVIGATION (http://groups.google.com/group/Forum-NAVIGATION)
 
Aide sur l'abonnement : voir http://francois.fouchet.free.fr/Navigation/Aide/Forum.htm
 
==> *** Résiliation : envoyer un mail vide à forum-navigati...@googlegroups.com *** <==

François FOUCHET

unread,
Jan 28, 2012, 4:51:59 PM1/28/12
to forum-na...@googlegroups.com
Bonjour,

FouFou est rentr� hier soir. Pour info, la vodka se boit l� bas � temp�rature
ambiante. Par contre, dehors c'�tait -20, ce qui est frais ...

La semaine prochaine, ce sera les soldes � Milan ;-)

Pour revenir � des trucs plus a�ro (bien que je morpionne les cockpits � chaque
d�placement), s'il y a quelques utilisateurs qui font la demande, �a devrait
pouvoir s'arranger.

Cot� sp�cifications, est-ce que c'est une b�te lecture sur un port UDP pour
r�cup�rer les s�quences NMEA ?

Bons vols,
FouFou
Le 28/01/2012 22:34, Roland a �crit :
> Salut Cl�ment,
> Bon... Va falloir �tre patient. Au dernier message, Foufou �tait dans la Vodka
> et les gla�ons. Mais il va certainement te proposer un p'tit kekchose.
> Sinon, je pense que ta proposition est bien ; et �toffer Navigation avec une

> nouvelle interface vers un simulateur de vol est toujours un plus, et ce, pour
> les deux parties.
> Bons vols virtuels,
> Roland
>

> Le 28 janvier 2012 20:43, Cl�ment de l'Hamaide <clement.d...@gmail.com
> <mailto:clement.d...@gmail.com>> a �crit :
>
> Bonsoir,
> Je reviens vers vous pour conna�tre vos intentions vis-�-vis de ma demande.
> �tes-vous int�ress� ? ou pas du tout ? Pensez-vous pouvoir le mettre en
> place facilement/rapidement ?
>
> Personne d'autres n'est int�ress� par une tel fonctionnalit� pour


> FlightGear ? (y'a-t-il des utilisateurs de FlightGear?)

> Si d'autres personnes sont int�ress� je pense qu'un message de soutien
> pourra apporter motivation � Fran�ois Fouchet (on est toujours content de
> savoir que ce que l'on cr�e / va cr�er est attendant avec impatience par


> plusieurs personnes)
>
> Dans l'attente de vos nouvelles,
>
>
> Cordialement,

> Cl�ment

> ==> *** R�siliation : envoyer un mail vide �
> forum-navigati...@googlegroups.com
> <mailto:forum-navigation%2Bunsu...@googlegroups.com> *** <==

> ==> *** R�siliation : envoyer un mail vide �
> forum-navigati...@googlegroups.com *** <==

Guy Daubigeon

unread,
Jan 29, 2012, 2:07:16 AM1/29/12
to forum-na...@googlegroups.com
Le 28/01/2012 22:51, Fran�ois FOUCHET a �crit :
Bonjour, je suis membre de Ivao et de Vatsim et compte tenu du fait que
Flight de MS est un jeu pour le + grand nombre(Marketing oblige) nous
nous sommes demand�s si Flight Gear ne permettrait pas apr�s FSX de se
subsituer � la suppression par MS de ACES pour la simulation. Donc voir
ces gens . Donc voir si navigation peut faire l'affaire est une bonne
chose.
Amicalement.
Guy

Clément de l'Hamaide

unread,
Jan 29, 2012, 6:29:33 AM1/29/12
to forum-na...@googlegroups.com
Bonjour à tous,

Techniquement parlant c'est aussi bête que ça oui.
FlightGear émet 3 lignes de texte séparer par des LF en un seul message (environ 165 octets) en UDP. Il suffit ensuite d'écouter le port et parser les datas reçu.
Les 3 lignes émises sont :
Première ligne : $GPRMC
Deuxième ligne :
$GPGGA
Troisième ligne : $GPGSA
Vous pouvez voir un exemple écrit en C++ (ce n'est pas le langage que vous utilisez pour Navigation mais celà peut vous permettre de vous donner une idée des choses à faire) ici : http://atlas.cvs.sourceforge.net/viewvc/atlas/Atlas/src/FlightTrack.cxx?revision=1.23&view=markup

La fonction qui écoute le port est initialisé par SGSocket() qui est une API utilisé par FlightGear, il suffit donc d'adapter cette écoute au langage VB.

Le fichier FlightTrack.cxx est assez bien commenté ce qui pourra, je pense, vous aider. Les commentaires suivant devrait vous intéresser :
Lignes 262 à 267
Lignes 648 à 670

Au vu des nombreux protocoles que gère déjà Navigation je pense que vous avez l'habitude des communications de data et tout particulièrement les data NMEA. La seule chose qui diffère ici c'est le fait que les data transitent en socket UDP et non pas en serial. Mais au vu du protocol Air Nav Pro je pense que vous avez déjà de l'expérience avec les connexions socket. Peut-être même que le protocole Air Nav Pro est un simple protocole NMEA ?

Je reste à votre disposition,

Cordialement,
Clément

François FOUCHET

unread,
Jan 29, 2012, 5:35:40 PM1/29/12
to forum-na...@googlegroups.com
Bonjour,

Si c'est du NMEA, pas de souci, c'est déjà décodé.

Reste à lire un socket, ce qui ne devrait pas être un souci. 

Pour Info, pour Air Nav Pro, c'est du HTML, avec encapsulation de XML. 

Bons vols,
FouFou
--

Clément de l'Hamaide

unread,
Jan 30, 2012, 4:26:04 PM1/30/12
to forum-na...@googlegroups.com
Bonsoir,

Que de bonnes nouvelles alors ! Le NMEA est déjà décodé et le socket n'est pas un souci :)
Pensez-vous réalisable de laisser le choix du port à l'utilisateur ?

Je ne sais pas à quelle fréquence vous mettez à jour Navigation mais j'ai hâte de pouvoir utiliser votre logiciel avec FlightGear.
Si vous avez des questions ou besoin d'un testeur n'hésitez pas à me demander.
Concernant le protocole Air Nav Pro, avez-vous la possibilité de me communiquer un endroit où me le procurer ? Où bien est-ce un protocole "totalement" propriétaire et payant que vous ne pouvez pas communiquer ?

Merci pour votre formidable travail.

Cordialement,
Clément

François FOUCHET

unread,
Jan 31, 2012, 6:17:01 PM1/31/12
to forum-na...@googlegroups.com
Bonjour,

Concernant les mises à jour, il n'y a pas de règle (en dehors du fait
qu'il vaut mieux que je sois à la maison, ce qui n'est pas très
souvent le cas en ce moment). A priori, je devrais y être ce WE, du
moins s'il arrivent à déneiger à Milan, parce que c'est tout blanc
depuis cet AM.

Concernant Air Nav Pro, comme je l'ai dit, c'est du bête HTML qui
échange des fichiers XML. Les URL s'obtienne au travers d'un browser
(IE ou Firefox par exemple), et les fichiers sont transférés de/vers
le browser. Décoder le XML est assez simple. Sinon, la bonne source
est le développeur d'Air Nav Pro (c'est un gentil suisse).

Bons vols,
FouFou, décidément sous la neige en ce moment

Le 30 janvier 2012 22:26, Clément de l'Hamaide
<clement.d...@gmail.com> a écrit :

Clément de l'Hamaide

unread,
Feb 10, 2012, 7:25:45 AM2/10/12
to forum-na...@googlegroups.com
Bonjour,

Je reviens vers vous pour avoir des nouvelles de ce projet.
Avez-vous eu le temps de regarder la faisabilité du projet ? Avez vous pu commencer à implémenter le projet ? Rencontrez-vous des difficultés (manque d'informations, pas de moyen de tester...) ?
Ou bien n'avez-vous tout simplement pas le temps de vous occuper de cela dans les semaines/mois à venir ?

Cordialement,
Clément

François FOUCHET

unread,
Feb 11, 2012, 4:01:51 PM2/11/12
to forum-na...@googlegroups.com
Bonjour,

Entre 2 recherches de pompes chaudes (il fait -25�c � Moscou, et j'y suis de
lundi � jeudi ;-), j'ai �crit un petit programme de test pour voir si je peux
r�cup�rer les messages de FlightGear.

Il suffit de le t�l�charger depuis
http://francois.fouchet.free.fr/Navigation/Telechargement/TstSocket.exe, de le
lancer, de pr�ciser l'adresse IP et le port UDP du server FLightGear, et cliquer
sur "Connect".

M'envoyer ensuite (en priv�, pas sur le forum) le fichier TstSocket.log qu'il va
g�n�rer � l'endroit d'o� il aura �t� lanc� (c'est le contenu de la fen�tre).

Si �a fonctionne, le laisser tourner un petit moment, pour voir si �a fini par
p�ter � un moment ou � un autre. Ne m'envoyer ce log que si �a crashe, et apr�s
l'avoir zipp�.

Bons vols,
FouFou
Le 10/02/2012 13:25, Cl�ment de l'Hamaide a �crit :


> Bonjour,
>
> Je reviens vers vous pour avoir des nouvelles de ce projet.

> Avez-vous eu le temps de regarder la faisabilit� du projet ? Avez vous pu
> commencer � impl�menter le projet ? Rencontrez-vous des difficult�s (manque

> d'informations, pas de moyen de tester...) ?
> Ou bien n'avez-vous tout simplement pas le temps de vous occuper de cela dans

> les semaines/mois � venir ?
>
> Cordialement,
> Cl�ment

Roland

unread,
Feb 11, 2012, 4:08:41 PM2/11/12
to forum-na...@googlegroups.com
Rap, rap, rapiiiiiidooooooooooooooo. (Pour ceux qui se souviennent)
Il ne fait que -7°c à -15°c par ici. -23°c en haut des pistes, vendredi dernier...
A+ et bons vols,
Roland

Le 11 février 2012 22:01, François FOUCHET <francois...@gmail.com> a écrit :
Bonjour,

Entre 2 recherches de pompes chaudes (il fait -25°c à Moscou, et j'y suis de lundi à jeudi ;-), j'ai écrit un petit programme de test pour voir si je peux récupérer les messages de FlightGear.

Il suffit de le télécharger depuis http://francois.fouchet.free.fr/Navigation/Telechargement/TstSocket.exe, de le lancer, de préciser l'adresse IP et le port UDP du server FLightGear, et cliquer sur "Connect".

M'envoyer ensuite (en privé, pas sur le forum) le fichier TstSocket.log qu'il va générer à l'endroit d'où il aura été lancé (c'est le contenu de la fenêtre).

Si ça fonctionne, le laisser tourner un petit moment, pour voir si ça fini par péter à un moment ou à un autre. Ne m'envoyer ce log que si ça crashe, et après l'avoir zippé.

Bons vols,
FouFou

Le 10/02/2012 13:25, Clément de l'Hamaide a écrit :
Bonjour,

Je reviens vers vous pour avoir des nouvelles de ce projet.
Avez-vous eu le temps de regarder la faisabilité du projet ? Avez vous pu commencer à implémenter le projet ? Rencontrez-vous des difficultés (manque d'informations, pas de moyen de tester...) ?
Ou bien n'avez-vous tout simplement pas le temps de vous occuper de cela dans les semaines/mois à venir ?

Cordialement,
Clément
==> *** Résiliation : envoyer un mail vide à forum-navigation+unsubscribe@googlegroups.com *** <==
==> *** Résiliation : envoyer un mail vide à forum-navigation+unsubscribe@googlegroups.com *** <==

FouFou

unread,
Feb 20, 2012, 2:47:22 PM2/20/12
to Forum NAVIGATION
Bonjour,

La version 2.12.13 implémente le support de FlightGear. Choisir ce
type de GPS dans l'onglet GPS des options, et indiquer le port UDP à
utiliser, si ce n'est pas le standard (5500).

Bons vols
FouFou

On 11 fév, 22:08, Roland <roland.gill...@gmail.com> wrote:
> Rap, rap, rapiiiiiidooooooooooooooo. (Pour ceux qui se souviennent)
> Il ne fait que -7°c à -15°c par ici. -23°c en haut des pistes, vendredi
> dernier...
> A+ et bons vols,
> Roland
>
> Le 11 février 2012 22:01, François FOUCHET <francois.fouc...@gmail.com> a
> écrit :
>
>
>
>
>
>
>
> > Bonjour,
>
> > Entre 2 recherches de pompes chaudes (il fait -25°c à Moscou, et j'y suis
> > de lundi à jeudi ;-), j'ai écrit un petit programme de test pour voir si je
> > peux récupérer les messages de FlightGear.
>
> > Il suffit de le télécharger depuishttp://francois.fouchet.free.**
> > fr/Navigation/Telechargement/**TstSocket.exe<http://francois.fouchet.free.fr/Navigation/Telechargement/TstSocket.exe>,
> > de le lancer, de préciser l'adresse IP et le port UDP du server FLightGear,
> > et cliquer sur "Connect".
>
> > M'envoyer ensuite (en privé, pas sur le forum) le fichier TstSocket.log
> > qu'il va générer à l'endroit d'où il aura été lancé (c'est le contenu de la
> > fenêtre).
>
> > Si ça fonctionne, le laisser tourner un petit moment, pour voir si ça fini
> > par péter à un moment ou à un autre. Ne m'envoyer ce log que si ça crashe,
> > et après l'avoir zippé.
>
> > Bons vols,
> > FouFou
> > Le 10/02/2012 13:25, Clément de l'Hamaide a écrit :
>
> >  Bonjour,
>
> >> Je reviens vers vous pour avoir des nouvelles de ce projet.
> >> Avez-vous eu le temps de regarder la faisabilité du projet ? Avez vous pu
> >> commencer à implémenter le projet ? Rencontrez-vous des difficultés (manque
> >> d'informations, pas de moyen de tester...) ?
> >> Ou bien n'avez-vous tout simplement pas le temps de vous occuper de cela
> >> dans les semaines/mois à venir ?
>
> >> Cordialement,
> >> Clément
> >> --
> >> Forum NAVIGATION (http://groups.google.com/**group/Forum-NAVIGATION<http://groups.google.com/group/Forum-NAVIGATION>
> >> )
>
> >> Aide sur l'abonnement : voirhttp://francois.fouchet.free.**
> >> fr/Navigation/Aide/Forum.htm<http://francois.fouchet.free.fr/Navigation/Aide/Forum.htm>
>
> >> ==> *** Résiliation : envoyer un mail vide à
> >> forum-navigation+unsubscribe@**googlegroups.com<forum-navigation%2Bunsu...@googlegroups.com>*** <==
>
> > --
> > Forum NAVIGATION (http://groups.google.com/**group/Forum-NAVIGATION<http://groups.google.com/group/Forum-NAVIGATION>
> > )
>
> > Aide sur l'abonnement : voirhttp://francois.fouchet.free.**
> > fr/Navigation/Aide/Forum.htm<http://francois.fouchet.free.fr/Navigation/Aide/Forum.htm>
>
> > ==> *** Résiliation : envoyer un mail vide à forum-navigation+unsubscribe@
> > **googlegroups.com <forum-navigation%2Bunsu...@googlegroups.com> ***
> > <==
Reply all
Reply to author
Forward
0 new messages