Un radar tronçon pour circuit de voiture radioguidées

Ce projet a été réalisé pour le club de Mini-Z de Fontaine-lès-Dijon. L’idée était de concevoir un dispositif permettant de mesurer la vitesse des voitures dans la ligne droite. Le principe retenu est le suivant : 2 faisceaux infrarouges, séparés par une distance d, coupent la piste. Lorsqu’une voiture les franchit, un microcontrôleur (PIC16F628A) mesure le temps s’écoulant entre la coupure des deux faisceaux, et connaissant la distance les séparant, calcule la vitesse de déplacement de la voiture, puis l’affiche, et éventuellement la transmet vers un ordinateur via une liaison série (USB et/ou Bluetooth):

Animation Fonctionnement

Une image qui vaut tout le paragraphe précédent 🙂

Vous trouverez le projet Kicad ( schéma et typon ), le programme du PIC, ainsi que le programme d’affichage pour PC sur le page GitLab du projet.

Voilà, tout est dit. Enfin presque …

Lire la suite

FTDIGate : Débricker les puces concernés ( et éviter de les rebricker )

Depuis la fin du mois d’octobre, de nombreux périphériques USB, ont soudainement cessés d’être reconnus par Windows, laissant présager l’imminence de l’annexion de la terre par une race d’Aliens très certainement dotés une technologie très avancé….

Illustration Aliens FTDI

Après une enquête approfondie, la piste des aliens est écartée

Même si les aliens sont définitivement hors de cause, l’explication derrière ce phénomène n’est guère plus glorieuse : la société FTDI, qui possède un monopole sur les circuits intégrés d’interface USB / série, a décidé de mettre à jour leurs pilotes, aussi bien sur leur site, que sur Windows Update. Jusque là, quoi de plus normal ? L’horreur, c’est que le nouveau pilote intègre une fonctionnalité cachée (il y a bien une toute petite ligne dans le contrat d’utilisation qui mentionne cette fonction, mais le journal des modifications n’en porte pas trace) qui « brique » systématiquement toute puce FTDI contrefaite, sans autre jugement ni avertissement. Et c’est là l’ennui, énormément de chip contrefait sont en circulation,  souvent même à l’insu de leur propriétaire. Résultat, une fois connecté à un ordinateur possédant la nouvelle version du driver, le chip devient inutilisable, son PID ayant été changé à 0, ce qui empêche son identification par tout système d’exploitation. De plus, l’effet est à retardement, car, ces identifiants n’étant utilisés que lors de l’établissement de la liaison USB, le chip continuera son fonctionnement tant qu’il restera connecté. C’est seulement la prochaine fois qu’il sera branché que le problème apparaitra !

Depuis, le driver incriminé a été retiré de Windows Update ( pas sur que Microsoft ait attendu l’aval de FTDI pour le faire … ), cependant le mal est fait. De plus ce driver étant proposé par défaut sur le site de FTDI, il y a fort à parier que d’autres chips vont continuer à subir le même sort. Heureusement, la modification du chip est réversible. Ayant été confronté au problème, voilà en quelques étapes la solution que j’ai trouvé :

Lire la suite

A l’intérieur du DAC USB Audiophonics U-Sabre Desktop

Pour noël, je me suis commandé un DAC USB Audiophonics U-Sabre Desktop. Il dispose d’une sortie cinch, ainsi que d’une sortie casque amplifiée, et est basé sur le duo de puces SA9023/ES9023 (respectivement un adaptateur USB vers I2S, puis un DAC I2S ) accompagnés par 2 AOP AD823 pour la partie amplification.  L’ensemble est contenu dans un solide boitier métallique du plus bel effet.

Je viens de le recevoir, et après un bref essai pour vérifier son fonctionnement (le résultat est d’ailleurs très convaincant), n’ayant pas trouvé de photos détaillées de l’électronique sur le web, je n’ai pas résisté à la tentation de le démonter pour en découvrir l’intérieur.

J’en ai profité pour dessouder la LED bleue à l’arrière, je n’aime pas trop les effets lumineux du genre.

Enjoy !

Arietta G25 : Driver Ethernet Gadget pour Windows

J’ai acquis il a quelques semaines une de ces formidables petites cartes qu’est l’Arietta G25.

Produite par ACME SYSTEMS, il s’agit d’un micro-ordinateur dédié à l’embarqué, à l’instar du Raspberry Pi, mais qui ne s’embarrasse pas de la connectique multimédia de ce dernier : ici, point de HDMI ou de sortie audio, le seul connecteur présent sur la carte est un port micro-USB permettant l’alimentation et la programmation simplifiée du système.

Image Arietta G25

La carte Arietta G25, avec le connecteur GPIO soudé

Et c’est là qu’est l’énorme point fort de l’Arietta : une fois l’OS correctement installé sur la carte microSD ( cf tutoriel sur le site du Fablab COAGUL de Dijon ), il suffit de la connecter en USB à un ordinateur, sur lequel elle s’identifie comme un adaptateur réseau USB, et l’on peut directement établir une session SSH sans nécessiter d’autres manipulations ou raccordement… Enfin en théorie.

Lire la suite

S’envoyer des SMS avec l’api SMS Free Mobile

Free Mobile a récemment mis en place un service permettant de s’envoyer des notifications par SMS, l’objectif étant de permettre à des systèmes, tels qu’une centrale d’alarme, de contacter l’utilisateur par SMS sans nécessiter l’allocation d’une carte SIM supplémentaire.

FreeMobileOption

L’option d’envoi de SMS dans l’espace client du site Free Mobile

