Premier essai du FEZ-IO40

La FEZ-IO40 est une carte de GHI qui permet de rajouter 40 prises numériques d’entrée/sortie à votre micro-contrôleur organisées en 5 ports de 8 prises chacun. La page du produit chez GHI. Le PDF de la carte. La classe qui permet de la manipuler.   Le fonctionnement du IO40 est relativement simple: la carte repose sur une puce contrôleur I2C qui s’occupera de “dispatcher” les signaux que vous aurez configuré à l’aide de la classe fournit. Câblage Je ne vais pas m’étaler sur le fonctionnement du port I2C, mais sachez que c’est un bus de communication en série très répandu (et pas qu’en robotique) et qu’il nécessite 4 fils: GND : la masse +5V SCL (Serial Clock) : l’horloge, pour rythmer l’envoie des données SDA (Serial Data) : pour le transport des données

Premier essai du ZX-Servo16U

Késako le ZX-Servo16U? C’est une petite carte fille qui permet de contrôler jusqu’à 16 Servo moteurs, le tout en n’occupant qu’un port sur votre contrôleur principal. La fiche de description du produit par son constructeur. Le PDF des specs. Disponible chez RobotShop par exemple. Une image veut mieux qu’un long discours:

Mettre à jour le Firmware de la carte

Comment tout bon élève (pour une fois) j’ai tenu à suivre les recommandations en rouge surligné de GHI lorsque je suis allé sur la page des téléchargements, à savoir: You must update your firmware. Voilà, c’est clair! Pourquoi donc? Tout simplement parce qu’une version donnée du SDK délivrée par GHI ne peut fonctionner correctement qu’avec le firmware correspondant. Donc si vous installez la version V 4.1.5.1 du SDK de GHI sur votre PC, il faudra mettre à jour le firmware de votre carte. La procédure est digne…de la bidouille que l’on pouvait imaginer lorsque l’on débute dans le domaine (en tout cas de mon point de vue de développeur). Ce n’est pas insurmontable, mais les chances d’y arriver du premier coup sont minimes. Mes recommandations 1) Installer les drivers USB spécifiques à la procédure de mise à jour du firmware. Disponible sur la page Downloads de GHI. 2) Suivre la vidéo sur YouTube (Cobra, Panda/Domino/Mini/Rhino) qui décrit la procédure ou la version Wiki. 3) Bien suivre calmement toutes les étapes, si vous les brulez, la carte le deviendra peut être aussi! La seule réelle difficulté quand on n’a jamais flashé sa carte est de savoir si on est bien en […]

Quelle carte choisir?

Bon, je ne suis pas parole d’évangile, mais après une brève recherche voilà ce que je peux dire sur les carte disponibles sur le marché. Le wiki de l’excellent site tinyclr.com référence sur cette page les différentes cartes disponibles sur le marché. (autant le dire tout de suite, le site tinyclr.com est l’initiative de GHI Electronics, mais il n’en demeure pas moins généraliste) Les constructeurs GHI Electronics Secret Labs Device Solutions

Hello .Net Micro framework world!

Je commence par la petite phrase bien connu des programmeurs pour annoncer que je me met à la robotique. Le mot est bien grand pour l’instant car je vais essayer de faire clignoter des LED et tourner des moteurs, mais bon, il parait que c’est de la robotique et puis j’ai de l’ambition! Je vais cross-poster sur mon blog ainsi que sur le nouveau blog Solution Robotique .Net. Vous l’aurez deviné, en tant que fan de .Net je me tourne sur une solution .Net Micro Framework, du .Net qui tourne sur une petit carte de quelques centimes carrés: c’est quand même tripant! A plus pour de nouvelles aventures!

Debugger Canvas pour Visual Studio 2010

Microsoft vient de sortir par le biais de son DevLabs une nouvelle addition à Visual Studio 2010: le Debugger Canvas. La release actuelle est le fruit de recherche, ce n’est peut être pas encore “production ready”, mais on peut tout de même s’en servir dès aujourd’hui. Lorsque l’on débugge, ce qui nous intéresse c’est le flow d’exécution du programme, lorsque l’on fait du pas à pas et que l’on se retrouve sur un appel de méthode on peut choisir de faire un step-into pour débugger son implémentation, avec un débugger classique un nouveau fichier sera ouvert (celui qui contient la méthode en question). L’approche du Debug Canvas est différente, comme son nom l’indique la session de débugge n’est plus constituée d’une liste de fichiers mais d’un unique canevas. Lorsque l’on démarre une session de debug et qu’un breakpoint est activé, le canevas s’affiche, il est constitué d’un “code bubble” qui représente l’implémentation de la méthode qui contient le breakpoint en question.

