Publié le 27 février 2017 - par

Utilisation simultanée de PiFace 2 et SenseHAT sur un Raspberry Pi

Proposé par Christian, cet article a la particularité de mettre en œuvre simultanément une carte SenseHAT et une PiFace 2 normalement non utilisables ensemble.

Deux cartes HAT pour un Raspberry Pi

Un peu d’histoire…

Christian avait déjà réalisé un boitier avec batterie. L’objectif était de prendre des Photos/Vidéos en autonome. Mais il fallait une liaison RJ45 et VNC pour le commander à distance avec un PC…
Il souhaitait utiliser la Piface2 pour pouvoir également commander son timelapse en local.
Mais là, il fallait un affichage.

Dans un premier temps, c’est la carte Piface Control & Display (ci-dessus) qui a été testée. L’afficheur fonctionne bien mais les boutons ne sont pas vraiment bons et en plus la carte est difficilement intégrable dans un boitier avec les boutons sur le côté…
Bref… c’est bien pour de la bidouille sur table !

Les premiers ennuis de connectique commencent aussi, car la Piface ne ressort pas les pinoches du GPIO. C’est de chez KUBII que vient la solution de la carte PiFace SHIM, soudée sur le Raspberry Pi. Elle permet de déporter le GPIO sur le côté et de brancher une nappe M/F 40 points.

La SenseHat

Ce n’est que plus tard qu’est intervenue la SenseHAT (suite à un article du blog) qui a donné à Christian l’envie d’utiliser la matrice de LED pour l’affichage.
Un petit script pour apprendre à l’utiliser seule fonctionnait parfaitement. Mais quand on rajoute la Piface….. rien ne va plus !!
En effet, la SenseHAT utilise l’I2C pour les capteurs mais aussi le SPI (comme la Piface) pour pouvoir charger son Firmware.

Avec Christian, nous avons alors eu de multiples échanges (très intéressants) par mail sur la compatibilité de la SenseHat qui utilise l’I2C et le SPI et qui posait problème avec la Piface 2… qui utilise également le SPI.

Ces échanges ont également impliqué Pinout.xyz qui donne les connexions d’un grand nombre de cartes d’extension pour le Raspberry Pi. J’ai également posé la question sur le Gihub de la PiFace 2…  La version officielle c’est : »Circulez, y’a rien à voir !« 

En fait la norme HAT prévoir qu’une seule carte peut être utilisée à la fois. Vous avez besoin d’en utiliser deux ? Pas de bol ! c’est pas prévu 🙁

Du coup Christian s’est replongé dans son script.
On peut commander la HAT avec des boutons sur les entrées de la Piface en interruption. Le seul défaut qui persiste, est que chaque action sur un bouton allume plein pot la matrice avec l’arc-en-ciel de démarrage… à suivre pour cette partie

Synoptique de la réalisation

Synoptique du Timelapse

Cliquer pour agrandir.

Vous avez ci-dessus le synoptique complet du timelapse projeté par Christian. Au centre le Raspberry Pi 3 équipé de la carte PiFace 2. A gauche la SenseHAT reliée par une nappe au GPIO, puis la batterie destinée à alimenter le tout, avec une capacité de 10400 mAH.

On peut alimenter le PI soit par la batterie, soit par le chargeur USB extérieur. Bien sur en position ‘extérieur’, on peut recharger en même temps. Christian a essayé de monter un OU à diode entre la batterie et le chargeur externe, mais même avec des diodes schotky, la chute de tension est trop forte et le Raspberry Pi signale un défaut de sous-alimentation.

A droite on trouve la carte adaptatrice Tindie qui permet de relier la caméra via un câble HDMI, la PiCam distante ainsi que le flash équipé de 4 LED, alimenté par un des relais de la PiFace 2.

Les différents composants du timelapse de Christian

Sur cette photo réalisée lors des tests, les composants du montage sont identifiés.

Montage dans le boîtier

Début du montage du timelapse : montage du Raspberry Pi et de l'adaptateur HDMI

Montage du Raspberry Pi dans le boîtier. Raccordement caméra.

Christian a choisi d’intégrer sa réalisation dans un solide boîtier (Conrad Boitier 150x200x110 ref 520454). Il nous présente ici les étapes de sa réalisation.

Mise en place de la batterie et de la carte PiFace pour le timelapse

Mise en place de la carte PiFace 2 et de la batterie destinée à alimenter le montage.

Début de câblage du timelapse

Connexion de la caméra par câble HDMI, câblage des interrupteurs.