Son utilisation est simple, après activation du service dans les options de son compte Free Mobile,  il suffit d’accéder à l’URL suivante :

https://smsapi.free-mobile.fr/sendmsg?user=XXXXXXXX&pass=YYYYYYYYYYYYY&msg=Hello%20World%20!

en remplaçant XXXXXXXX par son numéro d’utilisateur, et YYYYYYYYYYYYY par la clé unique fournie lors de l’activation du service, pour recevoir un SMS « Hello World ! ».

Le code de retour HTTP indique la réussite ou l’échec de l’envoi.

Pour évaluer le service, et préparer son intégration dans d’autres projets, j’ai écrit une petite application Qt5 permettant l’envoi simplifié de SMS : Free Mobile SMS Tester

Lire la suite

BOB : Une interface de puissance extensible pour Raspberry Pi et Arduino.

BOB (acronyme de Bob’s Output Board) est une interface de puissance : elle permet à de petits appareils (Arduino, Raspberry) de commander des courants relativement importants. Développée au Fablab COAGUL de Dijon, BOB est doté de 8 sorties pouvant commuter jusqu’à 1A chacune dans sa version classique (cette valeur peut être augmentée aisément), protégées contre les surcharges et les court-circuits par des polyswitch (fusible réarmable). La tension maximale commutable dépend des diodes et des mosfets utilisés, et se situe vers 50V pour les diodes et mosfets les plus faibles.

Démonstration ventilateur controlé par Raspberry Pi avec BOB

Un ventilateur contrôlé par Raspberry Pi avec BOB.

Bref, rien qui ne soit très classique. Mais BOB a un atout : il est possible d’en chaîner plusieurs pour obtenir le nombre de sorties requis. Besoin de 8 sorties ? Une seule carte BOB suffit. Besoin de 16 sorties ? Il suffit de chaîner 2 cartes BOBs ! Quelque soit le nombre de cartes BOB utilisées, il suffit de 5 signaux de commande pour piloter toutes les sorties !

De plus, BOB peut être réalisé avec des moyens amateurs (PCB simple face à pistes larges), et n’utilise que des composants courants.

Plus d’info sur la page BOB du Fablab de Dijon.

 

Une alimentation de laboratoire à moindres frais, à base de LM723

Basé sur un article de Frédéric Giamarchi

Dans tout atelier d’électronique, si il y a bien un élément indispensable, c’est l’alimentation de laboratoire. Celle-ci doit être suffisamment robuste pour survivre à certaines situations, comme un court-circuit, et posséder une limitation de courant. J’ai déjà réalisé un projet de ce type ici, et, si l’alimentation décrite dans le lien précédent convient parfaitement pour expérimenter avec des circuits logique, consommant peu, et ne nécessitant qu’une tension fixe de 5V, le projet que je vais présenter ici a plus d’ambition : il s’agit d’une alimentation capable de fournir une tension réglable entre 0 et 12V, sous un courant lui aussi réglable entre 0 et 1A.

Photo alimentation terminée

L’alimentation terminée, et intégrée dans un boitier

 

Cet article fournit toutes les information nécessaires à la fabrication d’une telle alimentation.

Lire la suite

Projet WifiBotBerry : un petit robot télécommandé à base de Raspberry PI

Ayant, dans le cadre de mes études, développé un logiciel de contrôle pour la plateforme WifiBot, j’ai réalisé que le concept était très prometteur, et permettait de s’initier facilement à la robotique. Son prix étant décourageant pour un particulier, je me suis mis en tête de réaliser une plateforme semblable, la moins onéreuse possible, à base de Raspberry Pi :

WifiBotBerry

La plateforme WifiBotBerry

L’ensemble ne m’aura couté que 80€ (Raspberry Pi inclus).

Cet article décrit toute la construction du WifiBotBerry, et en particulier l’installation et le paramétrage des logiciels utilisés….
Lire la suite

Minitel 1B RTIC : Solution au problème du clavier qui ne se verrouille plus.

Hier, après une n-ième manipulation, j’ai constaté que le clavier de mon minitel 1B RTIC ne voulait plus se verrouiller en position rentré, son ressort le ramenant désespérément à une position partiellement sorti.

Illustration Minitel Clavier Cassé

Le clavier, dans la position qui était devenu sa préférée.

Le problème n’empêchant pas l’utilisation du Minitel, il est tentant de le laisser en l’état. Cependant, la simplicité de la solution est telle qu’il serait dommage de ne pas le réparer.

Lire la suite

Simple Xbox 360 Controller : une classe permettant l’utilisation des manettes Xbox 360 sous Windows avec Qt

Pour utiliser les manettes de xbox 360 sous Windows, Microsoft a mis au point la librairie Xinput. Si plusieurs développeurs ont déjà mis a disposition des classes C++ pour faciliter l’accès à Xinput, aucune n’a été écrite pour tirer partie du mécanisme des slot / signal de Qt. La classe SimpleXbox360Controller a pour objectif de pallier ce manque.

Le logiciel de test Simple Xbox 360 Controller Tester

Le logiciel de démo :  Simple Xbox 360 Controller Tester

Le programme d’exemple Xbox 360 Controller Tester permet de tester rapidement le fonctionnement d’une manette. L’exécutable est disponible ici : SimpleXbox360ControllerTester

L’ensemble du code de la classe, celui du programme d’exemple, et la documentation en anglais du code est disponible sur GitLab.

Pour mes amis francophones, vous trouverez ci-dessous une version française de la doc :
Lire la suite