Le Relais 2 x 5 V … dans l’IoT ou l’art de piloter en BLE les périphériques de la WaRP7 – Partie 2/2

3.3 Activation du driver Kernel

La partie device tree étant faite, il nous reste à activer le support du driver gpio-exporter au sein de notre image Kernel (zImage). Pour ce faire, nous passerons une fois de plus par l’environnement Yocto/OE, en invoquant la commande suivante :

Lire la suite

Le Relais 2 x 5 V … dans l’IoT ou l’art de piloter en BLE les périphériques de la WaRP7 – Partie 1/2

L’important choix de cartes intégrant des capteurs/actionneurs, en fait aujourd’hui, un choix difficile pour l’utilisateur final. C’est pour ces raisons que MikroElektronika a créé un standard : MikroBUS. Il facilite l’interaction entre microcontrôleur ou microprocesseur et les cartes d’extensions, appelées « add-ons », utilisant cette connectique. Cet article se propose d’explorer la partie MikroBUS d’un des tous derniers SBC (Single Board Computer) du marché : la WaRP7 (« WearAble Reference Platform »). On commencera dans un premier temps par une succincte présentation de la WaRP7 et d’une partie « board bring-up » (via Yocto/OE). Puis, viendra la partie MikroBUS qui sera mise en avant à travers un mini projet architecturé autour du Bluetooth Low Energy et du framework Qt5 pour Android tout en y intégrant une carte add-ons, carte qui se base sur le standard MikroBUS.

Le présent article s’inscrit dans la continuité des manipulations ayant permis la rédaction d’un article précédent paru dans le n°20 d’Open Silicium [1], les auteurs renverront vers celui-ci les lecteurs qui désirent avoir de plus amples connaissances sur la diversité que propose la cible utilisé dans ce numéro de Linux Magazine. Dans le premier article, il était question de découvrir la WaRP7 et ses capteurs au travers une application « IoT » minimaliste (récupération d’une température, la pression atmosphérique ainsi qu’une valeur représentant le rythme cardiaque), ceci en utilisant la connectivité Bluetooth et le framework Qt5, le tout basé sur une distribution Yocto/OE mis à disposition par les auteurs.

Lire la suite

Dissémination de données géoréférencées – qgis-server et OpenLayers – Partie 2/2

4. À la pointe de la technologie : OpenLayers 3

Dans la course aux fonctionnalités, nous ne cessons de casser ce qui marche pour mettre à jour les nouvelles fonctionnalités. Pourquoi donc casser ce bel exemple OpenLayers2 pour le remplacer par OpenLayers3 ? La déformation excessive des cartes aux latitudes élevées est un défaut bien connu de la projection de Mercator utilisée par défaut par tous les environnements cartographiques de la toile (projection de code 900913 – l’écriture leet de Google – puisque la norme choisie n’a pas été validée par l’instance qu’est l’EPSG). Étant conscients des déficiences de la projection de Mercator, nous voudrions pouvoir sélectionner un mode de projection localement tangent à la région considérée – à savoir Universal Transverse Mercator (UTM). Et nous en arrivons à l’excuse pour passer de OpenLayers 2 à 3 : la version actuelle d’OpenLayers ne permet pas la projection au vol des images, et impose donc une sortie déformée, particulièrement gênante lorsque nous nous éloignons de l’équateur.

Lire la suite

Dissémination de données géoréférencées – qgis-server et OpenLayers – Partie 1/2

Les données géoréférencées, générées par l’auteur ou distribuées par les agences telles que l’ESA (sentinels.copernicus.eu) ou l’USGS (earthexplorer.usgs.gov), sont disséminées au travers d’un service accessible par le Web selon les formats WFS ou WMTS. Ces données sont alors exploitables au travers de logiciels spécialisés tels que QGis, ou de l’API OpenLayers pour être intégrées dans des pages Web.

Tout possesseur de téléphone portable devient en mesure aujourd’hui de produire de la donnée géoréférencée, qu’il s’agisse de photographies numériques ou de traces de parcours pour les données brutes, ou des données issues d’informations géoréférencées acquises. Nous avons par exemple présenté au FOSS4G-fr [1] et dans ces pages [2] la génération de modèles de bâtiments par les photographies géoréférencées prises par téléphone, et leur intégration dans QGis sur fond de carte OpenStreetMaps (OSM).

