| author : | echatellier <eric.chatellier@codelutin.com> |
|---|
Connecter le GPS au port Serie
Allumer le GPS
Attendre que le GPS affiche "Pret à naviguer"
À ce moment sous windows, il est possible que la souris se mettent à bouger toute seule. Il faut dans ce cas: * configurer le GPS sur l'interface Garmin * désinstaller le peripherique Souris détecté par Windows
Télécharger le logiciel "eTrex Legend C Software": * le lance * Auto detecter le GPS, cela doit afficher "Connected to serial port COM1".
Ajouter le jar comm.jar
Le fichier java.com.properties
le fichier natif win32com.dll
Pas continuer.
Exemple d'event recu:
gps data change location GPSPosition[lat: 47.21053, long:-1.4865016666666666] gps data change number_satellites 10 gps data change horizontal_dop 1.3 gps data change altitude 10.2 gps data change position_dop 2.1 gps data change vertical_dop 1.6 gps data change ids_satellites [9, 12, 14, 15, 17, 18, 22, 25, 26, 27, null, null] gps data change satellite_info [SatelliteInfo[PRN: 9, elev: 78.0, azimuth: 38.0, SNR: 0], SatelliteInfo[PRN: 12, elev: 62.0, azimuth: 227.0, SNR: 28], SatelliteInfo[PRN: 14, elev: 18.0, azimuth: 316.0, SNR: 21], SatelliteInfo[PRN: 15, elev: 43.0, azimuth: 167.0, SNR: 19], SatelliteInfo[PRN: 17, elev: 26.0, azimuth: 50.0, SNR: 0], SatelliteInfo[PRN: 18, elev: 21.0, azimuth: 247.0, SNR: 29], SatelliteInfo[PRN: 22, elev: 21.0, azimuth: 291.0, SNR: 26], SatelliteInfo[PRN: 25, elev: 20.0, azimuth: 233.0, SNR: 30], SatelliteInfo[PRN: 26, elev: 6.0, azimuth: 145.0, SNR: 16], SatelliteInfo[PRN: 27, elev: 65.0, azimuth: 78.0, SNR: 13]] gps data change epe PositionError[epe=24.7, eph=11.2, epv=24.7] gps data change location GPSPosition[lat: 47.210523333333335, long:-1.4865016666666666] gps data change speed 0.0 gps data change altitude 10.3 gps data change ids_satellites [9, 12, 14, 15, 17, 18, 22, 25, 26, 27, null, null] gps data change satellite_info [SatelliteInfo[PRN: 9, elev: 78.0, azimuth: 38.0, SNR: 0], SatelliteInfo[PRN: 12, elev: 62.0, azimuth: 227.0, SNR: 25], SatelliteInfo[PRN: 14, elev: 18.0, azimuth: 316.0, SNR: 22], SatelliteInfo[PRN: 15, elev: 43.0, azimuth: 167.0, SNR: 19], SatelliteInfo[PRN: 17, elev: 26.0, azimuth: 50.0, SNR: 0], SatelliteInfo[PRN: 18, elev: 21.0, azimuth: 247.0, SNR: 33], SatelliteInfo[PRN: 22, elev: 21.0, azimuth: 291.0, SNR: 33], SatelliteInfo[PRN: 25, elev: 20.0, azimuth: 233.0, SNR: 19], SatelliteInfo[PRN: 26, elev: 6.0, azimuth: 145.0, SNR: 16], SatelliteInfo[PRN: 27, elev: 65.0, azimuth: 78.0, SNR: 13]] gps data change location GPSPosition[lat: 47.21051166666667, long:-1.4864983333333335] gps data change altitude 10.5 gps data change ids_satellites [9, 12, 14, 15, 17, 18, 22, 25, 26, 27, null, null] gps data change satellite_info [SatelliteInfo[PRN: 9, elev: 78.0, azimuth: 38.0, SNR: 0], SatelliteInfo[PRN: 12, elev: 62.0, azimuth: 227.0, SNR: 25], SatelliteInfo[PRN: 14, elev: 18.0, azimuth: 316.0, SNR: 23], SatelliteInfo[PRN: 15, elev: 43.0, azimuth: 167.0, SNR: 19], SatelliteInfo[PRN: 17, elev: 26.0, azimuth: 50.0, SNR: 0], SatelliteInfo[PRN: 18, elev: 21.0, azimuth: 247.0, SNR: 34], SatelliteInfo[PRN: 22, elev: 21.0, azimuth: 291.0, SNR: 33], SatelliteInfo[PRN: 25, elev: 20.0, azimuth: 233.0, SNR: 16], SatelliteInfo[PRN: 26, elev: 6.0, azimuth: 145.0, SNR: 16], SatelliteInfo[PRN: 27, elev: 65.0, azimuth: 78.0, SNR: 13]] gps data change epe PositionError[epe=24.7, eph=11.1, epv=24.7] gps data change location GPSPosition[lat: 47.210503333333335, long:-1.486495] gps data change ids_satellites [9, 12, 14, 15, 17, 18, 22, 25, 26, 27, null, null] gps data change satellite_info [SatelliteInfo[PRN: 9, elev: 78.0, azimuth: 38.0, SNR: 0], SatelliteInfo[PRN: 12, elev: 62.0, azimuth: 227.0, SNR: 25], SatelliteInfo[PRN: 14, elev: 18.0, azimuth: 316.0, SNR: 23], SatelliteInfo[PRN: 15, elev: 43.0, azimuth: 167.0, SNR: 19], SatelliteInfo[PRN: 17, elev: 25.0, azimuth: 49.0, SNR: 0], SatelliteInfo[PRN: 18, elev: 21.0, azimuth: 247.0, SNR: 34], SatelliteInfo[PRN: 22, elev: 21.0, azimuth: 291.0, SNR: 33], SatelliteInfo[PRN: 25, elev: 20.0, azimuth: 233.0, SNR: 16], SatelliteInfo[PRN: 26, elev: 6.0, azimuth: 145.0, SNR: 16], SatelliteInfo[PRN: 27, elev: 66.0, azimuth: 77.0, SNR: 0]] gps data change epe PositionError[epe=24.8, eph=11.1, epv=24.8] gps data change ids_satellites [9, 12, 14, 15, 17, 18, 22, 25, 26, 27, null, null] gps data change satellite_info [SatelliteInfo[PRN: 9, elev: 78.0, azimuth: 38.0, SNR: 0], SatelliteInfo[PRN: 12, elev: 62.0, azimuth: 227.0, SNR: 26], SatelliteInfo[PRN: 14, elev: 18.0, azimuth: 316.0, SNR: 24], SatelliteInfo[PRN: 15, elev: 43.0, azimuth: 167.0, SNR: 19], SatelliteInfo[PRN: 17, elev: 25.0, azimuth: 49.0, SNR: 0], SatelliteInfo[PRN: 18, elev: 21.0, azimuth: 247.0, SNR: 34], SatelliteInfo[PRN: 22, elev: 21.0, azimuth: 291.0, SNR: 33], SatelliteInfo[PRN: 25, elev: 20.0, azimuth: 233.0, SNR: 17], SatelliteInfo[PRN: 26, elev: 6.0, azimuth: 145.0, SNR: 14], SatelliteInfo[PRN: 27, elev: 66.0, azimuth: 77.0, SNR: 0]] gps data change ids_satellites [9, 12, 14, 15, 17, 18, 22, 25, 26, 27, null, null] gps data change satellite_info [SatelliteInfo[PRN: 9, elev: 78.0, azimuth: 38.0, SNR: 0], SatelliteInfo[PRN: 12, elev: 62.0, azimuth: 227.0, SNR: 25], SatelliteInfo[PRN: 14, elev: 18.0, azimuth: 316.0, SNR: 24], SatelliteInfo[PRN: 15, elev: 43.0, azimuth: 167.0, SNR: 19], SatelliteInfo[PRN: 17, elev: 25.0, azimuth: 49.0, SNR: 0], SatelliteInfo[PRN: 18, elev: 21.0, azimuth: 247.0, SNR: 34], SatelliteInfo[PRN: 22, elev: 21.0, azimuth: 291.0, SNR: 33], SatelliteInfo[PRN: 25, elev: 20.0, azimuth: 233.0, SNR: 17], SatelliteInfo[PRN: 26, elev: 6.0, azimuth: 145.0, SNR: 14], SatelliteInfo[PRN: 27, elev: 66.0, azimuth: 77.0, SNR: 0]] gps data change ids_satellites [9, 12, 14, 15, 17, 18, 22, 25, 26, 27, null, null] gps data change satellite_info [SatelliteInfo[PRN: 9, elev: 78.0, azimuth: 38.0, SNR: 0], SatelliteInfo[PRN: 12, elev: 62.0, azimuth: 227.0, SNR: 25], SatelliteInfo[PRN: 14, elev: 18.0, azimuth: 316.0, SNR: 24], SatelliteInfo[PRN: 15, elev: 43.0, azimuth: 167.0, SNR: 19], SatelliteInfo[PRN: 17, elev: 25.0, azimuth: 49.0, SNR: 0], SatelliteInfo[PRN: 18, elev: 21.0, azimuth: 247.0, SNR: 34], SatelliteInfo[PRN: 22, elev: 21.0, azimuth: 291.0, SNR: 33], SatelliteInfo[PRN: 25, elev: 20.0, azimuth: 233.0, SNR: 17], SatelliteInfo[PRN: 26, elev: 6.0, azimuth: 145.0, SNR: 15], SatelliteInfo[PRN: 27, elev: 66.0, azimuth: 77.0, SNR: 0]] gps data change ids_satellites [9, 12, 14, 15, 17, 18, 22, 25, 26, 27, null, null] gps data change satellite_info [SatelliteInfo[PRN: 9, elev: 78.0, azimuth: 38.0, SNR: 0], SatelliteInfo[PRN: 12, elev: 62.0, azimuth: 227.0, SNR: 25], SatelliteInfo[PRN: 14, elev: 18.0, azimuth: 316.0, SNR: 24], SatelliteInfo[PRN: 15, elev: 43.0, azimuth: 167.0, SNR: 18], SatelliteInfo[PRN: 17, elev: 25.0, azimuth: 49.0, SNR: 0], SatelliteInfo[PRN: 18, elev: 21.0, azimuth: 247.0, SNR: 35], SatelliteInfo[PRN: 22, elev: 21.0, azimuth: 291.0, SNR: 32], SatelliteInfo[PRN: 25, elev: 20.0, azimuth: 233.0, SNR: 17], SatelliteInfo[PRN: 26, elev: 6.0, azimuth: 145.0, SNR: 15], SatelliteInfo[PRN: 27, elev: 66.0, azimuth: 77.0, SNR: 0]] gps data change ids_satellites [9, 12, 14, 15, 17, 18, 22, 25, 26, 27, null, null] gps data change satellite_info [SatelliteInfo[PRN: 9, elev: 78.0, azimuth: 38.0, SNR: 0], SatelliteInfo[PRN: 12, elev: 62.0, azimuth: 227.0, SNR: 25], SatelliteInfo[PRN: 14, elev: 18.0, azimuth: 316.0, SNR: 23], SatelliteInfo[PRN: 15, elev: 43.0, azimuth: 167.0, SNR: 19], SatelliteInfo[PRN: 17, elev: 25.0, azimuth: 49.0, SNR: 0], SatelliteInfo[PRN: 18, elev: 21.0, azimuth: 247.0, SNR: 22], SatelliteInfo[PRN: 22, elev: 21.0, azimuth: 291.0, SNR: 25], SatelliteInfo[PRN: 25, elev: 20.0, azimuth: 233.0, SNR: 27], SatelliteInfo[PRN: 26, elev: 6.0, azimuth: 145.0, SNR: 17], SatelliteInfo[PRN: 27, elev: 66.0, azimuth: 77.0, SNR: 0]] gps data change location GPSPosition[lat: 47.210505, long:-1.4864966666666666] gps data change horizontal_dop 1.6 gps data change position_dop 2.3 gps data change ids_satellites [9, 12, 14, 15, 17, 18, 22, 25, 26, 27, null, null] gps data change location GPSPosition[lat: 47.21051166666667, long:-1.4865083333333333] gps data change speed 3.5185184 gps data change altitude 10.3 gps data change ids_satellites [9, 12, 14, 15, 17, 18, 22, 25, 26, 27, null, null] gps data change satellite_info [SatelliteInfo[PRN: 9, elev: 78.0, azimuth: 38.0, SNR: 0], SatelliteInfo[PRN: 12, elev: 62.0, azimuth: 228.0, SNR: 26], SatelliteInfo[PRN: 14, elev: 18.0, azimuth: 316.0, SNR: 20], SatelliteInfo[PRN: 15, elev: 43.0, azimuth: 167.0, SNR: 23], SatelliteInfo[PRN: 17, elev: 25.0, azimuth: 49.0, SNR: 0], SatelliteInfo[PRN: 18, elev: 21.0, azimuth: 247.0, SNR: 8], SatelliteInfo[PRN: 22, elev: 21.0, azimuth: 291.0, SNR: 15], SatelliteInfo[PRN: 25, elev: 20.0, azimuth: 233.0, SNR: 25], SatelliteInfo[PRN: 26, elev: 6.0, azimuth: 145.0, SNR: 21], SatelliteInfo[PRN: 27, elev: 66.0, azimuth: 77.0, SNR: 0]] gps data change epe PositionError[epe=24.9, eph=11.1, epv=24.9] gps data change location GPSPosition[lat: 47.21051833333333, long:-1.486525] gps data change speed 3.333333 gps data change altitude 10.0 gps data change ids_satellites [9, 12, 14, 15, 17, 18, 22, 25, 26, 27, null, null] gps data change satellite_info [SatelliteInfo[PRN: 9, elev: 78.0, azimuth: 38.0, SNR: 0], SatelliteInfo[PRN: 12, elev: 62.0, azimuth: 228.0, SNR: 26], SatelliteInfo[PRN: 14, elev: 18.0, azimuth: 316.0, SNR: 19], SatelliteInfo[PRN: 15, elev: 43.0, azimuth: 167.0, SNR: 24], SatelliteInfo[PRN: 17, elev: 25.0, azimuth: 49.0, SNR: 0], SatelliteInfo[PRN: 18, elev: 21.0, azimuth: 247.0, SNR: 11], SatelliteInfo[PRN: 22, elev: 21.0, azimuth: 291.0, SNR: 13], SatelliteInfo[PRN: 25, elev: 20.0, azimuth: 233.0, SNR: 26], SatelliteInfo[PRN: 26, elev: 6.0, azimuth: 145.0, SNR: 21], SatelliteInfo[PRN: 27, elev: 66.0, azimuth: 77.0, SNR: 0]] gps data change location GPSPosition[lat: 47.21054, long:-1.4865333333333333] gps data change speed 0.0 gps data change horizontal_dop 1.2 gps data change altitude 9.0 gps data change position_dop 1.7 gps data change vertical_dop 1.3 gps data change ids_satellites [9, 12, 14, 15, 17, 18, 22, 25, 26, 27, null, null] gps data change satellite_info [SatelliteInfo[PRN: 9, elev: 77.0, azimuth: 40.0, SNR: 20], SatelliteInfo[PRN: 12, elev: 62.0, azimuth: 228.0, SNR: 26], SatelliteInfo[PRN: 14, elev: 18.0, azimuth: 316.0, SNR: 16], SatelliteInfo[PRN: 15, elev: 43.0, azimuth: 167.0, SNR: 24], SatelliteInfo[PRN: 17, elev: 25.0, azimuth: 49.0, SNR: 0], SatelliteInfo[PRN: 18, elev: 21.0, azimuth: 247.0, SNR: 27], SatelliteInfo[PRN: 22, elev: 21.0, azimuth: 291.0, SNR: 21], SatelliteInfo[PRN: 25, elev: 20.0, azimuth: 233.0, SNR: 24], SatelliteInfo[PRN: 26, elev: 6.0, azimuth: 145.0, SNR: 17], SatelliteInfo[PRN: 27, elev: 66.0, azimuth: 77.0, SNR: 0]]
Rxtx est la lib de communication utilisée par GPSylon: http://www.cloudhopper.com/opensource/rxtx/
Apparement, sans le fichier "javax.comm.properties", cela ne fonctionne pas: les librairies natives ne sont pas trouvées.
RXTX est remplacé par nrjavaserial : http://code.google.com/p/nrjavaserial/ Il n'est plus nécessaire d'embarquer les librairies natives, elles sont incluses dans le jar de nrjavaserial.
Pour java web start, il faut que les librairies natives sont packagées dans un jar et ajoutées au manifest jnlp: <nativelib href="lib/rxtx-win-xxx.jar" />
http://rxtx.qbang.org/wiki/index.php/Trouble_shooting#How_can_I_use_Lock_Files_with_rxtx.3F
Sous linux, ajouter un user au groupe "uucp": usermod -aG uucp myuser
TODO non implémenté
si aucun satellite > erreur à remonter (LED rouge) : "Pas de satellite"
si je continue à recevoir toujours la même donnée > vérifier si le port est accessible
Enumeration portList = CommPortIdentifier.getPortIdentifiers();
while (portList.hasMoreElements()) {
CommPortIdentifier portId = (CommPortIdentifier) portList.nextElement();
if (portId.getPortType() == CommPortIdentifier.PORT_SERIAL) {
log.trace("Accessible SERIAL port with device : " + portId.getName());
}
}si le port n'est plus accessible > erreur à remonter (LED rouge) : "pas de GPS"
si un autre ou plusieurs port potentiels sont disponibles > popup avec le choix du port