{"id":4083,"date":"2020-07-10T19:55:25","date_gmt":"2020-07-10T18:55:25","guid":{"rendered":"https:\/\/olivier.hoarau.org\/?p=4083"},"modified":"2020-07-10T19:55:25","modified_gmt":"2020-07-10T18:55:25","slug":"montre-gps-garmin-forerunner-735xt-et-son-sdk-connect-iq","status":"publish","type":"post","link":"https:\/\/olivier.hoarau.org\/?p=4083","title":{"rendered":"Montre GPS Garmin Forerunner 735XT et son sdk Connect IQ"},"content":{"rendered":"\n<p>J&rsquo;utilise depuis des ann\u00e9es une montre GPS, elle me sert en planche \u00e0 voile (voir par <a href=\"https:\/\/www.hoarau.org\/funboard\/carnet-session20.htm\">ici<\/a>) ou en randonn\u00e9e (voir par <a href=\"https:\/\/www.hoarau.org\/tourisme\/reunion\/index.php?ref=mafate\">l\u00e0<\/a>), j&rsquo;ai fait le choix de Garmin avec des montres sp\u00e9cialis\u00e9es pour le triathlon qui sont relativement robustes et surtout bien \u00e9tanches. J&rsquo;ai commenc\u00e9 avec le mod\u00e8le <a href=\"https:\/\/olivier.hoarau.org\/?p=976\">Forerunner 205<\/a>, que j&rsquo;ai perdu lors d&rsquo;une session de planche \u00e0 voile avec le bracelet qui s&rsquo;est cass\u00e9 en navigation,  puis je suis pass\u00e9 \u00e0 la<a href=\"https:\/\/olivier.hoarau.org\/?p=1380\"> Garmin Forerunner 310XT<\/a>, ses deux montres se pilotent tr\u00e8s bien sous linux (voir <a href=\"https:\/\/www.funix.org\/fr\/linux\/index.php?ref=garmin\">cette page<\/a>). Malheureusement ma derni\u00e8re montre a pris l&rsquo;eau lors d&rsquo;une session r\u00e9cente en planche \u00e0 voile. Au fil du temps dans l&rsquo;action l&rsquo;\u00e9cran s&rsquo;est \u00e9br\u00e9ch\u00e9 dans un angle et je pense que l&rsquo;eau est rentr\u00e9e par l\u00e0. Apr\u00e8s 7 ans d&rsquo;utilisation intensive, je consid\u00e8re qu&rsquo;elle est quand m\u00eame largement amortie. Du coup j&rsquo;ai cherch\u00e9 sa rempla\u00e7ante, en restant fid\u00e8le \u00e0 Garmin et aux montres sp\u00e9cialis\u00e9es dans le triathlon, je viens d&rsquo;acheter une <a href=\"https:\/\/buy.garmin.com\/fr-FR\/FR\/p\/541225\">Garmin Forerunner 735XT<\/a> dont on peut trouver un test par <a href=\"https:\/\/www.01net.com\/tests\/test-garmin-forerunner-735xt-la-montre-multisports-presque-trop-performante-pour-nous-5818.html\">l\u00e0<\/a>.<\/p>\n\n\n\n<center><iframe style=\"width:120px;height:240px;\" marginwidth=\"0\" marginheight=\"0\" scrolling=\"no\" frameborder=\"0\" src=\"\/\/ws-eu.amazon-adsystem.com\/widgets\/q?ServiceVersion=20070822&#038;OneJS=1&#038;Operation=GetAdHtml&#038;MarketPlace=FR&#038;source=ss&#038;ref=as_ss_li_til&#038;ad_type=product_link&#038;tracking_id=blog0d24-21&#038;language=fr_FR&#038;marketplace=amazon&#038;region=FR&#038;placement=B01DWIY39A&#038;asins=B01DWIY39A&#038;linkId=a6b651a4cb09198af61e2d110cd66743&#038;show_border=true&#038;link_opens_in_new_window=true\"><\/iframe><\/center>\n\n\n\n<p>Par rapport aux pr\u00e9c\u00e9dents mod\u00e8les, je suis tr\u00e8s r\u00e9serv\u00e9 sur la robustesse et l&rsquo;aspect solidit\u00e9, elle est franchement beaucoup plus light, \u00e7a ressemble davantage \u00e0 une montre \u00e0 mettre tous les jours qu&rsquo;\u00e0 une montre sportive. En planche \u00e0 voile, je pense que je serai oblig\u00e9 de la mettre sous la manche de ma combinaison histoire de la prot\u00e9ger contre les chocs inh\u00e9rents \u00e0 toute pratique sportive. En revanche elle pr\u00e9sente le gros avantage de disposer d&rsquo;un SDK qui permet de personnaliser l&rsquo;affichage, de cr\u00e9er ses widgets et ses champs de donn\u00e9es. Une pr\u00e9sentation de ce SDK est visible <a href=\"https:\/\/developer.garmin.com\/connect-iq\/overview\/\">ici<\/a> (en anglais).<\/p>\n\n\n\n<!--more-->\n\n\n\n<p> Le SDK repose sur l&rsquo;environnement de d\u00e9veloppement <strong>Eclipse<\/strong> qu&rsquo;on installera tr\u00e8s simplement sur Mageia en tapant<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>urpmi eclipse<\/code><\/pre>\n\n\n\n<p>On installe d&rsquo;abord le plugin Connect IQ dans <strong>Eclipse<\/strong>. On lance d&rsquo;abord <strong>Eclipse<\/strong> et on r\u00e9alise les op\u00e9rations suivantes :<\/p>\n\n\n\n<ul class=\"wp-block-list\"><li>dans le menu <strong>Help<\/strong>, on clique sur <strong>Choose Install New Software<\/strong><\/li><li>on clique sur le bouton <strong>Add<\/strong><\/li><li>on rajoute l&rsquo;URL <strong>https:\/\/developer.garmin.com\/downloads\/connect-iq\/eclipse<\/strong> dans le champ <strong>Location<\/strong> et on clique sur <strong>Add<\/strong><\/li><li>on coche la case devant <strong>Connect IQ <\/strong>puis on clique sur <strong>Next<\/strong><\/li><\/ul>\n\n\n\n<figure class=\"wp-block-image size-large\"><img data-recalc-dims=\"1\" loading=\"lazy\" decoding=\"async\" width=\"474\" height=\"379\" src=\"https:\/\/i0.wp.com\/olivier.hoarau.org\/wp-content\/uploads\/eclipse-connectiq.jpg?resize=474%2C379&#038;ssl=1\" alt=\"\" class=\"wp-image-4084\" srcset=\"https:\/\/i0.wp.com\/olivier.hoarau.org\/wp-content\/uploads\/eclipse-connectiq.jpg?w=941&amp;ssl=1 941w, https:\/\/i0.wp.com\/olivier.hoarau.org\/wp-content\/uploads\/eclipse-connectiq.jpg?resize=300%2C240&amp;ssl=1 300w, https:\/\/i0.wp.com\/olivier.hoarau.org\/wp-content\/uploads\/eclipse-connectiq.jpg?resize=768%2C615&amp;ssl=1 768w\" sizes=\"auto, (max-width: 474px) 100vw, 474px\" \/><\/figure>\n\n\n\n<ul class=\"wp-block-list\"><li>on accepte la licence et on clique sur <strong>Finish<\/strong><\/li><li>le plugin Connect IQ s&rsquo;installe et on confirme le reboot de l&rsquo;application quand la fen\u00eatre popup nous le demande<\/li><\/ul>\n\n\n\n<p>Un menu <strong>Connect IQ <\/strong>fait son apparition dans la barre de menu.<\/p>\n\n\n\n<figure class=\"wp-block-image size-large\"><img data-recalc-dims=\"1\" loading=\"lazy\" decoding=\"async\" width=\"474\" height=\"354\" src=\"https:\/\/i0.wp.com\/olivier.hoarau.org\/wp-content\/uploads\/eclipse-connectiq2.jpg?resize=474%2C354&#038;ssl=1\" alt=\"\" class=\"wp-image-4085\" srcset=\"https:\/\/i0.wp.com\/olivier.hoarau.org\/wp-content\/uploads\/eclipse-connectiq2.jpg?w=1022&amp;ssl=1 1022w, https:\/\/i0.wp.com\/olivier.hoarau.org\/wp-content\/uploads\/eclipse-connectiq2.jpg?resize=300%2C224&amp;ssl=1 300w, https:\/\/i0.wp.com\/olivier.hoarau.org\/wp-content\/uploads\/eclipse-connectiq2.jpg?resize=768%2C573&amp;ssl=1 768w, https:\/\/i0.wp.com\/olivier.hoarau.org\/wp-content\/uploads\/eclipse-connectiq2.jpg?w=948&amp;ssl=1 948w\" sizes=\"auto, (max-width: 474px) 100vw, 474px\" \/><\/figure>\n\n\n\n<p> Passons maintenant \u00e0 l&rsquo;installation du SDK, on d\u00e9roule les actions suivantes :<\/p>\n\n\n\n<ul class=\"wp-block-list\"><li>dans le menu <strong>Connect IQ<\/strong>, on clique <strong>Open SDK Manager<\/strong><\/li><li>on choisit un r\u00e9pertoire pour sauvegarder les fichiers du SDK<\/li><li>les diff\u00e9rentes versions du SDK s&rsquo;affichent et on clique sur le bouton <strong>Download<\/strong> de la version la plus r\u00e9cente, dans le cas pr\u00e9sent la version 3.1.9<\/li><\/ul>\n\n\n\n<figure class=\"wp-block-image size-large\"><img data-recalc-dims=\"1\" loading=\"lazy\" decoding=\"async\" width=\"474\" height=\"346\" src=\"https:\/\/i0.wp.com\/olivier.hoarau.org\/wp-content\/uploads\/eclipse-connectiq3.jpg?resize=474%2C346&#038;ssl=1\" alt=\"\" class=\"wp-image-4086\" srcset=\"https:\/\/i0.wp.com\/olivier.hoarau.org\/wp-content\/uploads\/eclipse-connectiq3.jpg?w=612&amp;ssl=1 612w, https:\/\/i0.wp.com\/olivier.hoarau.org\/wp-content\/uploads\/eclipse-connectiq3.jpg?resize=300%2C219&amp;ssl=1 300w\" sizes=\"auto, (max-width: 474px) 100vw, 474px\" \/><\/figure>\n\n\n\n<ul class=\"wp-block-list\"><li>on valide la licence en cliquant sur <strong>Agree<\/strong><\/li><li>une fois que le t\u00e9l\u00e9chargement du SDK est termin\u00e9, on clique sur <strong>Yes<\/strong> quand on nous demande d&rsquo;utiliser le SDK nouvellement t\u00e9l\u00e9charg\u00e9 comme le SDK actif par d\u00e9faut<\/li><li>on peut alors fermer la fen\u00eatre SDK Manager qui reste accessible via les pr\u00e9f\u00e9rences d&rsquo;<strong>Eclipse<\/strong> <\/li><\/ul>\n\n\n\n<p>Maintenant il y a deux petites manips \u00e0 faire pour configurer le SDK, il faut notamment veiller \u00e0 ce que le chemin au SDK soit bien d\u00e9fini dans les pr\u00e9f\u00e9rences dans le champ <strong>SDK Root Directory<\/strong>.<\/p>\n\n\n\n<figure class=\"wp-block-image size-large\"><img data-recalc-dims=\"1\" loading=\"lazy\" decoding=\"async\" width=\"474\" height=\"235\" src=\"https:\/\/i0.wp.com\/olivier.hoarau.org\/wp-content\/uploads\/eclipse-connectiq-pref.jpg?resize=474%2C235&#038;ssl=1\" alt=\"\" class=\"wp-image-4087\" srcset=\"https:\/\/i0.wp.com\/olivier.hoarau.org\/wp-content\/uploads\/eclipse-connectiq-pref.jpg?resize=1024%2C508&amp;ssl=1 1024w, https:\/\/i0.wp.com\/olivier.hoarau.org\/wp-content\/uploads\/eclipse-connectiq-pref.jpg?resize=300%2C149&amp;ssl=1 300w, https:\/\/i0.wp.com\/olivier.hoarau.org\/wp-content\/uploads\/eclipse-connectiq-pref.jpg?resize=768%2C381&amp;ssl=1 768w, https:\/\/i0.wp.com\/olivier.hoarau.org\/wp-content\/uploads\/eclipse-connectiq-pref.jpg?w=1106&amp;ssl=1 1106w, https:\/\/i0.wp.com\/olivier.hoarau.org\/wp-content\/uploads\/eclipse-connectiq-pref.jpg?w=948&amp;ssl=1 948w\" sizes=\"auto, (max-width: 474px) 100vw, 474px\" \/><\/figure>\n\n\n\n<p>Il faut \u00e9galement cr\u00e9er une cl\u00e9 utilisateur \u00e0 partir des pr\u00e9f\u00e9rences en choisissant l&#8217;emplacement puis en cliquant sur le bouton <strong>Generate<\/strong>.<\/p>\n\n\n\n<figure class=\"wp-block-image size-large\"><img data-recalc-dims=\"1\" loading=\"lazy\" decoding=\"async\" width=\"474\" height=\"235\" src=\"https:\/\/i0.wp.com\/olivier.hoarau.org\/wp-content\/uploads\/eclipse-connectiq-pref2.jpg?resize=474%2C235&#038;ssl=1\" alt=\"\" class=\"wp-image-4088\" srcset=\"https:\/\/i0.wp.com\/olivier.hoarau.org\/wp-content\/uploads\/eclipse-connectiq-pref2.jpg?resize=1024%2C508&amp;ssl=1 1024w, https:\/\/i0.wp.com\/olivier.hoarau.org\/wp-content\/uploads\/eclipse-connectiq-pref2.jpg?resize=300%2C149&amp;ssl=1 300w, https:\/\/i0.wp.com\/olivier.hoarau.org\/wp-content\/uploads\/eclipse-connectiq-pref2.jpg?resize=768%2C381&amp;ssl=1 768w, https:\/\/i0.wp.com\/olivier.hoarau.org\/wp-content\/uploads\/eclipse-connectiq-pref2.jpg?w=1106&amp;ssl=1 1106w, https:\/\/i0.wp.com\/olivier.hoarau.org\/wp-content\/uploads\/eclipse-connectiq-pref2.jpg?w=948&amp;ssl=1 948w\" sizes=\"auto, (max-width: 474px) 100vw, 474px\" \/><\/figure>\n\n\n\n<p>Malheureusement le plugin et le SDK Connect IQ sont bas\u00e9s sur des biblioth\u00e8ques relativement anciennes ce qui pose probl\u00e8me sur des distributions r\u00e9centes de linux et en particulier pour ma Mageia 7.1. Du coup j&rsquo;ai d\u00fb installer (dans l&rsquo;ordre) les packages<strong> icu58-data-58.2-3.2.mga6<\/strong>,   <strong>lib64icu58-58.2-3.2.mga6<\/strong>, <strong>lib64enchant1<\/strong> et <strong>lib64geoclue0<\/strong>. Ensuite j&rsquo;ai tap\u00e9 un<strong> rpm -ivh &#8211;nodeps * <\/strong>dans un r\u00e9pertoire contenant les packages<strong> lib64javascriptcoregtk1.0_0-2.4.10-3.mga6<\/strong>, <strong>lib64webkitgtk1.0_0-2.4.10-3.mga6 <\/strong>et<strong> webkit1.0-2.4.10-3.mga6<\/strong>. J&rsquo;ai r\u00e9cup\u00e9r\u00e9 les packages de la Mageia 6 sur le site <a href=\"http:\/\/fr.rpmfind.net\/\">http:\/\/fr.rpmfind.net\/<\/a>.<\/p>\n\n\n\n<p>On va cr\u00e9er maintenant notre premier projet <strong>Hello world <\/strong>! On cr\u00e9e le projet en cliquant sur <strong>File->New->Project <\/strong>on choisira <strong>Connect IQ Project<\/strong>.<\/p>\n\n\n\n<figure class=\"wp-block-image size-large\"><img data-recalc-dims=\"1\" loading=\"lazy\" decoding=\"async\" width=\"474\" height=\"384\" src=\"https:\/\/i0.wp.com\/olivier.hoarau.org\/wp-content\/uploads\/create-project.jpg?resize=474%2C384&#038;ssl=1\" alt=\"\" class=\"wp-image-4089\" srcset=\"https:\/\/i0.wp.com\/olivier.hoarau.org\/wp-content\/uploads\/create-project.jpg?w=611&amp;ssl=1 611w, https:\/\/i0.wp.com\/olivier.hoarau.org\/wp-content\/uploads\/create-project.jpg?resize=300%2C243&amp;ssl=1 300w\" sizes=\"auto, (max-width: 474px) 100vw, 474px\" \/><\/figure>\n\n\n\n<p>A ce stade on va nous demander quel type d&rsquo;application on veut cr\u00e9er, on a le choix entre :<\/p>\n\n\n\n<ul class=\"wp-block-list\"><li><strong>Audio Content Provider Apps<\/strong> : application pour g\u00e9rer les fournisseurs de contenu audio et personnaliser \u00ab\u00a0l&rsquo;exp\u00e9rience\u00a0\u00bb audio<\/li><li><strong>Data Fields<\/strong> : application pour personnaliser les champs de donn\u00e9es<\/li><li><strong>Devices App<\/strong> : application  qui acc\u00e8de aux senseurs de la montre et qui permet de faire des traitements personnalis\u00e9s, de se connecter \u00e0 des services web et d&rsquo;utiliser les interfaces de connexion<\/li><li><strong>Widget<\/strong> : ce sont des applications fournissant une fonctionnalit\u00e9 particuli\u00e8re qui sont accessibles \u00e0 partir du menu widget de la montre<\/li><li><strong>Watch face<\/strong> : personnalisation de l&rsquo;affichage de la montre<\/li><\/ul>\n\n\n\n<p>Je choisis une personnalisation de l&rsquo;affichage de la montre, j&rsquo;indique le num\u00e9ro de version de mon programme et la version minimum du SDK (je laisse la version par d\u00e9faut).<\/p>\n\n\n\n<figure class=\"wp-block-image size-large\"><img data-recalc-dims=\"1\" loading=\"lazy\" decoding=\"async\" width=\"474\" height=\"253\" src=\"https:\/\/i0.wp.com\/olivier.hoarau.org\/wp-content\/uploads\/create-project2.jpg?resize=474%2C253&#038;ssl=1\" alt=\"\" class=\"wp-image-4090\" srcset=\"https:\/\/i0.wp.com\/olivier.hoarau.org\/wp-content\/uploads\/create-project2.jpg?w=926&amp;ssl=1 926w, https:\/\/i0.wp.com\/olivier.hoarau.org\/wp-content\/uploads\/create-project2.jpg?resize=300%2C160&amp;ssl=1 300w, https:\/\/i0.wp.com\/olivier.hoarau.org\/wp-content\/uploads\/create-project2.jpg?resize=768%2C411&amp;ssl=1 768w\" sizes=\"auto, (max-width: 474px) 100vw, 474px\" \/><\/figure>\n\n\n\n<p>je choisis alors la montre cible, attention si vous avez indiqu\u00e9 pr\u00e9c\u00e9demment une version trop r\u00e9cente du SDK  vous risquez de ne pas avoir acc\u00e8s \u00e0 tous les types de montre.<\/p>\n\n\n\n<figure class=\"wp-block-image size-large\"><img data-recalc-dims=\"1\" loading=\"lazy\" decoding=\"async\" width=\"474\" height=\"253\" src=\"https:\/\/i0.wp.com\/olivier.hoarau.org\/wp-content\/uploads\/create-project3.jpg?resize=474%2C253&#038;ssl=1\" alt=\"\" class=\"wp-image-4091\" srcset=\"https:\/\/i0.wp.com\/olivier.hoarau.org\/wp-content\/uploads\/create-project3.jpg?w=926&amp;ssl=1 926w, https:\/\/i0.wp.com\/olivier.hoarau.org\/wp-content\/uploads\/create-project3.jpg?resize=300%2C160&amp;ssl=1 300w, https:\/\/i0.wp.com\/olivier.hoarau.org\/wp-content\/uploads\/create-project3.jpg?resize=768%2C411&amp;ssl=1 768w\" sizes=\"auto, (max-width: 474px) 100vw, 474px\" \/><\/figure>\n\n\n\n<p>On s\u00e9lectionne ensuite les permissions requises pour l&rsquo;utilisation de l&rsquo;application.<\/p>\n\n\n\n<figure class=\"wp-block-image size-large\"><img data-recalc-dims=\"1\" loading=\"lazy\" decoding=\"async\" width=\"474\" height=\"253\" src=\"https:\/\/i0.wp.com\/olivier.hoarau.org\/wp-content\/uploads\/create-project4.jpg?resize=474%2C253&#038;ssl=1\" alt=\"\" class=\"wp-image-4092\" srcset=\"https:\/\/i0.wp.com\/olivier.hoarau.org\/wp-content\/uploads\/create-project4.jpg?w=926&amp;ssl=1 926w, https:\/\/i0.wp.com\/olivier.hoarau.org\/wp-content\/uploads\/create-project4.jpg?resize=300%2C160&amp;ssl=1 300w, https:\/\/i0.wp.com\/olivier.hoarau.org\/wp-content\/uploads\/create-project4.jpg?resize=768%2C411&amp;ssl=1 768w\" sizes=\"auto, (max-width: 474px) 100vw, 474px\" \/><\/figure>\n\n\n\n<p>Le projet par d\u00e9faut s&rsquo;affiche alors dans <strong>Eclipse<\/strong> avec un canevas de fichier source, le d\u00e9tail de l&rsquo;API peut \u00eatre trouv\u00e9 <a href=\"https:\/\/developer.garmin.com\/connect-iq\/api-docs\/\">l\u00e0<\/a> et un forum de discussion par <a href=\"https:\/\/forums.garmin.com\/developer\/connect-iq\/\">ici<\/a>.<\/p>\n\n\n\n<figure class=\"wp-block-image size-large\"><img data-recalc-dims=\"1\" loading=\"lazy\" decoding=\"async\" width=\"474\" height=\"387\" src=\"https:\/\/i0.wp.com\/olivier.hoarau.org\/wp-content\/uploads\/eclipse-connectiq-helloworld.jpg?resize=474%2C387&#038;ssl=1\" alt=\"\" class=\"wp-image-4093\" srcset=\"https:\/\/i0.wp.com\/olivier.hoarau.org\/wp-content\/uploads\/eclipse-connectiq-helloworld.jpg?resize=1024%2C835&amp;ssl=1 1024w, https:\/\/i0.wp.com\/olivier.hoarau.org\/wp-content\/uploads\/eclipse-connectiq-helloworld.jpg?resize=300%2C245&amp;ssl=1 300w, https:\/\/i0.wp.com\/olivier.hoarau.org\/wp-content\/uploads\/eclipse-connectiq-helloworld.jpg?resize=768%2C626&amp;ssl=1 768w, https:\/\/i0.wp.com\/olivier.hoarau.org\/wp-content\/uploads\/eclipse-connectiq-helloworld.jpg?w=1197&amp;ssl=1 1197w, https:\/\/i0.wp.com\/olivier.hoarau.org\/wp-content\/uploads\/eclipse-connectiq-helloworld.jpg?w=948&amp;ssl=1 948w\" sizes=\"auto, (max-width: 474px) 100vw, 474px\" \/><\/figure>\n\n\n\n<p>En l&rsquo;\u00e9tat sans modifier le code, on peut g\u00e9n\u00e9rer le code en cliquant sur le bouton<strong> Run As&#8230;  <\/strong>on choisit<strong> Connect IQ App<\/strong>.<\/p>\n\n\n\n<figure class=\"wp-block-image size-large\"><img data-recalc-dims=\"1\" loading=\"lazy\" decoding=\"async\" width=\"474\" height=\"387\" src=\"https:\/\/i0.wp.com\/olivier.hoarau.org\/wp-content\/uploads\/eclipse-connectiq-run.jpg?resize=474%2C387&#038;ssl=1\" alt=\"\" class=\"wp-image-4094\" srcset=\"https:\/\/i0.wp.com\/olivier.hoarau.org\/wp-content\/uploads\/eclipse-connectiq-run.jpg?resize=1024%2C835&amp;ssl=1 1024w, https:\/\/i0.wp.com\/olivier.hoarau.org\/wp-content\/uploads\/eclipse-connectiq-run.jpg?resize=300%2C245&amp;ssl=1 300w, https:\/\/i0.wp.com\/olivier.hoarau.org\/wp-content\/uploads\/eclipse-connectiq-run.jpg?resize=768%2C626&amp;ssl=1 768w, https:\/\/i0.wp.com\/olivier.hoarau.org\/wp-content\/uploads\/eclipse-connectiq-run.jpg?w=1197&amp;ssl=1 1197w, https:\/\/i0.wp.com\/olivier.hoarau.org\/wp-content\/uploads\/eclipse-connectiq-run.jpg?w=948&amp;ssl=1 948w\" sizes=\"auto, (max-width: 474px) 100vw, 474px\" \/><\/figure>\n\n\n\n<p>Le simulateur se lance alors et une fen\u00eatre popup avec la montre s&rsquo;affiche avec l&rsquo;\u00e9cran personnalis\u00e9 qui est basique dans le cas pr\u00e9sent. Si vous avez une erreur de connexion au simulateur sans que cette fen\u00eatre s&rsquo;affiche, \u00e7a vient d&rsquo;un probl\u00e8me de version de biblioth\u00e8ques (voir plus haut).<\/p>\n\n\n\n<figure class=\"wp-block-image size-large\"><img data-recalc-dims=\"1\" loading=\"lazy\" decoding=\"async\" width=\"474\" height=\"387\" src=\"https:\/\/i0.wp.com\/olivier.hoarau.org\/wp-content\/uploads\/eclipse-connectiq-run2.jpg?resize=474%2C387&#038;ssl=1\" alt=\"\" class=\"wp-image-4095\" srcset=\"https:\/\/i0.wp.com\/olivier.hoarau.org\/wp-content\/uploads\/eclipse-connectiq-run2.jpg?resize=1024%2C835&amp;ssl=1 1024w, https:\/\/i0.wp.com\/olivier.hoarau.org\/wp-content\/uploads\/eclipse-connectiq-run2.jpg?resize=300%2C245&amp;ssl=1 300w, https:\/\/i0.wp.com\/olivier.hoarau.org\/wp-content\/uploads\/eclipse-connectiq-run2.jpg?resize=768%2C626&amp;ssl=1 768w, https:\/\/i0.wp.com\/olivier.hoarau.org\/wp-content\/uploads\/eclipse-connectiq-run2.jpg?w=1197&amp;ssl=1 1197w, https:\/\/i0.wp.com\/olivier.hoarau.org\/wp-content\/uploads\/eclipse-connectiq-run2.jpg?w=948&amp;ssl=1 948w\" sizes=\"auto, (max-width: 474px) 100vw, 474px\" \/><\/figure>\n\n\n\n<p>Allons maintenant plus loin et t\u00e9l\u00e9chargeons cet affichage personnalis\u00e9 directement sur la montre physique. On va d&rsquo;abord cr\u00e9er l&rsquo;image en cliquant sur <strong>Connect IQ -> Build for Device Wizard&#8230;<\/strong> je choisis mon projet, le type de montre, je laisse la version du SDK, je pointe vers la cl\u00e9 d\u00e9veloppeur (voir plus haut) et j&rsquo;indique un chemin pour sauvegarder l&rsquo;image.<\/p>\n\n\n\n<figure class=\"wp-block-image size-large\"><img data-recalc-dims=\"1\" loading=\"lazy\" decoding=\"async\" width=\"474\" height=\"476\" src=\"https:\/\/i0.wp.com\/olivier.hoarau.org\/wp-content\/uploads\/eclipse-connectiq-build.jpg?resize=474%2C476&#038;ssl=1\" alt=\"\" class=\"wp-image-4096\" srcset=\"https:\/\/i0.wp.com\/olivier.hoarau.org\/wp-content\/uploads\/eclipse-connectiq-build.jpg?w=611&amp;ssl=1 611w, https:\/\/i0.wp.com\/olivier.hoarau.org\/wp-content\/uploads\/eclipse-connectiq-build.jpg?resize=300%2C300&amp;ssl=1 300w, https:\/\/i0.wp.com\/olivier.hoarau.org\/wp-content\/uploads\/eclipse-connectiq-build.jpg?resize=150%2C150&amp;ssl=1 150w\" sizes=\"auto, (max-width: 474px) 100vw, 474px\" \/><\/figure>\n\n\n\n<p>Maintenant je branche physiquement ma montre au port USB, je d\u00e9place mon image<strong> hello-world.prg <\/strong>dans le r\u00e9pertoire <strong>GARMIN\/APPS<\/strong> je d\u00e9monte le tout.<\/p>\n\n\n\n<figure class=\"wp-block-image size-large\"><img data-recalc-dims=\"1\" loading=\"lazy\" decoding=\"async\" width=\"474\" height=\"348\" src=\"https:\/\/i0.wp.com\/olivier.hoarau.org\/wp-content\/uploads\/eclipse-connectiq-build2.jpg?resize=474%2C348&#038;ssl=1\" alt=\"\" class=\"wp-image-4097\" srcset=\"https:\/\/i0.wp.com\/olivier.hoarau.org\/wp-content\/uploads\/eclipse-connectiq-build2.jpg?w=1009&amp;ssl=1 1009w, https:\/\/i0.wp.com\/olivier.hoarau.org\/wp-content\/uploads\/eclipse-connectiq-build2.jpg?resize=300%2C220&amp;ssl=1 300w, https:\/\/i0.wp.com\/olivier.hoarau.org\/wp-content\/uploads\/eclipse-connectiq-build2.jpg?resize=768%2C564&amp;ssl=1 768w, https:\/\/i0.wp.com\/olivier.hoarau.org\/wp-content\/uploads\/eclipse-connectiq-build2.jpg?w=948&amp;ssl=1 948w\" sizes=\"auto, (max-width: 474px) 100vw, 474px\" \/><\/figure>\n\n\n\n<p>et voil\u00e0 ce que \u00e7a donne sur la Garmin, pour revenir en arri\u00e8re, pas de panique ! Il suffit de rebrancher le Garmin sous Linux et de supprimer le fichier <strong>hello-world.prg<\/strong>.<\/p>\n\n\n\n<figure class=\"wp-block-image size-large\"><img data-recalc-dims=\"1\" loading=\"lazy\" decoding=\"async\" width=\"474\" height=\"316\" src=\"https:\/\/i0.wp.com\/olivier.hoarau.org\/wp-content\/uploads\/forerunner-735xt.jpg?resize=474%2C316&#038;ssl=1\" alt=\"\" class=\"wp-image-4098\" srcset=\"https:\/\/i0.wp.com\/olivier.hoarau.org\/wp-content\/uploads\/forerunner-735xt.jpg?w=1000&amp;ssl=1 1000w, https:\/\/i0.wp.com\/olivier.hoarau.org\/wp-content\/uploads\/forerunner-735xt.jpg?resize=300%2C200&amp;ssl=1 300w, https:\/\/i0.wp.com\/olivier.hoarau.org\/wp-content\/uploads\/forerunner-735xt.jpg?resize=768%2C512&amp;ssl=1 768w, https:\/\/i0.wp.com\/olivier.hoarau.org\/wp-content\/uploads\/forerunner-735xt.jpg?w=948&amp;ssl=1 948w\" sizes=\"auto, (max-width: 474px) 100vw, 474px\" \/><figcaption>https:\/\/olivier.hoarau.org<\/figcaption><\/figure>\n\n\n\n<p>Voil\u00e0, voil\u00e0, maintenant y a plus qu&rsquo;\u00e0 me remettre \u00e0 la programmation, j&rsquo;envisage de rajouter notamment l&rsquo;affichage de la mar\u00e9e que je r\u00e9cup\u00e8rerai par bluetooth. Je compte bien \u00e9videmment partager le tout.<\/p>\n","protected":false},"excerpt":{"rendered":"<p>J&rsquo;utilise depuis des ann\u00e9es une montre GPS, elle me sert en planche \u00e0 voile (voir par ici) ou en randonn\u00e9e (voir par l\u00e0), j&rsquo;ai fait le choix de Garmin avec des montres sp\u00e9cialis\u00e9es pour le triathlon qui sont relativement robustes et surtout bien \u00e9tanches. J&rsquo;ai commenc\u00e9 avec le mod\u00e8le Forerunner 205, que j&rsquo;ai perdu lors &hellip; <a href=\"https:\/\/olivier.hoarau.org\/?p=4083\" class=\"more-link\">Continuer la lecture de <span class=\"screen-reader-text\">Montre GPS Garmin Forerunner 735XT et son sdk Connect IQ<\/span>  <span class=\"meta-nav\">&rarr;<\/span><\/a><\/p>\n","protected":false},"author":4,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"ngg_post_thumbnail":0,"jetpack_post_was_ever_published":false,"_jetpack_newsletter_access":"","_jetpack_dont_email_post_to_subs":false,"_jetpack_newsletter_tier_id":0,"_jetpack_memberships_contains_paywalled_content":false,"_jetpack_memberships_contains_paid_content":false,"footnotes":"","_share_on_mastodon":"0"},"categories":[5,6],"tags":[73,72,74],"class_list":["post-4083","post","type-post","status-publish","format-standard","hentry","category-logiciels-libres","category-ma-vie","tag-forerunner","tag-garmin","tag-gps"],"share_on_mastodon":{"url":"","error":""},"jetpack_featured_media_url":"","jetpack_sharing_enabled":true,"jetpack_shortlink":"https:\/\/wp.me\/peOjJ-13R","jetpack_likes_enabled":true,"_links":{"self":[{"href":"https:\/\/olivier.hoarau.org\/index.php?rest_route=\/wp\/v2\/posts\/4083","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/olivier.hoarau.org\/index.php?rest_route=\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/olivier.hoarau.org\/index.php?rest_route=\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/olivier.hoarau.org\/index.php?rest_route=\/wp\/v2\/users\/4"}],"replies":[{"embeddable":true,"href":"https:\/\/olivier.hoarau.org\/index.php?rest_route=%2Fwp%2Fv2%2Fcomments&post=4083"}],"version-history":[{"count":1,"href":"https:\/\/olivier.hoarau.org\/index.php?rest_route=\/wp\/v2\/posts\/4083\/revisions"}],"predecessor-version":[{"id":4099,"href":"https:\/\/olivier.hoarau.org\/index.php?rest_route=\/wp\/v2\/posts\/4083\/revisions\/4099"}],"wp:attachment":[{"href":"https:\/\/olivier.hoarau.org\/index.php?rest_route=%2Fwp%2Fv2%2Fmedia&parent=4083"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/olivier.hoarau.org\/index.php?rest_route=%2Fwp%2Fv2%2Fcategories&post=4083"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/olivier.hoarau.org\/index.php?rest_route=%2Fwp%2Fv2%2Ftags&post=4083"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}