Lire la suite

La préface du hors-série spécial application Android avancée !

La téléphonie mobile connaît un essor absolument incroyable. Qui aurait parié en 2005, au moment du rachat d’une startup du nom d’Android, que 10 ans après il serait possible d’avoir dans sa poche un smartphone à 6 processeurs ? Les smartphones actuels ont nettement dépassé le concept même de la téléphonie, la partie téléphonie n’est qu’un composant parmi d’autres, l’utilisation de nombreux capteurs a radicalement changé les développements logiciels. Pourquoi ce changement ? Tout d’abord, la simplification des API a permis à de nombreux développeurs d’intégrer des capteurs dans leur application alors qu’il n’y a encore pas si longtemps il fallait avoir des bagages en électronique pour mettre en œuvre de tels logiciels. Sous Android, les couches d’abstraction logicielle ont permis de s’affranchir de nombreuses difficultés de portage, ainsi une application fonctionne aussi bien sur une tablette que sur un smartphone. Avec ce principe, Google a fait table rase et a redistribué les cartes. Ce sérieux dépoussiérage a révélé de nouveaux concepts dans le domaine du logiciel embarqué lié à la téléphonie avec l’utilisation de nombreux capteurs : accéléromètre, gyromètre, GPS, capteur de luminosité, de pression, de proximité, NFC… D’autres concepts sont alors apparus avec les capteurs composites, mélange d’informatique et d’électronique. Nous sommes dans la virtualisation des capteurs électroniques. Le résultat est époustouflant ! De nouvelles gammes de logiciels sont alors à portée de main, et le développeur peut encore exercer son imagination pour intégrer ces techniques dans des applications d’une diversité incroyable ! Lire la suite

Créez, publiez et monétisez votre application Android !

Ce nouveau guide de GNU/Linux Magazine vous propose de découvrir pas à pas comment créer, publier et monétiser votre application Android. À travers ses quatre parties, vous prendrez connaissance des étapes à suivre pour créer votre projet – ici, c’est un projet complet de développement d’une application de géocaching qui vous servira d’exemple -, apprendrez à manipuler les capteurs/périphériques de votre smartphone, à utiliser le Bluetooth et les SMS pour communiquer… Enfin, la dernière étape vous fournira les clés nécessaires pour publier et monétiser votre application sur le store Google Play. Ce nouveau hors-série vous attend en kiosque dès demain, mais aussi sur notre boutique en ligne ainsi que sur notre plateforme de lecture en ligne ConnectLire la suite

Compilation, installation et utilisation basique de vim 8 – Partie 2/2

2.2 Commandes du mode normal

Tout d’abord voyons quelques commandes que l’on peut utiliser directement dans ce mode : dd permet de couper une ligne et la place dans le tampon par défaut (D en majuscule permet de supprimer depuis le curseur jusqu’à la fin de la ligne). yy permet de copier une ligne et la place également dans le tampon par défaut. x permet de supprimer un caractère de la ligne (x ne supprimera pas au-delà d’une ligne même en lui indiquant un plus grand nombre de caractères). Lire la suite

Compilation, installation et utilisation basique de vim 8 – Partie 1/2

Vim, l’éditeur de fichiers âgé de 25 ans cette année, peut être utilisé comme un véritable IDE [1] spécialisé. Je vous propose de découvrir cet éditeur dans sa dernière version.

J’utilise Vim de manière très basique depuis une bonne quinzaine d’années essentiellement pour éditer des fichiers de configuration ou de petits scripts shells. Depuis quelques semaines, j’ai découvert la véritable nature de Vim et son microcosme d’options de configuration et de plugins. Je l’utilise maintenant également pour écrire mes programmes en Python ou en C en profitant de fonctionnalités généralement intégrées dans des IDE spécialisés tels Bluefish, Geany ou KDevelop par exemple (pour ne pas parler d’Emacs ;-)). Dans cet article je vous propose de compiler sa dernière version, de l’installer et d’utiliser ses fonctionnalités de base.

Lire la suite