VMPrepTool for Lab Manager 2010

Visual Studio 2010 Lab Management est considéré comment le summum de l’intégration continue, il permet d’intégrer dans ce cycle la gestion des machines utilisées pour effectuer les diverses campagnes de test. L’industrialisation de ce procédé à un coût : la configuration. Il faut avouer que dans notre cas, il est élevé: mettre en place Lab Manager demande un certain nombre de compétences, des connaissances et une bonne dose de patience! Ce “problème” ayant été remonté très tôt auprès de Microsoft, l’éditeur de Redmond a entreprit certains chantiers afin de limiter la casse. Un premier outil est sortit depuis quelques mois déjà: le VM Prep Tool, il prend en charge la fastidieuse tâche de créer/préparer une machine virtuelle pour que celle-ci soit prête à l’utilisation par Lab Manager. Concrètement cela consiste à installer les différents agents liés à TFS, les patches et faire des réglages systèmes spécifiques à la gestion des VM. L’outil se télécharge à l’adresse suivante: http://archive.msdn.microsoft.com/vslabmgmt. L’installation est un peu compliquée mais il suffit de suivre le guide inclut dans la page de téléchargement. Deux modes d’utilisation sont disponibles: Self Service Mode: permet de configurer/mettre à jour une VM pour qu’elle soit utilisable par Lab Manager. Admin Mode: […]

Team Build 2010: Comment débugger simplement avec l’indexation des sources!

Team Build 2010 résout fort simplement une problématique que l’on a depuis des lustres: comment débugger facilement une release ancienne ou compilée par une chaine d’intégration continue. Ceux qui savent de quoi je parle l’auront déjà compris: avoir les fichiers sources qui correspondent à ce que vous débuggez peut s’avérer être une tâche difficile voire impossible. La théorie (grosse maille) Pourquoi? Revenons rapidement sur le mécanisme du debugging (mais alors très rapidement): Tout commence par l’Exe que vous débuggez, ainsi que les DLL qu’il utilise: c’est le programme qui est exécuté pas à pas par le débuggeur. Seulement, si vous n’avez pas les sources, vous n’aurez qu’une vue code assembleur de votre programme et même si vous avez passé plusieurs années à faire de l’assembleur, ca ne vous donnera pas pour autant le courage de faire avec! L’utilisateur veut débugger avec les sources qui ont étés utilisées pour compiler le programme. Un type de fichiers existe pour faire le lien entre un fichier binaire (.exe, .dll): c’est le .pdb. Grossièrement le .pdb stocke pour chaque statement de votre langage le fichier source (un .cs par exemple) dans lequel il se trouvait et à quelle ligne. Lors du debugging, lorsqu’un fichier […]

Must Have: Work Item Text Search

Voilà une fonctionnalité qui n’a toujours pas été implémenté dans Visual Studio: rechercher un Work Item à partir du texte qu’il contient dans les principaux champs. La plupart des gens se rabattent sur le Web Access de TFS pour faire ce genre de recherche, ce qui est un peu agaçant. Un outil existe depuis quelque temps: Search Work Items for TFS 2010 (télécharger ici). Celui-ci vous rajoutera une barre d’outils dans Visual Studio qui retournera la liste des Work Item qui contiennent le texte que vous avez spécifié. Par défaut, seuls les champs Title, History et Description sont utilisés pour la recherche.

Must Have: Enfin des dossiers pour classer ses builds!

Une remarque que j’entends souvent lorsqu’on parle de TFS: “Dans Team Explorer, pourquoi on ne peut pas mettre de dossiers pour organiser nos builds???”. C’est vrai que dans un vrai projet le nombre de Build de TeamBuild devient vite conséquent, alors on se retrouve à chercher le bon item parmi les 200 présents, c’est énervant et ca fait désordre! Surtout qu’on ne demande pas la mer à boire non plus, développer cette fonctionnalité ne doit pas prendre des mois et pourtant cela fait des années qu’on l’attend, donc ca agace…