Jul.31

SlightBox V3 : La version “HDMI”

Il y a un an jour pour jour (le 31 Juillet 2013), je publiais sur Facebook une photo “teaser” de ma version 3 de Slightbox (la version “HDMI”) et pourtant par manque de temps je ne l’ai jamais dévoilée !

Teasing V3 sur Facebook

Alors forcément depuis le temps, nombreux sont les projets qui pullulent sur Internet reprenant le même principe à l’image de Light Berry.

Mieux vaut tard que jamais et avec mes excuses pour toutes les personnes qui m’ont souvent relancées pour publier cet article, voici la présentation de ma dernière version de Slightbox, la V3 Sourire

HighTech,.NET,Domotique,SlightBox

Feb.09

SlightBox V2 – La version “mini”

Après un premier prototype d’une solution "Ambilight" maison développée avec des modules .NET Gadgeteer, la “SlightBox V2” est une version miniaturisée et beaucoup moins chère.

Rappel des épisodes précédents :

Pour rappel (voir l’article sur le fonctionnement de la V1), la SlightBox V1 est une box développée avec les modules .NET Gadgeteer uniquement dans le but servir d’interface USB/SPI pour le pilotage des bandes de leds LDP8806. Pour rendre la solution plus compacte et moins onéreuse,  nous allons utiliser une puce MCP2210 de Microchip qui n’est ni plus ni moins qu’une interface USB/SPI en une seule puce  !!

Dev,HighTech,.NET,SlightBox

Feb.09

SlightBox V1 : un système « Ambilight » avec C# et Gadgeteer

Cet article a été initialement publié dans le magazine Programmez! n°165 paru en Juillet/Aout 2013.

Programmez n°165

Inventée en 2002 par Phillips, la technologie Ambilight consiste à générer des effets lumineux autour de l’écran en fonction du contenu vidéo. Nous allons découvrir dans cet article comment développer notre propre système « Ambilight » en utilisant des modules « .NET Gadgeteer » et un peu de C#. Préparez Visual Studio, une perceuse et un fer à souder !

Dev,HighTech,.NET,SlightBox

May.07

S-Light : un système Ambilight à base de .NET Gadgeteer

Logo SlightRéalisé début Avril, je suis fier de vous présenter le premier prototype de "S-light", ma solution "Ambilight" artisanale !

Il s’agit ici du 1er prototype, deux autres versions déjà en cours de développement paraitront dans les semaines/mois à venir 😉

Cette première version fonctionne avec une application .NET/WPF sur votre PC pour calculer les couleurs de votre écran et piloter des bandes de LED RGB collées derrière votre écran via la "Slight Box", une petite boite refermant des modules .NET Gadgeteer basés sur le .NET Micro-framework.

Plutôt que de rédiger de longues phrases, voici une démonstration en image :

Pour connaître tous les détails techniques ainsi que les secrets de fabrication, je vous donne rendez-vous le mois prochain dans le magazine Programmez! pour un article complet sur le sujet. En attendant voici quelques images :

Demo Slight

SlightBox V1

Rendez-vous le mois prochain dans le magazine Programmez! disponible dans vos kiosques préférés 🙂

Un grand merci à Pierre-Marie Cronier (Creative director & Co-founder Studio Josette) pour le logo, les photos et la vidéo de présentation de Slight.

UPDATE1 : le projet S-light se nomme maintenant SlightBox et pré-ouverture du site www.slightbox.net (ouverture prévue en Septembre 2013)
UPDATE2 : Création de la page fan sur Facebook ! Suivez l’actualité de SlightBox sur : https://www.facebook.com/slightbox
UPDATE3 : Un article sur la SlightBox Gadgeteer est paru dans magazine Programmez de Juillet-Aout, disponible dans vos kiosques préférés :

Magazine Programmez! été 2013

Perso,Dev,HighTech,.NET,SlightBox

Oct.22

A lap around .NET4.0 & Visual Studio 2010 Beta 2

schottgu

La disponibilité de la Beta 2 de Visual Studio 2010 et du .NET Framework 4.0 a été annoncé par Jason Zander, General Manager de Visual Studio ce lundi (19/10/2009) suivi de l’annonce de Scott Guthrie, General Manager de la division .Net chez MS Corp que j’ai eu la chance de rencontrer en Mars dernier à l’occasion du MIX09 à Las Vegas.

Parcourons ensemble ces nouvelles versions !

Dev,.NET,Workflow Foundation,WPF,visual studio,Azure

Mar.18

[Astuce] Deviner le type MIME d’un FileInfo

Depuis la nouvelle CTP du Live Framework vous avez remarqué qu’on était désormais « obligé » de passer le type MIME d’un fichier que l’on ajoute via la méthode DataEntryCollection.Add/AddAsync (voir mon post précédent).

Pour récupérer le type MIME d’un fichier, le plus simple est de regarder dans le HKEY_CLASSES_ROOT du registre pour récupérer la clé ayant pour nom l’extension et de regarder la valeur du « Content Type » :

image

Côté code, voici comment faire cela simplement :

A l’exécution contentType vaudra « image/jpeg », le type MIME d’un fichier .JPG !

Afin de faciliter nos développements, nous pouvons, à partir de ces deux lignes de code, créer une méthode d’extension sur la classe FileInfo. Voici son code :

De façon a pouvoir l’utiliser simplement de la manière suivante :

Vous remarquerez que si le type MIME n’est pas trouvé nous renverrons un « application/octet-stream« .

Bon développement 😉

Dev,.NET

Feb.21

[.NET 4.0] Introduction à MEF : Managed Extensibility Framework

image Bientôt disponible dans la nouvelle version de la plateforme .NET de Microsoft, le .NET 4.0 introduira le framework MEF actuellement disponible en code ouvert sur CodePlex.

MEF pour Managed Extensibilty Framework, que vous trouverez sous le namespace System.ComponentModel.Composition, est une librairie .NET facilitant le développement d’application extensible.

C’est le travail résultant de l’équipe « Application Framework Core »  responsable d’harmoniser les frameworks applicatifs (type WinForm, SL, WPF et ASP.NET) de la même façon que le fait l’équipe de la BCL (Base Class Library) au niveau le plus bas de .NET.

Développer avec MEF, comment ca marche ?

Aujourd’hui pour concevoir nos applications de façon extensible, nous sommes souvent obligé de développer notre propre système d’extention. L’arrivée, fin 2007, du .NET 3.5 a ouvert une brèche dans la mise à disposition d’un framework générique pour le développement de telle application. Le System.Addin (encore nommé MAF, Managed Addin Framework) met à disposition des mécanismes simplifiant la mise en place d’un système d’extension basé sur des AddIns. Je traiterai un peu plus bas dans cet article des différences entre MAF et MEF.

MEF offre quant à lui un mécanisme d’import/export assez original. Le concept est de marquer des classes, variables, propriétés ou méthode par l’attribut Export. Dans d’autre classes vous pouvez alors créer des propriétés marquées de l’attribut Import pour venir importer les classes, variables, propriétés ou méthodes exportés.

MEF n’est pas qu’un simple framework d’ IoC (Inversion de contrôle) bien qu’il propose des fonctionnalités similaires comme l’injection de dépendance (comme le fait aussi StuctureMap ou Unity). MEF met surtout le focus sur la découverte de composant et permet à votre application de se composer par elle-même et cela à l’exécution.

.NET