Christian a monté la PiCam dans un boitier qu’il avait en stock. La liaison se fait avec un câble HDMI de 1.5m (ça fonctionne aussi avec 2.5m) via un adaptateur HDMI https://www.tindie.com/products/freto/pi-camera-hdmi-cable-extension/

Le câblage est terminé. Il ne reste qu’à ajouter la nappe pour relier la SenseHat.

Le timelapse prêt à être utilisé.L’ensemble pratiquement prêt à être utilisé. On voit sous le couvercle la carte SenseHAT à l’extrémité de la nappe connectée sur la PiFace SHIM.

Face avant du timelapseSur la face avant du boîtier, les 5 boutons poussoirs reliés aux entrées de la carte PiFace 2. En haut à droite le câble HDMI qui relie la PiCam au boîtier. Les bornes 2mm sont ici utilisées pour alimenter le flash mais on peut prévoir bien d’autres utilisations…

Face arrière du timelapseSur la face arrière les sorties de relais, le poussoir de RESET et les commutateurs pour l’alimentation.

Le timelapse vu de dessus. On aperçoit la matrice de LED de la SenseHATVue de dessus du boîtier fini. La SenseHAT est fixée sur la capot avec des entretoises nylon et reliée par une nappe M/F 40 Pts au GPIO. Les trous de la SenseHat ont été agrandis à 3mm sans problème. Les prises USB et réseau du Raspberry Pi sont accessibles sur le côté droit. La matrice de la SenseHAT utilisée pour l’affichage apparait dans une découpe de la face supérieure du boîtier.

Comment utiliser 2 cartes HAT

La carte PiFace SHIM

Carte PiFace SHIM avant montage

Christian a utilisé une carte PiFace SHIM (shim = cale, cale d’épaisseur) prévue pour étendre l’accès au GPIO du Raspberry Pi.

Carte PiFace SHIM avec le connecteur coudé montéUne fois le connecteur coudé soudé sur la carte SHIM, celle-ci vient se positionner sur les bornes du GPIO sur lesquelles on va les souder.

Principe d'utilisation de la carte PiFace SHIMOn peut alors mettre normalement en place une carte HAT sur le GPIO. Pour son projet, Christian a connecté la carte SenseHAT grâce à un câble plat relié via la carte SHIM. La carte PiFace 2 a été montée sur les broches d’origine du GPIO.

Soudez radin !

Soudure de la carte SHIM du timelapse : il faut éviter les remontées de soudure sur les broches du GPIO

Il faudra faire des soudures très fines sur la carte SHIM en évitant à tout prix les remontées de soudure sur les pinoches, sinon il deviendra impossible d’enficher la carte PiFace 2. Soyez donc « radin(e) » sur la soudure… Au pire prévoyez de la tresse à dessouder pour rattraper vos « bavures » 🙂

Montage simultané de la SenseHat et de la PiFace

La carte SenseHAT du timelapse est reliée au Raspberry Pi via un câble en nappeSur cette photo on a l’ensemble monté, le Raspberry Pi dessous, la carte SHIM soudée sur le GPIO avec sa nappe 40 fils qui emmène les ports GPIO à la SenseHAT, et enfin au dernier étage la carte PiFace 2 qui fournit les entrées/sorties au montage.

La caméra Pi

La caméra et le système d'éclairage du timelapseLa caméra Pi est protégée par un boîtier, fixé sur la barre verticale du support en bois. Elle est reliée au Raspberry Pi 3 par un câble HDMI au travers d’un adaptateur caméra <=> HDMI.

Le projecteur à LED est un éclairage de placard acheté chez LIDL 6€ ! Il suffit de souder 2 fils d’alimentation sur le support de pile pour le commander par une sortie de la Piface en 5v.

Conclusion

Merci Christian pour cette description de timelapse très bien illustrée qui donnera peut-être (certainement même 🙂 ) des idées au lecteurs du blog…

Vous pouvez télécharger le programme Python ainsi que son fichier de configuration.

Christian nous présentera sans doute la suite de cette réalisation et nous parlera du timelapse auquel cet ensemble devrait servir. Il a en particulier des scripts qui se lancent au démarrage du Raspberry Pi en fonction du bouton poussoir appuyé lors de la mise sous tension.

Vous trouverez la suite de cette aventure sur https://www.framboise314.fr/utilisation-simultanee-de-piface-2-sensehat-raspberry-pi-retour/

 

À propos François MOCQ

Électronicien d'origine, devenu informaticien, et passionné de nouvelles technologies, formateur en maintenance informatique puis en Réseau et Télécommunications. Dès son arrivée sur le marché, le potentiel offert par Raspberry Pi m’a enthousiasmé j'ai rapidement créé un blog dédié à ce nano-ordinateur (www.framboise314.fr) pour partager cette passion. Auteur de plusieurs livres sur le Raspberry Pi publiés aux Editions ENI.

9 réflexions au sujet de « Utilisation simultanée de PiFace 2 et SenseHAT sur un Raspberry Pi »

  1. Bernard

    Bonjour Francois

    Un beau montage pour un article bien illustré.

    Le boitier de Christian me fait penser à un Micral N ou un Altair 8800 avec ses boutons poussoirs du début des années 70, non pas 1870, 1970! 😉

    Répondre
    1. François MOCQ Auteur de l’article

      merci 🙂
      j’ai l’habitude de dire que j’ai commencé l’informatique en 71…
      maintenant je précise 1971 parce qu’un jour quelqu’un m’a demandé : « Avant Jésus-Christ ? » 😀

      Répondre
  2. Audouard

    Bonsoir François

    Je me demande si ce projet est transposable avec la carte camjam edukit (le robot), la carte Sensehat et le logiciel Scratch.

    Bye bye et longue vie à framboise 314

    Stéphane

    Répondre
    1. François MOCQ Auteur de l’article

      Bonsoir Stéphane
      Sans doute
      il reste encore ce problème de « reset » de la sensehat
      j ai tout ça en stock (le robot avec une carte B+, une sensehat et une piface)
      mais pas trop le temps de me lancer la dedans pour le moment
      cordialement
      François

      Répondre
  3. Benoit

    Bonjour,

    Je suis sur un projet d’enregistrement de donnée (accélération, vitesse, trajet) pour une voiture de course en utilisant un Rasberry Pi 3, une carte SenseHat et un GPS USB. Dans un second temps je souhaiterais acquérir aussi d’autres datas comme le régime moteur et le rapport engagé.

    Pour ce projet, le Raspberry ne serait pas directement accessible. De ce fait, je voudrais monter un mini tableau de bord avec des boutons et des LEDs.
    Etant plutôt novice en électronique, je me pose la question suivante : est-ce que je peux brancher des boutons et LEDs directement sur la carte SenseHat ou est-ce que je dois passer par une carte PiFace SHIM (comme vous le présenter dans cet article) ou utiliser un multiplexeur (http://www.52pi.com/en/raspberry-pi/64-original-raspberry-pi-2-model-bb-triple-gpio-multiplexing-expansion-board-multiplex-extend-module-multiplex-plate-.html) ou autre chose ?

    Merci d’avance
    Cordialement
    Benoit

    Répondre
    1. François MOCQ Auteur de l’article

      Bonjour Benoit
      l’un ou l’autre fera l’affaire
      Après c’est à vous de voir mécaniquement ce qui est le mieux pour votre implantation
      la PiFace Shim permet de monter la Sense HAT avec des entretoises et d’assurer un bon contact/maintien sur le RasPi
      Pour le multiplexeur j en suis moins sur
      Sur les bornes de la PiFace Shim vous pourrez souder vos fils de boutons, LED…
      sur https://fr.pinout.xyz/pinout/sense_hat# vous avez les broches utilisées pour la SenseHAT
      Attention à la protection de vos entrées et à la commande des LED. prévoyez une interface pour protéger le Raspberry Pi
      cordialement
      François

      Répondre
    2. CDBI30

      Bonsoir Benoit
      Je ne connaissais pas cette carte ni ce site
      Elle me donne des idées pour un futur boitier
      Mais il faudra relier les cartes additionnelles par une nappe 40 Pts car aucune carte ne se monte verticalement.
      Comme dit François, attention au GPIO
      Par sécurité, je préfère passer par la Piface2 pour mes Entrées/Sorties
      Christian

      Répondre
  4. Ping : Un lanceur IP pour le Raspberry Pi - Framboise 314, le Raspberry Pi à la sauce française....

  5. Ping : Un lanceur IP (version 2) et une sauvegarde pour le Raspberry Pi - Framboise 314, le Raspberry Pi à la sauce française....

Laisser un commentaire

Votre adresse e-mail ne sera pas publiée. Les champs obligatoires sont indiqués avec *

Complétez ce captcha SVP *

Ce site utilise Akismet pour réduire les indésirables. En savoir plus sur comment les données de vos commentaires sont utilisées.