a:86:{s:15:"20200412_174545";a:7:{s:5:"title";s:51:"HackPoint V2.0 : l’outil d’aide aux projets DIY";s:4:"link";s:67:"http://blog.idleman.fr/hackpoint-v2-0-loutil-daide-aux-projets-diy/";s:4:"guid";s:30:"http://blog.idleman.fr/?p=4428";s:7:"pubDate";s:31:"Sun, 12 Apr 2020 15:45:45 +0000";s:11:"description";s:178:"Salut les keupains !!! Ça en fait une paye qu’on a pas papoté !! Mon boulot me draine l’âme lentement mais sûrement à tel point que j’ai moins de temps ...";s:7:"content";s:5261:"
Salut les keupains !!! Ça en fait une paye qu’on a pas papoté !!
Mon boulot me draine l’âme lentement mais sûrement à tel point que j’ai moins de temps pour partager mes bouts de code avec vous, ça ne m’empêche pas pour autant de picol..bricoler en cachette.
Je profite donc de cette période de confinement (qui ne change rien puisque je suis un geek et que je ne sortais déjà pas de chez moi avant) pour partager ma version 2 de Hackpoint !

Pour ceux (très peu nombreux j’en suis sûr :D) qui n’auraient pas suivis la sortie de la v1, Hackpoint est un outil à destination de tout ceux qui aiment bidouiller des projets DIY, perso ou pro, hacklab, fablab ou génie de garage qu’il s’agisse d’électronique, de menuiserie, de chimie, de dev, de charcuterie…

Lorsqu’on part sur un projet de 2 semaines à 1 an, sur de multiples technologies (php,js, arduino, c++, python) voir de multiples domaines (dev, electro nique, travail du bois, impression 3d, config réseau / système) on a vite tout un tas de fichiers/liens/mémo qui traînent et un mal fou à organiser tout ce bordel. Hackpoint permet donc de sauvegarder, catégories, présenter et partager des projets qu’il s’agisse des composants électronique, de la doc, des schémas, des bout de codes divers.

Le projet contient actuellement les features suivantes :

Démo
Si vous souhaitez voir des cas d’utilisation, vous pouvez vous fier à mon propre hackpoint pour les projets que j’ai mis en public :
http://hacking.idleman.fr/index.php
Téléchargement
Pour télécharger hackpoint, je vous ai créé une magnifique page officielle (j’ai tout donné…) : http://hackpoint.idleman.fr/
Dépôt git
Pour les barbus qui n’aime pas les vitrines web vous pouvez également passer directement par le dépôt git : http://git.idleman.fr/idleman/hackpoint
Bien à vous !
Idle
";s:7:"dateiso";s:15:"20200412_174545";}s:15:"20171101_140131";a:7:{s:5:"title";s:58:"Raspberry PI ~ 24 : Créer une multi sonde wifi pour 11€";s:4:"link";s:75:"http://blog.idleman.fr/raspberry-pi-24-creer-une-multi-sonde-wifi-pour-11e/";s:4:"guid";s:30:"http://blog.idleman.fr/?p=4341";s:7:"pubDate";s:31:"Wed, 01 Nov 2017 13:01:31 +0000";s:11:"description";s:180:"Ce post est le vingt quatrième d’une liste de tutoriels sur le raspberry PI et l’arduino, cliquez ici pour accéder au sommaire ! Afin de pouvoir prendre des décisions en ...";s:7:"content";s:18336:"Ce post est le vingt quatrième d’une liste de tutoriels sur le raspberry PI et l’arduino, cliquez ici pour accéder au sommaire ! ![]()
Afin de pouvoir prendre des décisions en domotique, notamment grâce au gestionnaire de scénario de yana ou de toute autre centrale domotique, il nous faut des données, en quelque sorte “monitorer” nos pièces, exemple : baisser les stores si il fait trop chaud ou les ouvrir quand il ne fait pas assez clair dans la pièce, détecter les présence pour enclencher certaines actions etc….
A cet effet je me suis mis sur un projet de sonde humidité,température,lumière,mouvement à bas coût et en WIFI histoire de pouvoir simplement récupérer les données de nos pièces.
Une maison standard étant généralement composé de 5 pièces intéressantes à monitorer (je ne compte pas les toilettes ou le placard à balais :D) le coût de fabrication est d’environ 50/60€ pour toute la maison.
J’ai nommé ce petit cube sensoriel PROPISE : PROtotype de PIeuvre SEnsitif
![]() |
|
Dans le cadre de ce tuto nous utiliseront le capteur avec YANA, mais je l’ai conçu pour qu’il soit simplement adaptable à n’importe quel système domotique.
Nous allons voir ensemble comment produire ces petites bêtes mais avant, le traditionnel quart d’heure de honte en vidéo !
.
..
….
Ah ! on m’annonce à l’oreillette q’un gros coup de flemme problème technique vous épargnera ce massacre
(en plus je suis en peignoir, ça fais pas sérieux) ! Passons donc à la réalisation.
Habituellement nous utilisons comme “cerveau” du montage une carte arduino ou directement la puce atmega qui se trouve dessus (et qui peux fonctionner sans le reste de la carte avec quelques composants).
La grosse nouveauté par rapport aux tutos précédent consiste à remplacer l’habituel arduino par un composant nommé ESP8266.
L’esp8266 étant une puce qui propose les mêmes fonctionnalités de l’Atméga/Arduino en mieux:
…et surtout le wifi est intégrée à la puce, tout ceci pour un prix/taille équivalent à savoir environ 3€ avec les frais de port.
Pompom de la pompomette : c’est compatible avec l’éditeur/syntaxe arduino !
Voila la tronche de cette magnifique petite puce avec une plateforme supplémentaire ajouté (pour le même prix de 3€) l’ensemble se nomme esp8266 witty gizwits.
![]() |
![]() |
La plateforme witty gizwits ajoute un bouton poussoir, une led RGB (rouge vert bleu), un capteur de luminosité et surtout une partie plateforme de programmation détachable histoire de pas se faire chier.
Pour notre projet il ne restera qu’à y ajouter un capteur d’humidité qui fait également office de capteur de température (j’ai nommé le DHT11) et un capteur additionnel de mouvement infrarouge pour le fun.
Il nous faudra bien sur une source d’alimentation, ici nous choisissons un simple câble micro USB et son chargeur, vous pouvez piquer celui de votre portable si ebay met trop longtemps à vous livrer :p
Dernier petit composant : une résistance de 4700 Ohm qui vas de paire avec le DHT11 pour ne pas abimer ce dernier.
Rien de bien compliqué sur le câblage, les deux composants à ajouter à l’esp nécessitent les mêmes branchements à savoir : un fil sur l’alimentation 5v, un fil sur la masse et un fil sur un pin de donnée de l’esp afin de communiquer avec lui.
La résistance de 4700 Ohm doit être connectée à la broche 2 du le DHT11 et reliée ensuite à l’alimentation.
Voilà l’endroit ou ça se complique ! Afin de rendre le plus simple possible l’utilisation et l’installation de la sonde, j’ai du pisser pas mal de code. Je fais en sorte que lors du premier lancement de la sonde, celle ci se mette en hotspot, c’est à dire qu’elle vas émettre son propre réseau WIFI auquel vous pourrez vous connecter la première fois afin de la configurer.
Une fois la sonde configurée avec les identifiants WIFI de votre réseau domestique, elle désactive son hotspot et se connecte en mode client a votre wifi, ce qui complique un peu la partie code mais qui vous évite d’avoir à toucher à la moindre ligne dans celui çi, tout est gérable via une interface web
Pour balancer le code ci dessus sur l’esp 8266 witty que nous avons acheté, vous allez devoir faire au préalable cette petite config sur votre arduino IDE pour installer la bonne carte.
Pour envoyer le code ça fonctionne code pour l’arduino, branchez un câble USB/micro USB entre votre PC et le port micro usb de la puce ESP (attention il y à deux port sur la puce, seul celui du bas fonctionne pour la programmation, celui du haut est la juste pour l’alimentation) vous pouvez ensuite envoyer le code avec le bouton téléverser de l’arduino Editor.
Il vous faudra également installer la librairie pour lire les valeurs du dht11 (capteur humidité + température) pour pouvoir l’utiliser dans le soft. Pour cela téléchargez ce zip et décompressez le répertoire /libraries de votre installation arduino ide.
Je ne veux pas être sectaire et imposer ma plateforme domotique pour tous les prototype que je créé (mais quand même si à cette étape de mes tutos vous n’utilisez toujours pas yana, vous avez raté votre vie !), aussi je vais vous donner deux exemples de récupération des valeurs de la sonde avec et sans l’utilisation de YANA parce que quand même suis un chic type ! 
Activez le plugin propise dans la partie réglage et rendez vous coté setting du plugin, vous pouvez ajouter une ou plusieurs sondes (Nommée ici Poolp parce que j’ai changé 20 fois de nom depuis sa conception).
Entrez les infos de base de la sonde, cliquez sur enregistrer et suivez le guide d’installation sur la ligne qui apparait.

Une fois la sonde configurée en fonction des instructions du guide vous pouvez vous rendre sur la dashboard et y ajouter le widget propise.

Je n’ai pas encore relié le gestionnaire de scénario à ce module il s’agit pour le moment d’un simple affichage, j’y travaille sur la version suivante de yana.
Voilà un ptit script fait par dessus la jambe pour récupérer les données envoyées par PROPISE et les stocker à la suite dans un fichier texte, vous pouvez le modifier à votre guise.
Voir en taille réelle
Appuyez sur le bouton de reset avant de brancher la sonde, celle ci devrait alors se mettre en hotspot, la lumière RGB s’allumera en bleu foncé si tout vas bien.
Vous pourrez alors vous connecter à sa wifi (nommée PROPISE-XX) avec le mot de passe “bananeflambee” (oui, je sais…) puis accéder à son interface en tapant dans votre navigateur web l’adresse http://192.168.4.1
Il vous reste ensuite à remplir les identifiant WIFI de votre réseau
Dans le dernier champs, mettre le lien vers le script PHP (ou autre) à qui vous souhaitez que la sonde envois les données, notez que les valeurs entre “{{}}” seront remplacé par les données en questions
{{LIGHT}} : sera remplacé par la lumière de la pièce (en pourcentage)
{{HUMIDITY}} : sera remplacé par l’humidité de la pièce (en pourcentage)
{{TEMPERATURE}} : sera remplacé par la température de la pièce (en degré celcius)
{{MOUVMENT}} : sera remplacé par le mouvement de la pièce dans les dernières secondes ( 1 = mouvement, 0= personne)
ex d’url: http://mon.server/monscript.php?light={{LIGHT}}&humidity={{HUMIDITY}}&temperature={{TEMPERATURE}}&mouvment={{MOUVMENT}}
Une fois que tout est enregistré, vous pouvez redémarrer la sonde (débranchez puis rebranchez), elle devrait alors s’allumer en vert (indiquant qu’elle a bien enregistré les identifiants) puis en blanc clignotant si elle a réussi à se connecter à votre wifi et qu’elle envois les données.
A chaque clignotement les données sont envoyées
J’ai fait imprimer mon boitier, si vous n’avez pas d’imprimante 3d près de chez vous je vous conseille de la construire en LEGO (si vous êtes riche) ou d’acheter une boite de dérivation électrique et de la percer aux bon endroits (si comme moi vous êtes un prolo), ou encore d’utiliser des boites de denrées alimentaires, tant que vous restez sur des matières non inflammables :D.

Pour ceux qui peuvent faire imprimer, je vous met ci dessous le fichier 3d en .STL pour l’impression et le fichier sketchup .SKP si vous voulez l’améliorer.
L’amélioration majeure à apporter a ce circuit ne “mange pas de pain” (j’adore cette expression) il s’agit de remplacer le dht11 par un dht22 qui fonctionne de la même façon et fait quelques euros de plus mais qui est plus précis sur les valeurs retournées. Modifier ce composant nécessite par contre de légères modifications dans le code.
Autre amélioration intéressante : designer le boitier pour qu’il se fixe dans un angle haut de pièce, ça rendrait le capteur de mouvement plus efficace étant donné sa zone de couverture.
Dernier point : utiliser une carte ethernet POE (Power Over ethernet, c’est le câble réseau qui alimente le circuit pas besoin d’une alim en plus) en lieu et place du wifi, ça permettrait de se passer des ondes (moins fiables, moins sécurisées, moins bonnes pour la santé que du bon vieux filaire).
La prochaine fois nous verrons comment intégrer un peu d’empreintes digitales à notre bonne vielle domotique
Bien à vous,
Idle
";s:7:"dateiso";s:15:"20171101_140131";}s:15:"20170628_082049";a:7:{s:5:"title";s:72:"Fond de tiroir #3 ~ Récupération des issues github avec un tag précis";s:4:"link";s:90:"http://blog.idleman.fr/fond-de-tiroir-3-recuperation-des-issues-github-avec-un-tag-precis/";s:4:"guid";s:30:"http://blog.idleman.fr/?p=4336";s:7:"pubDate";s:31:"Wed, 28 Jun 2017 06:20:49 +0000";s:11:"description";s:211:"Je continue sur la lancé des fonds de tiroirs : voici un script mono-fichier d’exemple de récupération des issues github d’un dépôt projet pour un certain tag. J’ai initialement créé ...";s:7:"content";s:1719:"Je continue sur la lancé des fonds de tiroirs : voici un script mono-fichier d’exemple de récupération des issues github d’un dépôt projet pour un certain tag.
J’ai initialement créé ce script dans le but de report sur un site particulier les bonnes suggestion github émises par les contributeurs.
Le script génère un petit sommaire des topics émis dans la catégories spécifiée et permet d’accéder au contenu du premier post du topic ciblé.

Points forts
Points faibles
Pour continuer dans la série de mes fonds de tiroirs, je vous propose aujourd’hui un simple fichier PHP unique vous permettant d’aller vérifier régulièrement que vos sites/applications web sont toujours en ligne et retournent bien une en-tête http 200 (=Tout vas bien), le cas échéant, vous pouvez envoyer un mail et monitorer tout ça sur une simple page de consultation.
Le script est en PHP, il utilise une base de donnée sqlite auto généré lors du premier lancement.
Il vous est possible d’ajouter autant de site web que vous le souhaitez et d’avertir 0 ou plusieurs contacts

Lorsque le script détecté autre chose qu’une réponse 200, il met à jour l’espace de visualisation avec la couleur / code / erreur correspondante et envois un mail aux contacts spécifiés

Afin que le script aille vérifier régulièrement les sites que vous aurez enregistré il vous faut mettre en place un CRON(linux) ou une tache planifiée (Windows) qui ira régulièrement exécuter l’adresse http://votreserveur/eyz.php?action=cron
je vous conseille d’ajouter un htaccess pour limiter l’accès au script, je n’ai pas pris le temps de créer une authentification.
Points forts:
Points faibles
Si vous êtes un développeur dans l’âme, vous avez déjà eu à faire à cette problématique de la petite idée de projet que vous avez codé en une aprèm puis que vous n’avez jamais eu l’envie le temps de retoucher.
Plus le temps passe et plus le nombre d’idées qui végètent sans but dans votre placard à projet s’accumulent… A la lumière de ce constat, j’ai décidé d’ouvrir une petite rubrique pour partager mes fonds de tiroirs, plusieurs n’en sont qu’aux balbutiements, aussi je les partage sur ce blog avec quelques explications au cas ou quelqu’un souhaiterais les ré-exploiter.
Mon fond de tiroir du jour est un petit fichier php unique permettant de générer une doc minimaliste au format HTML à partir d’un fichier javascript.
Concrètement le PHP parse les commentaires au dessus de chaque fonction javascript et génère une page unique de consultation formatée (nom de la fonction, paramètres, descriptif en commentaire…).
La mise en forme reste volontairement simpliste de manière a pouvoir faire un copier coller sur word ou autres éditeurs répandus n’acceptant pas le javascript/css poussé.
Points forts :
Points faibles:
Le fichier PHP est ici pour ceux que ça intéresse :
Télécharger le bousin
Si vous souhaitez l’améliorer / y accéder via git, vous pouvez trouver le dépôt créé par Chouchen ici :
https://github.com/Chouchen/jsdoc
";s:7:"dateiso";s:15:"20170601_213038";}s:15:"20170314_111602";a:7:{s:5:"title";s:41:"Sys1 recrute du dev en région bordelaise";s:4:"link";s:66:"http://blog.idleman.fr/sys1-recrute-du-dev-en-region-bordelaise-3/";s:4:"guid";s:30:"http://blog.idleman.fr/?p=4263";s:7:"pubDate";s:31:"Tue, 14 Mar 2017 10:16:02 +0000";s:11:"description";s:207:"Une fois n’est pas coutume, je cherche un développeur pour des missions variées (essentiellement en environnement Apache / PHP/ MYSQL). Le contrat consisterait dans un premier temps en un CDD et ...";s:7:"content";s:1109:"Une fois n’est pas coutume, je cherche un développeur pour des missions variées (essentiellement en environnement Apache / PHP/ MYSQL).
Le contrat consisterait dans un premier temps en un CDD et déboucherais sur un CDI si tout roule comme il faut.
Les missions peuvent aller de la création de simples sites web (from scratch ou via wordpress) à des logiciel de gestion interne (logistique, erp, e-commerce, appli purement métier etc…), l’essentiel du travail étant fait en agence au sein de mon pole développement.
De bonnes bases en web/PHP sont nécessaires, les connaissances C# / .NET sont un plus, pour le reste, seule la passion et le sérieux sont requis :).
Si vous êtes intéressé et en région bordelaise, n’hésitez pas à postuler sur la section recrutement de Sys1, ou à me contacter directement sur ma boite mail idleman arobase idleman point fr.
";s:7:"dateiso";s:15:"20170314_111602";}s:15:"20170102_191353";a:7:{s:5:"title";s:87:"Snippet #28 ~ Javascript : Récupérer/Modifier les paramètres de la barre d’adresse";s:4:"link";s:99:"http://blog.idleman.fr/snippet-28-javascript-recuperermodifier-les-parametres-de-la-barre-dadresse/";s:4:"guid";s:30:"http://blog.idleman.fr/?p=4242";s:7:"pubDate";s:31:"Mon, 02 Jan 2017 18:13:53 +0000";s:11:"description";s:184:"Bonne année 2017 bande de moules! Je vous souhaite plein de bonnes choses mais surtout beaucoup de blé, des putes et des black-jacks et une bonne santé ! (voilà pour commencer ...";s:7:"content";s:2872:"Bonne année 2017 bande de moules! Je vous souhaite plein de bonnes choses mais surtout beaucoup de blé, des putes et des black-jacks et une bonne santé ! (voilà pour commencer l’année en finesse!)
Comme je suis un chic type et parce que ça fait longtemps qu’on s’est pas vu je vous partage une ptite fonction maison pour ne plus se prendre la tête avec la récupération / définition des paramètres de la barre d’adresse en javascript.
Globalement la fonction permet de récupérer un paramètre avec
var valeur = parameter(‘nomParametre’);
De définir un paramètre (ou de le modifier si il existe) avec
parameter(‘nomParametre’,’valeurParametre’);
De supprimer un paramètre avec
parameter(‘nomParametre’,false);
La fonction est dispo ci dessous pour javascript et Jquery, je la trouve un peu longue si vous trouvez le moyen de la raccourcir (la fonction, je parle de la fonction…) n’hésitez pas à poster un commentaire.
Fonction Javascript natif
function parameter(name,value) {
var parameters = window.location.href.match(/[\\?&]([^&#]*)=([^&#]*)/g);
var data = {};
for (var key in parameters) {
var couple = parameters[key].substring(1, parameters[key].length).split('=');
data[couple[0]] = couple[1];
}
if (value == null)
return data[name] ? data[name] : null;
if (value != false) data[name] = value;
var url = '?';
for (var key in data) {
if (value == false && key == name) continue;
url += key + '=' + data[key]+'&';
}
window.history.pushState('', document.title, url.substring(0, url.length-1));
}
Extension Jquery
$.parameter = function (name,value) {
var parameters = window.location.href.match(/[\\?&]([^&#]*)=([^&#]*)/g);
var data = {};
for (var key in parameters) {
var couple = parameters[key].substring(1, parameters[key].length).split('=');
data[couple[0]] = couple[1];
}
if (value == null)
return data[name] ? data[name] : null;
if (value != false) data[name] = value;
var url = '?';
for (var key in data) {
if (value == false && key == name) continue;
url += key + '=' + data[key]+'&';
}
window.history.pushState('', document.title, url.substring(0, url.length-1));
}
";s:7:"dateiso";s:15:"20170102_191353";}s:15:"20161019_010827";a:7:{s:5:"title";s:89:"Snippet #27 ~ Javascript : copier dans le presse papier sans flash (et fonctionne sur ie)";s:4:"link";s:106:"http://blog.idleman.fr/snippet-27-javascript-copier-dans-le-presse-papier-sans-flash-et-fonctionne-sur-ie/";s:4:"guid";s:30:"http://blog.idleman.fr/?p=4215";s:7:"pubDate";s:31:"Tue, 18 Oct 2016 23:08:27 +0000";s:11:"description";s:170:"Si vous avez déjà tenté de copier une valeur dans le press papier depuis le code de votre site web, vous avez vite du constater qu’il vous est nécessaire de ...";s:7:"content";s:2636:"
Si vous avez déjà tenté de copier une valeur dans le press papier depuis le code de votre site web, vous avez vite du constater qu’il vous est nécessaire de passer
par un flash dégueulasse pour être compatible cross browser ou de vous cantonner à IE clipboard.
Fort heureusement les nouvelles API HTML 5 permettent de passer outre le flash (ou le clipboard API qui fonctionnouille de manière pas folichonne selon le navigateur) à l’aide de la
fonction execCommand(‘copy’).
Seuls inconvénients de cette commande :
Je vous ai bricolé une petite fonction jquery pour simplifier le point 2 :
L’utilisation est la suivante :
$(‘#monBouton’).copy(“IdleBlog is op!!”);
L’installation se fait en ajoutant la clause suivante dans votre javascript (nécessite Jquery)
$.fn.extend({
copy : function (text) {
return $(this).click(function () {
var container = $('<span style="position:absolute;top:-1000px;"></span>').text(text);
$('body').append(container);
var range = document.createRange();
var selection = window.getSelection();
selection.removeAllRanges();
range.selectNodeContents(container.get(0));
selection.addRange(range);
document.execCommand('copy');
selection.removeAllRanges();
container.remove();
});
}
});
Bien entendu vous pouvez utiliser execCommand sans encapsuler ça dans du jquery même si personnellement je pense que si vous n’utilisez pas du jquery vous ne méritez pas de vivre allez vous prendre un peu plus la tête pour rien.
Bien à vous.
";s:7:"dateiso";s:15:"20161019_010827";}s:15:"20161013_211253";a:7:{s:5:"title";s:76:"Snippet #25 ~ C# : Récupérer un n° de version automatique à chaque build";s:4:"link";s:89:"http://blog.idleman.fr/snippet-25-c-recuperer-un-n-de-version-automatique-a-chaque-build/";s:4:"guid";s:30:"http://blog.idleman.fr/?p=4212";s:7:"pubDate";s:31:"Thu, 13 Oct 2016 19:12:53 +0000";s:11:"description";s:183:"Quoi de plus barbant que de devoir incrémenter le numéro de version de votre programme à chaque nouveau build? Le snippet ci dessous vous permet la récupération du numéro de ...";s:7:"content";s:1098:"Quoi de plus barbant que de devoir incrémenter le numéro de version de votre programme à chaque nouveau build?
Le snippet ci dessous vous permet la récupération du numéro de version de votre programme ainsi que du numéro de build sous la forme :
V1.0 R1310160959
V1.0 : Numéro de version noté dans l’assembly (version major et minor)
R1310160959 : Numéro de révision auto généré en fonction de la date ddmmyy + le timestamp du dernier build
Ainsi à chaque génération les 4 derniers chiffres au minimum changeront ce qui vous permet d’effectuer plusieurs build dans la même journée sans avoir à modifier manuellement quoique ce soit.
var veVersion = Assembly.GetExecutingAssembly().GetName().Version;
FileInfo fileInfo = new System.IO.FileInfo(System.Reflection.Assembly.GetExecutingAssembly().Location);
String strVersion = " V" + version.Major + "." + version.Minor + " R" + fileInfo.LastWriteTime.ToString("ddMMyyHHmm");
";s:7:"dateiso";s:15:"20161013_211253";}s:15:"20160627_110424";a:7:{s:5:"title";s:41:"Sys1 recrute du dev en région bordelaise";s:4:"link";s:66:"http://blog.idleman.fr/sys1-recrute-du-dev-en-region-bordelaise-2/";s:4:"guid";s:30:"http://blog.idleman.fr/?p=4206";s:7:"pubDate";s:31:"Mon, 27 Jun 2016 09:04:24 +0000";s:11:"description";s:187:"Ma boite recrute un développeur pour des missions en environnement LAMP (PHP/MYSQL). Le contrat consisterait dans un premier temps en un CDD et déboucherais sur un CDI si tout roule ...";s:7:"content";s:1192:"
Ma boite recrute un développeur pour des missions en environnement LAMP (PHP/MYSQL).
Le contrat consisterait dans un premier temps en un CDD et déboucherais sur un CDI si tout roule comme il faut.
Les missions peuvent aller de la création de simples sites web (from scratch ou via wordpress) à des logiciel de gestion interne (logistique, erp, e-commerce, appli purement métier etc…), l’essentiel du travail étant fait en agence au sein du pole développement sous ma houlette éclairée 
De bonnes bases en web/PHP sont nécessaires, les connaissances C# / .NET sont un plus, pour le reste, seule la passion et le sérieux sont requis :).
Si vous êtes intéressé et en région bordelaise, n’hésitez pas à postuler sur la section recrutement de Sys1, ou à me contacter directement sur ma boite mail idleman arobase idleman point fr.
";s:7:"dateiso";s:15:"20160627_110424";}s:15:"20160504_190426";a:7:{s:5:"title";s:41:"Gérez vos projets de hack avec HackPoint";s:4:"link";s:64:"http://blog.idleman.fr/gerez-vos-projets-de-hack-avec-hackpoint/";s:4:"guid";s:30:"http://blog.idleman.fr/?p=4090";s:7:"pubDate";s:31:"Wed, 04 May 2016 17:04:26 +0000";s:11:"description";s:194:"Lorsqu’on bidouille de l’électronique et des bouts de codes pour inventer tous un tas de trucs qui ne servent à rien révolutionnent la planète, il est nécessaire de faire de ...";s:7:"content";s:4229:"Lorsqu’on bidouille de l’électronique et des bouts de codes pour inventer tous un tas de trucs qui ne servent à rien révolutionnent la planète, il est nécessaire de faire de la veille, de tester des versions, d’échanger des infos… il est alors pénible de s’apercevoir que ça devient très rapidement un bordel pas possible de sources, de bout de code, de liens vers des composants etc.. à gérer et à partager
C’est à la lueur de ce constat que je me suis développé un petit outil nommé hackpoint.
Hackpoint est une application PHP (gratuite évidemment) avec base sqlite mono-fichier (installation en un clic) permettant de stocker du code, des composants, des readme, des schémas et autres ressources.
Il fonctionne sur la base de « Sketch » et de « Ressources« , un sketch étant un projet, une ressources étant un bout de code, un composant électronique, un schéma etc.. lié au sketch.
Il est possible de rendre public en lecture seule un sketch, de l’intégrer à un blog/forum, d’exporter ses sketch, d’en importer directement depuis un autre hackpoint etc..etc…
Le script est évidemment responsive et sécurisé par identifiant/mdp

Il est possible de créer un sketch de zéro, de forker un sketch existant sur un autre hackpoint (a partir du moment ou celui ci est rendu public) ou d’importer un sketch au format hackpoint (json compressé):

Un sketch se compose d’un panneau de ressources et d’une zone de travail permettant d’éditer/visualiser les ressources.
Les images d’images peuvent se faire en drag & drop.

Plusieurs types de ressources sont disponible (8 pour l’instant), chaque type de ressource étant mise en valeur en fonction de son contenu (syntax highlight pour les bout de code, drag & drop pour les images, tableau js pour les composants etc..)

L’ajout de composant peut se faire directement depuis un sketch ou dans l’onglet « composants », il est possible d’y lier une image, une marque, un prix moyen et une url de recherche pour ce composant.


Un sketch contient un panel d’options permettant de rendre public/privé le sketch, d’exporter le sketch en format json compressé, d’intégrer le sketch sur les blogs/forums, de télécharger l’intégralité des fichiers dans un dossier zippé ou encore d’envoyer des fichiers brut existants dans le sketch (encore un peu risqué ça ^^)


Hackpoint est disponible en version alpha ICI, notez que je cherche activement un logo sympa si quelqu’un souhaite tenter sa chance :).
Pour les adeptes du git, le dépôt se situe ici : https://git.idleman.fr/idleman/hackpoint
Bien à vous.
Idle
";s:7:"dateiso";s:15:"20160504_190426";}s:15:"20160219_002340";a:7:{s:5:"title";s:25:"Le bordel de l’info #32";s:4:"link";s:45:"http://blog.idleman.fr/le-bordel-de-linfo-32/";s:4:"guid";s:30:"http://blog.idleman.fr/?p=4068";s:7:"pubDate";s:31:"Thu, 18 Feb 2016 23:23:40 +0000";s:11:"description";s:193:"Salut bande de Condylura cristata enrhumé (mucus party !!!) ! Vous en avez dla chance !! A l’heure du terrorisme, de la crise économique, et de Kendji Girac (est ce qu’on ...";s:7:"content";s:7703:"Salut bande de Condylura cristata enrhumé (mucus party !!!) ! Vous en avez dla chance !!
A l’heure du terrorisme, de la crise économique, et de Kendji Girac (est ce qu’on peux considérer ça comme une forme de terrorisme ?)
Vous êtes peinard dans votre pod (ben ui z’avez pas vu le prix des maisons ?) à manger une bonne tranche d’eau assaisonnée à ce 32em bordel de l’info
Si vous avez une pressante envie de vous tailler les veines après l’écoute des infos, c’est que vous êtes à peu près normal : le climat fou le camps, les dictateurs s’essaient au nucléaire, les terroristes sont partout, les politiques se comportent comme des enfants de 5ans, la crise économique passe inaperçu grâce au marées de migrants forcé de quitter leurs pays a cause de la famine et de la gue… bref, les infos de ce siècle sont anxiogènes et poussent lentement mais surement à la dépression… toutes les infos ? Non monsieur, je journal des bonnes nouvelles résiste encore et toujours à l’envahisseur, un ptit îlot d’optimisme dans ce monde de brute.
Sonerezh est un clone open source de deezer, kiss tout en étant mignon, et en plus c’est un projet frenchy !! Le projet est encore jeune et quelques bugs surviennent de temps en temps cependant c’est une belle initiative et l’ensemble est plutôt cohérent, je ferais peut être un tuto sur l’installation de ce soft avec goodsync pour la synchronisation bi-directionnelle de vos playlistes locales vers sonerezh.
Il faut bien le reconnaitre, plus les technologies évoluent, plus il devient compliqué d’installer les soft récents, de plus en plus de prérequis nécessaires : mongodb, nodejs, docker, meteor, ruby, mariadb…on s’y perd parfois un peu… Sandstorm.io est une plateforme open source vous permettant d’installer en un clic toutes sortes d’application gratuites et moderne pour l’organisation, l’échange, la collaboration etc… afin de vous composer votre propre cloud.
En parlant de nodeJs justement, Zem.fr vous propose un petit tuto rapide pour vous bricoler vous même un proxy anonyme sur VPS en 5 minutes avec nodejs.
KanBan est une méthode de travail qui peux s’apparenter sur certains points avec Agile (ne fuyez pas, je ne parlerais pas d’agile promis !!), comme toute méthode, il y à du bon et du mauvais, cependant KanBan a inspiré quelques dev pour donner naissance a WeKan.io, une chouette petite app de todoList boosté aux stéroïdes, relativement chiante a installer (sauf en passant par sandstorm ^^) mais bien pensée, simple et véritablement utile en projet de groupes réduit (0-7 dev)
Besoin de démarrer une distribution linux sur un poste avec simplement votre bitte et votre couteaux ? Avec netboot.xyz, plus besoin de clé usb pour booter la distribution de votre choix directement via le « cloud », seul inconvénient (de ce que j’en ai compris en lisant la diagonale) c’est qu’il faut un bios qui accepte la techno iPXE, visiblement c’est assez courant car assez vieux comme techno (1999-2000 me semble), mais bon en cas de besoin on peux compter sur la fameuse loi de Murphy pour tomber sur LE bios récalcitrant.
J’ai beaucoup de mal a changer de client mail, mon ptit Thunderbird étant pour moi irremplaçable quoiqu’il sort de nouveau, cependant je me laisserais bien tenter par un essai sur ce nouveau client mail open source et ultra customisable quand on a quelques notions de dev puisqu’il intègre un système de plugin de javascript permettant de modifier l’intégralité de l’ui et des traitements de mails en amont.
Quel développeur n’a pas commencé sa carrière avec le rêve de devenir concepteur de jeux vidéo (ne niez pas, ça vous est forcement passé par la tête dans vos naives années post universitaires :p), mais bon, il faut du temps pour apprivoiser un moteur 3d/2d, créer des sprites, un scénario, gérer les règles physiques du monde de jeux, les vues, et vous êtes bloqué sur un projet industriel boooooring (car oui des postes de développeurs de jeux video ça court pas les rues ^^)… Voilà une belle solution d’assisté pour vous bricoler un ptit game pendant la pause café.
Un site intéressant sur les bonnes façon de développer en PHP, certains points me chafouinent un peu dans la conception mais globalement c’est cohérent,varié, bien expliqué et on peux y découvrir quelques perles de pattern auxquelles on n’aurais pas tout de suite pensé.
Les nouvelles techno/langages foisonnent, ces derniers temps et personnellement je m’y perd un peu (l’âge sans doute, je rentre progressivement dans la tranche des pré-vieux-cons de l’informatique) peux ceux qui comme moi sont un peu largués, voici un bel article pour nous remettre dans le droit chemin.
PHP7 est sortis en décembre 2015 (je suis le seul a n’avoir pas vu passer la v6 ? oO) et serait 2x plus rapide que ses prédécesseurs, a bon entendeurs…
Randomuser est une api gratuite, sans clé/licence/comptes nécessaires et permettant de générer aléatoirement des profil de personne (nom, prenom, age, photo…) de manière cohérente avec possibilité de filtrer par genres, ages etc… ultra pratique pour alimenter des bases de données comprenant des usagers avec des données de tests. La doc est claire, l’API est en JSON, c’est gratuit, sans inscription et en plus ça marche, tout ce que j’aime !!
Dans le même genre, 10 000 photos libre de droits de bonne qualité et bien triées (ben oai chuis comme ça mouah !!
à
Gog à un nom de chiotte (trop facile celle là, j’invalide) mais permet de se créer en quelques clics un clone self hosted de github. Personnellement je reste sur gitlab qui est bien plus complet, en revanche gitlab étant une véritable « douleur au cul » à installer gog peut devenir une alternative intéressante pour mes prochains serveurs git.
";s:7:"dateiso";s:15:"20160219_002340";}s:15:"20160111_200046";a:7:{s:5:"title";s:37:"[Billet invité] Yana v2 pour Android";s:4:"link";s:58:"http://blog.idleman.fr/billet-invite-yana-v2-pour-android/";s:4:"guid";s:30:"http://blog.idleman.fr/?p=4006";s:7:"pubDate";s:31:"Mon, 11 Jan 2016 19:00:46 +0000";s:11:"description";s:454:"Article écrit par Alexandre Roland Salut bande d’Idlenaute, Je vous présente aujourd’hui la nouvelle application Android pour Yana. Celle-ci fonctionne “normalement” parfaitement avec la nouvelle version Yana4All 0.1 Beta. Comment ça fonctionne: Avant même d’installer/ouvrir l’application sur votre super smartphone il vous faudra lancer le serveur afin que les clients puissent se connecter. Pour se faire […]";s:7:"content";s:6134:"Article écrit par Alexandre Roland
Salut bande d’Idlenaute,
Je vous présente aujourd’hui la nouvelle application Android pour Yana. Celle-ci fonctionne “normalement” parfaitement avec la nouvelle version Yana4All 0.1 Beta.
Comment ça fonctionne:
Avant même d’installer/ouvrir l’application sur votre super smartphone il vous faudra lancer le serveur afin que les clients puissent se connecter. Pour se faire taper la commande suivante:
sudo php /var/www/yana-server/socket.php
Vous devriez obtenir le retour suivant:
[09/01/2016 17:23:03] Server started on 0.0.0.0:9999
Voilà, vous êtes fin prêt pour le premier lancement de l’application.
Installation de l’application:
Vous pouvez la télécharger directement sur le Play Store en tapant le mot clef Yana v2 (a ne pas confondre avec yana tout court qui est la v1.0 de nover) ou alors en cliquant sur le lien suivant: Yana v2
Voici la page de connexion:
Il vous suffit alors de remplir les différents champs disponibles (rien de bien compliqué ^^) puis de cliquer sur connexion.
Voici ce que vous trouverez:
Vous retrouverez les commandes vocales disponible dans Yana en tirant le texte Commandes Vocal vers le haut. Celles-ci sont cliquables afin de ne pas réveiller votre moitié avec votre grosse voix si vous avez besoin de quelque chose en pleine nuit ^^.
Afin de minimiser les problèmes de compréhension un petit algorithme modifie votre demande afin de la faire correspondre systématiquement avec une des commandes vocales disponible dans la liste.
Android Wear:
Une extension pour Android Wear (montre connectée) est également disponible. Elle s’installera sur votre montre automatiquement en téléchargeant l’application.
Pour l’utiliser, lancez l’application sur votre smartphone, connectez vous, puis laissez la en fond de tâche. Il ne vous reste plus qu’à dicter vos commandes directement depuis votre montre.
Si vous avez des questions ou des idées d’amélioration n’hésitez pas à me contacter via le mail disponible sur le Play Store.
Alexandre.
[EDIT Idleman] : Si la connexion entre android et le rpi ne se fait pas, pensez à vérifier que le port 9999 n’est pas bloqué par votre firewall ou votre routeur.
";s:7:"dateiso";s:15:"20160111_200046";}s:15:"20151230_145049";a:7:{s:5:"title";s:36:"Yana4All 0.1 Beta, c’est par ici !";s:4:"link";s:54:"http://blog.idleman.fr/yana4all-0-1-beta-cest-par-ici/";s:4:"guid";s:30:"http://blog.idleman.fr/?p=3975";s:7:"pubDate";s:31:"Wed, 30 Dec 2015 13:50:49 +0000";s:11:"description";s:345:"Çà fait un ptit moment que je promet la sortie d’un nouveau client de reconnaissance/synthèse et interface vocale pour Yana. Voilà un ptit moment que je le teste à fond avec deux trois alpha testeurs et bien qu’il ne soit pas encore 100% stable et aboutis, je me sent l’obligation de partager la bêta avec vous […]";s:7:"content";s:6555:"Çà fait un ptit moment que je promet la sortie d’un nouveau client de reconnaissance/synthèse et interface vocale pour Yana.
Voilà un ptit moment que je le teste à fond avec deux trois alpha testeurs et bien qu’il ne soit pas encore 100% stable et aboutis, je me sent l’obligation de partager la bêta avec vous voir ce que vous en pensez.
Concrètement les plus de Yana4All c’est quoi ?
Plus stable, plus souple
Le programme étant divisé en trois binaires ayant chacun une fonction (écoute, synthèse, et interface graphique) les tâches sont mieux réparties, il est possible d’utiliser deux fonctionnalités sur les trois, ou même une seule afin d’alléger encore le processus en fonctions de vos besoins.
Plus réactif, plus omniprésent
Les binaires étant relié au serveur par socket (et non plus par http comme autre fois) les échanges se font de manière bi-latérale (ex: php peux dicter une phrase ne temps réel a l’un des clients) et instantanée, de plus il est possible de multiplier les binaires en fonction de la configuration que vous souhaitez, vous pouvez par exemple placer une synthèses ou une reconnaissance dans chaque pièces, un client transmettant l’identifiant de sa pièce, il vous est alors possible de parler dans le salon et pas ailleurs, ou de reconnaître que la phrase vient de la cuisine.
Plus customizable
La partie interface graphique est entièrement en html5/css3/javascript, si vous êtes a l’aise avec le développement web vous pouvez donc la modifier et lui donner le visage de vos envie en utilisant les fonctions d’api a votre disposition.
Plus à l’écoute
Vous pouvez maintenant dicter des mots libres en fin de commande ex : yana définit le mot “<placez votre mot ici>”
Les plugins compatibles
La syntaxe des plugins pour utiliser yana4all varie légèrement, aussi la plupart des plugins actuels ne sont pas compatibles, vous pouvez cependant regarder les phrases d’exemples disponibles dans vocalinfo (yana définit le mot <mot>, yana montre toi, yana énerve toi, yana lance le programme etc…)
J’essaierais de sortir un plugin 100% voué au client 2 avec une doc claire dans un second temps.
Installation
Coté serveur, commencez par mettre yana-server à jour
cd /var/www/html/yana-server (ou /var/www/yana-server en fonction de votre version d'apache) git pull
Puis lancez manuellement le serveur socket (un lancement automatique viendra dans le futur)
php /var/www/yana-server/socket.php
(ou /var/www/yana-server/socket.php en fonction de votre version d'apache)
Si la commande php n’est pas reconnu, installez php-cli
sudo apt-get install php5-cli
Si tout s’est bien passé, le message suivant devrait apparaître
Une fois le serveur lancé ne fermez pas la console, cela l’éteindrais, pour une utilisation plus permanente du serveur, vous pouvez créer un cron lançant le serveur en tâche de fond au démarrage.
Coté client, téléchargez yana4all beta 0.1 ici et dé-zippez le.
Lancez l’exécutable situé dans bin/launcher.exe et suivez les instructions
Lancez ensuite les différentes icônes du launcher, notez bien que les trois binaires sont regroupés dans le même dossier mais qu’ils peuvent fonctionnez en étant dissocié et sur des postes différents tant que vous associez un fichier conf.json correctement configuré a chaque binaire.
En lançant les applications vous devriez voir ça :
Interface (face.exe)
Reconnaissance (ear.exe)
Synthèse (mouth.exe)
Coder avec ça
En attendant une doc un peu plus conséquente, vous pouvez vous fier aux exemples du plugin vocalinfo ainsi qu’au billet Work in progress pour avec quelques bout de codes compatibles avec le nouveau client.
N’hésitez pas à me faire vos retours de bugs/features sur le github ma boite et les commentaires du blog étant totalement submergés de vos messages je ne peux plus répondre rapidement dessus ![]()
Prochaine étape
Je suis en train de porter le programme sur windows Iot (windows pour raspberry pi) de manière a se passer intégralement de pc.
";s:7:"dateiso";s:15:"20151230_145049";}s:15:"20151228_233304";a:7:{s:5:"title";s:35:"Comment ont il écrit star wars 7 ?";s:4:"link";s:56:"http://blog.idleman.fr/comment-ont-il-ecrit-star-wars-7/";s:4:"guid";s:30:"http://blog.idleman.fr/?p=3970";s:7:"pubDate";s:31:"Mon, 28 Dec 2015 22:33:04 +0000";s:11:"description";s:328:"Si vous avez vu le nouveau star wars 7 sortis récemment en salle, vous avez du vous demander comment les scénaristes de Disney ont pu composer une telle bouse sans s’immoler par le feu après coup jusqu’à ce que mort (lente douloureuse et la gueule ouverte) s’en suive Hé bien ne cherchez plus car un […]";s:7:"content";s:12718:"Si vous avez vu le nouveau star wars 7 sortis récemment en salle, vous avez du vous demander comment les scénaristes de Disney ont pu composer une telle bouse sans s’immoler par le feu après coup jusqu’à ce que mort (lente douloureuse et la gueule ouverte) s’en suive ![]()
Hé bien ne cherchez plus car un commentateur allociné a retrouvé le dialogue pré production entre les deux stagiaires scénaristes de star wars 7 (attation spoiler :p)
– “Bon les gars, faut introduire un nouveau personnage qui va devenir jedi plus tard, on crée quoi comme background ?”
– “Bah ils ont fait comment dans la guerre des étoiles ?”
– “Ils ont trouvé un mec sans charisme, qui bidouillait un peu la mécanique sur une planète sableuse, et qui voit un droïde arriver, ah oui et il était orphelin.”
– “Ah , sinon j’ai un post-it de walt disney, les lobbys féministe font pression car les personnages combattant sont tous des hommes dans les starwars, donc faudrait mettre une femme. Il faudrait mettre une femme qui commande les hommes, style une femme générale, et aussi une femme qui latte les couille du méchant à la fin. C’est sur le post it. Il est obligatoire dans tous les films sinon on va se faire flinguer”
– “Ah bah dans ce cas on change rien à la recette qui gagne, on a qu’a mettre une femme qui bidouille un peu la mécanique sur une planète sableuse, qui voit un droïde arriver et qui est orpheline. Et pour le général on a qu’à mettre la princesse leia”
– “Super idée ! Bon maintenant les mecs ils faut s’attaquer à l’entourage du héro. Ils faisaient comment dans les précédent ?”
– “Bah ils rencontrent harrison ford et chewbaca, yavait le faucon millenium sur la planète sableuse, et ils s’enfuient lorsque les trooper arrivent et après ils se cachent dans une trappe de contrebande, puis ils arrivent sur un astéroïde ou des animaux chelou se collent sur les parois du faucon millenium.”
– “Bah on a qu’à faire pareil non ?”
– “Bah , on si on fait exactement pareil, on va nous accuser d’avoir copié, faut être un peu original, on a qu’à changer un peu l’ordre.”
– “Ok, donc ils prend le faucon millenium sur la planète sableuse, ils s’enfuient lorsque les troopers arrivent, et après ils se cachent dans une trappe de contrebande PUIS ils rencontre harrisson ford et chewbaca, puis ils ont leur mettra un animal chelou sur le pare-brise du faucon millenium.”
– “Ah ouai pas bête! Bon maintenant, il faut trouver un grand méchant.”
– “ils ont fait quoi dans les précédents ?”
– “ils ont pris un mec habillé tout en noir avec un masque, sur un vaisseau amiral, qui étrangle les membre de son équipage.”
– “Bah on a qu’à faire pareil.”
– “Ah ouai pas bête, par contre dans le scenario original, il porte un masque car il a des problème de brulure au 3eme degré et a du mal à respirer.”
– “Ouai mais on s’en fou, on va pas compliquer l’histoire, on a qu’à dire que le mec porte un masque juste car il veut être fashion, même si il respire très bien. On est walt disney, c’est des ado qui nous regardent, on a qu’à dire qu’il veut faire comme son idole. D’ailleurs le protagoniste est un ado boutonneux capricieux aux cheveux longs”
– “ET puis pour son épée, on va être super inventif on va lui faire une garde.”
– “Mais ça sert à rien une garde dans les chorégraphie de sabre laser”
– “Ouai mais on a pas de chorégraphe, yavait pas le budget, on va refaire des combat en mode manche à balais”
– “Ouai donc on s’en fou C’était quoi le twist des épisode précédents ?”
– “En faite luc le gentil est le fils du grand méchant !! ahah bien trouvé non ? Et luc est tenté par le coté obscur de la force”
– “Bah on a qu’à continuer la ligné On va faire le méchant le fils de Leila ! Et lui sera tenté par le coté lumineux de la force ?”
– “Oui mais c’est pas possible, le coté séduisant est le propre du coté obscur, pas du coté lumineux”
– “On s’en fou !”
– “et c’est pas possible qu’il ait la force, dans l’épisode 1 avec Anakin ils expliquent bien que le fait d’avoir la force est héréditaire par le père seulement ! c’est donc IMPOSSIBLE qu’il ait la force si c’est le fils de leia”
– “Mais tu crois vraiment qu’ils vont se souvenir de ça ?”
– “Ah ouai ils sont idiots, on sen fou. Et le deuxième twist ?”
– “Sur une passerelle dans le vaisseau amiral, Darkvador invite luc à le rejoindre du coté obscur et lui annonce qu’il est son père. Puis luc se fait trancher et sombre de la passerelle”
– “Ok donc si on inverse les termes.. Solo annonce à haute voix qu’il est le père du méchant, et l’invite à le rejoindre du coté de la lumière. Puis le méchant tranche son père qui sombre de la passerelle !”
– “Oulah ils sont sacrément con si ils font pas le rapprochement !”
– “Bah oui, je te paris même qu’ils vont applaudir à la fin. Bon.. ça avance, et sur l’intrigue ?”
– “…”
– “Ok alors dans les précédents, c’était une étoile noire, un astre capable de détruire d’autres planètes de la résistance.”
– “Bah voila, on la tient notre idée !”
– “Attend, on peut quand même pas faire pareil , si ? comment les gens vont faire la différence avec starwars”
– “Bah on fait une étoile noire encore plus grande ! on est walt disney après tout.”
– “Ah ouai et pour le final ?”
– “Comme dans les précèdent on détruit la planète avec des petits chasseurs qui se faufilent à la surface, une fois que le bouclier de l’étoile noire est désactivé.”
– “Ah ouai pas bête, oulah on va aller manger de bonne heure aujourd’hui, on torche le scenar vite fait !”
– “Bon sinon on a répondu au lobby féministe, mais J’ai reçu un mail des association antiraciste, ils vont nous faire chier si ont milite pas pour la diversité”
– “Ah bah on a qu’à en mettre un. Un storm trooper blanc dehors, qui est noire en faite , ça serait drôle non ? ahah ouai mais il va servir à quoi ce storm trooper ?”
– “Bah à la morale de l’histoire, c’est le seul de tous à trouver ça pas bien ce que fait l’empire.”
– “Ouai d’ailleurs comme c’est les méchant, pour bien insister on a qu’a représenter l’empire comme l’empire nazi, car ça plait bien aux lobbys cette référence.”
– “On les représente comment ?”
– “Un grand plan avec un grand drapeau rouge derrière, et un mec qui parle fort sur scène”
– “Tu crois que ça va suffire ?”
– “Non, ta raison, on a qu’à faire faire un salut nazi à tous les stormtrooper, ça va claquer”
– “Oh yeah Plopplop Plop, Oh putain mais jy pense, on a fait un starwars et on a pas de Jedi !!!”
– “Oh merde, tes sur ?”
– “Ouai !”
– “Bon, on a déjà presque tout écrit, on en es ou dans le scenario la ?”
– “Bah à la fin, ils sont déjà en train d’attaquer l’étoile noire !”
– “Bon, prend la fille, Et on lui fait acquérir tous les pouvoirs de Jedi en 15Minute, sans avoir besoin d’utiliser les mains., et on lui fait combattre à arme égale avec le grand méchant qui a suivi des année de formation, et elle gagne à la fin.”
– “Mais manier le sabre, ou même apprendre la force, ça fait parti d’une formation jedi de plusieurs année même pour les plus doués !”
– “Ouep mais on a pas le temps !”
– “et le grand méchant jedi il va paraitre faible non ?”
– “Ouai, mais de toute façon il a déjà galéré au sabre contre un storm trooper qui en a jamais manié un de sa vie. Et il fait des caprice d’adolescent à taper contre les meuble dans son vaisseau”
– “Ouai pas très crédible quand même..”
– “On s’en fou, on a plus le temps, la planète va exploser dans 5mn et on avait totalement oublié.”
– “pis ça règle pas le problème du jedi…”
– “il reste combien de minute au film ?”
– “30seconde”
– “Bah vas y, on le fait apparaitre à la fin avec une capuche, comme ça on aura rempli le cahier des charges. Bon sinon j’ai « faire un film pour les nuls » ya une page d’ingrédient à ajouter, on m’a offert ça à mon anniversaire, regarde par exemple :”
– “lorsque vous voulez faire affronter deux protagoniste sans qu’ils meurent, faites qu’un éboulement ou une catastrophe les sépare.”
– “Bah vas y on le met !”
– “Lorsque vous faite manier un pistolet à une femme, il faut qu’elle se foire, et qu’elle oublie le cran de sureté”
– “Bah vas y on le met !_”
– “Il y en a sur des pistolaser ?”
– “J’en sais rien mais c’est toujours super drôle ! Mec , je viens de relire m’apercevoir, Chewie est bien le dernier de sa race non ?”
– “Ouep, elle a été défoncée dans un épisode précédent”
– “C’est donc super dur que quelqu’un parle sa langue à part han solo et C3po non ?”
– “Oui c’est impossible”
– “Et comment fait la nana pour comprendre que chewie lui dit que le mec a insisté pour revenir la chercher sur la planète ?”
– “…..”
– “En plus de ça un moment il est dit que le sabre laser a choisi la nana, c’est le stagiaire qui a écrit ça ?”
– “Bah jsais pas un truc avec la force non ?”
– “Mais non ! un sabre laser c’est juste du métal, alors que les midichlorien, sont que dans les autres être vivant, un sabre laser peut donc pas avoir de volonté ni choisir qui que ce soit !”
– “Ouai mais ça fait « élu » c’est sympa ! ”
Je crois qu’il ne manque pas grand chose à ce commentaire à part peut être une mention spéciale pour les doublures atroces, les scènes téléphonées, les transitions bâclées, l’humour potache et le plagiat plus que douteux, mais la question qui m’a taraudé tout au long du film et qui continue à me torturer c’est : que fout donc voldemort (snoke) dans ce film ? ![]()
Je n’ai pas la prétention ou l’habitude de faire de la critique cinématographique sur ce blog, mais depuis que j’ai dépensé à regret deux places gratuites et 2h15 de ma vie j’ai un sale arrière gout que seul un petit post haineux me permettra d’évacuer
!
Star wars 7, pour ceux qui ne l’ont pas vu, ne faites pas la bêtise d’y aller, même si c’est offert, même si on vous finance pour le voir, pour les autres, il faudra apprendre à vivre avec ça.
";s:7:"dateiso";s:15:"20151228_233304";}s:15:"20151208_130935";a:7:{s:5:"title";s:41:"Sys1 recrute du dev en région bordelaise";s:4:"link";s:64:"http://blog.idleman.fr/sys1-recrute-du-dev-en-region-bordelaise/";s:4:"guid";s:30:"http://blog.idleman.fr/?p=3965";s:7:"pubDate";s:31:"Tue, 08 Dec 2015 12:09:35 +0000";s:11:"description";s:335:"Ma boite recrute un développeur pour des missions C# / Asp.net et PHP. Le contrat consisterait dans un premier temps en un CDD de 6 Mois sous ma direction (parfois despotique mais j’y travaille :D) avec d’éventuels débouchés au terme du contrat si tout se passe bien. De bonnes bases en C# .NET sont nécessaires, […]";s:7:"content";s:802:"Ma boite recrute un développeur pour des missions C# / Asp.net et PHP.
Le contrat consisterait dans un premier temps en un CDD de 6 Mois sous ma direction (parfois despotique mais j’y travaille :D) avec d’éventuels débouchés au terme du contrat si tout se passe bien.
De bonnes bases en C# .NET sont nécessaires, les connaissances web/PHP sont un plus, pour le reste, seule la passion et le sérieux sont requis :).
Si vous êtes intéressé et en région bordelaise, n’hésitez pas à postuler sur la section recrutement de Sys1, ou à me contacter directement sur ma boite mail idleman arobase idleman point fr.
";s:7:"dateiso";s:15:"20151208_130935";}s:15:"20151130_183020";a:7:{s:5:"title";s:25:"Le bordel de l’info #31";s:4:"link";s:45:"http://blog.idleman.fr/le-bordel-de-linfo-31/";s:4:"guid";s:30:"http://blog.idleman.fr/?p=3958";s:7:"pubDate";s:31:"Mon, 30 Nov 2015 17:30:20 +0000";s:11:"description";s:339:"Salut bande de lésions testiculaires (ça doit piquer ça…) !Vous en avez dla chance !! A l’heure ou votre serviteur noyé dans le béton et l’enduit tente de rénover sa ruine de maison vous, vous êtes comme des pachas, dans votre fauteuil louis 14 de contrefaçon,à vous saler une 3 em tranche du bordel de […]";s:7:"content";s:8631:"Salut bande de lésions testiculaires (ça doit piquer ça…) !Vous en avez dla chance !!
A l’heure ou votre serviteur noyé dans le béton et l’enduit tente de rénover sa ruine de maison vous, vous êtes comme des pachas, dans votre fauteuil louis 14 de contrefaçon,à vous saler une
3 em tranche du bordel de l’info !
Bien à vous,
Idle
";s:7:"dateiso";s:15:"20151130_183020";}s:15:"20151025_124544";a:7:{s:5:"title";s:16:"Work in progress";s:4:"link";s:40:"http://blog.idleman.fr/work-in-progress/";s:4:"guid";s:30:"http://blog.idleman.fr/?p=3952";s:7:"pubDate";s:31:"Sun, 25 Oct 2015 11:45:44 +0000";s:11:"description";s:385:"Un petit post rapide pour ceux qui pensent encore que je me touche la nouille pendant ces longs mois d’absence ! L’alpha du nouveau client yana est en bonne voie de parution, une petite vidéo dans le lien ci après… https://youtu.be/wFf0JdSWV8s Au programme : Mots personnalisés, lancements de programmes,gestion des émotions, sockets à gogo, interfaces […]";s:7:"content";s:1832:"Un petit post rapide pour ceux qui pensent encore que je me touche la nouille pendant ces longs mois d’absence ! ![]()
L’alpha du nouveau client yana est en bonne voie de parution, une petite vidéo dans le lien ci après…
Au programme :
Mots personnalisés, lancements de programmes,gestion des émotions, sockets à gogo, interfaces full html5/js/css3, les plugins peuvent instantanément faire parler/réagir le(s) client(s), plus de simplicité pour déclarer les commandes, possibilité de gerer du multi client et de différencier les pièces ou la phrase est reconnue/parlée…
La syntaxe coté plugin devrait ressembler à ça
Déclaration de la commande :
$response['commands'][] = array(
'command'=>$conf->get('VOCAL_ENTITY_NAME').' montre toi',
'callback'=>'vocalinfo_show_you',
'confidence'=>0.8
);Fonction résultante
function vocalinfo_show_you($text,$confidence,$parameters){
$cli = new Client();
$cli->connect();
$cli->image(YANA_URL."/plugins/vocal_infos/img/yana.jpg");
$cli->talk("Est ce que tu me trouve jolie?");
$cli->disconnect();
}Nb : je recherche un pro du socket pour m’aider sur le débogage, ainsi qu’un éventuel dingo du nodejs/nodewebkit pour tenter de mieux encapsuler la partie interface dans un exe sans perte de perfs.
Bon week end à tous !
";s:7:"dateiso";s:15:"20151025_124544";}s:15:"20150728_002550";a:7:{s:5:"title";s:12:"A-Arrgghh…";s:4:"link";s:33:"http://blog.idleman.fr/a-arrgghh/";s:4:"guid";s:30:"http://blog.idleman.fr/?p=3927";s:7:"pubDate";s:31:"Mon, 27 Jul 2015 22:25:50 +0000";s:11:"description";s:346:"Petite note de service à ceux qui m’ont envoyé des mails ou des commentaires blogs, de question ou d’encouragement et à qui je n’ai toujours pas répondu : promis je ne vous snobe pas, mais je suis complétement submergé par vos ptit messages (que je lis pourtant toujours avec un plaisir immodéré). Pas moins de […]";s:7:"content";s:2156:"
Petite note de service à ceux qui m’ont envoyé des mails ou des commentaires blogs, de question ou d’encouragement et à qui je n’ai toujours pas répondu : promis je ne vous snobe pas, mais je suis complétement submergé par vos ptit messages (que je lis pourtant toujours avec un plaisir immodéré).
Pas moins de 277 mail non lus et 142 commentaires en attente de validations screenshots à l’appui, il vas me falloir une secrétaire cochonne pour traiter tous ces ptits mots avant 2020
!
Promis, je ne vous oublie pas, je lis tout, si je ne réponds pas tout de suite, c’est généralement que c’est beaucoup trop intelligent pour moi et que j’ai besoin de temps et de neurones disponibles pour y répondre ^^.
Bien à vous !
";s:7:"dateiso";s:15:"20150728_002550";}s:15:"20150707_201925";a:7:{s:5:"title";s:36:"Un nouveau market qui fait le café";s:4:"link";s:58:"http://blog.idleman.fr/un-nouveau-market-qui-fait-le-cafe/";s:4:"guid";s:30:"http://blog.idleman.fr/?p=3917";s:7:"pubDate";s:31:"Tue, 07 Jul 2015 18:19:25 +0000";s:11:"description";s:398:"Depuis quelques jours vous avez pu constater la présence d’un nouveau market sur http://market.idleman.fr En effet j’ai sortis le nez quelques temps du client yana4All (je cherche d’ailleurs des alpha testeurs sous windows pour ceux que ça intéresse me contacter) pour me concentrer quelques heures sur cet outil de contribution qui comporte aujourd’hui pas moins […]";s:7:"content";s:3451:"Depuis quelques jours vous avez pu constater la présence d’un nouveau market sur http://market.idleman.fr
En effet j’ai sortis le nez quelques temps du client yana4All (je cherche d’ailleurs des alpha testeurs sous windows pour ceux que ça intéresse me contacter) pour me concentrer quelques heures sur cet outil de contribution qui comporte aujourd’hui pas moins de 48 plugins pour Yana.
C’est notamment ce nombre bluffant de plugins qui m’a poussé a améliorer un peu l’outil de contribution dont la première version avait été fait un peu sans y croire et surtout beaucoup à l’arrache ![]()

Cette nouvelle mouture devrait donc pallier en parties aux ennooooormes carences de l’ancien market avec les fonctionnalités suivantes :
Meilleur affichage des plugins dans la home et ajout de fiches plugins

Les contributeurs ont maintenant la possibilité de tout modifier sans attendre de validation
Possibilité de contacter un contributeur sans que son mail ne s’affiche sur le site

– Possibilité de commenter un plugins
– Mini statistiques sur le nombres de téléchargements par plugin et le nombre de commentaires
– Possibilité d’ajouter des images sur les plugins
– Distinction du propriétaire du plugin (la personne qui l’a soumis sur le market) et de l’auteur (le(s) développeur(s))
– Interface semblable a yana (réutilisation du core cms de yana)
– Gestion des profils etc…
N’hésitez pas à faire un tour pour encourager vos plugins favoris et poser vos questions / suggestions à leurs auteurs!
Gros poutou !
";s:7:"dateiso";s:15:"20150707_201925";}s:15:"20150526_203210";a:7:{s:5:"title";s:46:"Yana : Mise a jour des pins en fonction du RPI";s:4:"link";s:68:"http://blog.idleman.fr/yana-mise-a-jour-des-pins-en-fonction-du-rpi/";s:4:"guid";s:30:"http://blog.idleman.fr/?p=3904";s:7:"pubDate";s:31:"Tue, 26 May 2015 18:32:10 +0000";s:11:"description";s:354:"Salut bande de pantomime anémiques ! (260 articles et j’arrive seulement à cours d’insultes :D) Un petit message du haut de mes combles, du fond de ma tranchée, de derrière mon muret en parpaing renforcé, bref… de mes travaux sans fin pour vous annoncer la mise à jour d’un petit module très attendue par certains […]";s:7:"content";s:2812:"Salut bande de pantomime anémiques ! (260 articles et j’arrive seulement à cours d’insultes :D)
Un petit message du haut de mes combles, du fond de ma tranchée, de derrière mon muret en parpaing renforcé, bref… de mes travaux sans fin pour vous annoncer la mise à jour d’un petit module très attendue par certains d’entre vous qui
ont la chance de posséder des rpi dernière génération.
J’ai nommé : la Pin Map de la dashboard de yana.

Pour les endormis du fonds qui viennent de se réveiller, Yana est une interface domotique qui s’installe sur le rapsberry pi et qui permet
tout un tas de truc inutiles et pas très WAF compliant, mais très prisés par les nerds de mon espèce ![]()
Jusqu’ici ce graphe ne prenait en compte que le mapping de mon ancêtre de rpi et restait relativement simple sur les infos procurées (à savoir une numeroration de pin de 0 à 17 :D).
Pour faire court (oui parce que j’ai une poutre à péter avant la tombée de la nuit) Voilà les modification apportées :
Cette dernière modif est la plus importante puisqu’elle permet aux rpi 2 et autres sorties récentes de montrer le bon nombre de pins avec les bon numeros / fonction / nom etc…
Comme je ne possède qu’une version du rpi et que les infos du web sont très contradictoires la dessus, certains mapping peuvent être faux à l’heure ou j’écris ce post.
Aussi si vous remarquez quand vous remarquerez un problème avec votre version, vous pouvez ouvrir le fichier
Classes/System.class.php à la ligne 25 et voir/configurer les différents mapping en fonction des versions.
N’hésitez pas a me soumettre vos mapping corrigé/ajouté je les intégrerais à la version native pour les prochains.
Bien a vous.
";s:7:"dateiso";s:15:"20150526_203210";}s:15:"20150415_211222";a:7:{s:5:"title";s:29:"Yana for iOs est disponible !";s:4:"link";s:51:"http://blog.idleman.fr/yana-for-ios-est-disponible/";s:4:"guid";s:30:"http://blog.idleman.fr/?p=3891";s:7:"pubDate";s:31:"Wed, 15 Apr 2015 19:12:22 +0000";s:11:"description";s:332:"De nombreux utilisateurs se sont acharné sur ma boite mail pour me demander une version “pomme” de yana Étant allergique aux pommes, et n’en de ce fait jamais eu chez moi, je ne me suis jamais penché sur le sujet. Fort de ce constat, Gwénolé Roton et son compère Valentin Chapoux (ils sont bien ces […]";s:7:"content";s:7016:"De nombreux utilisateurs se sont acharné sur ma boite mail pour me demander une version “pomme” de yana ![]()
Étant allergique aux pommes, et n’en de ce fait jamais eu chez moi, je ne me suis jamais penché sur le sujet.
Fort de ce constat, Gwénolé Roton et son compère Valentin Chapoux (ils sont bien ces valentins! :D) se sont démenés pour nous offrir a tous une version yana iOs (par Gwénolé) et yana Osx (Par Valentin).
Pour l’application IOs, Gwénolé à s’est inspiré du code de Novares (auteur de yana for Android) et a redéveloppé le tout en Objective C avec la lib de reconnaissance vocale iSpeech (version gratuite) et la synthèse d’iOS.
![]() |
![]() |
On y retrouve :
Et quelques options spécifiques a iOS :
Configuration
Pour la configuration, je laisse directement la parole à Gwénolé :
“Au premier lancement de l’application un assistant de configuration va se lancer, il va demander le sexe de l’utilisateur, son nom, son prénom, son surnom : ces informations vont être utilisées par Yana pour vous dire bonjour (ex « Bonjour Mr Martin » ou « Yo idle » etc..).
Vient ensuite la question sur l’utilisation de Yana via Internet. Cette option est à activer si votre serveur Yana est configuré pour être utilisé avec votre IP publique depuis n’importe où
Un peu de courage, la configuration est bientôt terminée!
Il nous reste donc à configurer le réseau :
Donc on arrive sur une page qui va vous demander le lien interne (votre ip sur votre réseau local), le nom de votre réseau (votre nom du wifi chez vous, et oui Yana s’en sert pour savoir si vous êtes en local ou si vous êtes ailleurs). Et enfin il nous reste à mettre l’ip publique, si bien sur vous avez choisi d’utiliser Yana depuis internet !
Plus qu’une page et c’est prêt !
La dernière page de l’assistant permet de dire à Yana ce qu’elle doit activer, voici les fonctionnalités possible :
Les événements
Et voila ! La configuration est terminée ! Un petit recap’ pour vérifier et hop vous voila dans la page principale de Yana ! ”

“Ah si ! Vous aurez peut être remarqué que l’assistant ne vous demande pas le token, il faudra le rentrer directement dans la configuration de Yana, pour ce faire, on clique sur le petit engrenage en haut à droite on va dans « Configuration du système Yana » Dans l’onglet Identification et on entre notre Token.
On retourne sur la page d’accueil on actualise et hop on a toutes nos commandes !
Enjoy !
Je remercie Valentin CHAPOUX pour son travail sur l’assistant de configuration et sur la partie de configuration de Yana.”
La version osx est dans la tuyaux, quelques screenshots envoyé par Valentin Chapoux histoire de nous faire bavouiller salement sur la moquette :
Évidemment il vas falloir le harceler un peu pour avoir notre bêta, n’hésitez pas ! ![]()
Un grand merci à ces deux contributeurs qui se sont démenés, non seulement sur le code, mais visiblement aussi pendant trois mois sur l’Apple store afin de partager l’application (ben oui, chez Apple quand on contribue, il ne suffit pas de payer un compte développeur hors de prix, il faut en plus batailler avec les restrictions imposées, c’est lamentable…).
N’hésitez pas à leurs faire vos retours sur le github de l’application et à leurs payer une tite binouze, ils la méritent bien !
Bien à vous.
";s:7:"dateiso";s:15:"20150415_211222";}s:15:"20150324_200008";a:7:{s:5:"title";s:56:"Yana : ajoutez vos propres commandes sans développer…";s:4:"link";s:74:"http://blog.idleman.fr/yana-ajoutez-vos-propres-commandes-sans-developper/";s:4:"guid";s:30:"http://blog.idleman.fr/?p=3882";s:7:"pubDate";s:31:"Tue, 24 Mar 2015 19:00:08 +0000";s:11:"description";s:427:"On m’a souvent reproché, et à juste titre je l’admets, d’avoir pensé ma plateforme domotique Yana plus pour les développeurs que pour les utilisateurs “non avertis”. Il est vrai que certaines customisations qui peuvent paraitre “basiques” ne sont, à l’heure actuelle, accessibles que par le développement d’un plugin. C’est dans le but de me rattraper […]";s:7:"content";s:3102:"On m’a souvent reproché, et à juste titre je l’admets, d’avoir pensé ma plateforme
domotique Yana plus pour les développeurs que pour les utilisateurs “non avertis”.
Il est vrai que certaines customisations qui peuvent paraitre “basiques” ne sont, à l’heure actuelle,
accessibles que par le développement d’un plugin.
C’est dans le but de me rattraper en partie sur ce point que j’ai développé un nouveau ptit plugin consacré exclusivement aux non développeurs et/ou aux développeurs un peu feignasses :D.
Speech commands, comme son nom l’indique, est un plugin pour yana server permettant l’ajout de commandes vocales personnalisées depuis l’administration.
Chacune de ces commandes peut exécuter un “type” d’action lorsque la phrase indiquée est prononcée, les types disponibles sont les suivants :
– Prononciation d’une phrase sur yana-client
– Changer l’état d’un port GPIO sur yana-server
– Exécuter une adresse web depuis yana server vers l’url indiquée
– Exécution d’une commande système sur yana serveur (potentiellement : le raspberry pi sur lequel il est installé)
– Exécution d’une commande système sur yana client (potentiellement : le Windows, l’android ou autre Os sur lequel il est installé)
– Jouer un bruit sur yana-client (situé dans le répertoire “son” de l’applicatif client)
L’utilisation et la configuration de ce plugin ne nécessite aucune ligne de code il est donc possible a tout un chacun de customiser
un peu les commandes vocales sans avoir à “mettre les mains dans le cambouis”.
Le plugin étant en bêta test actuellement, je ne l’ai pas encore intégré en natif, cependant vous pouvez le télécharger sur le market yana ou directement depuis la section plugin de votre yana en tapant “Speech commands” dans le moteur de recherche plugin.
N’hésitez pas à me faire vos retours de bugs / remarques sur le plugin, bien qu’il fonctionne en dev, je n’ai pas pu le tester en environnement réel à cause de mon déménagement (il faut que je retrouve le carton ou j’ai planqué les rpi).
Dans l’absolu, je fusionnerais ce plugin avec le gestionnaire d’événements, je manque encore de temps pour le faire, mais ce plugin devrait répondre au besoin en attendant.
Papouilles,
Idle
Vous vous demandiez peut être où j’étais passé ce dernier mois, ou alors vous vous en foutiez complétement ! ![]()
Hé bien (o joie, je vais vous le dire quand même) figurez vous que je suis devenue Papa d’une belle tranchée de 16m de long sur 70 cm de profondeur !

Car oui, quand Eau de la CUB et EDF vous demandent 10 500€ juste pour raccorder l’extérieur de votre terrain en eau/tout à l’égout/électricité, vous décidez curieusement de creuser vous même votre tranchée intérieure (du terrain jusqu’à la maison), et ça mes amis (je vous l’ai déjà dit, par défaut vous êtes mes amis), c’est tout un art !
Moi qui ai fait à peu près toutes les conneries à faire sur le sujet, je pense avoir acquis assez de maitrise pour vous en parler (je sais, vous vous en foutez toujours mais ça me fait de bien d’en parler, et puis c’est mon blog j’fais ce que je veux et je vous empapaoute :D).
N’élève pas une belle tranchée en bonne santée qui veux…
Aussi, afin qu’elle ait le poil soyeux et l’œil vif, je vous donne quelques combines apprises sur le tas (en l’occurrence le tas de terre, gravats et autres immondices enterrées une centaine d’année plus tôt sur le terrain).
Pelle et huile de coude ou pétrole et gros engin ?
Il peut être tentant de mettre au monde sa tranchées à l’aide d’outils spécialisés comme une mini pelle (petit engin pour creuser louable à la journée à kiloutou) et dans certains cas notamment celui ou vous avez prévu ou grosse longueur de tranchée (50m/100m), ou si celle ci à la peau dure (terre rocailleuse) c’est très utile.
Dans tous les autres cas, utilisez la pelle, ainsi :
– Vous ne blesserez pas votre tranchée, notamment son actuel système nerveux (câbles électriques enterrés), sanguin (les tuyaux d’arrivée d’eau, de tout à l’égout et d’eau pluviale existants) ou pire, les tuyaux de gaz (là j’ai une métaphore qui me vient aussi mais je vais m’abstenir :D)
– Vous économiserez la location de la mini pelle qui n’est fichtrement pas donnée, ainsi que le gasoil nécessaire et autres consommables imprévus.
– Vous faites moins de bruit, pas de soucis de voisinage
– Vous vous musclez (ho que oui !)
– Vous pouvez prendre votre temps, pas besoin de rendre la pelle à 18h00 pile (fermeture de kiloutou), sauf si vous avez loué cette même pelle, auquel cas vous auriez bien mieux fait de l’acheter.
Quelle taille (profondeur) pour ma tranchée ?
Touts dépends de votre région, des normes imposées par votre mairie ou par les fournisseurs (erdf, eau…), par chez moi (sud ouest) c’est visiblement entre 60 et 80 cm de profondeur pour l’eau/tout à l’égout, et 40 minimum pour l’électricité mais comme c’est impossible d’avoir une vraie info, même en demandant à la source, on verra bien le jour du raccordement final :D.
Le but étant que ce soit assez profond pour que le poids de votre voiture puisse passer sans tout péter, et que les tuyaux ne gèlent pas par temps froid.
Petits conseils lors de la conception de votre tranchée :
– Achetez vous des gants de jardinage (les premiers prix en laine recouvert de vieux caoutchouc à 2€), c’est le meilleur investissement que vous puissiez faire, vous évitez les mains de paysan a la fin de la journée, pas de risques d’infections / tétanos, vous pouvez gratter votre tranchée aux endroits ou ça la démange à même la main (et ça arrive souvent de gratter).

– Si vous sentez un truc qui tire ou un truc dur, même si vous pensez que c’est une racine, déterrez le rapidement à la main, c’est peu être une conduite de gaz (boum) ou autre (eau, tout a l’égout, pluie etc…)

– Placez la terre à minimum 30cm de la tranchée, de cette manière elle ne retombera pas sous forme de boue lorsqu’il pleuvra; et restera a portée lorsqu’il faudra reboucher.

– Si vous avez des passages avec du béton, n’essayez pas la masse, c’est rare que votre béton soit assez fin, louez direct un marteau piqueur (poids 10k max sinon vous n’aurez plus de bras en fin de journée, et électrique pas pneumatique sinon il vous faudra un compresseur en plus),
et éventuellement une disqueuse à métal pour découper les fil de métal qu’il y a parfois dans le béton renforcé.
Notez bien que ces outils sont parfois (souvent) plus rentable à acheter qu’à louer, à vous de faire le calcul mais vous pouvez compter avec les taxes et autres presque 72€ la journée de location pour un marteau piqueur qui en vaut 150€, au final c’est rarre de ne l’utiliser qu’une journée…
– Dans ces moments là, rappelez à vos potes tout ce qu’ils vous doivent et embarquez les avec vous dans cette joyeuse aventure :D.
CA y est, vous êtes l’heureux papa d’une jeune tranchée ! (maman participe rarement à la naissance)
MAIS ATTENTION !!
Une tranchée demande un entretien soigneux afin de rester en vie ! en l’occurrence, votre pire ennemi sera, et je mâche mes mots :
La pluie tue, la pluie provoque le cancer des testicules, la pluie est responsable de l’extinction du thon rouges, oui mes frères, la pluie c’est le mal absolu.
Et vous pouvez compter sur elle pour être de la partie pile le jour où vous allez creuser.
Vous l’aurez compris, si vous ne faite rien de plus, votre tranchée se noiera, vous pourrez peut être la sauver en l’écumant (pas avec une pompe ça serait trop facile : la terre bouche tous les filtres de pompes entrée de gamme, il vous faudrait une pompe de pro et ça cout un œil, bref c’est un seau, ou un saladier en ce qui me concerne). Le soucis étant que la terre a tendance a se transformer en boue après… et vous devrez tout recommencer le jour suivant.
Bref, il vous faut prévoir dès le début une couverture pour votre bébé tranchée (oui, une bâche), seulement voilà : une couverture ne suffira pas.
Car la pluie, en plus d’être fourbe, pernicieuse, chafouine et autres vices indescriptibles, est extrêmement lourde.
Elle pèsera de tout son poids de Boeing 747 mort sur votre bâche jusqu’à ce que celle ci s’écroule tout aussi surement que si vous aviez sauté à pieds joints dessus.
Vous pouvez évidemment border votre tranchée en plaçant de gros galets (ou tout ce qui vous passe sous la main, poubelles, vieux bidet récupéré de la salle de bain, tuiles, gravats) sur les bords de sa couverture, mais cela ne suffira pas non plu..
J’ignore si je vous l’ai dit mais : la pluie est foutrement lourde !! Vos galets vont se déplacer, et tomber avec la bâche pleine d’eau, dans la tranchée (yeaaahh).
Il vas donc falloir mettre en place une “armature” pour éviter que la bâche fasse des “bassines” d’eau super lourdes qui emportent le tout dans la tranchée, le but sera donc d’empêcher la couverture (bâche) de bébé tranchée de s’incurver vers le bas.
Pour cela, récupérez des petites planches de la largeur de la tranchée, placez les en travers tout les 1m ou 2m,
puis placez vos planches les plus longues sur les petites planches de support afin de créer une sorte de “pont” plat tout le long de la tranchée, pont que vous pourrez ensuite recouvrir de votre couverture bordée.
Ça y est , votre tranchée est protégée, heureuse, épanouie, et à l’abri de cette fuck’in pluie maléfique, vous avez alors plus de temps à vous consacrer en tant que parent pour apprécier sa compagnie, ou effectuer d’autres petites tâches futiles comme acheter le tuyau de 125mm de diamètre avec une pente de 3% (oui, ça fait 3 cm de pente tous les mètres) que vous allez offrir à votre tranchée afin qu’elle puisse héberger le transit de vos étrons les eaux usées et autres fluides/matières non identifiés caractérises par le terme “tout à l’egout”.
Vers la fin de sa vie (lorsque vous n’aurez plus de tuyaux à y placer) ne l’incinérez pas (ça fait mauvais genre auprès des pompiers communaux), enterrez la plutôt en prenant soin de ne pas la blesser avec de gros cailloux, gravats, tuiles … (oui ce genre de trucs : )
Bref soyez respectueux de votre tranchée, et surtout de ses tuyaux qui se percent très facilement avec ce genre de détritus, un lit de sable fin étant le plus bel enterrement que vous puissiez lui faire.
Amen.
";s:7:"dateiso";s:15:"20150308_181210";}s:15:"20141226_180044";a:7:{s:5:"title";s:48:"Yana : refactoring violent des plugins de relais";s:4:"link";s:70:"http://blog.idleman.fr/yana-refactoring-violent-des-plugins-de-relais/";s:4:"guid";s:30:"http://blog.idleman.fr/?p=3843";s:7:"pubDate";s:31:"Fri, 26 Dec 2014 17:00:44 +0000";s:11:"description";s:335:"Voila un bail que je me promettais de tout casser à nouveau sur YANA ! J’ai enfin pu profiter des jours fériés de noël pour m’y pencher ! ET notamment sur les plugins de relais radio et filaires qui avaient grand besoin d’un petit “refactoring”. Rien de bien folichon sur les nouveautés cela dit si […]";s:7:"content";s:3045:"Voila un bail que je me promettais de tout casser à nouveau sur YANA !
J’ai enfin pu profiter des jours fériés de noël pour m’y pencher ! ET notamment sur les plugins de relais radio et filaires qui avaient grand besoin d’un petit “refactoring”.
Rien de bien folichon sur les nouveautés cela dit si ce n’est quelques petits détails qui perturbaient pas mal d’utilisateurs :
J’invite bien sûr les développeurs de plugins à se baser sur ces nouveaux modèles pour créer leurs futurs plugins, ceux ci étant plus propre et permettant plus de choses que leurs
prédécesseurs en termes structurels et fonctionnels.
Les plugins donnent également un exemple complet d’utilisation du système de Dashboard et de widget pour une entité.
NB : Je conseille vivement à ceux qui souhaitent mettre yana à jour de réinstaller la base en même temps, les tables des anciens plugins pouvant interférer avec les nouveaux.
Noyeux Joël bande de moules !
";s:7:"dateiso";s:15:"20141226_180044";}s:15:"20141130_161624";a:7:{s:5:"title";s:25:"Le bordel de l’info #30";s:4:"link";s:45:"http://blog.idleman.fr/le-bordel-de-linfo-30/";s:4:"guid";s:30:"http://blog.idleman.fr/?p=3831";s:7:"pubDate";s:31:"Sun, 30 Nov 2014 15:16:24 +0000";s:11:"description";s:344:"Salut bande de tièdes nouilles instantanées (et vlan!). Vous en avez dla chance !! A l’heure ou le divin dispose enfin de son propre système d’exploitation, à l’heure ou les héros de notre jeunesse revienne nous tabasser à grand coup de pompes, bref à l’heure du WTF complet, vous êtes chez vous, peinard, chez belle […]";s:7:"content";s:9794:"Salut bande de tièdes nouilles instantanées (et vlan!).
Vous en avez dla chance !!
A l’heure ou le divin dispose enfin de son propre système d’exploitation, à l’heure ou les héros de notre jeunesse revienne nous tabasser à grand coup de pompes, bref à l’heure du WTF complet, vous êtes chez vous, peinard, chez belle maman en train de vous gaver de vos plats préférés à outrance (ne niez pas, on a tous la même belle maman) tout en vous dégustant cette 30em part d’aligot-choucroute-info qui fait au moins autant de bien quand elle re-sort que quand elle rentre (il y a du Baudelaire la dedans…)
Bien a vous.
Idle
";s:7:"dateiso";s:15:"20141130_161624";}s:15:"20141013_200054";a:7:{s:5:"title";s:36:"Un petit “tempêtage” de tête ?";s:4:"link";s:50:"http://blog.idleman.fr/un-petit-tempetage-de-tete/";s:4:"guid";s:30:"http://blog.idleman.fr/?p=3817";s:7:"pubDate";s:31:"Mon, 13 Oct 2014 18:00:54 +0000";s:11:"description";s:388:"Étant donné le nombre de questions à ce sujet dans les commentaires, je me disais qu’il pourrait être intéressant de profiter de la cohorte d’experts que j’ai la chance de compter dans mes lecteurs pour faire un ptit ‘tempetage de tête’ (ou brainstorming si vous y tenez) à propos des solutions de reconnaissance/synthèse vocales existantes […]";s:7:"content";s:8503:"Étant donné le nombre de questions à ce sujet dans les commentaires, je me disais qu’il pourrait être intéressant de profiter de la cohorte d’experts que j’ai la chance de compter dans mes lecteurs pour faire un ptit ‘tempetage de tête’ (ou brainstorming si vous y tenez) à propos des solutions de reconnaissance/synthèse vocales existantes et applicables dans un projet informatique
(entre autres, yana).
Ça devrait tout du moins me permettre de centraliser un peu mes recherches et constats concernant cette techno encore peu accessible aux gueux que nous sommes malgré les stupéfiants (mais réservés) progrès de google, apple et microsoft en la matière.
Voilà mon “état de l’art” sur le sujet (oui, je me la joue académique cette semaine)
J’ai besoin d’une librairie de reconnaissance et de synthèse vocale intégrable dans une solution domotique (yana)
Cette librairie doit être :
1 – Portable sur 3 minimum : debian (raspbian), windows, macOs
2 – Illimitée en nombre de requêtes, permettre l’écoute/la parole continue
3 – Si possible ne pas nécessiter le web
4 – Être gratuite ou low cost avec un cout ponctuel et non cyclique
5 – Être performante en terme de compréhension de la phrase énoncée, même sur un micro non spécialisé
6 – Ne pas être limitée en termes, en mots, en nombres d’expressions, ne pas être dépendant d’un fichier de phrases “statiques”
7 – Prendre en charge la langue française
Voyons ce qui existe aujourd’hui :
Pour répondre direct à la question qui revient régulièrement dans les commentaires :
Non, jasper.io (et aussi LISA) n’est pas une solution de reconnaissance vocale mais un simple CMS qui utilise PocketSphinx et donc qui est inapplicable dans notre système domotique a moins de parler couramment anglais (avec la bonne intonation sinon c’est mort) à votre maison.
Le plus gros HIC étant que même en combinant les librairies, on n’arrive pas à quelque chose de concluant dans le monde linux.
De ce côté là c’est déjà plus simple bien que pas encore parfait:
Pour la synthèse je suis actuellement partis sur le combo suivant pour yana4All :
Si l’OS est windows, on prend l’api windows (locale, performante, dynamqieu etc…) sinon…
On utilise l’api google speech dans le cas ou l’on a bien internet, sinon…
On utilise espeak qui est moche mais qui a le mérite de fonctionner gratuitement partout et en restant locale.
Cette parti est déjà implémentée à yana4All.
– Trouver une machine pouvant faire tourner Windows a bas coût (à trouver):
– Microsoft Sharks Cove à l’air de faire tourner du windows 8.1, mais elle coute dans les 300$
– hummingboard, bananapi,ne semblent pas pouvoir faire tourner windows
– beaglebones dispose visiblement d’un “Windows Embedded BSP” mais j’ignore si ça embarque ce qu’il faut pour de la reco
– La MinnowBoard MAX semble aussi pouvoir faire tourner Windows mais 178€, 81€ pour l’entré de gamme qui a l’air violemment bridée
– Installer android sur le pi ou trouver une machine low cost capable de faire tourner au minimum android 4.2 (reco locale) et déporter yana sur ce système pour bénéficier du nouveau sdk local d’android pour la reconnaissance (Si android tourne bien sur le pi SI on peux y placer la version qui embarque le sdk locale de reco/synthèse et SI on peux bien gérer les gpio et autres prérequis de yana) :
– UGOOS UM2 à l’air adaptée mais 75€ quand même ça pique un peu…
– Trouver un webservice gratuit fiable et rapide (la belle utopie)
– Utiliser une interface gestuelle plutôt que vocale (kinects, leapmotion, thalmic myo etc…)
– Trouver un moyen de faire fonctionner windows speech ou dragon naturally speaking sur linux via wine ou wineHQ
– Ajout de jerome : Enregistrer les phrases a reconnaître et faire une comparaison entre deux fichiers mp3 (la phrase a reconnaître et la phrase énoncée) (cf : http://en.wikipedia.org/wiki/Acoustic_fingerprint pour la comparaison par empreintes acoustiques)
– Ajout de YannXplorer: Acheter un carte Udoo (84€) qui permet d’installer android 4.3 avec la reco vocale locale, bonne solution mais encore trop cher
– Ajout de raphkun: Acheter un carte minnowboard-max(99$) qui permet d’installer windows et sa reco vocale, même argument que pour la udoo.
– Ajout de “ah merde j’ai oublié le pseudo et je retrouve pas le commentaire”:On peux gruger voxygen en chopant le stream audio depuis l’url : http://www.voxygen.fr/sites/all/modules/voxygen_voices/assets/proxy/index.php?method=redirect&text=test&voice=Electra&ts=14030902642 Ca fonctionne mais uniquement jusqu’au jour ou voxygen verrouillera le service.
Si vous avez des idées, questions, suggestions, insultes… pour faire avancer le schmilblick, c’est à vous de “tempêter du bulbe” dans les commentaires ! ![]()
";s:7:"dateiso";s:15:"20141013_200054";}s:15:"20130504_123352";a:7:{s:5:"title";s:103:"Raspberry PI ~ 20 : Créer un tableau de bord connecté au net (ou comment augmenter le nombre de GPIO)";s:4:"link";s:30:"http://blog.idleman.fr/?p=2626";s:4:"guid";s:30:"http://blog.idleman.fr/?p=2626";s:7:"pubDate";s:31:"Sat, 04 May 2013 10:33:52 +0000";s:11:"description";s:337:" Ce post est le vingtième d’une liste de tutoriels sur le raspberry PI, cliquez ici pour accéder au sommaire ! Yop bande de trous d’nez !! (je m’en lasse pas de celle la !) Ca fait un moment qu’on a … Continuer la lecture ";s:7:"content";s:20519:"
Ce post est le vingtième d’une liste de tutoriels sur le raspberry PI, cliquez ici pour accéder au sommaire !
Yop bande de trous d’nez !! (je m’en lasse pas de celle la !)
Ca fait un moment qu’on a rien bricolé d’inutile concernant le raspberry PI !!
C’est ma faute: je glande sur une thèse aussi useless que chronophage et que personne ne lira (et tant mieux aux vues de son contenu
) et puis accessoirement je roupille au soleil (voila pour la petite vie d’idle).
Pour passer le temps je vous propose tout de même un petit exercice de style :
On vas allumer et éteindre des diodes avec le rpi !
« Hé Idle tu nous prendrais pas pour des billes ?! On l’a déjà fait en tuto 6 !!”
C’est complètement vrai !! (c’était pour voir si vous suiviez) mais cette fois ci ce sera un peu différent
…
Nous allons construire un petit « tableau de bord » lumineux qui vas nous avertir de l’état de nos divers serveur, blog, site web, machines connectées au réseau (imprimantes,téléphone,fax etc..) en temps réel ! Chez moi ça donne ça :
![]()
L’objectif est donc de relier plusieurs diodes au rpi et de créer un système de « ping » (pour que la génération facebook me comprenne : c’est comme un « poke » mais pour les machines :p) régulier qui vas aller interroger certaines ip et allumer les led:
« Mais l’exercice est très simple, nous savons déjà le faire! C’est quoi l’intérêt? »
Hé bien premièrement un collègue m’a un peu taquiné sur le sujet, donc mon intérêt direct et de lui prouver qu’un IdleNaute n’est pas une trompette !
(ok ça vous avance à rien mais j’ai ma fierté merde ^^)
Et deuxièmement ça vas introduire la venue de deux nouveaux éléments électroniques intéressants !
Mais d’abord le petit quart d’heure de honte traditionnel :
(Vous noterez ma toute nouvelle maîtrise de montage vidéo, c’est quasi rien mais chuis super fier de moi
, quand on regarde la première vidéo de cette série de tuto on se dit que je suis partis de loin)
Vous l’aurez peut être remarqué, nous utilisons ici des LED qui ont la particularité de pouvoir afficher deux couleurs : vert et rouge.
Ce petit composant est assez intéressant en plus d’être très simple à utiliser, 3 pattes :
![]()
Ce composant est donc très intéressant et enfantin à utiliser, notez qu’il existe aussi des diodes dites RVB qui vous permettront
d’utiliser trois vrais couleurs : vert, rouge et bleu.
Nous nous contentons ici des RV (rouge vert) parce que c’est un peu moins cher, plus simple à utiliser et que ça suffit aux besoins de l’exercice, nous reparlerons des RVB dans un prochain tuto de toute manière
.
Mais je digresse !! revenons à nos diodes RV !!
Celles ci sont donc formidouble (doublement formidables) mais ont tout de même quelques inconvénients:
Pour le premier problème, il y a ebay, pour le second : l’huile de coude et pour le troisième : les shift registers !
« Nié ! shift what? »
C’est le second élément nouveau dont je vous parlais (le premier étant la diode RV évidemment).
Pour faire simple, un shift register est un composant électronique tout plein de papattes qui permet de multiplier vos sorties GPIO et ce, quasiment à l’infinis.
Avec le shift register que nous allons utiliser par exemple, nous n’auront besoin que de trois sorties GPIO du rapsberry PI pour simuler les 16 GPIO dont nous allons avoir besoin avec les LED.
Inutile donc de vous spécifier que dans le cadre de notre projet domotique qui pompe pas mal de GPIO, c’est un gros plus !
Assez déblatéré comme un chauve à lunette de la fac ! Il est temps de mettre les patounes dans l’cambouis !!
Je tiens à préciser que j’ai honteusement pompé puis mutilé un fabuleux schéma de zem.fr pour l’adapter au rpi et vous l’afficher ci dessous, merci à lui pour ses explications sur le shift register (au passage si vous aimez l’arduino allez visiter le blog il rox du pathé comme on dis chez moi)
.
L’explication sur le shift register se trouvent en fin de tuto (je ne veux pas vous embrouillez tout de suite :p, mais j’vous ai prévu un mega dessin z’allez voir ! )
Vous devez déjà avoir un serveur http (apache ou lighttpd peu importe) et PHP installé (si ce n’est pas le cas suivez le tuto 4)
Vous devez déjà avoir installé la librairie wiring PI (si ce n’est pas le cas suivez le tuto 6 )
sudo crontab -e
Et ajoutez la ligne :
*/1 * * * * php /var/www/ping/ping.php
Les diodes devraient se mettre à jour toutes les minutes en fonction des IP configurées, n’hésitez pas à lancer le script manuellement depuis votre navigateur (http://adresse.du.rpi/ping/ping.php) dans le cas ou ça ne fonctionne pas avec le cron
.
La tâche planifiée (le cron) qu’on à mis en place vas exécuter toutes les minutes le fichier php contenant notre code.
Le fichier php vas, interroger chaque IP que nous avons renseignées pour savoir si elles « répondent ».
On part alors du principe qu’une LED vas représenter la réponse d’un IP :
Si l’ip répond: PHP vas mettre un port GPIO du shift register à 1 qui correspond à la couleur verte de la led liée.
Si l’ip ne répond pas: PHP vas mettre un port GPIO du shift register à 1 qui correspond à la couleur rouge de la led liée.
“Tout ça c’est bien beau mais on ne comprends toujours pas comment manipuler un shift register !!”
Tu as raison jeune trublion !!
J’ai gardé le meilleur pour la fin !! ![]()
Comme c’est un concept (pourtant simple) qui ne cadre pas avec mon cerveau étriqué, j’ai fait un petit dessin pour que mes semblables trépanés du bulbe et moi on se comprenne, mémorisez bien la petite histoire suivante :
![]()
J’espère que vous avez adoré l’histoire (je sort une BD en 2014, je crois que j’ai de l’avenir dans cette branche XD) et que vous n’avez pas trop vomi
.
Outre la qualité affligeante de cette image (sur laquelle j’ai pourtant bien passé 20 minutes) on notera qu’elle représente le fonctionnement exacte du shift register (du moin tel que je l’ai compris ^^), je m’explique :
Le shift register (la table) a 8 GPIO (8 Verres) qui peuvent être à 0 (vide) ou a 1 (plein).
On a pas le droit de toucher aux verres sur la table, pour modifier l’état d’un verre, on ne peux qu’en rajouter un nouveau (le fameux todd) en lui définissant une valeur (vide ou plein).
Sauf qu’en rajoutant Todd le verre, on pousse les autres et le dernier se fait éjecter de la table (die stupid glass ! die !!).
Il vas nous falloir trois “bouton” pour effectuer cette action : un bouton pour remplir ou laisser vide le verre, un bouton pour ajouter le nouveau verre sur la table (et donc pousser les autres) et un dernier bouton pour “valider” la nouvelle configuration de la table ![]()
3 bouton = 3 pattes du shift register branché au raspberry PI, il ne nous en faudra pas plus pour ouvrir/fermer les 8 GPIO du shift register de cette façon
.
Maintenant voyons un ptit schéma simplifié du composant :
Si vous êtes comme moi vous allez vous demander en premier quel esprit démoniaque a pu penser que mettre tout les gpio d’un coté SAUF UN était pertinent… faut vraiment être le fil de personne pour imaginer des puces comme ça oO ! M’enfin
!
Donc à ce stade je ne vous ferait pas l’affront de vous expliquer à quoi correspondent les GPIO, la MASSE et L’ALIM (si vous ne savez pas, retour au tuto 1
).
Les trois boutons dont nous parlions sont :
“VALEUR” (en réalité nommé SER) qui vas remplir ou non le nouveau verre.
”SUIVANT” (nommé en réalité RCLK) qui vas ajouter le nouveau verre sur la table et pousser les autres
VALIDATEUR (en réalité SRCLK) qui vas prendre en compte la nouvelle configuration ![]()
“Et “CONNECTEUR” alors ? Il sert à quoi?”
Il vas nous permettre de brancher d’autres shift register au premier, ce qui donnera l’équivalent d’un gros shift register de 16 GPIO avec deux shift de 8 par exemple
.
CONNECTEUR devras être branché au VALEUR du shift register ajouté, il est possible de rajouter autant de shift les un sur les autre que vous le souhaitez, évidemment au bout d’un moment vous risquez d’avoir quelques problèmes de lenteur et d’alimentation si vous ne savez pas vous arrêter ^^ (je vais tapisser mes murs avec des shift register et dominer le mmooonde niark niark niark!!!).
“Et les papattes dont tu ne nous à pas parlé ?”
Dans notre contexte,elles sont un peu useless, disons qu’elles ont une fonction utile, mais que prendre un précieux gpio de plus sur le rasp pour ça c’est pas forcement nécessaire,voila le schéma avec les vrai nom des pattes :
![]()
(ça calme tout de suite hein ?
)
SRCLR dont nous n’avons pas parlé, peut être passé en High puis low afin de remettre toute les pin du shift registrer à 0 (ce qui peut aussi être fait manuellement avec les 3 pin dont nous disposons déjà, d’ou le “un peu useless”)
OE quand à lui permet d’activer la sortie lorsqu’il est sur la masse (GND) et la désactive lorsqu’il est en High, on le laisse donc toujours branché à la masse.
C’est tout pour aujourd’hui !
Vous l’aurez compris, le principal intérêt de ce tuto est d’abord la notion de shift register qui vas nous permettre de jouer avec plus de GPIO sans trop d’efforts
.
Notez qu’il existe plein de type de shift register, certains ont beaucoup plus de sorties, d’autres peuvent se comporter en entrée et en sortie (relativement pratique) etc etc..
Je vous conseille de vous en trouver un qui soit simultanément en entrée et en sortie et qui puisse se “stacker” à d’autre de ses confrères comme celui que nous avons vu, puis de vous créer une ptite carte à brancher sur le raspberry PI pour multiplier définitivement ses entrées sorties par “x” ![]()
Bien à vous,
Idle
";s:7:"dateiso";s:15:"20130504_123352";}s:15:"20130425_163114";a:7:{s:5:"title";s:62:"[Billet invité] Un petit pense bête pour le hacking du raspi";s:4:"link";s:30:"http://blog.idleman.fr/?p=2437";s:4:"guid";s:30:"http://blog.idleman.fr/?p=2437";s:7:"pubDate";s:31:"Thu, 25 Apr 2013 14:31:14 +0000";s:11:"description";s:355:"Article rédigé par le lecteur Sébastien DELPORTE Voici un document de deux images pense bête pour ceux qui veulent faire des montages électroniques avec le RaspberryPi : Rappel du calcul de la valeur des résistance pour les led rappel … Continuer la lecture ";s:7:"content";s:1208:"Article rédigé par le lecteur Sébastien DELPORTE
Voici un document de deux images pense bête pour ceux qui veulent faire des montages électroniques avec le RaspberryPi :
Source :
https://docs.google.com/file/d/0B23BvTk93HRYQU1NYTBENTNvTXM/edit
Bonne lecture
";s:7:"dateiso";s:15:"20130425_163114";}s:15:"20130421_160533";a:7:{s:5:"title";s:49:"Raspberry PI ~ 19 : Optimisation, trucs & Astuces";s:4:"link";s:30:"http://blog.idleman.fr/?p=2488";s:4:"guid";s:30:"http://blog.idleman.fr/?p=2488";s:7:"pubDate";s:31:"Sun, 21 Apr 2013 14:05:33 +0000";s:11:"description";s:351:" Ce post est le dix-neuvième d’une liste de tutoriels sur le raspberry PI, cliquez ici pour accéder au sommaire ! Amis de l’électronique, passez votre chemin, nous ne parlerons cette fois ci que de pure informatique, et pas de … Continuer la lecture ";s:7:"content";s:35248:"
Ce post est le dix-neuvième d’une liste de tutoriels sur le raspberry PI, cliquez ici pour accéder au sommaire !
Amis de l’électronique, passez votre chemin, nous ne parlerons cette fois ci que de pure informatique, et pas de haut niveau en plus
, cela dit ça peux intéresser plus d’un idlenaute donc je vous conseille de gratter un peu cet article quitte à vous taper une lecture en diagonale de ce véritable « pavé du dimanche ».
Je me suis rendu compte que j’ai oublié de préciser pleins de trucs et astuces “génériques” applicables au raspberry parce que ça me paraissait évident, mais au fil des commentaires et des mails qui m’ont été adressés je me suis dit que ça valait peut être la peine de faire un ptit billet pour éclaircir quelques points ![]()
(et puis ça me laisse un peu de temps pour bidouiller d’autres prototypes).
Les points abordés :
Depuis le début des tuto, vous aurez peut être constaté que j’utilise uniquement le mode console et non le bureau graphique, en effet je n’ai pas d’écran pour le raspberry et j’y accède depuis mon ordinateur portable ce qui me permet de trimballer le RPI et d’y accéder depuis n’importe quel PC sans trainer un écran 19 pouces, un clavier, et une souris derrière moi
.
Ceci est possible grâce à la communication SSH, pour faire court et grossier : votre raspberry pi comprend un serveur nommé : SSH, auquel vous pouvez vous connecter depuis un client SSH depuis n’importe quel PC, une fois connecté, vous aurez accès au terminal comme si vous étiez sur le rapsberry PI
Pour vous connecter a cette console, il vous suffit de télécharger et d’installer le programme gratuit Putty, puis de rentrer l’ip locale de votre raspberry PI et cliquer sur “Open”
Pour obtenir l’ip réseaux du raspberry PI, vous pouvez regarder sur le panel de votre box (les pc qui y sont connecté), ou brancher temporairement un écran au raspberry pi et taper la commande ifconfig, l’ip suis le libellé “inet addr”
Notez que cette IP peux changer (bien que votre box essaye généralement de conserver des ip “favorites” par machines), vous pouvez donc la fixer une bonne fois pour toute avec la manip suivante qui permet de passer d’une ip dite “dynamique” à une ip “statique” :
Tapez dans la console :
sudo nano /etc/network/interfaces
Et remplacez
iface eth0 inet dhcp
par
iface eth0 inet static
address 192.168.1.x
netmask 255.255.255.0
network 192.168.1.0
broadcast 192.168.1.255
gateway 192.168.1.1
Il vous faudra remplacer le libellé de “adress” par votre ip réseaux actuelle ainsi que
netmask : Vous pouvez le trouver dans la valeur “Mask” du ifconfig
broadcast : Vous pouvez le trouver dans la valeur “Bcast” du ifconfig
gateway : C’est l’ip de votre routeur/box, vous pouvez la trouver dans le panel admin de votre box sous le libellé (serveur DHCP le plus souvent)
Enregistrez et redémarrez, votre ip sera fixe et toujours accessible depuis Putty.
Attention !! Notez bien que lorsque vous fixez cette ip, elle ne peux plus s’adapter dynamiquement à un autre réseau, aussi si vous trimballez votre rpi autre part, pensez à remettre l’ip en dynamique.
Si vous n’aimez pas trop la ligne de commande ou que vous souhaitez faire une manip sur le bureau virtuel du raspberry pi sans avoir d’écran, vous pouvez installer un serveur dit “VNC” qui permet de déporter l’affichage du raspberry Pi, sur un autre pc, vous avez donc un écran dans un autre ^^ :
Il existe de nombreux serveurs VNC disponibles, mais le moins contraignant à installer est tightvncserver.
Pour l’installer, tapez la ligne de commande
sudo apt-get install tightvncserver
Il vous faudra alors lancer le serveur avec la commande
tightvncserver
Et ce à chaque fois que vous voudrez l’utiliser, vous pouvez bien entendu vous débrouiller pour lancer cette commande au démarrage via un service ou un cron ou autre…
Au premier lancement il vas vous demander un mot de passe pour se connecter au bureau distant, si vous n’êtes pas trop dingue, vous mettrez le même que celui de votre compte raspberry PI ![]()
Lorsqu’il demande si vous voulez de la lecture seule, répondez n (non)
Would you like to enter a view-only password (y/n)?
Le serveur est lancé et configuré :
Notez que le serveur est lancé par défaut sur le port “2” qu’il faudra retenir, ainsi que l’adresse ip de votre raspberry (cf partie connexion à la ligne de commande)
Il vous faut maintenant un client de connexion VNC sur la machine ou vous souhaitez déporter l’affichage du raspberry PI, realVNC est gratuit, simple, performant et dispo pour linux, mac , et windows: http://www.realvnc.com/download/viewer/
installez et lancez realVnc puis entrez l’adresse ip réseau de votre rapsberry PI, suivis de votre port (par défaut 2) les deux séparés par “:”
Et cliquez sur “connect”
nb : de mémoire, un warning vas vous avertir que la connexion n’est pas sécurisée, cliquez sur le bouton continue (à moins que ça vous froisse que ca ne soit pas sécurisé évidemment
, chez vous ça ne change pas grand chose, mais évitez de vous connecter depuis un lieu public ou du boulot)
le client vous demande alors le mot de passe que vous avez donné au serveur VNC lors de son installation :
Vous arrivez ensuite sur votre bureau distant et pouvez interagir avec comme vous le souhaitez ![]()
On a vu dans le tuto ~ 04 : Configurer en serveur comment mettre en place un serveur dit “http” pouvant héberger des sites web sur le rapsberry PI.
Nous avions choisis le serveur Apache qui et le plus populaire, mais aussi le plus vieux et le plus lourd de ce qui se fait en ce moment.
Apache fait beaucoup d’entrées fichiers ce qui peut à long terme abimer la carte SD de votre raspberry PI, il est donc plus intéressant de se tourner vers des serveurs plus léger comme Nginx ou lighttpd
Les deux sont très rapides, légers et peu gourmands en ressources, et n’en déplaisent aux fanatiques de l’un ou de l’autre : ils sont relativement équivalent.
Parce qu’il faut faire un choix, et parce qu’il s’est avéré moins chiant à installer, j’ai choisis lighttpd * les pro-nginx vous pouvez huer *.
lighttpd à surtout un gros avantage pour moi : il est beaucoup plus simple de le relier à PHP que nginx (c’est du vécu, j’ai fait 4/5 tutos sur nginx, aucun n’était d’accord avec l’autre, et certains parlaient même d’installer lighttpd en premier puis de le désinstaller afin d’avoir les prérequis pour nginx… bref)
Donc si vous avez apache, commencez par le désinstaller correctement sinon il fera interférence avec lighttpd par la suite. Attention cependant apache peut être très chiant a désinstaller, le mieux reste encore de repartir d’un raspian vierge si vous le pouvez, sinon je vous laisse vous amuser comme je l’ai fait à tester tout plein de manip pour vous débarasser de l’outrecuidant correctement.
Installez ensuite lighttpd
sudo apt-get install lighttpd
Puis les pré-requis pour avoir php5 er le relier a lighhtpd
sudo apt-get install php5-common php5-cgi php5 sudo lighty-enable-mod fastcgi-php
Redémarrez le serveur http
sudo service lighttpd force-reload
A ce moment la si vous avez des erreurs types “port 80 busy” un truc du style, c’est que vous avez mal désinstallé apache et qu’il tourne encore, ou qu’un autre serveur http est déjà en place.
Et enfin réattribuez les bons droits sur les bons dossiers pour que lighttpd puisse faire son boulot
sudo chown www-data:www-data /var/www sudo usermod -a -G www-data pi
Si tout s’est bien passé vous devriez pouvoir vous connecter via un navigateur à l’ip de votre rapsberry PI et voir la page d’accueil par défaut de lighttpd
Pour ce qui est de la base de données, je vous conseille également de désinstaller MySQL (si vous n’avez installé aucune appli qui tourne avec évidemment) et de le remplacer par SQLite qui est un peu moins gourmand et épargnera votre raspberry PI également :
sudo apt-get install sqlite3 sudo apt-get install libsqlite3-0 libsqlite3-dev sudo apt-get install php5-sqlite
Une seedbox est un serveur dédié au téléchargement illégal de fichiers vidéos/audio/multimédia etc…
Il est très simple de transformer le raspberry pi en seedbox afin de pouvoir faire les choses suivantes :
On vas commencer par monter un disque dur (le plus gros possible) de manière permanente sur le raspberry PI, puis installer un serveur de partage de fichiers afin de pouvoir rendre accessibles nos fichiers depuis tous les pc de notre réseau, puis on installera un client de torrent permettant le téléchargement et l’envois de fichiers multimédia, enfin on configurera tout ça pour lier les éléments ensembles.
Prêt à manger du beurre par les trous de nez? Envoyons le Pathé !
Premièrement on update parce que ça ne fait jamais de mal avant une installation :
sudo apt-get update
puis on installe un paquet qui nous sera indispensable par la suite :
sudo apt-get install ntfs-3g
Puis, on trouve un disque dur assez balèze (genre 2To) et on le branche au port USB du raspberry PI. La rapidité de transmission est un plus, mais ce qu’il vous faut c’est surtout :
Un disque dur grosse capacité
Un disque dur avec une alim externe (le rpi étant très mauvais avec les périphériques alimentés par USB).
Un disque dur formaté en NTFS (vous pouvez le mettre en FAT mais il vous faudra modifier quelques paramètres de ce tuto)
Placez au moins un fichier test.txt sur le disque dur pour faire des tests d’ouverture de disque plus loin dans le tuto
on vas créer une sorte de “lecteur permanent” dans le dossier “media” sur lequel on pointera notre client de torrents.
sudo mkdir -p /media/disque2To
On configure les droits pour que le client torrent puisse écrire dans ce lecteur
sudo chmod -R 777 /media/disque2To
Attendez quelques secondes le temps que le rpi détecte le disque dur puis tapez
sudo blkid
Une liste de périphériques s’affichent, retenez le champs UUID pour le périphérique ayant le LABEL qui correspond à votre disque dur (mon disque dur 2To s’appelle IdleBox)
Maintenant qu’on connais l’identifiant unique de notre disque dur, on vas spécifier au rpi de lier à chaques démarrage cette id au dossier qu’on à créé spécialement pour lui (/media/disque2To).
On édite pour ça le fichier /etc/fstab
sudo nano /etc/fstab
et on y ajoute la ligne
UUID=F21843B31843759F /media/disque2To ntfs-3g defaults 0 2
Evidemment l’UUID doit être modifié en fonction de votre UUID à vous.
Puis on sauvegarde et on reboot
sudo reboot
A ce stade la normalement le contenu de votre disque dur est monté et est disponible via le dossier /media/disque2To, vous pouvez vérifier qu’il contient bien votre fichier test.txt avec la commande.
cd /media/disque2To && ls
(oui moi j’ai un peu plus de bordel qu’un simple fichier test.txt mais le principe reste la
)
Cette phase est très délicate, le système ou le disque dur font souvent la sourde oreille, vérifiez donc bien que vous avez vos fichiers dans /media/disque2To sans quoi la suite du tuto ne fonctionnera pas.
En cas d’erreur vérifiez bien :
Si l’erreur persiste, essayez de trouver l’erreur au démarrage du rapsberry PI, généralement il vous indique d’ou viens la couille avec un gros “FAILED” rouge.
Bien !! Le plus dur est fait !!
Maintenant on vas faire en sorte que le disque dur (accessible depuis le dossier /media/disque2To si vous avez bien suivis) soit également disponible en partage, c’est à dire que les autres PC de votre réseau local puissent y accéder !
Pour cela, il vous faudra installer un serveur de partage sur votre rapsberry PI, le plus connus (et le seul que je connais d’ailleurs) est samba !
On installe donc samba (et avec le sourire siouplé !)
sudo apt-get install samba
Il est possible qu’il soit déjà installé, chez moi il l’était mais c’est peut être parce que j’avais fait la manip précédemment, dans tous les cas la commande ne vous fera pas de mal
.
maintenant que samba est installé il vas falloir partager le dossier /media/disque2To sur le réseau.
Pour ça, on commence par editer le fichier de configuration de samba :
sudo nano /etc/samba/smb.conf
Cherchez la ligne
# security = user
et placez en dessous :
security = share
De cette manière vous ouvrez un peu votre serveur de partage aux utilisateurs autres que les utilisateurs interne du rpi
Puis cherchez le bloc [print$] …
Et placez en dessous le bloc :
[disque2To]
comment = Disque multimedia
path = /media/disque2To
browseable = yes
guest ok = yes
writeable = yes
public = yes
create mask = 0777
directory mask = 0777
Enfin redémarrez samba
sudo service samba restart
Et remettez un ptit coup de permission sur votre dossier partagé pour être sûr.
chmod 777 –R /media/disque2To
Vous devriez maintenant voir le partage depuis vos autres PC, par exemple depuis mon windows Seven :
Vérifiez bien que vous avez la permission d’entrer et d’écrire dans le disque.
nb : Il est possible que ce sale bataw de windows vous demande un login/mot de passe alors que nous avons tout fait pour justement ne rien avoir à mettre.
il vous faudra alors taper:
login : WORKGROUP\votre login windows
mdp : votre mot de passe windows
Cochez la case ‘se souvenir’ histoire de ne plus être emmerdé par la suite.
Bien !! Maintenant que nous avons un disque dur monté et partagé sur le réseau !! Il vas falloir le remplir avec vos films de vacances légalement téléchargés via un logiciel de torrent !
Le must pour moi en matière de logiciel de torrent c’est transmission : léger, simple, ergonomique, dispose d’une jolie interface web et facilement configurable
sudo apt-get install transmission-daemon
Transmission vas utiliser deux dossier sur votre disque dur, un dossier pour stocker les fichiers temporaires de téléchargements, et un dossier pour stocker les fichiers finaux, on vas donc créer ces deux dossiers
sudo mkdir /media/disque2To/downloaded /media/disque2To/pending
downloaded : dossier qui contiendra vos films de vacances terminés
pending : dossier qui contiendra vos films de vacances en cours de téléchargement
On place ensuite l’utilisateur “pi” dans le groupe de transmission
sudo usermod -a -G debian-transmission pi
Et on place les deux dossiers précédemment créé dans ce groupe aussi (c’est la fête du slip pour gérer les permissions)
chgrp debian-transmission /media/disque2To/downloaded /media/disque2To/pending
Enfin (et c’est la dernière manip concernant les permissions) on donne un droit 770 sur les deux dossiers
chmod -R 770 /media/disque2To/downloaded /media/disque2To/pending
On édite le fichier de configuration de transmission pour lui filer nos deux dossiers et régler quelques autres configs rigolotes :
sudo nano /etc/transmission-daemon/settings.json
Trouvez les lignes qui correspondent à ça :
« download-dir »: » /un/chemin/pourri » ,
« incomplete-dir »: » /un/autre/chemin/pourri » ,
« incomplete-dir-enabled »: false,
« rpc-password »: « un mot de passe crypté super long type {EBIBEIUBSIBSIBSIUB… »,
« rpc-username »: »transmission »,
« rpc-whitelist « : « 127.0.0.1″,
et remplissez les avec les bonnes valeurs
« download-dir »: » /media/disque2To/downloaded » ,
« incomplete-dir »: » /media/disque2To/pending » ,
« incomplete-dir-enabled »: true,
« rpc-password »: « mon mot de passe »,
« rpc-username »: »mon pseudo »,
« rpc-whitelist « : « 127.0.0.1,*.*.*.* »,
Evidemment les lignes ne sont pas toutes collées les unes sous les autres, il vous faudra les chercher
(je vous avais pas dit que je vous vendrais du bonheur ?)
nb : Notez que j’ai placé la clause *.*.*.* dans rpc-whitelist, celle ci indique que toutes les adresses ip ont le droit de se connecter à votre seedbox (si elles connaissent le user/mot de passe bien entendu), ceci vous permet de vous connecter de partout dans le monde à votre seedbox (il faudra penser à débloquer le port 9091 de votre routeur/box si vous souhaitez y acceder de l’extérieur quand même mais bon…) si vous voulez que transmission n’accepte que les ip réseau locale, vous pouvez mettre 192.168.*.* à la place.
Enregistrez le bouzin et relancez le service
sudo service transmission-daemon reload
Votre Seedbox est fin prête !!
Pour télécharger de nouveaux films de vacances via des fichiers torrents vous n’avez plus qu’a vous connecter via un navigateur à votre seedbox à l’adresse :
http://ip.du.raspberry.pi:9091
9091: port par défaut de transmission (vous pouvez le modifier dans le setting.json, moi j’ai mis 666 pour le fun
)
A la connexion transmission vous demandera les login et mot de passe entré dans le settings.json:
Et paf vous atterrissez sur votre client torrent :
Vos fichiers une fois téléchargés apparaitront dans le dossier downloaded de votre disque dur, lui même disponible en partagé depuis tout votre réseau locale.
Merci à Tom Canac qui à généreusement partagé ses pistes avec moi afin que nous arrivions à quelque chose de concret sur ce point ![]()
Par défaut le rpi s’appelle raspberrypi ce qui est laid nous en conviendront on à donc cette ligne qui précède toutes nos commande:
pi@raspberrypi: ~#
Pour changer ce nom il faut éditer les fichiers /etc/hostname et /etc/hosts, dans ces deux fichiers, remplacez le nom raspberrypi par le nom que vous souhaitez, puis sauvegardez, fermez et redémarrez le raspberry PI, j’ai appelé le mien pib0x ‘(je sais… mais j’avais pas d’idées, ne me jugez pas T_T)
Lors de l’ouverture d’une console sur votre rpi, vous avez un message par défaut de toute beauté qui s’affiche :
The programs included with the Debian GNU/Linux system are free software;
the exact distribution terms for each program are described in the
individual files in /usr/share/doc/*/copyright.
Debian GNU/Linux comes with ABSOLUTELY NO WARRANTY, to the extent
permitted by applicable law.
Type ‘startx’ to launch a graphical session
On vas changer ça par quelque chose d’un peu plus yorkmouth !!
Pour cela il faut éditer le fichier /etc/motd et remplacer le message par ce que vous souhaitez puis sauvegarder et rebooter (encore et toujours)!! Personnellement je vous conseille un message en ascii ça claque toujours
Pas besoin de vous prendre la tête des jours à faire l’ascii vous même, des services existent pour ça, suivez le guide
Je repasserais certainement sur ce tuto pour ajouter de petites astuces de temps en temps, aussi pensez à venir lorgner quand vous avez une minute ![]()
Bien à vous mes bichons baltais!
Idle
";s:7:"dateiso";s:15:"20130421_160533";}s:15:"20130412_203217";a:7:{s:5:"title";s:25:"Le bordel de l’info #26";s:4:"link";s:30:"http://blog.idleman.fr/?p=2396";s:4:"guid";s:30:"http://blog.idleman.fr/?p=2396";s:7:"pubDate";s:31:"Fri, 12 Apr 2013 18:32:17 +0000";s:11:"description";s:346:" Salut bande de pneus low cost non équilibrés ! Vous en avez d’la chance !! l’heure ou je suis juste complément bourré et ou je tape frénétiquement n’importe quoi sur ce blog, vous êtes peinards, dans votre lapin nain … Continuer la lecture ";s:7:"content";s:10866:"
Salut bande de pneus low cost non équilibrés ! Vous en avez d’la chance !! l’heure ou je suis juste complément bourré et ou je tape frénétiquement n’importe quoi sur ce blog, vous êtes peinards, dans votre lapin nain ou sous un sumo allemand à vous payer un 52em demi de bordel de l’info (ben oui… 26*2…laissez tomber T_T)
Si quelqu’un sait ou je peux trouver un autocollant comme ça je suis preneur
(via seb, again)
Tiens d’ailleurs en parlant de Seb !! Bon anniversaire vieux machin !! (ok j’ai 3 jours de retard mais pour moi c’est une performance), tous mes veux de bonheur et de longévité à ce dinosaure du web qui à inspiré, dépatouillé voir sauvé les âmes de milliers d’internautes et de blogueurs à travers le web (moi compris évidemment)
et sans lequel ce blog ne serait resté qu’un bloc note personnel :)
Voila plusieurs années que je me promets de toucher un mot au sujet des moteurs de Template et de leurs applications, je profite de votre air éveillé et taquin de ce début de soirée pour placer le sujet (ce sera chose faite).
Pour faire simple, un moteur de Template est une technique de programmation populaire qui permet de séparer distinctement l’interface graphique du reste de votre application.
Notez que par interface graphique j’entends toute la partie visuelle, la GUI, l’Interface, l’IHM, le skin, le visage, la moumoute, appelez ça comme vous voulez, ça n’en restera pas moins la partie qui constitue la communication visuelle avec l’utilisateur on ne parle donc pas uniquement du design mais aussi de la structure, de l’ergonomie, des animations etc…
Typiquement, un Template de projet web contiendra tous les fichiers html (structure),css et images (style/design) et JavaScript (animations).
Ainsi dans un projet web par exemple, le moteur de Template vous permettra d’avoir un fichier purement html/css/javascript d’un coté, et un fichier purement php/asp/java/… de l’autre vous dissociez donc d’un coté la vue (l’aspect visuel html/css etc..) des contrôleurs (le traitement pur des données via php/asp/java/ etc..)
Pourquoi utiliser cette technique me direz vous ? Ça peut de prime abord paraitre contraignant, inutile de dupliquer des fichiers pour rien.
Vous l’aurez compris de très nombreux avantages s’offre à vous avec ce modèle de développement.
Mais, ça fonctionne comment au juste ?
Eh bien typiquement ça dépend un peu du moteur de Template utilisé, mais généralement ça reste très simple :
Au lieu de créer une page index.php contenant tout votre code, vous allez placer votre code php dans une page index.php et votre html dans une page index.html
Puis à la fin du php vous signalerez que vous souhaitez lier cette page de traitement à la vue index.html
.
Attends, attends !! Mais il va forcement y avoir un problème là : comment je vais faire pour afficher mes variables dans l’index.html?
Encore une fois, cela dépendra du moteur de Template utilisé, mais en gros, les variables seront toutes disponibles dans l’index.html via des balises « spéciales ».
Oulah, ça m’a l’air compliqué ton truc !!
Meuhnaaann ! Tu vas voir ça gère la cacahuète, le meilleur reste encore de mettre la main à la pâte pour comprendre les enjeux et les gains du Template, alors allons y gaiement bande de moules !
Alors quel moteur de template choisir ?
En réalité je ne vais pas être très objectif là-dessus ^^, bien que le plus populaire (du fait de son grand âge surtout) soit le moteur de template Smarty, nous utiliseront ici le moteur RainTPL.
![]()
Vas falloir t’expliquer Idle, tu t’en sortiras pas comme ça
!!
Bon okay okay, vous l’aurez voulu, zallez vous taper une autre liste pour la peine :
Je ne pense pas me tromper en affirmant qu’il va vite devenir la référence du Template, pour moi c’est déjà le cas, et je ne suis pas le seul à le clamer haut et fort.
(voila pour la p’tite explication :p)
Notez que parmi les développeurs, il y à quelques aigris qui critiquent vivement les systèmes de templates, si on ôte à ceux-ci ceux qui cachent leur ignorance derrière le dédain, on
peux retrouver quelques raisons fallacieuses type :
‘Moi je n’utilise pas de Template parce que c’est moins rapide que du php pur et dur’.
… (j’ai sortis mes petits point désapprobateurs, je vais me fâcher tout rouge !!)
C’est complètement faux, en effet RainTPL à l’instar de 99% des moteurs de Template utilise un système de cache en générant les php finaux sous formes de fichiers php générés, donc au final c’est du php simple, sauf que c’est totalement invisible pour nous (et tant mieux)
Bon arrêtons la papote et mettons les mains dans l’cambouis !
Téléchargeons rainTpl sur le site officiel : http://www.raintpl.com/Download/
On va créer un ptit projet de test avec une page index.php pour le traitement, et une page index.html pour la vue.
Dans l’archive de rainTPL, seul le fichier inc/rain.tpl.class.php nous intéresse, c’est la librairie en elle même, le reste sont des fioritures (on jette
), dans mon exemple je met donc ce fichier que j’ai renommé rainTpl.php au même niveau que l’index.php et l’index.html
Voila le code de chacune:
index.php
index.html
(oui j’ai mis un peu de style, le time new roman me file des crises d’épilepsie)
Si pour une raison vraiment étrange votre copier coller ne fonctionne pas sur les screenshots (:D), vous pouvez trouver les sources directe ICI (bande de fainéants).
Toujours est il que vous obtenez un, ô combien magnifique, premier Template fonctionnel :
Vous noterez donc deux fonctions (méthodes) importantes pour la partie traitement(index.php) :
assign(nom variable, valeur variable) : permet de déclarer une variable qui sera utilisable dans la vue, on peut lui fournir n’importe quoi : un objet, un tableau, un entier, une chaine, un furet, il en fera de l’or…
draw(nom de la vue) : permet de définir la vue qui sera attachée au traitement, de cette manière on peut par exemple attacher une vue erreur en cas d’erreur ou la vue index quand tout se passe bien (ok ok je vous embrouille, dites vous juste que ça permet de donner le html à afficher).
Coté vue (index.html) les balises “spéciales” dont je vous parlais et qui sont à connaitre sont au nombre de 4 :
{$variable} : affiche une variable (comme si vous aviez fait un ‘echo $variable’)
{if= »condition »}{/if} : affiche selon une condition (équivalent de if(condition){consequence} en php)
{loop= »array »}{/loop} : permet de parcourir un tableau (équivalent de foreach($array){ } en php)
{include= »template »} : permet d’inclure une vue dans une autre (pratique pour inclure les header et footer que l’on retrouve partout dans l’application).
Vous ave évidemment d’autres balises à dispo avec un ptit exemple pour chacune dans la doc.
RainTPL est assez permissif par rapport à la structure de votre projet, il suffit de lui indiquer des chemins, ce qui bon et mauvais à la fois car si il autorise une plus grande souplesse et n’interfère pas avec l’architecture projet, il n’incite pas non plus à instaurer une bonne structure.
Dans ce domaine, je pense que personne n’a le droit d’imposer une structure en argüant comme je l’ai maintes fois entendu que “c’est ce qu’il faut faire », mais puisque qu’ici c’est moi le patron (
) je vais au moins me permettre de vous proposer une structure de projet avec rainTPL, que j’utilise pour Leed, DropCenter et bien d’autres projets pro/perso :
J’ai profité de la structure pour vous mettre deux templates que vous pouvez switcher en modifiant la constante DEFAULT_THEME dans le fichier configuration.php quelques exemple de lecture de variables, de tableau d’objets, d’utilisation de condition etc.. avec RainTPL
Vous pouvez télécharger cette structure et les exemples RainTPL qu’elle contient ICI.
On a bien deux Templates (légèrement fait à l’arrache) pour les mêmes traitements / control de données, il est donc possible d’en switcher sans toucher à quoique ce soit d’autre que la constante DEFAULT_THEME.
Bien sûr que non, il est évident qu’un petit script de deux pages contenant chacune trois lignes n’a pas réellement besoin d’un gestionnaire de Template,
cela dit pour les moyen et gros projets je vous encourage vivement a partir d’instinct sur un moteur Template.
Si vous n’en voyez pas l’utilité sur le moment,vous la verrez certainement par la suite, votre projet sera toujours plus simple à maintenir, évoluer, fusionner, embellir par la suite.
De plus cela vous obligera à tendre vers l’architecture MVC donc la redoutable efficacité n’est plus à prouver (bien qu’il y ai aussi des contestataires à ce sujet, mais bon on trouve de tous les avis sur le web il faut faire avec) et rainTPL est si discret que ça n’en alourdira pas votre projet pour autant.
Je sais que le sujet est entendu pour la plupart des développeurs de ce blog, mais si je suis parvenu à convertir un nouveau lecteur au “templarisme” et surtout à l’excellent RainTPL, je m’en satisferais !
Templatement votre,
Idle
";s:7:"dateiso";s:15:"20130403_184446";}s:15:"20130323_162817";a:7:{s:5:"title";s:65:"Installez votre synchronisateur de contacts chez vous avec Baikal";s:4:"link";s:30:"http://blog.idleman.fr/?p=2337";s:4:"guid";s:30:"http://blog.idleman.fr/?p=2337";s:7:"pubDate";s:31:"Sat, 23 Mar 2013 15:28:17 +0000";s:11:"description";s:402:"Lorsque l’on devient un véritable technophile bassement matérialiste, on se met à accumuler tout un tas d’engins électroniques : Téléphone portable, Tablette, Pc, Mac, montres, lunettes ou strings panthères connectés etc… Qu’on toutes ces machines en communs ? Les contacts! … Continuer la lecture ";s:7:"content";s:32697:"Lorsque l’on devient un véritable technophile bassement matérialiste, on se met à accumuler tout un tas d’engins électroniques : Téléphone portable, Tablette, Pc, Mac, montres, lunettes ou strings panthères connectés etc…
Qu’on toutes ces machines en communs ? Les contacts!
Qu’il s’agisse des adresse email sur votre messagerie de pc portable/fixe/mac/ultra portable… ou encore des numéro de téléphones sur votre androïde phone/iphone/windows phone, tablettes etc… ils y en à partout c’est un besoin fondamental pour les appli de partage d’information avec un tiers (toutes les appli quoi ^^).
Ca devient alors très vite contraignant d’organiser tout ce beau monde, de synchroniser et de mettre à jour tous les appareils sans doublons, crises de nerfs, pertes d’infos, de temps et de cheveux.
C’est pourquoi il peut être intéressant d’utiliser un synchronisateur de contacts tels qu’en propose google, apple, windows, à ceci près que nous allons l’installer sur notre propre serveur/hébergeur gratuitement, ceci nous permettra :
Oui MAIS !! Aujourd’hui les solutions de synchronisation de contacts type cardDav (format standard de carte de contact)/calDav (format standard de calendrier) gratuites, propres, stables et installables sur votre serveur/hébergement ça ne coure pas les rues.
Evidemment il y a des solutions type owncloud mais encore peu matures donc relativement boguées/peu stables, auxquelles je ne fais pas tout à fait confiance de mon côté.
En revanche un utilisateur m’a récemment fait découvrir Baikal qui, bien qu’il ne soit pas très vieux et utilise la même librairie qu’owncloud (sabreDAV, une excellente librairie pour gérer les standard calDav, webDav, calDav au passage), il se contente de faire le minimum (pas de gestion de fichiers) et il le fait donc très bien
.
Baikal permet de gérer simplement la synchronisation, la centralisation et le stockage de vos contacts (ainsi que de votre calendrier si vous le souhaitez) et ce à l’aide d’un format standard et très accessible quel que soit votre appareil/système d’exploitation.
Le script reste relativement simple, il peux gérer plusieurs utilisateurs ayant chacun plusieurs carnet d’adresses / calendrier et propose une petite dashboard de statistiques.
Ce script sous licence GPL a l’avantage d’avoir été créé avec la librairie js/css boostrap qui rend l’application très jolies et responsive (adaptable tout écran tablettes, smartphone, pc etc…).
Il est installable avec une base de donnée SQL lite (simple fichier) ou avec une base MySQL au choix.
Il est à noter tout de même deux gros points faibles pour l’application :
Voyons un peu comment installer tout ça
.
L’installation de Baïkal est maintenant terminée, notez qu’on vous demandera peut être à un moment de donner des permissions sur certaines dossiers de l’application, il vous faudra donc utiliser la commande “chmod –R 777 /chemin/vers/le/dossier/baikal” si vous êtes sur un serveur, ou passer par un programme de gestion de droits ftp comme fileZilla si vous êtes sur un hébergement simple sans accès à la ligne de commande.
Afin de créer des carnets d’adresse, il vas falloir en premier lieu créer un utilisateur lié à ce carnet (car baikal est multi utilisateurs), on clique donc sur “start using baikal”, on s’identifie avec le mot de passe Admin qu’on à rentré à l’utilisation et on arrive sur l’interface
Un clic sur l’onglet “users and ressources” nous amène sur la page de gestions des utilisateurs et des carnets/calendriers, on clic sur le bouton
Pour ajouter un nouvel utilisateur :
retenez bien le “username” et le “password” que vous tapez, ce sont les identifiants qui vous servirons par la suite à connecter vos machines aux carnets d’adresses et calendriers créés.
nb : Gardez le username le plus simple possible, évitez les majuscules, accents, caractères spéciaux etc…
Création d’un carnet d’adresses/calendrier pour l’utilisateur
Une fois l’utilisateur créé, une barre
apparait, cliquez sur l’un ou sur l’autre pour créer un calendrier ou un carnet d’adresses pour l’utilisateur.
Par défaut vous avez déjà un carnet d’adresse et un calendrier créées pour cet utilisateurs, ils ont tout deux pour identifiants le nom “default” dont nous nous servirons plus tard, si vous créez de nouveaux carnets/calendriers, retenez bien l’identifiants que vous leurs attribuez.
Je ne peux pas vous donner l’installation pour toutes les messageries existantes, mais je vous donne un exemple avec (selon moi) la meilleur d’entre toute : thunderbird
, si vous n’avez pas cette messagerie installez la, il vous la faut, le processus est sensiblement identique aussi je vous conseille de suivre cette partie.
Synchroniser les contacts
Thunderbird ne gère pas les formats cardDav par défaut, il vas donc falloir télécharger et installer l’extension gratuit “SOGo Connector” sur votre Thunderbird, le redémarrer puis cliquer sur l’onglet “outils—>carnet d’adresses” et dans la fenêtre qui s’ouvre “Fichier—>nouveau—>carnet d’adresse distant”
Puis taper l’adresse de votre carnet d’adresse, dans mon cas j’ai gardé celui par défaut :
C’est cette adresse qui est très mal spécifié dans la doc et dans le panel de baikal, aussi faites très attentions à l’adresse et aux spécifications suivantes :
http://127.0.0.1/baikal-flat/card.php/addressbooks/idleman/default/
http://127.0.0.1/baikal-flat/ Adresse vers votre panel web baikal
card.php/addressbooks/: chemin obligatoire vers les carnets d’adresses (ne pas changer)
idleman/: Nom de l’utilisateur créé précédemment (le fameux username)
default/: Identifiant du carnet d’adresse ciblé (ou à gardé celui par défaut dont l’identifiant était default).
nb: le “/” en fin d’adresse est obligatoire.
A la prochaine synchro, thunderbird vous demandera de spécifier le username et le password de l’utilisateur que vous avez créé afin de le conserver en mémoire
Tout les contacts que vous mettrez dans ce carnet d’adresse thunderbird seront alors automatiquement synchronisés avec le carnet baikal et réciproquement.
Pour être sûr que ça fonctionne, créez un contact dans le carnet thunderbird, puis retournez voir sur le panel web baikal si vous avez un ou plusieurs contacts, c’est que ça à fonctionné :
Notez bien que la synchro peux mettre un peu de temps, vous pouvez faire clic droit sur le carnet d’adresse et “synchroniser” pour forcer la synchro.
Synchroniser le calendrier
Encore une fois, Thunderbird ne possède pas de calendrier natifs, il faut donc ajouter le plugin “lightning” qui vas ajouter un calendrier à votre messagerie, redémarrez votre thunderbird, cliquez sur l’onglet agenda puis dans les agendas de gauche clic droit—>Nouvel agenda—>Sur le Réseau
Sélectionnez “CalDav” et rentrez l’adresse de votre calendrier baikal
Cette adresse aussi est très mal spécifié dans la doc et dans le panel de baikal, aussi faites très attentions à l’adresse et aux spécifications suivantes :
http://127.0.0.1/baikal-flat/cal.php/calendars/idleman/default/
http://127.0.0.1/baikal-flat/ Adresse vers votre panel web baikal
cal.php/calendars/: chemin obligatoire vers les calendriers (ne pas changer)
idleman/: Nom de l’utilisateur créé précédemment (le fameux username)
default/: Identifiant du calendrier ciblé (ou à gardé celui par défaut dont l’identifiant était default).
nb: le “/” en fin d’adresse est obligatoire.
Vous pouvez cocher “prise en charge du mode hors connexion” historie d’avoir accès a vos évènements même lorsque la connexion internet est coupée.
A la prochaine synchro, thunderbird vous demandera de spécifier le username et le password de l’utilisateur que vous avez créé afin de le conserver en mémoire
Sur un téléphone android le mieux est encore d’installer l’application “CardDAV-Sync free beta” qui en dépit de son nom inquiétant fonctionne plutôt bien ![]()
Rentrez la même adresse que pour les contacts de thunderbird http://127.0.0.1/baikal-flat/card.php/addressbooks/idleman/default/ (avec les changements qui s’imposent)
http://127.0.0.1/baikal-flat/ Adresse vers votre panel web baikal
card.php/addressbooks/: chemin obligatoire vers les carnets d’adresses (ne pas changer)
idleman/: Nom de l’utilisateur créé précédemment (le fameux username)
default/: Identifiant du carnet d’adresse ciblé (ou à gardé celui par défaut dont l’identifiant était default).
Pensez à décocher la case “Use SSL” (à moins que votre baikal ne soit installé avec un https) et à spécifier le username et le password de l’utilisateur que vous avez créé
Toutes les infos disponibles ici : https://github.com/jeromeschneider/Baikal/blob/master/INSTALL.md#5—connecting-your-caldav–carddav-client-to-bakal
nb : sur Mac OS X 10.8 et Calendar (ex-iCal) l’adresse pour le CalDAV il semble qu’il faille dans certains cas utiliser « principals » au lieu de « calendars ».
Soit en adresse serveur : toto.com
Server path : /baikal/cal.php/principals/toto
Pour synchroniser vos contacts avec roundcube vous devrez installer le plugin Roundcube-CardDAV qui fonctionne très bien
Le plugin est maintenant correctement installé, loguez vous sur roundcube puis allez dans l’onglet « Préférences » puis le menu de gauche « Carddav » et renseignez les infos du formulaire:
Label : Nom du carnet d’adresse affiché sur rouncube (mettez ce que vous voulez)
Serveur : Adresse du carnet baikal
Cette adresse aussi est très mal spécifié dans la doc et dans le panel de baikal, aussi faites très attentions à l’adresse et aux spécifications suivantes :
http://127.0.0.1/baikal-flat/card.php/addressbooks/idleman/default/
http://127.0.0.1/baikal-flat/ Adresse vers votre panel web baikal
card.php/addressbooks/: chemin obligatoire vers les calendriers (ne pas changer)
idleman/: Nom de l’utilisateur créé précédemment (le fameux username)
default/: Identifiant du calendrier ciblé (ou à gardé celui par défaut dont l’identifiant était default).
nb: le “/” en fin d’adresse est obligatoire.
Utilisateur : login de l’utilisateur lié à ce carnet sous baikal
Mot de passe : mot de passe de l’utilisateur lié à ce carnet sous baikal
Cliquez sur enregistrer, attendez quelques secondes puis allez dans vos carnet d’adresse : it works !!
Notez que si vous souhaitez que ça synchronise régulierement, il vous faudra mettre en place un CRON (tâche planifiée) qui exécutera le php /chemin/vers/roundcube/plugins/carddav/cronjob/synchronize.php
Pour ceci lancez une console sur votre serveur web puis tapez :
crontab -e
et ajoutez la ligne
0 4 * * * php /var/www/roundcube/plugins/carddav/cronjob/synchronize.php
Au fichier de crontab ouvert, en remplaçant la partie en gras pa le chemin de votre rouncube puis sauvegardez.
Notez que le cron que je propose synchronise une fois par jour à 4h00 du mat (peut de chance que vous soyez en train de modifier vos contacts à cette heure la, si vous avez « pécho des 06 en boites » normalement c’était quelques heures plus tôt, à 4h00 vous êtes en train de vomir votre vodka sur un parcmètre donc tout vas bien).
Notez que vous devez avoir le paquet php5-cli pour pouvoir executer le php en ligne de commande comme ça, si ça ne marche pas pensez donc à l’installer via la commande sudo apt-get install php5-cli
Je vous encourage à participer au code, aux retours de bugs etc du projet via sa page github : https://github.com/jeromeschneider/Baikal
Une alternative qui à l’air franchement sympa
Je tiens à mettre valeur le commentaire de nono sur une alternative qui à l’air également super convaincante : Radical :
Je me permets de vous faire découvrir Radicale qui est l’équivalent de Baikal, mais en plus simple et plus robuste.
Plus simple parce qu’il n’y a même pas d’interface web (pas franchement utile pour une appli de type web-service).
Plus robuste parce qu’elle n’utilise pas de base de données (sqlite), mais uniquement un stockage en fichier plat, ce qui est très logique vu que les données à stocker ne sont que faiblement relationnelles.
Et enfin, cerise sur le gateau, Radical permet de créer des collections (de contacts ou d’évènement) publiques (donc accessibles à tous), privées (donc accessibles uniquement aux personnes authentifiées, ou personnelles (donc accessibles uniquement à par son propriétaire).
Cela permet donc de partager (sommairement) des contacts ou des évènements.
Et comment on crée une collection ? En accédant à son adresse, tout simplement.
Radicale, le plus KISS des caldav/carddav server…
- nono
";s:7:"dateiso";s:15:"20130323_162817";}s:15:"20130314_172437";a:7:{s:5:"title";s:50:"Revue de projet : du Rss, du Cloud, et du libre…";s:4:"link";s:30:"http://blog.idleman.fr/?p=2289";s:4:"guid";s:30:"http://blog.idleman.fr/?p=2289";s:7:"pubDate";s:31:"Thu, 14 Mar 2013 16:24:37 +0000";s:11:"description";s:333:" Je crois que le moment est parfaitement choisis pour faire une petite revu des projets en cours, de leurs avancement et de leurs avenirs Vous ne m’en voudrez pas de commencer par Leed (hé hé hé)… Leed Leed est un … Continuer la lecture ";s:7:"content";s:10795:" Je crois que le moment est parfaitement choisis pour faire une petite revu des projets en cours, de leurs avancement et de leurs avenirs ![]()
Vous ne m’en voudrez pas de commencer par Leed (hé hé hé)…
Leed est un agrégateur de flux RSS qui se positionne comme une alternative gratuite et libre à Google reader.
Google reader ayant annoncé sa fermeture récemment, le petit Leed qui se cantonnait jusqu’ici à 5000 utilisateurs pourrait prendre un peu de “galon” en agissant comme remplaçant de Google reader (à plus modeste échelle évidemment) et vous m’en voyez comblé
De plus deux nouveaux développeurs ont rejoint l’équipe (jusqu’ici constitué de moi même
) j’ai nommé sbgodin et alef burzmali tout deux excellents dans leurs domaines de compétences et près à contribuer bénévolement au ptit Leed
.
Une fois l’import/export stabilisé (qui reste le gros point faible de l’application) nous pensons nous concentrer sur la mise en place d’un système de plugins permettant aux utilisateurs motivés d’ajouter des fonctionnalités au programme et de les proposer à la communauté sans alourdir le noyau de leed qui compte rester rapide, léger et simple.
Le projet est maintenant sur git, pour le moment j’ai un peu de mal à me séparer de svn et à m’acclimater au décentralisé ultra contributeur tueur de caniche qu’est git (et son comparse github) il est donc possible que je ne sois pas très réactif sur certaines maj/request etc.. mais j’y travaille
.
DropCenter est un cloud (web uniquement) de gestion de fichier gratuit et installable sur votre propre serveur, l’envois de fichier peut se faire directement avec un glisser déposer des fichiers de votre bureau vers votre navigateurs (cette fonctionnalité nécessite un navigateurs récents Firefox, chrome, opera ou IE10 feront l’affaire).
Après quelques mois d’inactivité, j’ai tout doucement reprise le dropcenter avec un nouveau système d’upload, la possibilité de rendre public/privé un fichier, la sécurisation des accès depuis la barre d’adresse, quelques modifications graphiques et la stabilisation de nombreux bugs, je vous invite à le tester et à me faire vos retours biens qu’il ne soit pas encore complètement stabilisé (encore beaucoup de problèmes sur les fichiers avec accents)
Une fois le logiciel stabilisé, j’aimerais beaucoup développer un peu plus dropNews, un client bureautique additionnel au dropcenter qui permet simplement à l’heure actuelle d(être notifié lors d’un changement sur le dropcenter, le but serait de faire de ce client un synchronisateur dossier locale/dropCenter, un peu à la façon de dropbox ou de owncloud.
En revanche j’aimerais ne pas suivre le chemin d’owncloud qui (selon mon opinion) veux tout faire à la fois et ne fait rien de bien, donc je me cantonnerais aux fichiers uniquement, je prendrais mon temps et je ne sortirais quelque chose que lorsque les bugs restants seront vraiment mineurs (ça c’était pour la petit pichenette contre owncloud ^^).
CodeZ est tout simplement un gestionnaire de snippets gratuit, un snippet étant un petit bout de code réutilisable que l’on souhaite conserver quelque part
Le projet se présente sous la forme d’un client bureautique portable (installable sur une clé usb) vous permettant de gérer, d’ajouter et de retrouver vos snippets simplement, a ce client bureautique s’ajoute un site we sur lequel vous pouvez partager vos snippets avec la communuaté depuis le client.
Akaiken, Yosko et moi même qui étions sur le projet n’avons plus de temps a lui consacrer aussi avons nous décidé de libérer l’intégralité du code (client et site web) et de le mettre sur github en espérant que quelqu’un sera motivé pour reprendre le projet ^^.
Notez que nous avions pas mal avancé, le client était fonctionnel mais ne pouvais pas encore partager les snippets sur le site, quant au site, tout le contexte avait été créé a deux trois requêtes près c’était bon ^^, bref si vous avez un élan de motivation (et du temps) n’hésitez pas à vous lancer.
BlazeKiss est un wiki gratuit dérivé sur projet Wikiss lui même dérivé de tigerWiki, lui même basé sur le principe KISS ![]()
Je me suis contenté de reprendre cette perle qu’était wikiss et de lui refait un peu la façade avec un thème chopé a l’arrache sur le net (qui s’adapte aux mobile si il vous plait) et comme j’était assez fier du résultat je le propose aussi sur ma page projet.
Pas de gros changements sur le projet récemment a ceci près que j’ai réactivé la fonction de sommaire automatique, je me suis dit qu’un ptit paragraphe à ce sujet ne pouvais pas faire de mal ![]()

Depuis quelques temps je fait des ptits montages électroniques à moins de 5€ pour faire de la domotique low cost, ça aboutis généralement à une lampe pilotée par radio dont le signal est envoyé par un raspberry pi, lui même commandé par une inteface vocale, bref on bidouille et on se marre bien, vous avez été très nombreux à me suivre la dessus (24 000 par mois en fait) et j’en suis super content, moi qui pensais que ce genre de conneries ne faisait tripper que moi je me sent moins seul
.
Avec Yaug (un lecteur qui à bien pigé le principe
) on s’est dit qu’on pourrait peut être inventer une fasse marque la dessus, on en profiterais pour mettre au propre les recherche du blog qui sont un peu brouillones, en améliorant le protocole, l’interface web (ah oui j’avais oublié de dire que la lampe peut assi être pilotée via le web), l’interface vocale nommée YURI, les circuits imprimés etc…
On à déjà le logo c’est un bon début non ?!! ![]()

On vous tiendras au courant si on arrive à quelque chose d’aboutis, pour le moment on bosse sur ce wiki qu’on remplis au fur et à mesure, et qui sait, demain nous seront peut être capable de vous envoyer des kits tout fait à monter pour créer votre domotique à pas cher
C’est tout pour cette revue, j’ai d’autres projet, mais j’ai mal au doigts et j’ai envie de pisser (quelle classe idle…T_T) . Tous mes autres projets un peu aboutis sont disponibles sur ma page projet je vous invite donc à jeter un œil de ce côté
! Bon surf bande de moules !!
Ce post est le dix huitième d’une liste de tutoriels sur le raspberry PI, cliquez ici pour accéder au sommaire !
Faire du on/off c’est bien ! Mais contrôler sa maison en disposant d’indicateurs c’est mieux !
Aussi allons nous voir, pour changer, comment construire un petit capteur qui vas transmettre une information de température par radio au raspberry PI.
Si comme moi, vous vous interrogez sur l’intérêt de connaitre la température d’une pièce en temps réel, je trouve personnellement qu’il n’y en à aucun, en revanche cela peut être très utile pour le raspberry pi, qui pourra par exemple en dessous d’une certaine température, enclencher les radiateurs, on appel ça des scénarios (on en reparlera dans un prochaine tuto) pour le moment, contentons nous de récupérer l’informations via une interface web et via notre interface vocale YURI.
Avant tout, le traditionnel quart d’heure de honte en vidéo :
(Le charisme d’une truite avec un double menton, un acteur né je vous dis !!)
La puce Atmega328 (petit carré noir avec tout plein de pattes) vas aller interroger toutes les 3sc le capteur DS18B20 (plus petit carré noir à trois pattes, en forme de transistor) afin de récupérer la température de la pièce, puis vas envoyer, à travers l’émetteur RF 433 mhz (petit circuit à 3 pattes), l’information au raspberry PI
Le raspberry PI, qui écoute en permanence les ondes radio à travers son récepteur RF 433 mhz, vas détecter le signal, récupérer la température et la donner à une page PHP qui vas la stocker dans un petit fichier texte (au format json), accessible depuis l’interface web et dpeuis yuri.
Sur le serveur web du rapsberry PI, l’interface vas aller récupérer en ajax toutes les 3 secondes la valeur du fichier texte pour chaque sondes radio et l’afficher sur la page.
Notez que si un lien est mort (ce qui arrive souvent car ebay bouge beaucoup) reprenez les mots clé de ces liens dans le moteur de recherche ebay, cherchez avec les filtres « achat immédiat », « Dans le monde entier » et tri par « prix+livraison les moins cher »
Pour comprendre plus en détail ce qu’est l’arduino, l’atmega etc.. se référer au tuto 15, je pars du principe que vous avez lu et compris le tuto 15 histoire de ne pas me répéter 1000 fois ![]()
On vas faire exactement le même montage que dans le tuto 15, je re détaille la manip pour les flemmard du fond (oui oui ! vous au fond à côté du radiateur la !!) :
Téléchargez et installez l’IDE(environnement de développement Arduino) sur le site d’arduino.
Voila le schéma permettant de programmer une puce atmega à partir d’une carte arduino (nb : la résistance est visiblement plus adéquate si elle est de 10 kohms et non de 1.27 ohms comme indiqué sur le schéma)

Notez que sur le schéma j’utilise ce qu’on appelle une « BreadBoard », c’est une plaque en plastique qui permet de tester des circuits sans avoir à souder juste en plantant des fils dans des trous, les trous sont reliés de manière horizontale entre eux, sauf pour les lignes bleu et rouges (utilisée pour l’alimentation) qui eux sont verticaux.
Je vous conseille vivement l’achat d’une breadboard, ça ne coûte rien et c’est quasi indispensable pour tester les circuits dans de bonnes conditions.
Une fois le circuit branché et alimenté vous pourrez lancer l’IDE arduino et programmer la puce comme si elle se trouvait sur la carte arduino.
Enfin sachez que vous pouvez tout aussi bien programmer la puce en la laissant simplement branchée sur la carte arduino et la décrocher juste après, notre montage est à l’heure actuelle inutilement compliqué, mais dans le futur nous en auront besoin.
Comme la sonde ds18b20est particulièrement chiant à utiliser, nous installerons 2 librairies pour nous simplifier la vie (dans l’absolu, il serait peut être plus intéressant d’utiliser une sonde analogique ou une thermistance, bien plus facile à questionner (retour de 0.1 v par degré).
Donc on vas installer la librairie DallasTemperature, qui nous epargne le boulot des 12 000 commandes à envoyer àa la sonde pour avoir la temperature, et OneWire, qui vas permettre a l’atmega de communiquer avec la sonde sur une seule patte.
Pour installer les librairies, rien de plus simple : décompressez ces dossiers dans le dossier librairies de l’ide arduino.
On vas enfin pouvoir s’occuper de notre code ^^.
Téléchargez le code à “télé-verser” dans l’atmega ici (clic droit + enregistrer sous)
Ouvrez le code téléchargé dans l’arduino IDE
Cliquez sur télé verser
En fonction de la puce atmega que vous avez, vous serez peut être obligé de changer le type de carte dans les configurations de l’ide (cf tuto 15)
Code coté raspberry PI
Téléchargez l’interface web ici
Décompressez la dans le dossier /var/www de votre raspberry PI
Pensez a régler les permissions en lecture/écriture dans fichiers comme dans les autres tutos (si vous ne voulez pas vous faire chier, faites le temps des tests:
C’est bourrin question sécurité mais comme beaucoup d’entre vous ont des soucis de ce coté la car les permissions sont mal réglées, au moins on peux éliminer ça
, je vous laisse regarder la doc linux si vous voulez régler les droits de manière plus sécurisée)
Notez que pour le rapsberry pi comme pour la sonde arduino, vous devez obligatoirement :
Sans quoi la portée de votre sonde sera ridicule et les données mal transmises/mal captées (surtout mal captées, car le raspberry pi alimente très mal les composants externes).
Rien de nouveaux, on fait comme dans le tuto 10 sauf qu’on alimente le récepteur radio avec une alim externe de préférence (c’est mieux pour la portée et la qualité de la réception):
Une image vaut mieux qu’un long discours
,
Notez que j’ai oublié sur le schéma, de préciser qu’il faut aussi mettre la résistance 4.7 k ohms entre le pin central du capteur ds18b20 et le + de l’alimentation
Concrètement, on vas créer notre propre protocole radio en calquant un peu sur le protocole home easy de chacon.
On vas donc envoyer un signal de 12 bits pour commencer:
On à 7 bits de valeurs, on pourra donc envoyer 2^7 = 128 valeurs possibles pour la température, avec le bit de signe ça nous permet d’envoyer de -128 à 128 degrés, ça devrait le faire, en tout cas si vous atteignez un jour ces limites vous vous concentrerez certainement plus sur votre survie que sur la domotique (et les morts n’ont pas accès aux commentaires donc je suis tranquille côté plaintes)
.
On ajoutera deux impulsions avant et une après les données afin d’annoncer l’ouverture et la fermeture du signal d’information.
Un code en C++ (avec la librairie arduino) qui vas questionner le capteur de température et envoyer le résultat (5 fois toutes les 3sc pour une meilleur garantie de réception) au raspberry pi à travers l’émetteur.
L’utilisation
Brancher la sonde sur une alimentation (5V minimum, éviter le rapsberry pi comme alimentation)
Sur la console du Rpi , aller dans le dossier hcc2
cd /var/www/hcc2
puis exécuter le programme d’écoute des signaux
./radioReception /var/www/hcc2/action.php 7
Le premier argument “/var/www/hcc2/action.php” est la page php de l’interface a laquelle sera envoyé la température reçue.
Le second argument ”7” est le numéro wiring PI du pin du raspberry pi sur lequel est branché le récepteur radio.
sur la console s’affiche alors les réceptions et éventuels ratés (notés FAIL) de réception de la sonde
Si vous souhaitez modifier le programme C de réception des signaux, les sources sont disponibles dans le fichier “radioReception.cpp”, après modification vous devrez le recompiler en tapant la commande
";s:7:"dateiso";s:15:"20130303_172921";}s:15:"20130301_214121";a:7:{s:5:"title";s:45:"Raspberry PI ~ 17 : Un mini écran pour 22€";s:4:"link";s:30:"http://blog.idleman.fr/?p=2247";s:4:"guid";s:30:"http://blog.idleman.fr/?p=2247";s:7:"pubDate";s:31:"Fri, 01 Mar 2013 20:41:21 +0000";s:11:"description";s:345:"Ce post est le dix septième d’une liste de tutoriels sur le raspberry PI, cliquez ici pour accéder au sommaire ! En attendant la création de la sonde de température (qui ne saurait tarder, j’ai juste la flemme de rédiger … Continuer la lecture ";s:7:"content";s:13105:"g++ radioReception.cpp -o radioReception –lwiringPi
Ce post est le dix septième d’une liste de tutoriels sur le raspberry PI, cliquez ici pour accéder au sommaire !
En attendant la création de la sonde de température (qui ne saurait tarder, j’ai juste la flemme de rédiger mon pavé
), voila un ptit tuyau à vous mettre sous la dent pour ce début de week end !!
Il peux être utile d’avoir un mini écran LCD couleur branché au rpi histoire d’avoir constamment un visuel de la console, d’afficher un plan domotique ou si vous souhaitez tout simplement faire du rpi un mini ordinateur
.
Seulement voila, les mini écran pas cher, qui consomme peu et adaptable au raspberry PI, ça ne court pas les rues
! Une liseuse ? Trop cher ! Un écran classique ? Un peu encombrant et reste un peu cher ! Un cadre photo numérique ? Idéal mais peut être chiant à plugguer ! Lire dans les entrailles d’un poulet ? Sympa pour épater les amis mais il vous faut un poulet frais à chaque reboot…
L’astuce ? Prendre un écran de caméra de recul pour les voitures (oui oui, l’écran que vous n’aurez jamais dans votre R5 de prolo mais je vous assure qu’il y a des voitures qui ont ce genre de gadgets !!
).
L’avantage de l’écran ? On peux en trouver à partir de 20€, ca consomme que quick, ça prends pas de place et comble du bonheur : il dispose d’une entrée vidéo RCA (ça tombe bien, on à une sortie vidéo RCA sur le raspberry PI !! Le ptit cube jaune sur la photo ci dessus)
Évidemment il faudra de bons yeux, et un peu de jugeote pour couper et dénuder quelques fils mais vraiment des broutilles pour adapter ce genre d’écran au raspberry PI.
Moi j’ai commandé un écran comme celui ci
mais il semble être en rupture de stock à l’heure ou je vous parle, je vous conseille donc de faire votre choix dans les multiples autres marques/formats qui existent, en terme de branchement et de prix il se valent à peu près tous ![]()
Donc pour ce qui est de l’adaptation du bininous ça ne m’a pas pris 2 minutes de comprendre le fonctionnement tellement c’est simple et bien fait !!
3 sorties sur l’écran :
Une blanche : C’est une des entrées vidéo RCA de l’écran
Une jaune : C’est une des entrées vidéo RCA de l’écran au même titre que l’entrée blanche
Une rouge : C’est l’a qu’on alimente l’écran, normalement c’est branché directement à la camera de recul qui s’occupe d’alimenter le tout
On notera les points suivants :
Si l’écran possède deux entrées vidéos, l’une semble être à l’endroit et l’autre refléter l’image à l’envers, regardez bien la datasheet de votre écran pour savoir lequel prendre entre le blanc et le jaune ![]()
Aucun des ports n’est réellement adapté au rpi, il nous faudra couper le port rouge pour le relier à du 12V, et placer un adaptateur RCA entre l’entrée jaune(ou blanche) de l’écran et la sortie RCA du rpi, moi j’ai récupéré un vieux câble RCA, et j’ai tout coupé pour faire mon adaptateur maison
Bien que la datasheet vous conseillera du 12V continue pour alimenter l’écran (les batteries de voitures étant en 12v), l’écran n’a pas besoin d’autant, vous pourrez l’alimenter dans la plupart des cas avec beaucoup moins (dans mon cas une pile 9V à suffit)
Les branchements :
Coupez la partie rouge et dénudez le fil restant pour voir apparaitre deux fils à l’intérieur : un noir (masse) et un rouge (alimentation positive) Il vous faudra donc relier le rouge et le noir à une alim/batterie 12V (ou 9V voir moins en fonction de votre écran).
l’entrée blanche (ou jaune de l’écran en fonction de comment vous voulez votre image
) doit être reliée à un adaptateur permettant de le brancher direct au rpi !
Et c’est tout !!
Notez bien que pour que votre écran s’allume il faut bien qu’il soit alimenté avec la batterie ET relié au port RCA d’un rapsberry allumé, sans quoi vous n’aurez aucune réaction de l’objet, ce qui peut être déstabilisant.
Un petit décalage isn’t it?
Vous noterez certainement que l’écran bouffe un peu la console par endroit, ceci est du à la très petite résolution de l’écran, cependant vous pouvez régler le problème en allant modifier le fichier /boot/config.txt de votre rpi (nb : il faut être logué en tant qu’administrateur ou faire un sudo pour modifier ce fichier).
Remplacez alors la partie avec les “overscans” commentés, par un overscan générale à 40 :
Puis redémarrez ! Ca devrait être mieux, cela dit 40 fonctionne bien avec mon écran mais si vous avez encore des soucis avec le votre, il vous faudra changer les valeurs jusqu’a ce que ça se cale correctement
.
Notez bien que selon les pro du linux, c’est vraiment une technique de goret albinos et ce n’est pas du tout conseillé de modifier ce fichier, mais je n’ai pas trouvé de meilleure solution, si quelqu’un à mieux sous la main qu’il se manifeste ![]()
Et merde, pas d’adaptateur !
Si vous n’avez pas d’adaptateur sous la main mais un câble rca compatible(branchable) avec votre rpi qui traine et que vous ne voulez pas lâcher 1 euros sur ebay, vous pouvez faire comme moi et couper la grosse partie avant les ports de manière a n’avoir plus que des fils
Vous chopez ensuite votre vieux câble
Vous reliez le fil de couleur rouge (ou jaune)du vieux câble, au fil de couleur jaune (ou blanche en fonction de l’image que vous souhaitez) de l’écran et la masse de l’écran (fil noir) à la masse de votre vieux câble (fil noir ou complètement dénudé en fonction de votre câble)
Puis vous reliez la masse de l’écran (fil noir) et la borne positive de l’écran (fil rouge) à votre batterie/alimentation 12V/9V.
Si il vous reste un fil(jaune ou blanc en fonction de celui que vous avez choisis) qui pendouille de l’écran dans le vide, c’est normal, vous pouvez le couper.
Pour gagner de la place :
Notez que si vous voulez en faire un appareil nomade ou revoir le design de l’ensemble, il peut être utile de réduire un peu la matière, vous pouvez facilement démonter l’écran (généralement quelques vices) histoire de le rendre le plus plat possible pour l’incorporer à une structure ou autre
Et si vous êtes un goret sans foi ni loi comme moi vous pouvez aussi dessouder la sortie RCA du rpi pour y souder directement les fils de votre écran (j’entends déjà les fans de la framboise me hurler au vente “héréttttiiiquuueeeuuuh” »).
Voila les branchements à faire si comme moi vous avez dessoudé l’entrée RCA sans aucun remord (notez que c’est très chiant à dessouder, et encore plus à ressouder)
L’essentiel étant que la masse soit bien sur le gros trou du milieu, l’autre peut être indistinctement d’un coté ou de l’autre.
Et sinon ?
Notez que vous pouvez facilement à partir de la en faire un mini pc portable par exemple en achetant un mini clavier + touchpad usb ou pourquoi pas même une tablette en y ajoutant une dalle résistive ? (bon ok la c’est peut être un challenge un peu plus gros
)
Bien à vous et bon appétit !
Idle
";s:7:"dateiso";s:15:"20130301_214121";}s:15:"20130223_160243";a:7:{s:5:"title";s:61:"Raspberry PI ~ 16 : Mieux comprendre les pins avec Raspin’s";s:4:"link";s:30:"http://blog.idleman.fr/?p=2218";s:4:"guid";s:30:"http://blog.idleman.fr/?p=2218";s:7:"pubDate";s:31:"Sat, 23 Feb 2013 15:02:43 +0000";s:11:"description";s:348:" Ce post est le seizième d’une liste de tutoriels sur le raspberry PI, cliquez ici pour accéder au sommaire ! J’ai vu l’autre jour sur le site du raspberry PI, la raspberry Leaf, une petite idée ingénieuse qui consiste à … Continuer la lecture ";s:7:"content";s:3313:" Ce post est le seizième d’une liste de tutoriels sur le raspberry PI, cliquez ici pour accéder au sommaire !
J’ai vu l’autre jour sur le site du raspberry PI, la raspberry Leaf, une petite idée ingénieuse qui consiste à créer un modèle de feuille à imprimer et découper, superposable au rasberry PI pour indiquer ses numéros de pin:
J’ai trouvé l’idée vraiment sympa, du coup je me suis dit que je pouvais peut être l’améliorer, j’ai donc créé mon propre modèle : Raspin’s
Raspin’s inclus :
Pour l’imprimer,je vous conseille fortement un papier un peu cartoné style papier photo :
Voila l’image imprimable (cliquez pour agrandir, attation c’est de la maxi image vouée au print ^^):
Pour ceux qui souhaiteraient le PSD de création de l’image afin de la modifier/améliorer, c’est ici : http://blog.idleman.fr/wp-content/uploads/2013/02/raspins.psd
Vous l’avez peut être remarqué, j’ai laissé les emplacements des trous pour ceux qui voudraient percer trou par trou, perso j’ai pas eu la patience j’ai découpé le carré de pin au cutteur ![]()
Bon week end :p
";s:7:"dateiso";s:15:"20130223_160243";}s:15:"20130222_113803";a:7:{s:5:"title";s:25:"Le bordel de l’info #25";s:4:"link";s:30:"http://blog.idleman.fr/?p=2202";s:4:"guid";s:30:"http://blog.idleman.fr/?p=2202";s:7:"pubDate";s:31:"Fri, 22 Feb 2013 10:38:03 +0000";s:11:"description";s:346:"Salut bande de putois crevés, vous en avez d’la chance !! A l’heure où les bambins chevauchent des robots autruche, à l’heure ou la polémique sur les vulves bat son plein et ou les pénis sont jetables (oui,j’ai lu quelque … Continuer la lecture ";s:7:"content";s:10249:"Salut bande de putois crevés, vous en avez d’la chance !! A l’heure où les bambins chevauchent des robots autruche, à l’heure ou la polémique sur les vulves bat son plein et ou les pénis sont jetables (oui,j’ai lu quelque part que parler un peu de cul de temps en temps ça faisait plaisir au pageRank
), vous êtes a l’aise,en slip kangourou, ou chez votre banquier (l’un n’empêche pas l’autre), à vous manger une 25em tranche du bordel de l’info !
Ce post est le quinzième d’une liste de tutoriels sur le raspberry PI, cliquez ici pour accéder au sommaire !
Suite à nos précédents tutos sur le Raspberry PI et la domotique contrôlée par radio (et notamment le tuto 12), certains d’entre vous m’ont demandé si il n’était pas possible de se passer de prises Chacon, d’autres m’ont demandé si des multiprises existaient sur le même principe, quant à moi je souhaitais de débarrasser de Chacon pour diverses raisons :
C’est pourquoi nous allons aujourd’hui construire notre propre prototype de prise radio (pouvant facilement être transformée en multiprise) commandée par le Raspberry PI
Je parle de « prototype » pour une bonne raison, bien que le montage fonctionne parfaitement, il peux être amélioré au niveau du « packaging » (boitier).
Afin de vous motiver un peu (car je vous sent mous aujourd’hui :p), wala la petite vidéo de démo du prototype (avec quelques explication sommaires pour vous mettre en jambe)
Notez bien que vous devez au moins avoir lu le tuto 12 pour comprendre celui ci
Vous êtes chaud patate pour commencer ? Voyons voir un peu le matos à se procurer
Pour aller plus loin, il vous faudra les curieuses bêbêtes suivantes :
Notez bien que vous n’aurez à Acheter la carte arduino qu’une fois, elle nous servira de programmateur pour construire toute nos futures prises, de même, les résonateurs sont par lots de 5 et nous n’en avons besoin que d’un par prises.
Vous en aurez donc environ pour 6€ par prises radio par la suite, notez que je ne compte pas l’alim (un vieux chargeur de portable récupéré fera l’affaire) ni le boitier (bah oui la vas falloir se dépatouiller avec un Tupperware qui traine XD), nous ne faisons pas vraiment ça pour le prix mais il faut souligner qu’on y gagne quand même par rapport au commerce (d’autant qu’il est possible de faire des multiprises avec ce montage et donc de réduire encore le cout par prises, on peux aussi remplacer/supprimer certains composants en bricolant (suppression du résonateur,remplacement de l’atmega par une Attiny etc..) mais je vais pas tout vous faire non plus :p).
Dans ce tuto nous introduirons les carte de programmation « Arduino » et leurs micro contrôleur Atmega qui nous permettrons de créer tous nos périphériques à bas cout sans avoir à acheter un raspberry à chaque fois ^^.
Petite explication rapide sur l’arduino donc :p
L’arduino (souvent nommé ardui) est une carte électronique très similaire au raspberry PI, à savoir qu’elle peut gérer des entrées sorties GPIO et contenir un code (en C++) pour réagir en fonction de ces gpio, cela dit, il y a quelques différences importantes :
Vous l’aurez compris, l’arduino est une carte de bas niveau, très rapide, moins chère, réductible à une puce et avec plus de gpio que le rpi ce qui en fait un élément parfait pour créer tous nos périphériques radio (prise radio, sonde de température radio, capteur d’ouverture radio etc…).
Les arduino (ou plutôt a terme : les atmega 328) seront les muscles de notre domotiquemaison
En revanche l’ardui n’a pas les capacité de traitement du rpi, de plus le rpi est plus haut niveau et gère en natif l’Ethernet, la gestion d’un os etc…
le rpi sera donc le cerveau de notre domotiquequi commandera et sondera les muscles arduino.
Nous allons refaire le tutoriel #12 : allumer/éteindre une prise à distance avec le raspberry PI,sauf que cette fois ci, la prise sera « maison ».
Concrètement vous allez appuyer sur un certain bouton de votre télécommande chacon (ou envoyer le signal depuis votre rpi)
Ce signal vas être capté par le récepteur RF relié à l’arduino, l’arduino vas vérifier que le signal parle bien de lui (à son code récepteur) qu’il provient bien de la télécommande (a le bon code émetteur) et a un état on ou off (afin de savoir ce qu’il doit faire).
L’arduino vas alors envoyer 0 ou 1 a la carte relais, celle ci vas donc « ouvrir » ou « fermer » le circuit classique de la prise et laisser passer ou non le courant.
Comme les cartes arduino c’est un peu gros et que c’est un peu cher d’en mettre une dans chaque prises, on ne vas utiliser que leurs micro contrôleur : l’Atmega328, qui lui coute 3€ et fait la même chose que l’arduino.
Évidemment comme c’est une puce nue, ça vas être un peu moins rigolo a programmer qu’une carte ardunio (qu’il suffit de brancher sur le port usb du pc), on vas donc se servir de la carte arduino pour programmer les puces Atmega que l’on inclura dans chaque prises
Ça parait un peu fou comme ça pour les novices électroniques que nous sommes mais vous allez voir, c’est en fait très simple
Avant tout, téléchargez et installez l’IDE (environnement de développement Arduino) sur le site d’arduino.
Voila le schéma permettant de programmer une puce atmega à partir d’une carte arduino

Notez que sur le schéma j’utilise ce qu’on appelle une « BreadBoard », c’est une plaque en plastique qui permet de tester des circuits sans avoir à souder juste en plantant des fils dans des trous, les trous sont reliés de manière horizontale entre eux, sauf pour les lignes bleu et rouges (utilisée pour l’alimentation) qui eux sont verticaux.
Je vous conseille vivement l’achat d’une breadboard, ça ne coûte rien et c’est quasi indispensable pour tester les circuits dans de bonnes conditions (je m’en veux un peu de ne pas vous en avoir parlé avant)
Une fois le circuit branché et alimenté vous pourrez lancer l’IDE arduino et programmer la puce comme si elle se trouvait sur la carte arduino.
Commencez par choper les sources du programme ici :
http://domotique.idleman.fr/data/priseMaison/priseRadio.zipPremièrement, allez dans votre repertoire arduino puis dans \libraries\ et créez un dossier nommé : EEPROMAnythingDedans vous placerez le fichier EEPROMAnything.h Nous venons d’inclure une nouvelle librairie à l’arduino IDE, celle vi vas nous permettre de gérer l’EEPROM (petite mémoire interne de l’atmega dans laquel nous allons stocker nos données)
Ensuite, lancez l’IDE (arduino.exe) : il ne vous reste qu’a copier le programme priseRadio.txt ci dessous dans l’ide, et cliquer sur télé-verser
nb: En fonction de l’atmega programmée, vous aurez peut être a changer le modèle de la carte dans l’ide, ex : j’ai une carte arduino duemilanove, mais mon atmega acheté est un uno, du coups lors du télé versement j’ai une erreur du genre “invalid sync blablabla”, donc je sélectionne uno dans le menu :
Et je retente le coup :p
Une fois la puce programmée on vas pouvoir passer a notre vrai branchement de prise radio final (fiou !! ^^, vous verrez avec le temps ça parait enfantin)
La je ne peux pas faire explication plus détaillée (et plus débordante) que ce schéma…

En gros l’Atmega est toujours relié au résonateur (son horloge) et est alimenté des deux coté en 5v comme sur le montage précédent.
On à en plus branché trois composant sur l’Atmega : une led qui vas clignoter quand la prise recevra un signal, afin de ne pas griller la led, on rajoute une résistance (la résistance est a définir en fonction de la led) notez bien que led+ résistance sont optionnels et ne servent que pour avoir un visuel des signaux reçus.
On ajoute à ça une carte de réception radio 433 mhz qui vas capter les signaux radio et les envoyer à l’Atmega par le pin 9, cette carte radio est évidemment alimentée en 5v
On ajoute enfin une carte relais qui vas recevoir un ordre de l’Atmega part le pin 10 quand le signal reçu sera le bon, la carte relais vas alors fermer le circuit de droite (lampe + prise) ce qui vas allumer la lampe. Evidemment, cette carte aussi est alimenté en 5v.
Attention :Faites attention au sens de l’Atmega, vous pourrez vous repérer au petit creux rond en haut de la puce
nb: Les pattes extérieures du résonateur ne sont pas polarisées donc vous pouvez les intervertir par rapport au schéma, en revanche les pattes de la led le sont, donc si votre led ne s’allume pas, c’est peut être que vous vous êtes loupé de sens
Le programme se comporte de la façon suivante :
Le tout premier signal au protocole home easy envoyé à la prise sera enregistré dans celle ci et deviendra le signal de référence pour ouvrir ou fermer le relais de la prise, il est donc nécessaire d’envoyer ce signal le plus rapidement possible après la mise en route du montage final, car un signal voisin pourrait vous piquer la place.
Actuellement, un seul signal peut être enregistré et vous n’avez droit qu’a un seul essai (bien que le matériel puisse en mémoriser beaucoup plus, le code doit être amélioré).
Lorsque la prise reçoit un signal correspondant a son signal de référence, la led clignote 10 fois très rapidement, et le relais change d’état
Lorsque la prise reçoit un signal non correspondant a son signal de référence mais au protocole home easy, la led clignote 1 fois lentement.
Si vous avez des problèmes de portées, de gros parasites, ou de mauvaise communication, pensez a faire ces deux choses :
Avec ces deux points, vous pouvez passer de quelques centimètres à plusieurs centaines de mètres de portée, la différence est vraiment flagrante.
";s:7:"dateiso";s:15:"20130213_212346";}s:15:"20130209_194614";a:7:{s:5:"title";s:68:"Raspberry PI ~ 14 : Surveiller les performances du rpi depuis le web";s:4:"link";s:30:"http://blog.idleman.fr/?p=2130";s:4:"guid";s:30:"http://blog.idleman.fr/?p=2130";s:7:"pubDate";s:31:"Sat, 09 Feb 2013 18:46:14 +0000";s:11:"description";s:365:"Ce post est le quatorzième (mazette, déjà !) d’une liste de tutoriels sur le raspberry PI, cliquez ici pour accéder au sommaire ! C’est bien beau de traficoter tout un tas de truc avec notre raspberry PI ! Mais celui ci étant une frêle … Continuer la lecture ";s:7:"content";s:10058:"Ce post est le quatorzième (mazette, déjà !) d’une liste de tutoriels sur le raspberry PI, cliquez ici pour accéder au sommaire !
C’est bien beau de traficoter tout un tas de truc avec notre raspberry PI ! Mais celui ci étant une frêle petite bébête, il peut être intéressant de le contrôler un peu question performances.
Et ça tombe bien, il existe une interface web mimi comme tout justement faite pour ça !!
RaspControl vous permettra de monitorer de nombreuses infos sur l’état de santé de votre raspberry pi,n’importe quand et n’importe ou.
Ce petit logiciel en PHP est “standalone” c’est à dire qu’il peux tourner sans que vous ayez au préalable installé un serveur web.
Avec raspcontrol, vous pourrez consulter des informations mais aussi effectuer quelques actions comme redémarrer le système, redémarrer /stopper/démarrer apache, consulter vos fichiers de logs, mettre à jour les paquets, mettre à jour le firmware, relancer ssh etc..etc…
Installation
Tenté par raspcontrol ? Alors installons tout ça !!
N’oublions par avant tout de faire une mise à jour générale des paquets
sudo apt-get update sudo apt-get upgrade
On installe ensuite le paquet php5-cli qui permet simplement de faire du php en ligne de commande
sudo apt-get install php5-cli
On se place dans un répertoire quelconque, on télécharge l’archive de raspcontrol et on la décompresse
cd /home/pi/ wget https://github.com/Bioshox/Raspcontrol/zipball/master unzip master
Le dossier décompressé à un nom barbare, donc on le renomme “monitoring” (ou autre, comme vous voulez)
mv Bioshox-Raspcontrol-694435b/ monitoring
Théoriquement, on peux lancer le programme à ce stade, le problème c’es qu’il vas se lancer sur le port 80, qui est déjà utilisé par notre serveur web (apache, lighthttpd ou nginx…) donc on chance le port en éditant le fichier d’exécution du programme :
cd monitoring nano start.sh
Remplacez
HOST=0.0.0.0 PORT=80
Par
HOST=0.0.0.0 PORT=8080
(ou un autre port en fonction de ce qui est déjà pris chez vous) et enregistrez (ctrl+x, Y puis entrée)
Vous pouvez ensuite lancer le programme avec la commande :
sh ./start.sh
(vous devez être situé dans le répertoire “monitoring”, si ce n’est pas le cas, il faut taper le chemin complet vers start.sh)
Vous pouvez alors accéder via un navigateur a votre panel de contrôle à l’adresse : http://votre.adresse.raspberry.pi:8080
(remplacez “votre adresse raspberry pi” par l’adresse réseau de votre rpi)
A la première connexion, raspcontrol vous demande de créer un compte, entrez donc un identifiant et un mot de passe
Cliquez sur “create account”, vous retombez alors sur un écran similaire qui vous demande de vous identifier, remettez les même identifiants puis “login”, ça y est, vous êtes sur le monitoring !!
L’installation/utilisation est terminée, cependant si vous ne voulez pas être embêté très prochaine, il vous faudra faire une petite manip !!
En effet vous remarquerez que si vous fermez votre terminal, le star.sh s’arrête et vous ne pouvez plus accéder à votre monitoring (zut !).
Pour résoudre ce problème, il existe plusieurs manières de faire (non vous n’allez pas laisser votre console ouverte 24/24h 7/7j bande de gougnafiers ^^) la plus simple reste encore d’utiliser Screen.
Screen est un petit utilitaire qui permet d’ouvrir une console en “tâche de fond”, ainsi vous pouvez y lancer des programmes sans avoir a garder votre terminal ouvert.
Installons d’abord Screen
sudo apt-get install screen
Puis lançons notre monitoring à travers Screen
screen -dmS Raspcontrol sh ./start.sh
Vous verrez alors que vous pouvez fermer votre console sans interrompre le programme ! Sympa non ? ![]()
Mais un dernier problème se pose !! ( hé hé hé ) Que se passera t’il quand votre raspberry PI vas redémarrer ? Plus de screen en tâche de fond, donc plus de monitoring, obligé de relancer la commande ci dessus (fuck !!)
On vas donc créer une petite tâche planifiée qui vas se lancer automatiquement au reboot du rapsberry et qui vas exécuter notre commande screen.
On ouvre notre gestionnaire de tâche planifiée
crontab -e
On y ajoute la ligne suivante à la fin du fichier
@reboot cd /home/pi/monitoring && screen -dmS monitoring sh ./start.sh
On sauvegarde (ctrl+X, Y, puis entrée) et c’est bon !!
Notez bien que le combo screen + cron au démarrage est très puissant et vous permet de lancer tout un tas de programmes automatiquement et en tâche de fond au démarrage de votre raspberry pi (par exemple la commande startx pour afficher un bureau visuel ou autres…)
Si vous voulez accéder a votre interface de monitoring depuis autre part que votre réseau, pensez a débloquer le port 8080 de votre box
.
Notez bien que cette application est codée avec les pieds, mais qu’elle à le mérite d’exister, de fonctionner relativement bien et qu’elle pose les bases de la récupération d’infos importantes pour monitorer le rasp
Bien à vous,
Idle
";s:7:"dateiso";s:15:"20130209_194614";}s:15:"20130203_160004";a:7:{s:5:"title";s:25:"Le bordel de l’info #24";s:4:"link";s:30:"http://blog.idleman.fr/?p=2118";s:4:"guid";s:30:"http://blog.idleman.fr/?p=2118";s:7:"pubDate";s:31:"Sun, 03 Feb 2013 15:00:04 +0000";s:11:"description";s:343:" Salut bande de gecko asthmatiques, vous en avez d’la chance !! A l’heure où les canards défient la gravité, à l’heure ou un millier de nerd se touchent la nouille sur minecraft, bref à l’heure ou tout est proche … Continuer la lecture ";s:7:"content";s:7189:"
Salut bande de gecko asthmatiques, vous en avez d’la chance !! A l’heure où les canards défient la gravité, à l’heure ou un millier de nerd se touchent la nouille sur minecraft, bref à l’heure ou tout est proche de foutre le camp, vous êtes serein, sur un terrain vague avec un dealer d’organe, ou dans votre salon High Tech isolé du monde à vous manger une 24 em tranche du bordel de l’info !
Qui n’a jamais galéré pour convertir correctement une bête image .PNG en fichier .ICO et vice et versa sans avoir de rendus horribles, de problèmes de tailles etc… ?
Alors bien sûr il existe une tonne de services web, de programmes, et de gadgets en tout genre permettant de faire ça, mais c’est généralement compliqué d’en trouver un qui soit simultanément bon, simple d’utilisation, sans inscription, sans installation, à la bonne taille, sans perte de qualité etc…
Or il se trouve que j’utilise cette perle rare depuis quelques années déjà, et que je me suis récemment apercu avec horreur que je n’en avais jamais parlé ici !! Mesdames et MesGeeks, sans faillir plus longtemps je vous présente : ToyCon :
ToyCon se présente sous la forme d’un petit exécutable gratuit, sans chichi, sans inscriptions et sans installation faisant apparaitre, à son exécution une petite boite en carton quelque part sur votre bureau.
Tout fichier png placé dans cette boite sera automatiquement convertis en fichier ico placé au même endroit et avec le même nom que le fichier source.
Il est évidemment possible de faire l’inverse, à savoir convertir un fichier ico en image png.
Nous pouvons également préciser qu’il est possible de glisser déposer plusieurs fichiers en même temps sur la boite pour faire de la conversion de masse.
Les png transparents sont correctement géré et il est possible de choisir les différentes tailles à inclure dans le .ico (128*128, 96*96,72-72,64*64,48*48,32*32,24*24,16*16) et il supporte les couleurs 4bits, 8bits et 32bits.
Voila ce n’est pas un programme qui vas révolutionner le monde, il ne paye pas forcement de mine, il n’est pas tout jeune (dernière MAJ en 2010), et il ne fera rien pour la sauvegarde du thon rouge mais il m’a sauvé la vie plus d’une fois, il fait vraiment bien son boulot, il le fait de manière ludique, et il le fait sans vous prendre votre matinée avec des options débiles donc je me devais d’en toucher un mot ici
.
Bien à vous mes ptits poulets,
Idle
";s:7:"dateiso";s:15:"20130202_164737";}s:15:"20130124_190253";a:7:{s:5:"title";s:67:"Raspberry PI ~ 13 : Détecter l’ouverture des portes et fenêtres";s:4:"link";s:30:"http://blog.idleman.fr/?p=2084";s:4:"guid";s:30:"http://blog.idleman.fr/?p=2084";s:7:"pubDate";s:31:"Thu, 24 Jan 2013 18:02:53 +0000";s:11:"description";s:378:"Ce post est le treizième d’une liste de tutoriels sur le raspberry PI, cliquez ici pour accéder au sommaire ! En attendant que je parvienne à trouver la motivation pour monter la vidéo sur la sonde température radio (j’ai la vidéo, mais mon monteur … Continuer la lecture ";s:7:"content";s:9367:"Ce post est le treizième d’une liste de tutoriels sur le raspberry PI, cliquez ici pour accéder au sommaire !
En attendant que je parvienne à trouver la motivation pour monter la vidéo sur la sonde température radio (j’ai la vidéo, mais mon monteur est en plein partiels et je n’ai aucune notion d’adobe première ^^), je vous lance ce ptit tuto à vous mettre sous la dent.
Aujourd’hui nous allons voir comment détecter l’ouverture d’une porte, d’une fenêtre, ou de quoi que ce soit qui s’ouvre ou qui se ferme, avec le raspberry PI et un petit composant à environ 3€.
L’état de la porte (ouverte/fermée) sera visible depuis une interface web, ou depuis notre interface de reconnaissance/synthèse vocale YURI (implantée dans les précédents tutoriaux sur le raspberry PI)
Une petite vidéo démonstration pour nous mettre en jambe :
video-2013-01-23-21-30-27 from idleman on Vimeo.
Un mini aimant est fixé sur le bord de la partie mobile votre porte (que nous appellerons le battant), et un petit capteur sera fixé sur la partie fixe de la porte (que nous appellerons tenant), ce capteur est nommé “capteur à effet de hall”.
C’est quoi ce composant cheulou au nom barbare ?
Un capteur à effet de hall est simplement un composant qui vas renvoyer 1 ou 0 si il est, ou non, à proximité d’un champs magnétique (par exemple émis par un aimant)
D’une certaine manière, c’est un bête interrupteur, à ceci près qu’il ne réagit pas à une pression mais à une “magnétisation” proche.
Mais alors, pas besoin d’un composant, pourquoi ne pas utiliser juste deux fils qui se touchent ?
Et bien surtout à cause du frottement, l’avantage du capteur a effet de hall est qu’il n’y a aucun contact “physique” puisque celui ci est magnétique donc :
Vous l’aurez compris, ce capteur à effet de hall sera branché au raspberry PI et lui enverra du 0 (l’aimant est lointain donc la porte est ouverte) ou sur 1 (l’aimant est proche donc la porte est fermée), le rapsberry Pi mettra à jour sa base de données (ici un simple fichier texte) qui sera alors consulté par l’interface web et par YURI.
Ce que je ne vous dis pas
Oai je sais, c’est con puisqu’au final je vous le dis, mais respectez mon style littéraire bande de gaufres !
J’ai dis plus haut que le capteur renvoyait une valeur digitale (0 ou un 1) et fonctionnait un peu comme un interrupteur, je vous ai mentis
En réalité le capteur seul est plus une “résistance” qui vas varier en fonction de la proximité du champs magnétique et renvoyer une valeur analogique (0.2,1.4 etc…), et c’est un problème pour nous qui avons besoin d’un 0 ou d’un 1.
C’est la raison pour laquelle nous avons commandé un capteur avec un petit circuit associé, ce circuit comportes quelques autres composants qui vont traiter la valeur analogique et, a partir d’un certain seuil, définir qu’elle envoie un 0 ou un 1 (ex : si la résistance est entre 0 et 2,5 on envoie 0, sinon on envoie 1) .
Et la ou cette petite carte est top, c’est que vous avez la possibilité de régler ce seuil !! En effet un ptit potentiomètre qui se présente sous la forme d’une vis (donc réglable avec un tournevis plat) permet de faire varier ce seuil, ainsi nous pourrons agir sur la sensibilité de notre détection de porte en fonction de la porte et de la puissance de l’aimant choisis.
Je vous conseille bien évidemment de commander les aimants conseillés ci dessous qui sont minuscules et surpuissants, mais sur la théorie n’importe quel aimant avec un peu de portée fait l’affaire
.
Une grand mère unijambiste pourrait faire ce montage dans le noir mais je vais quand même vous le spécifier histoire que les lecteurs les moins sobres puissent nous suivre :
nb : J’ai choisis de relier les données sur le pin physique 11 du raspberry, qui correspond au numéro “0” avec la librairie wiring PI.
On vas avoir :
Un programme en C qui vas vérifier toutes les x secondes l’état du pin “0” (qui sera donc à 0 ou 1 en fonction de si la porte est ouverte ou fermée) et envoyer l’état a une page php.
Une page php qui vas enregistrer la valeur dans une base de données (ici un fichier texte)
Enfin une page html basique qui vas faire un appel ajax au fichier texte de la base de donnée toutes les x secondes et afficher “porte fermée” ou “porte ouverte” en fonction du contenu du fichier texte.
Notez que dans le fichier PHP nous avons aussi prévu quelques lignes pour yuri (yuri requête sur la page php, qui vas vérifier l’état du fichier et retourner à yuri la phrase a dire en conséquence “porte fermée” ou “porte ouverte”).
Lancez le programme en C avec les paramètres :
ex : ./capteurOuverture /var/www/capteurOuverture/capteurOuverture.php 0
Lancez l’adresse http://votre.raspberry.pi/capteurOuverture (en remplaçant évidemment “votre.raspberry.pi” par l’adresse réseau de votre raspberry PI)
Ouvrez/fermez votre porte et visualisez le résultat sur l’interface web
Interrogez yuri en ouvrant/fermant votre porte
C’est tout pour aujourd’hui
bisous mes poulets, moi je part fêter mon quart de siècle !
Avez vous remarqué avec le temps qu’en informatique, les forums étaient utilisés à 90% uniquement sur un modèle de question/réponse, sans réelle discussions par la suite ?
Dans cette optique, ne pourrais t’on pas spécialiser un peu le code desdits forums de anière a privilégier au mieux ce format d’échange?
C’est en tout cas le constat qu’à fait le site http://stackoverflow.com/ devenu célèbre justement pour l’orientation purement FAQ de son forum.
La différence majeure avec un forum classique étant qu’il est possible de noter la pertinence des réponses, d’attribuer des tags aux questions, que de nombreux outils voué à la recherche rapide d’une solution son intégrés et qu’il n’y à pas forcement besoin d’inscription pour poser ou répondre à une question.
En france, le forum comment ça marche, la FAQ de yahoo et quelques autres se sont peu à peu orienté vers le même fonctionnement.
Ce concept simple et spécialisé dans la résolution et le partage des problèmes utilisateur me plaisant beaucoup, j’ai cherché, comme je le fait toujours quand ça me plait, une solution open à installer “chez ouam” ![]()
Je n’ai pas eu à chercher longtemps pour nous dégoter une petite perle, j’ai nommé : Coordino
A noter qu’il en existe beaucoup d’autres en PHP (mais pour la plupart vraiment pas propres) mais aussi en python, aspx et ruby etc… si vous êtes plus de ce bord la ![]()
Coordino est le plus pratique à mon sens même si il est particulièrement chiant et illogique dans son mode d’installation, c’est pourquoi je me permet de coucher sur le papier, le sombre cheminement que j’ai du parcourir avant d’installer la bête.
Téléchargez le script sur le site officiel de l’application
Décompressez l’archive quelque part dans le répertoire /www de votre serveur (ou hébergement)
Réglez les permissions avec la commande
chown -R www-data:www-data /chemin/vers/coordino
Renommez le fichier “database_sample.php” en “database.php”
Créez le dossier app/tmp/cache (ne me demandez pas pourquoi il n’est pas la par défaut)
Puis lancez l’assistant d’installation en tapant l’adresse de votre coordino sur le serveur:
Un click sur Let’s continue vous amenera au formulaire de configuration de la base de données.
Créez alors une base de données pour coordino depuis phpMyAdmin ou autre part et remplissez sans faillir les champs concernés
ET AVANT d’appuyer sur le tentateur de bouton “create database”
re-renomez le fichier app/config/databases.php :
en database_sample.php
sans quoi vous aurez une erreur type “already exist” (quand je vous disait que l’installateur avait été codé par un nazi…)
Vous arrivez ensuite sur un formulaire plus sympa, qui vous demande vos infos de compte perso :
Par sécurité, coordino vous conseille de mettre le dossier “/app/config” en lecture seule après avoir finit l’installation… et comme on est pas contrariant:
sudo chmod -R 0500 /chemin/vers/coordino/app/config
Et PAF !! Fatal error !!
Nan je déconne : le script est installé !! Enjoy people Enjoy donc !! ![]()
N’oubliez pas de passer dans le fichier app/config/core.php dernière ligne pour mettre tout ça en français:
et tant que vous y êtes, faites donc un tour dans le panel admin du site histoire de mettre à jour la liste des mots bannis :
J’aurais bien testé la mise en place de ce ptit script pour le blog, mes commentaires subiraient peut être un peu moins l’assaut de Q&A qu’ils prennent actuellement dans la tronche…
Qu’en pensez vous?
";s:7:"dateiso";s:15:"20130120_152819";}s:15:"20130118_182936";a:7:{s:5:"title";s:40:"Greeder, un nouveau thême pour Leed RSS";s:4:"link";s:30:"http://blog.idleman.fr/?p=2051";s:4:"guid";s:30:"http://blog.idleman.fr/?p=2051";s:7:"pubDate";s:31:"Fri, 18 Jan 2013 17:29:36 +0000";s:11:"description";s:384:" Leed est un agrégateur de flux RSS “maison” similaire à Google reader, netvibes etc… à ceci près qu’il se veux gratuit, installable sur votre serveur ou hébergement et (contrairement à certains de ses opposants open sources) relativement léger et simple … Continuer la lecture ";s:7:"content";s:3843:"
Leed est un agrégateur de flux RSS “maison” similaire à Google reader, netvibes etc… à ceci près qu’il se veux gratuit, installable sur votre serveur ou hébergement et (contrairement à certains de ses opposants open sources) relativement léger et simple à prendre en main.
Seulement voila, quant on est accoutumé à son Google Reader, quoi de plus difficile que de se réadapter à une nouvelle interface (orange vif qui plus est) sans quelques regrets ?
C’est partant de cette problématique que Tom Canac a développé son propre thème pour Leed en prenant pour modèle d’inspiration Google Reader, thême qu’il a eu la gentillesse de partager gratuitement avec nous.
Outre le fait qu’il est particulièrement réussi, il s’agit du premier thème créé par la communauté pour Leed, je me devais donc de vous en parler sur le blog, et de vous inviter à l’essayer
! Vous pouvez cliquez sur l’image ci dessous pour accéder à une petite démo de la bête :p
Greeder est disponible en téléchargement gratuit sur le site de Tom Canac, ou directement depuis la vitrine de Leed.
Pour l’installer il vous suffit de le décompresser dans le répertoire /templates de leed et de modifier le nom du Template (remplacer “marigolds” par “greeder”) dans le fichier /constant.php de votre leed :
C’est tout
pour les manipulations
!!
nb : Si vous avez des messages d’erreur lors de test du template ou que le dossier templates est introuvable, c’est que votre version est trop ancienne, pensez à mettre a jour leed.
Notez bien que je vous encourage fortement à créer vous aussi vos propres thèmes graphiques et à me les proposer afin que je les mette sur la vitrine de Leed, créer un thème pour leed ne demande aucune compétence en PHP car le code véritable est séparé de l’interface graphique dans le but de faciliter la vie a ceux qui souhaiteraient la personnaliser.
Pour toutes questions,remarque ou suggestions concernant le thème Greeder, n’hésitez pas à vous adresser à Tom, qui sera ravis d’échanger avec vous ![]()
Bon week end à tous !!
";s:7:"dateiso";s:15:"20130118_182936";}s:15:"20130113_161044";a:7:{s:5:"title";s:27:"Besoin d’un coup de patte";s:4:"link";s:30:"http://blog.idleman.fr/?p=2041";s:4:"guid";s:30:"http://blog.idleman.fr/?p=2041";s:7:"pubDate";s:31:"Sun, 13 Jan 2013 15:10:44 +0000";s:11:"description";s:351:"Salut à toi l’idleNaute !! Voila un petit billet rapide, non pas pour te transmettre de l’information, mais pour t’en piquer si faire se peux :p. Voila j’ai la chance de me taper une thèse professionnelle sur ma cinquième … Continuer la lecture ";s:7:"content";s:2013:"
Salut à toi l’idleNaute !! Voila un petit billet rapide, non pas pour te transmettre de l’information, mais pour t’en piquer si faire se peux :p.
Voila j’ai la chance de me taper une thèse professionnelle sur ma cinquième année sur le sujet de la programmation d’un programme, par un autre programme.
Evidemment on ne prends pas en compte ici que l’aspect développement technique mais aussi la conception d’un programme, analyse de l’existant, analyse du besoin, conception de la solution, développement, tests mise en prod etc…
Etant donné que sortis du windev et de deux trois méthodes mathématiques hyper compréhensibles (par deux mathématiciens dans le monde) je n’ai rien, je lance cet appel au secours pour ceux qui auraient des pistes sur le sujet et autour
J’ai d’ailleurs fait un petit formulaire pour chauffer ceux qui aurait la gentillesse de me donner un coup de patoune !! :
Evidemment le formulaire n’est pas forcement au top, donc n’hésitez pas a m’envoyer vos suggestions, liens, bout de thèse, etc… sur idleman@idleman.fr
Je me suis promis de limiter au possible l’utilisation du blog pour mon propre profit mais je trouve dommage de poster sur d’hétéroclites forums alors que j’ai 15 000 idlenautes confirmés sous la main :p
Bien à vous,
Idle
";s:7:"dateiso";s:15:"20130113_161044";}s:15:"20130109_184435";a:7:{s:5:"title";s:36:"Installer un webmail sur son serveur";s:4:"link";s:30:"http://blog.idleman.fr/?p=2032";s:4:"guid";s:30:"http://blog.idleman.fr/?p=2032";s:7:"pubDate";s:31:"Wed, 09 Jan 2013 17:44:35 +0000";s:11:"description";s:391:"Récemment, j’ai eu la frustration de constater a mon école d’info, qu’un proxy satanique avait encore frappé et m’avais privé l’accèsà ma boite mail perso ovh, il était devenu impossible de me connecter au client mail web ovh rouncube. Quelle … Continuer la lecture ";s:7:"content";s:7938:"Récemment, j’ai eu la frustration de constater a mon école d’info, qu’un proxy satanique avait encore frappé et m’avais privé l’accès
à ma boite mail perso ovh, il était devenu impossible de me connecter au client mail web ovh rouncube.
Quelle frustration de se voir ainsi amputé de mon droit à la procrastination !!
Y a t’il pire fléau que de se trouver bloquer dans un cours soporifique (PMI pour ceux qui connaissent), privé d’une distraction constructive telle que la consultation de vos mails et tout ceci
au profit d’un administrateur réseau sadique qui n’a rien trouvé de mieux pour justifier sa paye que de bloquer mes flux de communications.
J’accepte qu’on bloque Facebook, youtube, le pr0n, les trucs qui bouffent la bande passante de l’école, mais la boite mail, c’est carrément du vice !
Bref je me suis mis en tête d’installer mon propre client mail (comme Outlook, Thunderbird etc..), accessible depuis le web : donc un webmail(Gmail, Yahoo mail, Hotmail etc…)
L’intérêt étant :
Ne plus être dépendant du client mail ovh
Passer sous le radar des proxy grâce a mon nom de domaine perso qui n’est pas bloqué
Accéder à mes mails de partout, sur n’importe quelle plateforme sans installer de programme
Disposer d’un client gratuit, personnalisable et à jour
Il existe pas mal de solutions webmail gratuites comme l’excellent zimbra que j’utilise en entreprise ou le framework horde
J’ai sélectionné roundcube, et ce pour les raisons suivantes:
- Il est gratuit
- C’est celui que j’utilisait chez ovh
- Il utilise PHP et MySQL (ça tombe bien, mon serveur connait bien ces langages/SGBD)
- Pour un client mail, il est ultra facile à installer et à configurer (ça m’a pris 2 minutes)
- Le thème par défaut ne fait pas saigner les yeux (le thème Larry est même plutôt joli)
- Ce n’est pas une usine à gaz comme zimbra, c’est plus adapté aux particuliers qu’aux équipes
- Il est assez modulable, on peux y ajouter plugins, thèmes, calendrier, greffon owncloud etc..
L’objet de ce tuto est donc l’installation de roundcube sur votre serveur OU sur votre hébergement web
Avant de vous lancer dans le tuto, je préfère vous informer des désagréments que j’ai vu sur le logiciel
- Les thèmes natifs ne sont pas responsive (ne s’adaptent pas aux tablettes et Smartphone)
- On ne peux gérer qu’un seul compte mail(un plugin existe certainement pour résoudre ce problème)
- Très peu de thèmes gratuits et performants sont proposés ( qu’on ne me parle plus de mobileCube, je n’ai jamais vu un thème aussi bogué)
- Je n’en vois pas d’autres pour le moment
- Chopez la dernière version complète de roundcube ici : http://roundcube.net/download
- Décompressez dans le répertoire web de votre serveur (/var/www)
- Faites un chown www-data:www-data ou un chmod 777 sur les sous dossiers logs et temp du répertoire
- Créez un utilisateur MySQL « roundcubemail » avec les droits sur une base associée (disons « roundcubemail »)
- Rendez vous sur la page d’installation : http://votre.serveur/dossier.roundcube/installer/
- Suivez les étapes de l’installateur
- Pensez à supprimer le dossier installer a la fin de l’installation
Connectez vous à l’adresse du script :
Entrez votre login de boite (sans de @votre.domaine) ex: Idleman
Entrez votre mot de passe de boite
Tataaaaaa! *Musique de la marche impériale*
Tous les plugins intéressants se trouvent ici : http://trac.roundcube.net/wiki/Plugin_Repository
Pour installer un plugin :
Les plugins intéressant selon moi :
Context Menu (http://www.tehinterweb.co.uk/roundcube/#picontextmenu) : ajoute un menu contextuel au clic droit pour changer l’état d’un mail(lu/non lu etc..)
HTML5 notifier (http://www.stremlau.net/html5_notifier/) : Utilise l’html5 pour notifier sur le bureau (comme Outlook ou Thunderbird) l’arrivée d’un message, peux aussi produire des sons (ne fonctionne que sous certains navigateurs)
Jappix4roundcube : http://code.google.com/p/jappix4roundcube/ : ajoute un mini chat jappix
Persistent login (http://www.insanefactory.com/roundcube-persistent-login-plugin/) : Ajoute une case « se souvenir de moi » à la connexion
Fail2ban (http://mattrude.com/projects/roundcube-fail2ban-plugin/) : Bloque les adresses IP qui tentent de faire du bruteforce
Drag and drop (https://github.com/thomasysliu/Roundcube-Plugin-Drag-and-Upload) : permet d’uploader des fichiers d’un simple glisser/déposer (ne fonctionne que sous les navigateurs supportant cette fonction)
Attachment preview (https://github.com/thomasysliu/Roundcube-Plugin-Attachment-Preview) : Permet de visualiser le spièces jointes (images etc…) d’un mail reçu
Comme je le disais plus tôt, de ce côté la c’est un peu la misère :
Classic : Le thème originel, a l’avantage d’être simple,natif,stable et s’adapte jusqu’a a certain point au navigateur
Larry : Un thème natif un peu plus évolué, très joli et relativement stable, mais statique donc pas pratique lorsqu’on redimensionne ou qu’on consulte depuis autre chose qu’un PC
MobileCube : Joli (style MAC), gratuit et inclus un plugin de calendrier, mais horriblement bogué chez moi.
LiteCube : Gratuit et light, mais pas encore testé pour le moment
Hey !! Voila le petit article inutile et auto-satisfaisant de la fin de l’année !!
En effet le blog étant parfois visités par quelques pèlerins en déroute je me sent dans l’obligation de rédiger ce petit billet afin de
vous remercier tous pour votre fidélité d’une part, mais aussi de regarder dans le rétro (c’est généralement le moment ou on se prend le platane qui était devant) de définir la headline, ce qu’elle fut et ce qu’elle est amenée à devenir afin de conserver la synergie du blog (ça y est je maitrise le pipotron, je vais me lancer dans la politique…).
pour me la péter hé hé hé ! (pas de cachotterie entre nous, un bloggeur humble, ça n’existe pas)
Le blog à débuté en Mai 2011 sans trop de conviction, avec ses 62 visiteurs mensuels et ses deux articles qui se battaient en duels, depuis, le chiffre n’a cessé de grimper, avec l’aide constante du grand SebSauvage, et de nombreux autres bloggeurs talentueux, et surtout de par les nombreux idlenautes, restés fidèles au poste, essayant les tempêtes de billets ennuyeux lorsqu’ils survenaient : je parle bien entendu de vous mes ptit cœurs (*kitten mode off*), bref on en est a 12 663 visiteurs unique le mois dernier, 59 594 dans l’année 2012 (sans compter ce mois de décembre) et une croissance constante bien que commençant à plafonner :p
Vous l’aurez constaté, mon logiciel de stats Piwik a beau être fantastique, il n’est pas très doué pour traiter les mois en cours (cf décembre)
Bref, belle croissance, je n’en espérait pas tant, merci encore de me suivre, c’est vraiment très agréable de se savoir lu, et d’autant plus agréable de recevoir vos commentaires, souvent plus consistants que les articles en eux même
Et bien, beaucoup plus de tuto, des articles plus long (mois qui m’était juré de rester succinct) et un élargissement du thème informatique avec l’arrivée de notions d’électronique, notamment avec les tutos sur le raspberry PI et les moyens de faire de la domotique à bas prix et sans trop de connaissance.
Je ne vous le cache pas, l’électronique, à mon petit niveau, me plait de plus en plus et je pense en parler d’avantage encore dans l’année à venir, j’aimerais beaucoup lancer des tutos sur les autres types de cartes/composants utiles pour les n00b de l’électronique comme moi, notamment de l’arduino, des attiny, et autres trucs funky du genre.
Et pourquoi pas un petit projet/tuto sur la création d’une imprimante 3d pour les internautes à la fois pauvre et fainéant?
Le but étant d’une part de m’adonner a une passion longtemps refoulée (par manque de connaissance surtout) et d’autre part de faire communiquer d’avantage le monde virtuel (développement) et physique (électronique/électrique (et pourquoi pas un peu de chimie qui fait boum) ), l’informatique de gestion bête et méchante m’abrutissant de jours en jours (Ma boulot est un CRUD sans fin avec quelques surprises d’un langage ou d’une entreprise à l’autre, mais rien de palpitant).
J’irais également me promener du côté plus virtuel des nouveaux serveurs(http/sgbd ou autres) en vogue, j’entends par la nodejs, lighthttpd, nginx, mongodb etc…
Comme beaucoup, j’ai beaucoup de réticence a quitter apache2 après ces longues années de collaboration avec le mammouth du web, mais je dois me rendre à l’évidence que ce serveur est aujourd’hui quasiment obsolète, qu’il s’agisse de performances, de configuration, d’adaptabilité ou de polyvalence, sa légendaire stabilité restant encore son majeur atout comparés aux petits jeunots un peu frêles.
Une question ouverte
Harcelé par une petite femme vénale, et un peu portée (il faut le reconnaitre) sur la bière (God Bless America ! Elle ne lit pas le blog ), j’avais pensé à rentabiliser quelque peu le blog cette année, au moins pour me lui payer une binouze (et pourquoi pas l’hébergement ovh du blog) de temps en temps.
Je me refuse à placer le moindre pixel immonde et gluant de pub sur le blog (c’est que ça a tendance à se reproduire vite ces saloperies, ya qu’a voir le blog de Korben (Rest In Peace)) et puis je pense que mon trafique me rapporterais 15 centimes par ans, mais soyez sûr que je n’hésiterais pas à vous vendre du rêve pour élargir votre pénis ou perdre du poids avec la recette magique surtaxée de Mme michou tout en finançant une dictature de l’est si l’occasion se présentait nierk nierk nierk *rire quasi maléfique mais pas trop*
Je pensais donc plutôt a un ptit bouton discret “Faire un don” bien que n’étant pas sûr de la façon dont je dois m’y prendre et n’étant pas dupe non plus quant au fait qu’il prendra certainement la poussière, mais au moins j’aurais donné la possibilité de le faire
Qu’en pensez vous?
Un rappel un peu honteux
Je vous avais promis une nouvelle charte pour la fin de l’année, il semblerait que je doivent repousser ça plutôt à … Avril, en effet mes études inintéressantes risquent de m’avaler les trois prochains mois (sans forcément être payantes d’ailleurs, belle arnaque cette 5em année)
Mais après PR-OM-IS elle sort !!
Une invitation
Je tiens à signaler que je cherche toujours des co-rédacteurs pour le blog, bon ou mauvais en informatique, assidus ou pas tant qu’ils sont passionnés parce que qu’ils font et qu’il souhaitent réellement le partager (ce second point est important) contactez moi si vous êtes intéressés.
N’hésitez pas également à m’envoyer les sujets qu’il vous plairait que nous traitions ensembles, ou pourquoi pas même des articles complet (publiés sous votre nom avec un backlink vers votre blog évidemment
) je ne suis pas contre du travail tout fait
joyeuses pochtronade, je vous dis au 3 Janvier (parce que le 02, j’ai prévu de vomir le 01)
Bien à vous,
Idle
";s:7:"dateiso";s:15:"20121227_204321";}s:15:"20121224_151230";a:7:{s:5:"title";s:50:"Raspberry PI ~ 12 : Allumer des prises à distance";s:4:"link";s:30:"http://blog.idleman.fr/?p=1970";s:4:"guid";s:30:"http://blog.idleman.fr/?p=1970";s:7:"pubDate";s:31:"Mon, 24 Dec 2012 14:12:30 +0000";s:11:"description";s:341:" Ce post est le douzième d’une liste de tutoriels sur le raspberry PI dont voici le sommaire : Raspberry PI ~ 01 : Présentation Raspberry PI ~ 02 : Exploration technique Raspberry PI ~ 03 : Brancher et installer le … Continuer la lecture ";s:7:"content";s:13367:"
Ce post est le douzième d’une liste de tutoriels sur le raspberry PI dont voici le sommaire :
Avant que la fin du monde (un peu tardive), ou une trop grosse cuite du nouvel an ne nous sépare, je tenais à vous offrir ce petit tuto sur le « télécommandage » (ça se dit ça?) de prises électriques depuis le raspberry PI.
Nous allons donc reproduire notre tuto 7 « éteindre/allumer une lampe avec le raspberry PI » mais cette fois ci, sans utiliser de fils.
Voila la traditionnelle petite vidéo de démonstration de ce que nous allons faire :
(Un grand merci à Maxime Raynal (dont on peux reconnaître le petit accent chantant dans la vidéo pour son fabuleux montage
, ça change de mes précédentes vidéos filmées à la Blairwitch)
Quelques screenshots de l’application web évoquée dans la vidéo :
Accueil des périphériques, par pièces
Espace de configuration sans utilisation de base de données
Interface adaptables tablettes/smartphone
Ce montage est similaire au montage filaire que nous avons déjà vu, mais il a pour différences les points suivants.
FORCES :
FAIBLESSES :
Si vous avez suivis le précédent tuto sur la radio, vous devriez déjà tout avoir :
Ce qui nous fait un coût domotique entre 30€ et 65€ par la, en fonction du nombre de machines que vous voulez commander et des prix que vous trouvez sur le net.
Notez que par la suite si vous souhaitez équiper d’autres pièces vous n’aurez pas à racheter de Raspberry PI ni d’émetteur (à moins d’habiter un palace auquel cas le prix ne vous posera pas problème) du coup vous paierez entre 15€ et 30€ pour équiper une pièce supplémentaire (en fonction du nombre de prises, des réductions, des frais de ports etc…).
Le montage rpi + émetteur 433 mhz a déjà été expliqué dans notre premier tuto sur RPI+radio, mais comme je suis un chic type et que j’adore faire des gribouillis, je répète le schéma ici :
Le code de l’interface web+programme C qui émet les signaux radio est téléchargeable ici :
http://projet.idleman.fr/domopi/data/hcc/hcc.zip
Vous pouvez envoyer un signal de deux façon différentes :
En ligne de commande linux :
./var/www/hcc/radioEmission 0 12325261 1 on
0 = le numéro WiringPi du PIN du Raspberry relié a la carte émetteur 433mhz (ici zéro, qui correspond au pin physique 11 du rpi)
12325261 = Un code de télécommande que nous attribuons arbitrairement au raspberry PI, ca permet aux prises de n’obeir qu’a ce code et donc qu’a votre raspberry.
1 = code du recepteur (choisis arbitrairement, c’est ce qui permettra au recepteur de savoir si c’ets a lui qu’on donne l’ordre ou a un autre)
on = état de la prise souhaité on ou off
nb : Le ./ est obligatoire devant quand vous executez le programme depuis le repertoire courant, si vous ne le faite pas vous fisquez de tomber sur un « commande not found »
Depuis l’interface web :
qui en réalité se contente d’exécuter la commande précédente (pourquoi faire compliqué) lorsque vous cliquez sur un item.
Pour vous connecter, les logins et mot de passe par défaut sont :
login : admin
mdp : admin
Ces identifiants peuvent être changé en éditant le fichier constant.php situé dans le répertoire hcc
Notez bien que vous ne pourrez rien piloter tant que les prises n’auront pas fait l’apprentissage du signal que vous envoyez (expliqué un peu plus ci dessous).
Les prises électriques Chacon ont un module d’apprentissage de signaux intégré, ce qui veux dire que lorsque vous les brancherez, elles « écouteront » pendant 5 secondes les signaux envoyés et reconnaîtrons ces signaux pas la suite.
Il vous faut donc pour chaque prise, la brancher et émettre le signal avec le Raspberry PI (via l’interface web disponible sur http://wotre.raspberry.pi/hcc ou par ligne de commande) avant 5 secondes pour qu’elle soit par la suite liée au signal.
Vous reconnaîtrez des clic clac successifs vous avertissant que la télécommande a bien reçu votre signal et l’a mémorisé.
Il y a donc trois façons de piloter l’installation :
pilotage classique : je passe par les interrupteurs Chacon (télécommande ou télécommande sous forme d’interrupteur) pour allumer/éteindre mes lampes
pilotage par interface web : j’allume/éteint mes lampes via une interface web sur navigateur internet de tablettes/pc/smartphone
pilotage par reconnaissance vocale :Lorsque je prononce une phrase définie, mon pc envoie directement une requête au Raspberry PI qui allume ou éteint les lampes
Pour ce dernier, je me suis contenté de mélanger mon tuto sur la reconnaissance vocale (raspberry pi 09). Je vous invite à faire la même chose, le résultat est plutôt propre.
Pour configurer yuri selon votre interface :
le mot clé de reconnaissance vocale, sera le nom que vous avez donné au périphérique
";s:7:"dateiso";s:15:"20121224_151230";}s:15:"20121215_121448";a:7:{s:5:"title";s:60:"Raspberry PI ~ 11 : Relier à un écran et afficher du texte";s:4:"link";s:30:"http://blog.idleman.fr/?p=1946";s:4:"guid";s:30:"http://blog.idleman.fr/?p=1946";s:7:"pubDate";s:31:"Sat, 15 Dec 2012 11:14:48 +0000";s:11:"description";s:340:" Ce post est le onzième d’une liste de tutoriels sur le raspberry PI dont voici le sommaire : Raspberry PI ~ 01 : Présentation Raspberry PI ~ 02 : Exploration technique Raspberry PI ~ 03 : Brancher et installer le … Continuer la lecture ";s:7:"content";s:8707:"Ce post est le onzième d’une liste de tutoriels sur le raspberry PI dont voici le sommaire :
Aujourd’hui nous allons apprendre à faire ça :
Mais non pas la boite bande de péquenauds incultes (wink wink nudge nudge), mais ce magnifique écran LCD, à l’origine utilisé sur les vieux téléphones nokia (ben oui on est pas des nouilles molles).
Le but de ce tuto sera donc de brancher un petit écran LCD rétro éclairé (a 4,89€ sur ebay cela dit) et d’y afficher un texte choisis.
Je suis partis du principe que je voulais, lorsque je branche mon raspberry au labo ou autre part, récupérer l’adresse ip qui lui est automatiquement attribué par le réseau sur lequel je me connecte, et l’afficher sur l’écran afin que je puisse me connecter au rpi en ssh sans avoir a demander a l’admin du réseau cette fameuse ip.
(oui je sais la ça n’est pas une IP réseau mais j’ai perdu l’autre photo alors on vas s’en contenter
)
Ce sera donc notre fil rouge
, je vous rassure tout de suite, l’intro est longue, mais le tuto lui est très court, je m’en voudrait de vous tuer une seconde fois après le tuto sur la réception radio
.
Le matériel
Les branchements
Notez que l’écran possède deux rangée de 8 Trous à l’opposée l’une de l’autre, vous pouvez utiliser l’une ou l’autre des rangées ça ne fais aucune différence, nous utiliserons celle avec les inscriptions de chaque pin afin d’être sûr de ne pas faire d’erreurs.
Les 4 trous sur les coins sont uniquement la a titre de fixation, ils ne sont reliés à rien
Voila le branchement en image, fiez vous aux couleurs pour le fils qui sont un peu cachés :
Le programme
Pour installer le programme , ouvrez la console SSH de votre rpi, et tapez les commandes suivantes :
Téléchargement du programme
nb: la source est dans le zip pour ceux qui voudraient comprendre plus en détail le fonctionnement du script
.
sudo wget http://projet.idleman.fr/domopi/data/piScreen/lcd.zip
Décompression
sudo unzip lcd.zip
Déplacement
sudo mv lcd /etc/lcd
Le programme est installé
En ligne de commande
/etc/lcd/screen -p "Hello world"
Options
Obtenir son IP sur l’écran lorsqu’on se connecte a un réseau
Comme vous avez u le voir dans les options, la commande
/etc/lcd/screen -i
Il nous suffit donc de lancer un CRON (une tâche planifiée) qui vas lancer cette commande toutes les x minutes (moi j’ai mis toutes les 1 minutes, mais bon c’est mieux d’augmenter un peu histoire de ne pas flooder non plus).
Ouvrez votre crontab
crontab -e
Ajoutez la ligne
* * * * * /etc/lcd/screen -i
Enregistrez, fermez et hop ! Tuto terminé ![]()
A voir aussi
La même chose, avec un écran couleur et tactile de 36€ pour ceux qui ont les moyens ![]()
Encore la même chose, avec un écran moins cher (mais du coup de moindre capacité) a base de librairie python, très bien expliqué par notre amis Zem
";s:7:"dateiso";s:15:"20121215_121448";}s:15:"20121208_163405";a:7:{s:5:"title";s:55:"Raspberry PI ~ 10 : Commander le raspberry Pi par radio";s:4:"link";s:30:"http://blog.idleman.fr/?p=1920";s:4:"guid";s:30:"http://blog.idleman.fr/?p=1920";s:7:"pubDate";s:31:"Sat, 08 Dec 2012 15:34:05 +0000";s:11:"description";s:338:" Ce post est le dixième d’une liste de tutoriels sur le raspberry PI dont voici le sommaire : Raspberry PI ~ 01 : Présentation Raspberry PI ~ 02 : Exploration technique Raspberry PI ~ 03 : Brancher et installer … Continuer la lecture ";s:7:"content";s:22705:"
Ce post est le dixième d’une liste de tutoriels sur le raspberry PI dont voici le sommaire :
Nous avions brièvement abordé l’émission/transmission radio via le raspberry pi lors de notre tutoriel n°8.
Je vous avais promis une application concrète et plus poussée, nous allons donc aujourd’hui donner des ordres au raspberry PI via une télécommande radio achetée dans le commerce.
Voici la petite vidéo traditionnelle avec l’objectif final à atteindre et la démonstration du processus ![]()
Commander le raspberry Pi par radio from idleman on Vimeo.
Je sais, la vidéo est encore à l’envers, j’arrive pas à m’y faire… à ce propos je cherche un bénévole un peu calé en vidéo montage pour améliorer la qualité de ces dernières, si une bonne âme se sent de remanier les vidéos qu’il me contacte
.
Tenté par l’idée de reproduire ça chez vous ? Bien ! Mettons nous au travail !! ![]()
<!> NB : Vous devez avoir suivis les tutoriaux 04, 06,07 et 08 minimum avant d’aller plus loin.
Le Matériel :
Si vous avez bien suivi le tuto 8, la pluparts de ces éléments sont déjà en votre possession
<!> Prenez bien le même modèle que moi, car il semblerais que le protocole radio varie légèrement d’un modèle a un autre
Installation :
Branchez le récepteur au raspberry PI en suivant les instructions du tuto N°8, ceci permettra au raspberry de capter les ondes radios sur la fréquence 433 mhz
Si vous avez suivis le tuto N°7, vous pouvez également brancher votre carte relais sur l’une des bornes du raspberry PI afin d’allumer/éteindre une lampe/un réveil comme dans la vidéo, sinon, vous vous contenterez de la partie envois de mail et affichage des codes de la télécommande.
C’est tout pour les branchements
, maintenant voyons le code !
Assurez vous que la librairie wiringPi (qui permet de gérer facilement l’état 0 ou 1 des ports GPIO du raspberry PI) est bien installé sur votre raspberry PI.
Téléchargez mon petit programme de réception en C + PHP nommé originalement radioReception ici.
Décompressez le tout dans le répertoire /var/www de votre raspberry PI
Utilisation :
positionnez vous dans le répertoire du programme,
cd /var/www/radioReception
définissez que le programme peut être exécuté avec un chmod (je sais, on peux faire moins permissif)
sudo chmod 777 radioReception
puis lancez le programme C avec la commande suivante :
./radioReception /var/www/radioReception/radioReception.php 7
/var/www/radioReception/radioReception.php : Chemin vers le fichier PHP qui traitera les informations reçues (identifiant de la télécommande, numéro du bouton, état on/off etc..)
7 : Numéro WiringPi du PIN Gpio auquel est branché le récepteur 433 mhz
Vous pouvez maintenant appuyer sur les boutons de la télécommandes et constater les actions effectuées par le PHP.
chaque action exécute le fichier PHP initialement entré en paramètre et lui fournis les informations suivantes :
A vous de modifier le PHP et de développer les actions qui vous semblent intéressantes, je n’ai laissé que l’exemple d’ouverture/fermeture du port gpio 3 (15 em port physique) dans les sources.
C’est tout pour ce tuto !! Si vous ne voulez pas comprendre ce que vous faites, vous pouvez vous arrêter ici ^^, sinon je vous invite a entrer avec moi dans les subtilités du protocole radio utilisé en lisant les paragraphes ci dessous.
Dans le prochain tuto nous tenterons le processus inverse, à savoir émettre avec le raspberry PI pour allumer/éteindre les prises chacon (et on pourra jeter cette vilaine télécommande XD)
Comprendre plus en profondeur :
C’est une chose d’appliquer bêtement un tuto, c’en est une autre de comprendre entièrement ses tenants et ses aboutissants, pour les curieux qui voudraient comprendre plus en détail comment nous récupérons et nous traitons le signal radio, voila quelques explications…
Zallez voir, c’est pas ultra compliqué quand on a toutes les infos bout à bout (ce que j’ai passé 2 mois a réunir) mais il faut s’accrocher un minimum ![]()
Concrètement qu’envoie la télécommande chacon ?
Cette télécommande envoie un signal radio sur la fréquence 433.92 mhz, ce signal respecte (plus ou moins) le protocole radio domotique home easy (très mal documenté au passage).
Le protocole home easy transmet les informations sous la forme d’un signal de 32 bits, un bit étant un 1 ou un 0 (ça tombe bien, les ports GPIO peuvent lire les 1 et le 0
)
il y a donc un signal de 32 : 0 ou 1 par exemple : 00011000101001010010100100010110
Vous noterez l’utilisation de zoulies ptites couleurs
, ce n’est pas pour rien :
Les 26 premiers bits (en bleu) correspondent à l’identifiant de la télécommande
Le 27em bit (en violet) correspond au numéro de groupe (information que nous n’utiliseront pas)
Le 28em bit (en rouge), correspond à l’état (ON ou OFF) envoyé, 0=off, 1=on
Les bits 29 à 32 (en vert) correspondent au numéro du bouton de la télécommande appuyé
La télécommande vas donc envoyer le signal en fonction du bouton appuyé, de la télécommande et de l’état ON ou OFF de ce bouton.
C’est une bonne question !!
En fait toutes les infos vont être envoyé par le récepteur sur le même pin (dans notre exemple, le pin 7) mais avec des délais entre chaque 0 ou 1 afin de bien les distinguer les uns des autres !
Mais alors le signal vas être long à capter non ?
Pas du tout ! En effet les délais dont je vous parlais sont de l’ordre de la micro seconde ! Donc un signal dans son intégralité a peu de chance de dépasser la milli-seconde ce qui est totalement ridicule pour la perception humaine
.
Bon, et t’as mis 2 mois pour comprendre ça ?
En réalité, nous ne sommes pas au bout de nos peines, c’est un peu plus compliqué que ca
, admettons que la télécommande nous envoie le code :
00011000101001010010100100010110
Nous recevrions en réalité quelque chose comme ça :
01010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101
que nous traduirions en ça :
0101011010010101100110010110011001011001100101100101011001101001
et enfin en ça :
00011000101001010010100100010110
(on fait moins le malin la pas vrai ?
)
Hum, j’y comprends plus rien la… tu nous a bien enflé avec ton histoire de 32 bits !
C’est juste
, mais il fallait simplifier pour ne pas vous perdre dès le début ^^, en réalité le signal est bien de 32 bits, mais il est “traduit” deux fois avant émission et réception pour les raisons que nous allons voir ci dessous.
La première traduction, est liée a ce qu’on appelle le “codage de manchester” derrière ce nom étrange se cache un principe tout simple : on vas convertir les 0 en 01 et les 1 en 10.
Donc le code de la télécommande
00011000101001010010100100010110
vas se transformer (avant d’être émis) en ce signal de 64 (car 32*2) bits :
0101011010010101100110010110011001011001100101100101011001101001
Mais pourquoi se compliquent t’ils la vie avec leurs codage de machin chose?
Dans notre contexte, le code de manchester est utilisé pour diverses raisons mais essentiellement pour éviter les parasites, et croyez moi, des parasite radio, nous en sommes blindés !
Bref je ne vais pas m’étaler sur le principe, les infos sont sur wikipedia mais en gros si une paire de bit est égale a 11 ou 00 le programme comprendras qu’il s’agit d’un parasite (car en prenant les bits par paire depuis el début du signal, on ne peux avoir que des 10 ou des 01 si le signal n’est pas un parasite).
Ok donc on à juste une petite conversion à faire, c’est pas méchant, mais c’est quoi la deuxième traduction alors ?
Et bien la seconde traduction, c’est tout simplement la transformation en “onde”, c’est ce dont nous parlions tout à l’heure avec les délais, par exemple pour que la télécommande émette “1” il lui faut envoyer une impulsion (impulsion qui n’est autre qu’un passage de 0 à 1 ) avec un certain délais entre le 0 et le 1 (pour signifie qu’on envoie un 1 et pas un zero.
Donc envoyer un 1 reviendrais a envoyer ce genre de signal :
C’est le délais en micro seconde ou le signal est bas qui définit si un 1 ou un 0 a été envoyé.
Attention nous disons ici qu’un 1 a été envoyé, mais comme nous respectons le codage de Manchester nous devons envoyer “10” :
Comme vous pouvez le voir sur le schéma pas du tout précis, le premier “front bas” (qui représente le 1) est plus court que le second (qui représente le 0), leurs somme fait “10” qui, en codage Manchester signifie “1”
Je suppose que vous êtes sur les rotules, mais soyez fiers de vous, il n’y a plus rien à comprendre par la suite (vous pouvez imaginer maintenant pourquoi j’ai mis un peu de temps à décrypter le protocole de cette fichue télécommande sans la moindre doc et sans connaitre les lois de la radio transmission).
Voila un petit graphique pour résumer le chemin d’un signal :
Et voila un petit script tout droit sortis de mes petites papattes pour vous aider a visualiser un signal : http://domotique.idleman.fr/radiograph.htm
Notez une dernière chose importante !
Le protocol home easy, contient encore une petite subtilité : les verrous.
Les verrous sont des bits émis par la télécommande avant et après le signal afin d’annoncer au récepteur que le signal commence et se termine (ce qui permet également de distinguer un signal d’un parasite).
Ces verrous sont au nombre de 3 : deux avant le signal, un a la fin. Les pulsations de ces verrous sont très long (pour les distinguer des pulsations de bits d’informations) de l’ordre d’une centaine de micro secondes.
Bon, j’ai bien tout compris, mais tu as oublié de nous donner quelque chose d’important : les délais de chaque pulsation (0, 1 et verrous) !!?
C’est bien !! Vous suivez !!
Et vous avez raison je ne vous les ai pas donnés pour la raison suivante : je ne les connais pas ! Ha ha ha ha !!
En fait c’est la que le manque de doc se fait ressentir sur le protocole home easy :
Bref on ne peux qu’estimer les valeurs de chaque délais, c’est la raison pour laquelle vous noterez que mon programme ne capte pas à tout les coups, les délais étant encore mal calibrés, libre a vous de tester les délais et de me faire vos retours si vous parvenez a être plus précis, voila mes délais actuels :
Verrou 1 : Entre 2700 et 2800 micro secondes
Verrou 2 : ?
0 : Entre 180 et 420 micro secondes
1 : Entre 1280 et 1480 micro secondes
Verrou 3 : ?
Vous noterez aussi que dans mon code, je n’ai pas tenu compte des verrous 2 et 3, qui ne sont pas indispensables dans ce cas précis (même si ce serait mieux de les demander), en revanche quand nous émettrons depuis le raspberry PI, il nous faudra être plus rigoureux.
Je suis a disposition pour d’éventuelles questions et incompréhensions du processus ![]()
";s:7:"dateiso";s:15:"20121208_163405";}s:15:"20121202_191924";a:7:{s:5:"title";s:25:"Le bordel de l’info #23";s:4:"link";s:30:"http://blog.idleman.fr/?p=1901";s:4:"guid";s:30:"http://blog.idleman.fr/?p=1901";s:7:"pubDate";s:31:"Sun, 02 Dec 2012 18:19:24 +0000";s:11:"description";s:334:"Salut bande de trépanés des burettes, vous en avez d’la chance !! A l’heure où le pong en bois mono dimension fait fureur, a l’heure ou votre pommeau de douche tente de vous voler la vedette en plein pendant votre … Continuer la lecture ";s:7:"content";s:10949:"
Salut bande de trépanés des burettes, vous en avez d’la chance !! A l’heure où le pong en bois mono dimension fait fureur, a l’heure ou votre pommeau de douche tente de vous voler la vedette en plein pendant votre magnifique interprétation du célèbre “i will survive”, à l’heure ou Bilbo le Hobbit à déjà buté 27 animaux (et pourtant c’est tellement beau un animaux), bref, à l’heure où les fillettes de 9 ans criminelles affluent, vous êtes en sureté dans votre coffre fort vide, serrant votre tux en peluche, à l’abris de ces psychopathes, en train de savourer l’exquis parfum salé de ce 23em bordel de l’info (oui je deviens lyrique avec le temps).
Allé pour finir en douceur et aborder la semaine avec le sourire, plein de petites bestioles à croquer (via seb) la loutre réstant quand même ma favorite.
";s:7:"dateiso";s:15:"20121202_191924";}s:15:"20121201_000136";a:7:{s:5:"title";s:59:"NodeJs : présentation de node et création d’un site web";s:4:"link";s:30:"http://blog.idleman.fr/?p=1885";s:4:"guid";s:30:"http://blog.idleman.fr/?p=1885";s:7:"pubDate";s:31:"Fri, 30 Nov 2012 23:01:36 +0000";s:11:"description";s:366:" Comme promis, chose due (ou un truc comme ça) nous voilà lancé dans une (petite) série de tutoriels sans prétention sur le serveur gratuit NodeJs. Premièrement qu’est ce que NodeJs? Contrairement à ce que l’on peux penser, NodeJs n’est pas … Continuer la lecture ";s:7:"content";s:16254:"Comme promis, chose due (ou un truc comme ça) nous voilà lancé dans une (petite) série de tutoriels sans prétention sur le serveur gratuit NodeJs.
Premièrement qu’est ce que NodeJs?
![]()
Contrairement à ce que l’on peux penser, NodeJs n’est pas un serveur HTTP au même titre qu’apache, nginx, lighthttpd etc…
Nodejs est juste un serveur (au passage basé sur le moteur V8 de google, ça rigole plus), ce qui signifie qu’il peut se comporter comme un serveur web mais qu’il n’est pas voué uniquement à ça, il est possible de répondre à toutes sortes de besoins client/serveur (FTP, mail etc..) à partir du moment ou vous lui donnez les bonnes instructions.
En effet ce programme traite les instructions que vous lui donnerez en …javascript !
Et oui, ça pourrait paraître surprenant car nous sommes habitués à voir le JavaScript fonctionner côté client (plus précisément sur le navigateur), et même si ce dernier a évolué de manière fulgurante ces dernières années (il est loin le temps où javascript faisait uniquement concurrence à flash pour les animations toutes saccadées des menus dépliants) NodeJs nous prouve qu’il est également possible d’utiliser ce langage côté serveur tout comme on le ferait avec du PHP, ASP, C, Java etc…
Les points forts
![]()
Alors vous allez me dire, le javascript c’est bien beau mais quel est l’intérêt du bouzin?
![]()
Les points faibles
![]()
Je crois fermement que NodeJS va s’imposer dans le développement Web (merde, encore un truc à apprendre) car, avouons le, ça déchire sa génitrice. Mais ne vous faites pas avoir par les barbus betaddict qui prêchent la dernière update de la bonne parole, si vous mettez les mains dedans, vous allez en chier.
Oui…ils sont fourbes ces barbus…
Assez de parlotte (je reprochais à @Yosko l’autre jour qu’il écrivait des romans, visiblement je suis contaminé aussi) passons à l’installation !
Installation
Nous allons installer nodejs et NPM (Node Package Manager) qui curieusement n’est pas natif à node malgré son omniprésence dans les processus nodejs.
Pour installer nodejs, il nous faudra au préalable ajouter un nouveau dépôt, voici la procédure sous Ubuntu:
Ouvrez votre console SSH et loguez vous en tant que root (pour ne pas être emmerdé toutes les 2 secondes par la suite)
sudo -i
Installation des pré-requis python & Co
apt-get install python-software-properties
Installation du dépôt de l’auteur de nodejs
add-apt-repository ppa:chris-lea/node.js
Un petit update histoire de se mettre à la page
apt-get update
Installation de nodejs et de NPM d’une traite :
apt-get install nodejs npm
En toute logique, ça se passe sans douleur
, si ce n’est pas le cas ou que vous avez une distribution différente d’Ubuntu, vous pouvez retrouver toutes les instructions et astuces ici.
Utilisation
Histoire de se faire la main dans ce premier tuto et de comprendre un peu le principe de base du serveur, nous allons coder un ptit serveur web basique affichant un “hello idleworld” sans l’aide d’aucun plugin ou autre, à l’ancienne, comme de vrais urukais !
Premièrement on vas se créer un dossier de travail qui stockera nos sites/projets (l’équivalent de /var/www pour apache en quelques sorte)
mkdir /var/node-www cd /var/node-www
Ensuite on créé notre premier projet constitué d’un seul fichier :
nano idleworld.js
Nous y ajouterons le code suivant ( nb : mon blog merde un peu et rajoute des <br> partout, pensez à les supprimer)
//On inclus la librairie http qui permet la création d'un serveur http basique
var http = require('http');/*
On lance a méthode createServer qui prend pour argument une fonction de retour ayant pour parametre un objet request (ce que l'utilisateur qui se connecte a votre serveur vas envoyer) et un objet réponse (la réponse que vous allez renvoyer a votre utilisateur). Notez bien que nous appellons la méthode listen juste après, qui permet de définir sur quel port (gruiiik !) le serveur vas écouter (et donc sera accessible)
*/
http.createServer( function (request, response) {
//Le type de contenu sera HTML, le code de réponse 200 (page correctement chargée)
response.writeHead(200, {'Content-Type': 'text/html'});
//
response.end('Hello <a href="http://blog.idleman.fr">Idle</a>World :p\n');
} ).listen(666);
//On affiche un ptit message funky dans la console histoire d'être sûr que le serveur est lancé
console.log('Idle Space Ship launched on http://localhost on evil port');
Ceux qui utilisent régulièrement JavaScript, et plus précisément des librairies comme jQuery ne seront pas dépaysés, c’est la même syntaxe et ça tourne avec le même principe des fonctions callback (c’est a dire des fonctions qui ne s’exécuteront qu’à la fin d’un évènement précis).
Nous allons maintenant lancer ce code avec nodeJs (Attention, c’est technique) :
node idleworld.js
Si le dieu du dev ne vous a pas en horreur, la phrase suivante apparaîtra en console :
“Idle Space Ship launched on http://localhost on evil port”.
vous pourrez alors ouvrir un navigateur et taper l’adresse http://127.0.0.1:666 pour accéder à votre super page web ![]()
(Ctrl+C dans la commande pour arrêter le serveur.)
Et la c’est le moment ou vous vous dites :
“Mais alors…je dois tout coder, le comportement des en-têtes http, les paramètres en entré, les types mimes de retours, les erreurs, les fichiers statiques (images,fichiers css etc..) ggaaa ggaaaaahhhhh!!!! *s’approche lentement d’une falaise* ”
Oui, c’est la merde !
Fort heureusement, de nombreux plugins nous mâchent le travail, c’est le cas du package Express qui est certainement le framework le plus connu pour gérer des sites web sur nodejs.
Et ça tombe bien ! C’est justement ce framework que nous apprendrons à utiliser dans le prochain tuto ! (z’avez vu comment j’me défile trop bien ? :p).
J’ai déjà trop parlé, je vous laisse un petit exercice en attendant:
Créer une petite page hello idleworld, en incluant une image qui se trouve dans votre dossier /var/node-www.
Pouah, il est trop facile ton exercice patate !!
Ah oui ? Essayez, vous pourriez bien être surpris
, la solution est simple, mais l’origine du problème ne vient pas tout de suite à l’esprit pour les assistés rescapés d’apache que nous sommes (petit indice, ce n’est pas un problème de chemin).
Le premier qui trouve (sans tricher) a le droit à une cacahuète (20 ans d’âge).
Les Scripts existants qui tournent sur nodejs
Histoire de vous mettre quand même un peu plus l’eau à la bouche qu’avec mon hello world tout pourri, voilà deux petites (c’est relatif) applications qui tournent sous nodeJs et que vous pouvez installer gratuitement sur votre node :
PasteBoard :
PasteBoard est un script sacrément bien foutu qui vous permet d’envoyer une image sur votre site en appuyant sur la touche ctrl+V ou en faisant glisser vos images de votre bureau vers la zone d’upload, puis de recadrer cette image et enfin de générer un lien de partage pour le web.
Je ne suis pas public facile, mais je trouve vraiment cette application bluffante ! La démo en live est ICI (munissez vous d’un vrai navigateur (donc pas IE) et si possible récent (mais quand même pas IE), type chrome ou Firefox)
Cloud9 :
Cloud9 Est un IDE (éditeur de code) en ligne fichtrement complet, une petite démo vidéo ICI
Si ça intéresse quelqu’un dans les prochains tutos, nous verrons également comment installer “les bêbêtes”
Bien à vous,
Idle
";s:7:"dateiso";s:15:"20121201_000136";}s:15:"20121121_123505";a:7:{s:5:"title";s:41:"le JSON : un pont entre tous les langages";s:4:"link";s:30:"http://blog.idleman.fr/?p=1859";s:4:"guid";s:30:"http://blog.idleman.fr/?p=1859";s:7:"pubDate";s:31:"Wed, 21 Nov 2012 11:35:05 +0000";s:11:"description";s:362:"* Amis développeur confirmé, passe ton chemin * J’entends souvent dans mon entourage des trucs qui me perturbent par rapport au JSON, c’est pourquoi je me suis dit qu’une petite piqure de rappel concernant ce formidable outil pourrait peut … Continuer la lecture ";s:7:"content";s:8833:"* Amis développeur confirmé, passe ton chemin
*
J’entends souvent dans mon entourage des trucs qui me perturbent par rapport au JSON, c’est pourquoi je me suis dit qu’une petite piqure de rappel concernant ce formidable outil pourrait peut être démystifier quelque chose d’aussi bête et simple que le JSON.
JSON c’est quoi ?
Non ! le JSON n’est pas un langage, ni une forme de magie obscure et laborieuse, c’est juste un format de données, c’est a dire un texte à plat qui respecte une certaine structure pour véhiculer facilement et légèrement les informations.
Nb: En bon frenchy, le JSON se prononce “dJisône” et signifie “JavaScript Object Notation” car il est issue de la notation objet utilisée en javascript.
Les gros point fort du JSON:
* Étant donné qu’il s’agit d’une simple chaine de caractère, il fonctionne sous tous les environnements et tous les langages qui peuvent gérer du texte (et ça fait un paquet d’endroits ^^)
* Il s’apprend en 5 minutes tant sa syntaxe est courte à connaitre
* Il est moins verbeux, donc plus léger que le XML tout en restant lisible pour l’être humain
* Il permet de transmettre tout types de données (tableau, chaine, entier, objet …)
* Étant donné qu’il est quasi universel, il est très simple de dialoguer d’un langage à un autre via JSON (PHP vers Javascript est un exemple courant)
Voyons un peu la syntaxe …
La syntaxe de base
{ = Définis que le contenu englobé est un objet
ex : {objet json}
: = Définis une valeur
ex : {age:25}
« ou ‘ = Définis que la la valeur est textuelle (on ne les mettra pas pour les valeurs numérique)
ex : {name: »Idleman »}
, = sépare un attribut d’un autre
ex : {name= »Idleman »,age:25}
[ = définis que le contenu englobé est un tableau
ex : {name="Idleman",age:25,hobby:["informatique","musique","sport","sorties"]}
C’est tout pour la syntaxe! Il est maintenant possible de faire des combinaisons en englobant des objet dans d’autres
ex : {users:[{"name":"Idleman","age":25},{"name":"IdleGirl","age":20}]}
Il est possible d’imbriquer des objets ou des tableaux en tant que valeurs d’autres objets, tableau ou attributs à l’infini.
Le JSON en Javascript
Comme nous l’avons spécifié, le javascript est le langage « natif » du JSON, une chaine JSON est tout simplement construite de la même façon qu’un objet javascript.
ex : var bdd = {users:[{"name":"Idleman","age":25},{"name":"IdleGirl","age":20}]};
Vas créer un objet javascript contenants plusieurs utilisateurs et accessible de cette façon
<script type= »text/javascript »>
var bdd = {users:[{"name":"Idleman",age:25},{"name":"IdleGirl","age":20}]};
alert(bdd.users[0].name); // retournera « Idleman »
alert(bdd.users[1].age); // retournera « 20″
</script>
Le JSON en PHP
Le JSON étant une chaine de texte, il est géré de la même façon partout, cependant certains langages comme PHP mettent a disposition des outils pour nous simplifier encore la vie dans la construction de la chaine.
Aussi PHP propose t’il depuis la V5.1 (si ma mémoire est bonne, à vérifier) les fonction json_encode() et json_decode() qui permettent de traduire un tableau ou un objet php directement en chaine JSON et réciproquement.
ex :
<?php
$bdd = array();
$bdd['users'][0]['name'] = ‘IdleMan’ ;
$bdd['users'][0]['age'] = 25 ;
$bdd['users'][1]['name'] = ‘IdleGirl’ ;
$bdd['users'][1]['age'] = 20 ;
//Vas retourner « {users:[{"name":"Idleman","age":25},{"name":"IdleGirl",age:20}]} »
echo json_encode($bdd);
$newBdd = json_decode(« {« users »:[{"name":"Idleman","age":25},{"name":"IdleGirl","age":20}]} »);
//Vas retourner la structure du tableau newBdd avec nos utilisateurs
var_dump($newBdd);
?>
Le JSON dans les autres langages
Chaque langages gère nativement ou non le JSON, pour la plupart il existe des librairies toutes faites (C#, Python, Java, C++ …)
pour d’autre c’est géré en natif (javascript, PHP …) au final très peu de langages ne vous proposeront rien du tout, et pour ceux la,
il vous faudra construire vos chaines JSON à la main.
Exemple utile utilisant JSON, PHP, Javascript, et de l’AJAX(JQuery)
Histoire de comprendre l’intérêt de JSON dans vos sites web, voila un petit exemple de récupération des utilisateurs dans une base de données.
Javascript vas appeler une page PHP via Ajax, PHP vas retourner une chaine JSON contenant tous les utilisateurs de la base, enfin Javascript vas récupérer
cette chaine et afficher les utilisateurs sur la page.
La page PHP « users.php »
<?php
// On considère que ces informations viennent d’une base de données
$bdd = array();
$bdd['users'][0]['name'] = ‘IdleMan’ ;
$bdd['users'][0]['age'] = 25 ;
$bdd['users'][1]['name'] = ‘IdleGirl’ ;
$bdd['users'][1]['age'] = 20 ;
//On renvoie la chaine JSON contenant toutes les infos
echo ‘(‘.json_encode($bdd).’)';
?>
La Page HTML/JAVASCRIPT
<!DOCTYPE html>
<head>
<meta charset= »UTF-8″>
<title>Mes utilisateurs</title>
</head>
<body>
<button onclick= »loadusers(); »>Charger les utilisateurs</button>
<ul id= »userContainer »></ul>
<script src= »http://code.jquery.com/jquery.min.js »></script>
<script type= »text/javascript »>
function loadusers(){
$.ajax({
url: « users.php »,
type: »GET »,
success: function(response) {
var bdd = eval(response);
for(i=0;i<bdd.users.length;i++){
var user = bdd.users[i];
$(‘#userContainer’).append(‘<li><b>Nom:</b>’+user.name+’ <b>Age:</b>’+user.age+’</li>’);
}
}
});
}
</script>
</body>
</html>
Pour les flemmards du copier/coller, les sources sont téléchargeable ici.
Plus d’infos sur www.json.org
";s:7:"dateiso";s:15:"20121121_123505";}s:15:"20121117_180439";a:7:{s:5:"title";s:25:"Le bordel de l’info #22";s:4:"link";s:30:"http://blog.idleman.fr/?p=1854";s:4:"guid";s:30:"http://blog.idleman.fr/?p=1854";s:7:"pubDate";s:31:"Sat, 17 Nov 2012 17:04:39 +0000";s:11:"description";s:340:" Salut bande de punks à chien, vous en avez dla chance !! A l’heure ou l’on a enfin localisé Krytpon, à l’heure ou les gang bang véhiculés deviennent une véritable mode (ok je sort…), à l’heure ou korben parle … Continuer la lecture ";s:7:"content";s:8992:"
Salut bande de punks à chien, vous en avez dla chance !!
A l’heure ou l’on a enfin localisé Krytpon, à l’heure ou les gang bang véhiculés deviennent une véritable mode (ok je sort…), à l’heure ou korben parle du caca de son poisson rouge (blogueur professionnel Inside), vous êtes peinards, en costume de loutre, sur un vélo sans selle à savourer cette vingt deuxième édition du bordel de l’info.
Comme certains d’entre vous l’ont déjà constatés (ou pas), j’ai restructuré complètement mon espace projet.
Je l’ai reconstruit de manière à ce que :
Parce qu’il faut bien reconnaitre que c’était le bordel…
, voila la nouvelle structure :
La création des wiki, des liens, du RSS, du SVN et de la démonstration pour chaque projet se fait de manière automatique grâce a mon script Dizplay que j’ai remanié le week-end dernier pour le fusionner avec BlazeKiss (mon wiki).
Le nouveau Dizplay ne nécessite plus de base de données pour fonctionner, est bien plus complet et moins fouillis que l’ancien et disposera d’une doc complète pour l’installation (qui au passage sera plus simple, parce que l’ancien, il n’y avait que moi qui pouvais l’installer et encore ^^).
Le projet n’est pas encore dispo en téléchargement direct mais pour ceux qui souhaitent créer eux aussi leurs espace projet, vous pouvez me demander une version de bêta test sur idleman@idleman.fr
Merci a tous les blogueurs qui ont eu la gentillesse de parler de mes projets de penser à mettre à jour leurs articles avec les nouveaux liens, les anciens n’étant que temporairement maintenus le temps de la transition.
Voila un petit snippet pour supprimer lors de la saisie tous les caractères qui ne sont pas alphanumériques (a l’exception des caractères – et _ )
Cette fonction est pratique pour générer des noms sécurisés pour les url, les chemin systèmes etc…
La fonction utilisable avec JQuery
function shortName(element){
$(element).val($(element).val().replace(/([^a-z0-9\-_])/gi, »));
}
La même fonction en javascript natif
function shortName(element){
element.value = element.value.replace(/([^a-z0-9\-_])/gi, »);
}
Exemple d’utilisation
";s:7:"dateiso";s:15:"20121112_130559";}s:15:"20121111_174250";a:7:{s:5:"title";s:59:"Snippet #21 ~ PHP: dicter du texte sous n’importe quel OS";s:4:"link";s:30:"http://blog.idleman.fr/?p=1834";s:4:"guid";s:30:"http://blog.idleman.fr/?p=1834";s:7:"pubDate";s:31:"Sun, 11 Nov 2012 16:42:50 +0000";s:11:"description";s:355:" tant qu’on est dans nos projets de domotiques, autant en profiter pour alimenter aussi les snippets avec de la synthèse vocale . Ce petit snippet vous permettra de faire du text-to-speech très simplement, que votre serveur php soit sous … Continuer la lecture ";s:7:"content";s:2879:"<script type= »text/javascript »>
function shortName(element){
element.value = element.value.replace(/([^a-z0-9\-_])/gi, »);
}</script>
<!– dans ce champs, essayez de taper !:;,-*=+°à / … –>
<input type= »text » onkeyup= »shortName(this); » name= »nomSimple » />
tant qu’on est dans nos projets de domotiques, autant en profiter pour alimenter aussi les snippets avec de la synthèse vocale
.
Ce petit snippet vous permettra de faire du text-to-speech très simplement, que votre serveur php soit sous linux, windows, ou mac.
Pour rappel, le text-to-speech (TTS) permet de transformer une phrase écrite en phrase prononcée, votre ordinateur dictera le texte que vous lui fournissez
Le code utilise la librairie open source espeak et une petite classe PHP de votre serviteur (un peu vite fait la classe, mais c’est pour l’exemple).
Installation
Utilisation
Lancez tout simplement la page synth.php via un navigateur, cette page contient la classe d’utilisation ainsi qu’un court exemple de dialogue (les fans reconnaitrons, les autres je vous encourage a parfaire votre éducation devant la “cité de la peur”)
personnalisation
Toutes les voix doivent être initialisée comme ça :
$nouvelleVoix = new Voix();
Vous pouvez définir que c’est une voix masculine ou féminine comme ça :
$nouvelleVoix ->sexe = ‘Femme’;
Pour un homme ou
$nouvelleVoix ->sexe = ‘Homme’;
Pour une femme
Vous pouvez également définir l’aigu de la voie comme ça
$nouvelleVoix ->aigu = 40;
Ainsi que la vitesse de parole comme ça :
$nouvelleVoix ->vitesse = 150;
Enfin, pour prononcer un texte avec la voix configurée :
$nouvelleVoix ->dis(‘Ceci est mon texte’);
Vous pouvez également chuchoter un texte de la manière suivante :
$nouvelleVoix ->chuchote(‘Ceci est mon texte’);
Merci à nerkdesign pour le tuyau sur espeak.
Ce post est le neuvième d’une liste de tutoriels sur le raspberry PI dont voici le sommaire :
En attendant la suite de mon article sur le raspberry PI et la gestion des interrupteurs par ondes radio, je vous propose quelque chose de plus concret a vous mettre sous la dent
.
En effet si vous avez bien suivis mon article “Raspberry PI ~ 07 : Allumer/éteindre une vraie lampe OU comment faire de la domotique low cost.” vous devez pouvez allumer et éteindre une lampe grâce à votre interface web.
Oui mais !! On à pas toujours une interface web sous la main pour commander le raspberry PI… alors que diriez vous de tout diriger par la voix ?
Ce qu’on cherche à faire :
Moi : “Yuri, allume la lampe du salon”
Raspberry PI (oui je l’ai appelé Yuri ;p) : “jawohl mein kapitän !!” (oui je lui donne un accent allemand alors qu’il a un nom russe :p)
*Lampe du salon s’allume*
Moi : “Yuri quelle heure est il ?”
Yuri : “Il est 18h41”
Ma chérie : “Idle, arrête de jouer avec ce machin con de geek inutile, ton WAF baisse a vue d’œil”
Moi : “Yuri Insulte la“
Yuri : “L’insulte aléatoire est : espèce de cheveux sans racine”
Bon okay on pourrait se passer d’aller aussi loin mais on vas le faire quand même, le but étant d’apprendre à simuler et a personnaliser une personnalité qui comprends vos ordres, effectue une action (contrôler une lampe, envoyer une requête, faire une recherche sur le web, dire un truc inutile etc…) et qui vous réponds en prime.
Tenez une petite vidéo horriblement mal filmée à base de canard albinos et de drogue dure pour vous prouver que je n’affabule pas
:
Bref nous allons simuler une IA type Jarvis dans le film “Iron Man” ou Sarah dans la génialissime série “Eureka”, je dis bien simuler puisqu’au final, il n’y aura aucune intelligence derrière, juste une “bête machine à réagir” (mais c’est déjà pas mal pour cette fois :p).
Ce qu’il vous faut :
Le principe :
Votre PC vas utiliser(via notre petit programme) la librairie Speech To Text de Microsoft qui permet de faire de la reconnaissance vocale (le pc vous écoute), si la commande vocale est reconnue, il vas envoyer une requête web (http) à votre raspberry PI
Votre raspberry PI vas recevoir la requête et effectuer l’action : ouvrir/fermer un port gpio (donc allumer/éteindre une lampe ou tout autre objet électrique raccordé), ou encore récupérer l’heure serveur et vous la retourner, aller chercher les films qui passent au ciné en ce moment etc… et retourner un texte de réponse a la librairie Text To speech de Windows qui fait de la synthèse vocale (le pc vous parle).
Bref rien de sorcier en somme, certains déplorerons l’utilisation d’une librairie microsoft: c’est vrai que c’est bof, mais cette librairie a plusieurs avantages :
Et croyez moi pour trouver l’équivalent sous linux il faut se lever tôt (des lib comme sphinx et autres je ne veux plus en entendre parler, quand je dis lampe elle comprend canard albinos, c’est drôle les 10 premières minutes…)
Okay mais il vas falloir développer un truc ne C# pour adapter tout ça non?
C’est la que le génie de l’un de nos prédécesseur geeks entre en jeu : quelqu’un y a déjà pensé et a développé un petit programme au poil, S.A.R.A.H : pas d’installation, fonctionne avec micro simple ou avec kinect (meilleur reconnaissance), mots clés configurable avec de simple fichier xml etc…
Le soucis c’est que le mec utilise un serveur nodejs, et qu’il ne manœuvre aucun rpi avec, donc j’ai modifié et surtout beaucoup allégé S.A.R.A.H pour créer Y.U.R.I qui fonctionne avec apache, et qui est un peu plus léger.
Assez discutaillé : au boulot !!
Installation de Y.U.R.I sur le PC
Nb : Vérifiez que votre pc Windows et votre raspberry PI sont bien sur le même réseau et que vous pouvez bien accéder aux pages web de votre raspberry PI depuis le navigateur web de votre pc Windows
Installation de Y.U.R.I sur le raspberry PI
Test du programme
Et voila !! Enjoy !!
Pour ajouter des action vous même, il vous suffira de créer un nouveau fichier xml avec la requête et les ordres associés, et de créer l’action qui correspond dans yuri.php, vous pourrez ainsi pousser les choses très loin, le concepteur de S.A.R.A.H a créé plusieurs requêtes d’exemples pour récupérer la météo, gérer un google agenda, trouver les films sur allociné etc…
Je suis tout à vous pour d’éventuelles (voir certaines) questions et commentaires
";s:7:"dateiso";s:15:"20121106_000140";}s:15:"20121103_024601";a:7:{s:5:"title";s:48:"BlazeKiss : un Wiki ultra light à la sauce Idle";s:4:"link";s:30:"http://blog.idleman.fr/?p=1781";s:4:"guid";s:30:"http://blog.idleman.fr/?p=1781";s:7:"pubDate";s:31:"Sat, 03 Nov 2012 01:46:01 +0000";s:11:"description";s:363:"Bon Okay soyons francs, c’est pas du tout pas vraiment à la sauce idle: je n’ai fait que reprendre très sommairement le généralissime (mais victime de son design archaïque) Wikiss, wiki KISS sans base de données rapide et simplissime. J’ai … Continuer la lecture ";s:7:"content";s:2308:"
Bon Okay soyons francs, c’est pas du tout pas vraiment à la sauce idle: je n’ai fait que reprendre très sommairement le généralissime (mais victime de son design archaïque) Wikiss, wiki KISS sans base de données rapide et simplissime.
J’ai mélangé la dernière bêta avec un skin un peu plus d’actualité (que j’ai épuré aussi) et responsive afin de créer un petit wiki sympathique pour y fourrer toutes mes avancées concernant le raspberry PI et la domotique associée, j’ai aussi rajouté quelques types de balises (@@ et “”” pour les citations et les warnings) et fait quelques bricoles à droite et à gauche.
Étant donné que j’ai trouvé le résultat sympathique, je me suis dis que je pouvais vous le faire passer au cas ou ça vous branche
.
Une bonne démo est sur mon wiki de recherche Raspberry PI : http://domotique.idleman.fr/
Sinon la page projet est la : http://projet.idleman.fr/blazekiss
Je tiens à être clair (histoire qu’on ne me jette pas des cailloux dans quelques mois :p): je ne considère pas ça comme un projet et ne développerais pas plus dessus, je n’en ai ni le temps ni l’envie, et le script dans l’état actuel réponds tout à fait à mes besoins donc si quelqu’un est chaud pour poursuivre le dev je l’y encourage chaudement, le code est très intéressant à ausculter dans le genre compact et bourré de regex marrantes
Bien à vous,
Idle
";s:7:"dateiso";s:15:"20121103_024601";}s:15:"20121025_233510";a:7:{s:5:"title";s:34:"Je suis entré dans un hack Lab…";s:4:"link";s:30:"http://blog.idleman.fr/?p=1768";s:4:"guid";s:30:"http://blog.idleman.fr/?p=1768";s:7:"pubDate";s:31:"Thu, 25 Oct 2012 21:35:10 +0000";s:11:"description";s:370:"Mardi dernier, je suis allé dans un endroit simultanément très étrange, très flippant et très intéressant : l@bx, le hackerspace de bordeaux. Beaucoup d’entre nous ont entendu ce terme très à la mode aux states ces temps ci sans vraiment savoir … Continuer la lecture ";s:7:"content";s:11576:"Mardi dernier, je suis allé dans un endroit simultanément très étrange, très flippant et très intéressant : l@bx, le hackerspace de bordeaux.
Beaucoup d’entre nous ont entendu ce terme très à la mode aux states ces temps ci sans vraiment savoir de quoi il retournait.
Tentant de dissiper le mystère qui plane autour de ces étranges labo “sauvages” ou se réunissent périodiquement les geeks et les électroniciens les plus pointus, je me suis rendu sur l’annuaire des hackerspaces (dit aussi fablab ou encore hacklab) histoire de chercher, sans trop y croire, un de ces fabuleux endroits sur bordeaux (citée de l’apéro et, accessoirement, de votre serviteur).
Et miracle !! J’ai trouvé labx!!
Situé au fin fond des docks de bordeaux, dans le coin sombre d’un parking d’immeuble sur le point d’être détruit, se trouve la mystérieuse (et quasi invisible) porte du labx :
Après 10 petites minutes à poiroter devant la porte, l’esprit vacillant entre un …
“je vais mourir découpé en ptit dé”
et un …
“Je ne veux pas mourir sans voir ça (et j’aimerais ne pas mourir après non plus d’ailleurs :p)”
Je me suis décidé à m’engouffrer dans une sorte d’escalier très sombre (oui avec le flash on pourrait presque s’y sentir à l’aise hein ^^) semblant surgir des profondeur d’une cave en direction de vertigineux combles.
Choisissant les combles au détriment de la batcave, je suis arrivé dans une sorte de gigantesque hangar de la taille d’une salle de concert (ce qu’on voit sur la photo ci dessous n’est qu’un couloir par rapport aux deux pièces de gauche)…
J’ai su que j’était sur la bonne voie lorsque j’ai croisé les deux frigidaires “we make porn” à moitiés défoncé qui gisaient parmi les autres objets non identifiés et…
J’ai trouvé une porte ! Le hackLab, enfin !!
Des fauteuils défoncés, des tables partout, quelques vielles étagères et… de la technologie partout !! De toutes les dates, dans tout les états, des postes à souder des minitels, des oscilloscopes, des pc (mort, vivant ou les deux) des livebox démontées : bienvenue au hacklab !
Et dans cette pièce, une dizaine de barbus à lunettes affairés sur leurs projets, débattant autour d’une bière sur la conception des drones ou encore griffonnant des signes étranges sur les tableaux qui parsèment les murs de briques apparent du local.
Aussi sympathique que compétents (et ça en fait des gens très sympathiques), ils m’ont tout de suite mis à l’aise, j’ai alors pu parcourir la salle, fasciné par les projets de chacun, je suis d’abord passé près d’une livebox sur le point d’être flashée et détournée de son constructeur vers une solutions plus open…
Le hacker qui s’occupait de ce projet m’expliquant avec nonchalance qu’il ne faisait que “reproduire” ce qu’avaient déjà fait les “grands de ce monde” avant lui (oai ben c’est pas parce que je regarde ma chérie faire à la perfection ses escalopes milanaises que je suis capable de reproduire ce miracle)…
En face, deux autres personnages s’affairant à la construction d’une imprimante 3D (what else ?) et, devant mon visage de newbie en extase de m’affirmer “On est tous le noob de quelqu’un, l’essentiel c’est d’avoir la curiosité, le reste viens avec le temps” (je transcrit de mémoire mais je crois que c’est assez fidèle)
Je suis ensuite passé par le ptit gars silencieux du fond :
Moi : “Et toi tu fais quoi ? ”
Lui : “Rien”
Moi : “Ha bon, mais c’est quoi tout ces circuits devant toi ?”
Lui : “Ha non c’est juste que j’ai commandé une carte arduino et le temps qu’elle arrive j’en construit une moi même”
Donc la c’est le moment ou je suis allé me planquer dans le coin du fond (entre le mur de leds, le poste de soudure et la pirateBox du lab) histoire de pleurer en silence sur ma déchéance intellectuelle et mon insignifiante existence de geek low cost
Je me suis repris au bouts de quelques instants (pour aller me chercher une bière au frigo, parce que je reste avant tout bordelais, l’avantage, c’est qu’on ne risque pas de trouver un potage de tomate la dedans
)
Notant au passage que dans tout ce bordel, il y avait aussi un équipement adapté à chaque types de projet et à disposition de tous.
Revigoré par ma blonde et par les commentaires rassurants de certains membres du genre : “Je t’assure quand je suis arrivé je n’y connaissait rien en électronique comme en informatique !!” (dit il en démontant son pc portable d’une main et en terminant sa bière de l’autre).
J’ai alors branché ma PI box (mon projet domotique que j’ai eu bien du mal à vendre comme quelque chose de “cool” à un type du hacklab de la ville de Mont de Marsan qui venait de m’expliquer ses problèmes pour stabiliser son drone volants à caméra embarquée).
Bref un fabuleux passage dans un univers merveilleux (malheureusement écourté par l’AG annuelle de l’asso, tout aussi intéressante mais un peu laborieuse) auquel je ne manquerais pas de retourner mardi prochain !
Je ne peux que vous encourager vous aussi à trouver un hacklab près de chez vous et à y faire un tour, les occupants ont appliqué “l’open source” à leurs façon de penser à tel point qu’il est réellement captivant d’échanger avec eux et ceci, bien que vous ne compreniez pas la moitié des termes techniques qu’ils tentent de partager avec vous.
";s:7:"dateiso";s:15:"20121025_233510";}s:15:"20121022_080014";a:7:{s:5:"title";s:84:"Snippet #20 ~ PHP: Stocker facilement des données JSON compressées dans un fichier";s:4:"link";s:30:"http://blog.idleman.fr/?p=1722";s:4:"guid";s:30:"http://blog.idleman.fr/?p=1722";s:7:"pubDate";s:31:"Mon, 22 Oct 2012 06:00:14 +0000";s:11:"description";s:408:"Deux petites fonctions très simple pour stocker/déstocker des informations multiples dans un fichier texte Avantages Permet de créer des scripts sans utiliser de base de données (ex: shaarli,codiad,blogotext v1.x,twidoo utilisent cette technique) Stocke les données au format JSON, un format … Continuer la lecture ";s:7:"content";s:1753:"
Deux petites fonctions très simple pour stocker/déstocker des informations multiples dans un fichier texte
Avantages
Code
<?php
function store($file,$datas){file_put_contents($file,gzdeflate(json_encode($datas)));}
function unstore($file){return json_decode(gzinflate(file_get_contents($file)),true);}
?>
Exemple d’utilisation
";s:7:"dateiso";s:15:"20121022_080014";}s:15:"20121020_154043";a:7:{s:5:"title";s:25:"Le bordel de l’info #21";s:4:"link";s:30:"http://blog.idleman.fr/?p=1720";s:4:"guid";s:30:"http://blog.idleman.fr/?p=1720";s:7:"pubDate";s:31:"Sat, 20 Oct 2012 13:40:43 +0000";s:11:"description";s:328:"Salut bande de Trou de nez sur pattes , vous en avez d’la chance !! A l’heure où les costumes deviennent un peu trop réalistespour moi… A l’heure où la matrice est sur le point de nous rattraper… Bref à … Continuer la lecture ";s:7:"content";s:10421:"<?php
$users[0]['name'] = ‘idleman’;
$users[0]['age'] = 25;$users[1]['name'] = ‘other man’;
$users[1]['age'] = 51;store(‘utilisateurs.json.gz’,$users);
$my_users = unstore(‘utilisateurs.json.gz’);echo ‘Mon utilisateur 1 s\’appelle ‘.$my_users[0]->name.’ et a ‘.$my_users[0]->age.’ ans<br/>’;
echo ‘Mon utilisateur 2 s\’appelle ‘.$my_users[1]->name.’ et a ‘.$my_users[1]->age.’ ans<br/>’;
?>
Salut bande de Trou de nez sur pattes , vous en avez d’la chance !!
A l’heure où les costumes deviennent un peu trop réalistespour moi…
A l’heure où la matrice est sur le point de nous rattraper…
Bref à l’heure ou les tortues urinent par la bouche, vous êtes en slip, avec la femme frivole de votre voisin, à vous taper une bonne tranche de cette 21em édition du bordel de l’info !
aujourd’hui les t-shirts personnalisés se font vraiment en 5 min grâce à des sites comme shirtinator que je recommande chaudement (un peu cher mais sérieux et modèles de t-shirt plus sympa que les « bâches de allmyshirts.com »).
C’est tout pour aujourd’hui, et c’est déjà pas mal
, bonne soirée à vous et essayez de survivre à ce temps de merde :p
Ce post est le huitième d’une liste de tutoriels sur le raspberry PI dont voiçi le sommaire :
Je vous avertis tout de suite, ce tuto est encore trop jeune pour aboutir sur une application concrète, il sera donc édité en deux parties.
Le but de ce tuto en deux partie est simple : faire de la domotique pas cher avec le raspberry PI et par ondes radio.
Les ondes radio ont de nombreux avantages et quelques inconvénients, nous verrons lesquels (mais je suis sûr que vous devinez bandes de ptit coquins).
Cette première partie expliquera comment émettre et recevoir des ondes hertziennes avec le raspberry PI (en passant par une brève piqure de rappel de notions du collège que je pensais pourtant avoir soigneusement refoulées).
Deux minutes de théorie ultra vulgarisée :
Une onde radio c’est une onde électromagnétique qui, comme son nom l’indique, ondule….(si vous êtes déjà perdu, souriez et hochez la tête on y verra que du feu).
Plus l’onde ondule vite, plus sa fréquence est dite “haute” et réciproquement. (j’entends au loin mon prof de physique s’étrangler de honte devant ma vulgarisation hérétique du phénomène).
En gros une onde ressemble à ça :
Si on augmente sa fréquence ça donne un truc comme ça :
Si on la baisse :
(Merci au charmant internaute qui m’a fournis les graphique plus jolis que mes vieux gribouillis, et dont j’ai honteusement perdu le nom en nettoyant ma boite email…fail !)
…bref zavez compris le principe, ça ne vous servira a rien dans cette première partie, en revanche ça sera utile plus tard
Pour la petite précision, une fréquence à pour unité le hertz et se mesure grâce à la formule f = 1/T
car c’est le temps que que met l’onde à faire une tite ondulation (nommée période si je ne m’abuse, sur la troisième photo l’onde n’a fait qu’une période en 1s on peux donc pensez que c’est une onde d’un hertz mais la je vous dis peut être une grosse connerie donc amis élétr(oni)ciens n’hésitez pas a me clasher dans les commentaires )
Plus la fréquence est haute, plus on peu passer d’information rapidement, mais plus l’onde est courte (ne me demandez pas pourquoi)
Trêve de théorie chiante ! Passons à l’action !
Nous, nous allons utiliser une fréquence de 433,92 Mhz, ça n’est pas complètement innocent :
Le matos !!
Hé oui, il nous faudra encore investir dans cette étape, mais rassurez vous ça reste abordable ! Nous allons simplement acheter un kit émetteur/récepteur 433,92 Mhz pour al modique somme de 15,95€ (au moment ou j’écris ce tuto), j’ai acheté le mien ici : http://www.conrad.fr/ce/fr/product/130428/?insert=62&insertNoDeeplink&productname=Ensemble-metteurrcepteur-radio-433-MHz-AM
Il faut faudra bien sûr vous munir de vôtre fidèle raspberry PI en complément et ça sera tout pour cette première partie de tuto.
Les branchements
C’est tellement enfantin que j’irais presque vous laisser lire la doc, mais comme je déteste lire les docs, je vais vous épargner ça…
Nous allons brancher le récepteur sur une PIN GPIO du raspberry et l’émetteur sur une autre pin.
Comme je suis un goret j’utilise encore une fois le jus du raspberry (wha le super jeux de mots qui tue !) pour alimenter l’émetteur et le récepteur mais je vous conseille vivement d’utiliser une alim 5v externe si vous voulez utiliser ce montage sur la durée.
Commençons par notre émetteur, petit bout de métal trop mimi qui tient sur le pouce :
Comme vous le voyez : trois fils a souder : le fil 5V (fil qui fait bzz bzz) en rouge à relier a la borne 5V du raspberry (borne 2), la masse en noir à relier a la borne de masse du raspberry (borne 6) et enfin la borne d’état logique (0 ou 1) à relier a un PIN GPIO valide (nous choisirons le 7, c’est une valeur sûre :p)
ça donne ce montage la :
Toujours en forme ? Bien ! Passons au récepteur !!!
De gauche a droite : le fil jaune = borne logique (0 ou 1) a relier au pin 13 du raspberry, le fil rouge = la phase, à relier a la borne 5V du raspberry, et le fil noir = la masse à relier à la masse du raspberry (c’est presque monotone tellement ya pas de challenge T_T)
Vous avez compris, on vas le brancher exactement pareil que l’émetteur ( fil 5V et masse) mais sur une pin GPIO différente pour la borne logique :
Notez bien que j’ai pris le(la) pin 13 parce que je suis un grand superstitieux mais libre à vous de choisir une autre des 8 bornes dispo si vous le souhaitez.
Votre montage est maintenant terminé, plusieurs façon de le tester :
Notez bien que si vous n’habitez pas la tchétchénie, il est possible que votre récepteur reçoive plein de signaux en continu alors que vous n’émettez pas, en effet de très nombreux appareil utilisant cette fréquence il est possible que vous receviez des émissions en 433,92 mhz de votre voisin ou même de votre téléphone fixe sans fil (ou que sais je encore ^^).
Notez bien ² : La méthode de test la plus probante est encore de placer des led aux endroits que je vous ai indiqué, vous pourrez alors vous amuser a tester si vos clés de garages, vos interrupteurs de stores et autres diverses télécommandes font s’affoler la diode du récepteur quand vous les actionnez :
si c’est le cas : vos machines sont en 433 mhz et nous pourrons bientôt les piloter depuis le Raspberry (enfin, si j’arrive a me dépatouiller avec la suite du tuto évidemment ;p) personnellement, la porte du garage de ma résidence ainsi que la voiture de ma copine sont sur du 433,92 (hurk hurk hurk j’en connais un qui vas enfin prendre le contrôle de ce taudis). Notez (encore) que certain réseaux radio sont sécurisé avec des signaux changeants, surtout sur les voitures récentes, cas dans lequel nous ne pourront pas piloter l’engin.
Encore une dernière recommandation : ne soyez pas aussi con que moi, n’essayez pas d’isoler votre récepteur des signaux extérieurs en l’entourant de papier alu XD, je sais pas pourquoi dans ma tête le papier alu c’était pas conducteur de chaleur donc ça conduisait pas le courant non plus, résultat : j’ai niqué un port USB et mon RPI à fait la gueule un certain temps.
Merci a Yann PONSAR pour ses précieux tuyaux sur le sujet
Dans le prochain tuto nous verrons pourquoi et comment générer un signal 32 bit capable d’allumer et d’éteindre tous les récepteur de la gamme chacon (sorte de relais récepteurs radio a bas prix qui s’adaptent a votre appart/maison sans avoir a couper ou casser quoique ce soit)
";s:7:"dateiso";s:15:"20121016_025307";}s:15:"20121009_183456";a:7:{s:5:"title";s:46:"Installer mon propre éditeur de code en ligne";s:4:"link";s:30:"http://blog.idleman.fr/?p=1693";s:4:"guid";s:30:"http://blog.idleman.fr/?p=1693";s:7:"pubDate";s:31:"Tue, 09 Oct 2012 16:34:56 +0000";s:11:"description";s:415:"A l’ère du “cloud-à-toutes-les-sauces”… A l’ère des proxy (castrateurs) d’entreprises/école qui bloquent tout les protocoles FTP/SSH/SCP et ou ça devient impossible d’éditer tranquillement son code à distance etc… J’ai trouvé LA perle rare : L’éditeur open source de code … Continuer la lecture ";s:7:"content";s:4649:"A l’ère du “cloud-à-toutes-les-sauces”…
A l’ère des proxy (castrateurs) d’entreprises/école qui bloquent tout les protocoles FTP/SSH/SCP et ou ça devient impossible d’éditer tranquillement son code à distance etc…
J’ai trouvé LA perle rare : L’éditeur open source de code source en ligne Codiad.
Codiad est :
Le projet est encore assez jeune mais ne semble pas exposer de gros bugs (testé sous FF et chrome) à l’exception du redimensionnement de la sidebar qui danse parfois un peu la gigue (mais ça se remet correctement par la suite), un gros point faible dont il faut parler cependant : pas de glisser déposer dans l’arborescence.
Les panneaux :
Les raccourcis touches à connaitre :
ESC– Fermer les boites de dialogue CTRL+S– Enregistrer le document courantCTRL+O- Exécuter le document / Ouvrir le document dans le navigateurCTRL+F– Chercher un mot dans le documentCTRL+R - Chercher et remplacer un mot dans le document
Les liens utiles :
Installation :
Les petits plus du programme :
De la baloche je vous dis, ça manque encore de deux trois trucs minuscules mais c’est tout à fait utilisable en l’état (d’ailleurs je m’y suis déjà mis).
NB : Pour les perfectionnistes, il y a aussi Cloud9 qui a l’air pas mal mais bien plus chiant à mettre en place.
";s:7:"dateiso";s:15:"20121009_183456";}s:15:"20121006_152839";a:7:{s:5:"title";s:69:"Tout le monde s’en fout : IdleBlog, bientôt une nouvelle charte…";s:4:"link";s:30:"http://blog.idleman.fr/?p=1686";s:4:"guid";s:30:"http://blog.idleman.fr/?p=1686";s:7:"pubDate";s:31:"Sat, 06 Oct 2012 13:28:39 +0000";s:11:"description";s:348:" Je n’ai jamais compris les blogueurs qui perdent leurs temps à rédiger des billets sur leurs chartes graphiques, généralement : tout le monde s’en fout. Moi en tout cas c’est pas le genre d’infos qui me passionne, mais je … Continuer la lecture ";s:7:"content";s:4148:"
Je n’ai jamais compris les blogueurs qui perdent leurs temps à rédiger des billets sur leurs chartes graphiques, généralement : tout le monde s’en fout.
Moi en tout cas c’est pas le genre d’infos qui me passionne, mais je tiens à présenter le devenir graphique/ergonomique du blog surtout afin de vous préparer au pire. (hé hé hé)
Pourquoi je change ?
La charte graphique actuelle me satisfait pleinement mais elle a tout de même quelques gros défauts :
A quoi j’aspire?
Je souhaiterais quelque chose de fatalement plus simple, moins d’images, moins d’icônes et de froufrou graphique, une navigation légère et accessible depuis n’importe quel terminal.
Bon tu nous la montre cette charte ou tu raconte ta vie ?
Okay okay !! Accrochez vous parce que c’est vraiment très … différent de ce qui existe, certains vont me crier au scandale mais je pense que sur le long terme ça sera vraiment plus agréable :
Un grand merci à Fox qui à déployé tout son talent pour me créer ce magnifique “Panda chimiste fou” sur demande et les doigts dans le nez, ma demande initiale tenais en une phrase :
“Je recherche activement un dessin mignon et original de panda chimiste fou pour en faire le logo du blog, et moi je griffonne que des patates, il n’y aurais pas un bon dessinateur à l’âme charitable dans la salle? :p”
Franchement arriver à un tel résultat avec une spécification aussi pourave je suis tombé sur le cul
. Merci également à bronco et zephus62 pour leurs proposition toute aussi talentueuses
.
Les points forts de la nouvelle charte :
Les points faibles :
Et c’est pour quand ?
Ben dans un premier temps j’attends d’avoir quelques avis, savoir si tout le monde me vomit dessus ou si ça vaut la peine que je lance la découpe, ensuite il me faudra une bonne petite heure (pleine) pour découper, intégrer et décliner la charte en thème WordPress ce qui risque d’être chaud à placer avant novembre.
Bien à vous,
Idle
";s:7:"dateiso";s:15:"20121006_152839";}s:15:"20121005_201252";a:7:{s:5:"title";s:25:"Le bordel de l’info #20";s:4:"link";s:30:"http://blog.idleman.fr/?p=1677";s:4:"guid";s:30:"http://blog.idleman.fr/?p=1677";s:7:"pubDate";s:31:"Fri, 05 Oct 2012 18:12:52 +0000";s:11:"description";s:353:"Salut bande de résidus de merguez (oui : j’arrive à cours d’insultes, n’hésitez pas à en proposer dans les commentaires, promis, je modère pas trop ), vous en avez d’la chance !! A l’heure où votre smartphone vous chope mieux … Continuer la lecture ";s:7:"content";s:7286:"
Salut bande de résidus de merguez (oui : j’arrive à cours d’insultes, n’hésitez pas à en proposer dans les commentaires, promis, je modère pas trop
), vous en avez d’la chance !!
A l’heure où votre smartphone vous chope mieux que jamais dans votre cagoule tête de chien en cuir sado maso à votre insu, à l’heure où les prédateurs sexuels ne peuvent même plus badiner en paix (j’ai bien dis badiner…).
A l’heure où la crise pousse les chômeurs au what the fuck intensif de la productivité, vous êtes peinards, chez vous, accompagnés de votre fidèle yorkmouth à vous fader une 20em édition du bordel de l’info (happy beuursttaayy touu …).
Bon j’ai fais le fond de mes favoris leed, je vous laisse potasser la sainte raspBible, moi je m’en vais de ce pas rattraper ces 20 petites heures de sommeil bien méritées qui me font tant défaut
Bon week end à tous !
Que faire quand on a plus le temps de blogger mais que notre conscience nous taraude chaque soir en nous rappelant sournoisement que le délais entre chaque billets s’espace ?
Détourner l’attention sur un autre blog bien sûr !!
Oui mais pas n’importe lequel d’entre eux puisque nous découvrons aujourd’hui le Warrior du dimanche.

C’est avec humour, beaucoup d’originalité et un thème far west très kitsch que Bronco vous fait découvrir ses trouvailles chaque dimanche (et les autres jours aussi en fait… :p ).
![]()
T-shirt de geeks, Astuces CSS, Snippets PHP et devinettes cocasses sont au rendez vous, si vous ne vous couchez pas moins bête au sortir de ce blog, vous aurez au moins passé un agréable moment entre cow boy.
![]()
Le blog n’en est qu’à ses débuts mais parait plutôt prometteur, je vous invite à y jeter un petit coup d’oeil :p.
Bien à vous,
Idle
";s:7:"dateiso";s:15:"20121004_184304";}s:15:"20120928_185554";a:7:{s:5:"title";s:41:"De la nécessité humaine de tout classer";s:4:"link";s:30:"http://blog.idleman.fr/?p=1659";s:4:"guid";s:30:"http://blog.idleman.fr/?p=1659";s:7:"pubDate";s:31:"Fri, 28 Sep 2012 16:55:54 +0000";s:11:"description";s:384:"Quel que soit l’individus impliqué ou le domaine ciblé, nous nous mettons constamment de manière inconscience en compétition avec autrui. Ceci résulte d’un besoin fondamental de classer les choses par ordre d’importances afin de se créer des référence ou qui … Continuer la lecture ";s:7:"content";s:4215:"Quel que soit l’individus impliqué ou le domaine ciblé, nous nous mettons constamment de manière inconscience en compétition avec autrui.
Ceci résulte d’un besoin fondamental de classer les choses par ordre d’importances afin de se créer des référence ou qui sais…
Je n’échappe pas à la règle (il faut bien quelques vices :p) j’ai eu la curiosité malsaine de me demander si un classement des sites web existait?
Que ne fût pas ma surprise lorsque je trouvais, non seulement, un site qui classifiait les sites web du monde entier par ordre, mais qui allait jusqu’à leurs donner une valeur monétaire !!
C’est en jouant avec le site http://webstatdata.com que j’ai appris que sebsauvage pouvait s’acheter une maison en vendant son blog (environ 122 000 $), Manuel Dorne (korben) un jet privé (1 M et des brouettes), Timo (hollandais volant) une jolie voiture neuve (14 000 $) et moi … un Ipad avec quelques accessoires T_T (vdm) pour 700$.
C’est un petit plaisir coupable que de surfer quelques minutes sur ce genre de sites et pour nous pauvres blogueurs mortels ça remet tout de suite les idées en place mais il faut reconnaître que ça passe le temps d’autant qu’on note quelques petits trucs cocasses j’ai noté deux faits marrants :
Je plaisante : j’étais (et reste) super mauvais en math
, mais revenons à nos gloutons !
Ce site se base visiblement sur le PageRank le nombre de backlink et les références des plus gros réseaux sociaux et autres moteurs de recherches (je note d’ailleurs qu’ils n’ont pas trouvé mon compte twitter, pourtant il ne parle QUE de mon blog T_T). Visiblement je suis le 862,964 em meilleur site du monde XD, Seb se situe dans la centaine de milliers, korben dans la dizaine de milliers et j’en passe.
Si vous aussi vous voulez vous amuser à tester votre blog (mais gare à la grosse déprime qui suivras ^^) tapez l’url :
http://votre.site.web.fr.webstatdata.com/
Peut on uniquement se baser sur ces paramètres pour définir la valeur d’un blog ?
Existerait il un autre moyen de juger de façon pertinente la qualité d’un site par rapport à ses tiers ?
Ça serait quand même vachement triste …
Bien à vous, Idle
Ps : Je recherche activement un dessin mignon et original de panda chimiste fou pour en faire le logo du blog, et moi je griffonne que des patates, il n’y aurais pas un bon dessinateur à l’âme charitable dans la salle? :p
";s:7:"dateiso";s:15:"20120928_185554";}s:15:"20120916_105939";a:7:{s:5:"title";s:29:"Quelques news sur les projets";s:4:"link";s:30:"http://blog.idleman.fr/?p=1646";s:4:"guid";s:30:"http://blog.idleman.fr/?p=1646";s:7:"pubDate";s:31:"Sun, 16 Sep 2012 08:59:39 +0000";s:11:"description";s:335:"Je profite de ce vide intersidérale d’infos intéressantes sur le web ( si quelqu’un me parle encore de la sortie de l’iphone 5 je le flingue) pour faire une revue rapide de mes 3 principaux projets. Leed Leed est … Continuer la lecture ";s:7:"content";s:4605:"
Je profite de ce vide intersidérale d’infos intéressantes sur le web ( si quelqu’un me parle encore de la sortie de l’iphone 5 je le flingue) pour faire une revue rapide de mes 3 principaux projets.
Leed
Leed est un agrégateur RSS ultra léger, multi plateforme qui s’adapte aux tablettes et smartphone, auto hébergé open source et gratuit qui base son esprit autour de la performance et du minimalisme.
Nous en étions à la version 1.0 Beta, j’ai décidé de déclarer la v1.0 Stable depuis la révision 69 (hé hé)
Evidemment il reste encore beaucoup à faire mais le fonctionnel est la et les bugs sont en nombre sufisemment réduits pour me permettre de déclarer la version stable.
Page du projet : http://dizplay.idleman.fr/pages/project?project=18
Flux RSS du projet : http://hades.idleman.fr/Dizplay/action/svn2Rss?project=leed
Codez
Codez est un gestionnaire de snippet (petits bouts de code réutilisables) bureautique portable open source et lié a un site communautaire de partage ( lui aussi téléchargeable et auto-hébergeable bien que nous vous proposions une version gérée par l’équipe de codez)
Les binaires pour Windows et Linux sont téléchargeable sur le site du projet les sources ne sont pas encore publiques mais ça ne saurait tarder.
Pour la partie bureautique, nous en sommes à la révision 119 et avons presque terminé le lot 2 (suppression/modification des snippets et catégories) le client devrait donc être bientôt totalement fonctionnel bien que pas encore relié au site web (fonctionnera en autonomie) merci à yosko et akaiken qui font du super boulot sur le site et le client desktop
.
Nb: Nous cherchons quelqu’un avec un mac pour compiler la version Mac du projet
Page du projet : http://snippet.idleman.fr/
Flux RSS du projet : http://hades.idleman.fr/Dizplay/action/svn2Rss?project=codez
DropCenter
Le DropCenter est une solution de stockage et de partage de fichiers par drag & drop (glisser déposer de votre bureau sur votre navigateur) gratuit open source et auto hébergeable à la sauce 2.0.
Le DropCenter pour être franc à du mal à redémarrer, fox et moi sommes overbookés en tant qu’étudiant de 5em année on nous demande presque de bosser !! oO
Cependant nous avançons à notre rythme sur la v2.0 qui devrait permettre l’upload de nombreuses façons (drag & drop, bouton parcourir, upload depuis une url…) améliorer la sécurité du script et la gestion des droits.
Page du projet : http://dropcenter.fr/
Flux RSS du projet : http://hades.idleman.fr/Dizplay/action/svn2Rss?project=dropcenter2
";s:7:"dateiso";s:15:"20120916_105939";}s:15:"20120909_153953";a:7:{s:5:"title";s:25:"Le bordel de l’info #19";s:4:"link";s:30:"http://blog.idleman.fr/?p=1633";s:4:"guid";s:30:"http://blog.idleman.fr/?p=1633";s:7:"pubDate";s:31:"Sun, 09 Sep 2012 13:39:53 +0000";s:11:"description";s:339:"Salut bande de geeks ! Vous en avez de la chance !! A l’heure ou les canettes contre attaquent… A l’heure ou une solution à l’invasion des bébés joufflus voit enfin le jour… Bref à l’heure du complet “What The … Continuer la lecture ";s:7:"content";s:9945:"
Salut bande de geeks ! Vous en avez de la chance !!
A l’heure ou les canettes contre attaquent…
A l’heure ou une solution à l’invasion des bébés joufflus voit enfin le jour…
Bref à l’heure du complet “What The Fuck” , vous êtes peinards, dans votre micro onde à savourer cette 19em édition du bordel de l’info.
J’ai pris un peu de retard, un boulot prenant, une chérie d’1m57 à gérer et une brocante gargantuesque plus tard, je suis de nouveaux la pour vous bombarder de liens chronophages pour votre plus grand plaisir à votre plus grand désarroi.
Ce post est le septième d’une liste de tutoriels sur le raspberry PI dont voiçi le sommaire :
Rhhha je vous ai trompé cher visiteurs, je n’avais plus de lampe sous la main alors j’ai pris…. un réveil !! ![]()
Mais peu importe, l’application est exactement la même, on se passera de lampe pour cet exercice (c’est la faute a ma chérie qui n’a pas voulu me laisser sa lampe de chevet “lapin crétin” comme sujet d’expérience, l’hérétique !!)
Comme promis nous allons voir aujourd’hui comment utiliser le raspberry PI et plus précisément les ports GPIO (broches) de la carte pour contrôler un élément électrique de votre habitation, cet élément peut être n’importe quoi : une lampe/lumière, un réveil, un frigo, une tv, bref tout ce qui vous passe par la tête
.
Voila une petite vidéo pour vous mettre en bouche et vous montrer ce qu’on vas faire (cliquez sur l’image ci dessous pour la télécharger) :
Prêt a tenter le coup? C’est vraiment pas compliqué, il suffit de s’accrocher un tout petit peu ![]()
Voici les éléments requis pour cette expérience :
- Un ordinateur, branché sur votre réseau
- Un raspberry PI (~30€), à commander ici : http://fr.farnell.com/raspberry-pi
- Une carte 8 relais 5V 10A (20,49€), à commander ici : http://hackspark.fr/fr/8-channel-5v-relay-module-5v-250vac-10a.html
- Un réveil (ou une lampe, ou ce que vous voulez) auquel vous ne tenez pas (ou vas couper du fil)
Dans cet exercice nous ne contrôlerons qu’un seul appareil, mais notez bien qu’avec ces cartes vous pouvez en contrôler 8 simultanément, si vous avez suivis les précédents tutos sur les broches GPIO et que vous lisez attentivement celui ci, ça ne vous posera aucun problème de relier correctement les fils.
Dans notre précédent tuto Raspberry PI ~ 06 : Utiliser le GPIO et Interagir avec le monde réel nous avons allumé et éteint des diodes à l’aide d’une interface web, nous allons maintenant passer à la vitesse supérieure en remplaçant les LED par un réveil.
Concrètement, le réveil est alimenté en 220V (branché a une prise de courant normale) et le raspberry peux fournir du … 5V maximum, il parait évident qu’il nous faut un “médiateur” entre les deux afin que le raspberry puisse contrôler le réveil.
Ce médiateur s’appelle une “carte relais”, c’est tout simplement une carte qui vas servir d’interrupteur électronique pour le réveil, interrupteur commandé par le raspberry.
Un petit schéma s’impose :
Tous part du PC, on se connecte depuis le PC au site web qu’on a créé sur le raspberry PI (cf les tutos précédents) et on clique sur le bouton d’activation (crois rouge) du PIN 7 physique (qui correspond en fait au port GPIO 4 logique) de l’interface web.
Ceci envoie un signal au raspberry qui met le port GPIO 4 à 1 (jusqu’a présent, il était a zéro).
La carte relais est branchée de manière a ouvrir le circuit du réveil quand l’état du GPIO 4 est a zéro (donc le réveil est éteint) et a le fermer quand l’état est a 1 (donc le réveille s’allume).
La carte relais est donc un interrupteur commandé par le port GPIO4, mais comme cet interrupteur est électronique, il a besoin d’être alimenté, c’est pourquoi en plus du port GPIO4, deux fils (phase et neutre) sont reliés a la carte pour alimenter celle ci en 5V.
Pour être plus précis au niveau du raccordement, voila un autre schéma de ma composition :
Notez bien que la carte relais supporte une puissance de 10A, soyez donc précautionneux en fonction de ce que vous y branchez, vous avez des risques de griller votre carte relais.
N’hésitez pas à poser vos questions dans les commentaires et a faire vos remarques, surtout ceux qui tâtent en électronique car j’imagine que j’ai dis et fait dans ces tuto pas mal d’hérésie et que même si ça marche ça peut grandement être amélioré.
Dans les prochaines tutoriaux nous trouverons un moyen de packager tout ce beau monde dans une multiprise électrique (une multiprise connectée en quelque sorte) et nous verrons comment commander “vocalement” le système afin de remplacer l’interface web qui n’est pas très utile dans uen application domotique.
";s:7:"dateiso";s:15:"20120831_005232";}s:15:"20120822_175013";a:7:{s:5:"title";s:55:"Premier lot de CodeZ en alpha version téléchargeable.";s:4:"link";s:30:"http://blog.idleman.fr/?p=1599";s:4:"guid";s:30:"http://blog.idleman.fr/?p=1599";s:7:"pubDate";s:31:"Wed, 22 Aug 2012 15:50:13 +0000";s:11:"description";s:343:" Je vous avais déjà parlé du logiciel de snippet CodeZ que j’avais lancé il y à quelques mois. Hé bien avec ma dream team (yosko et AkaiKen avec quelques parties de BoboTiG) nous avons terminé le lot1, celui ci … Continuer la lecture ";s:7:"content";s:3725:"
Je vous avais déjà parlé du logiciel de snippet CodeZ que j’avais lancé il y à quelques mois.
Hé bien avec ma dream team (yosko et AkaiKen avec quelques parties de BoboTiG) nous avons terminé le lot1, celui ci consistait uniquement à sortir les options suivantes :
Evidemment ce lot1 tel qu’il est n’est pas tout à fait fonctionnel, il lui manque quelques options de bases pour être utilisé quotidiennement (suppression/modifications etc..)
Voila la gueule du programme dans son état actuel :
Envie de devenir alpha testeur? Vous pouvez télécharger et tester notre lot 1 sans inscription pour Linux et Windows (la version pour mac Os est dans les tuyaux) depuis le site de Codez :
Un lot 2 sortira prochainement avec les fonctions manquantes importantes (suppression et modifications de snippet et de catégories essentiellement) ce qui rendra la programme totalement autonome et fonctionnel, puis nous nous concentrerons sur un lot 3 comprenant la connexion entre le programme et le site (qui permettre de sauvegarder, partager, importer, exporter les snippet en deux clics).
Autre info importante : Avec l’ensemble de l’équipe, nous avons décidé que le programme et le site web seraient tout deux sous licence CC – by – nc, ce qui signifie que les codes sources du programme et du site web seront publié et accessible a ceux qui souhaiteraient installer leurs propre instance de CodeZ sur leurs propres serveurs.
Un grand merci à akaiken, yosko et bobotig qui se sont défoncé sur les premières ébauches du site et sur le lot 1 du programme bureautique.
";s:7:"dateiso";s:15:"20120822_175013";}s:15:"20120815_024923";a:7:{s:5:"title";s:69:"Raspberry PI ~ 06 : Utiliser le GPIO et Interagir avec le monde réel";s:4:"link";s:30:"http://blog.idleman.fr/?p=1587";s:4:"guid";s:30:"http://blog.idleman.fr/?p=1587";s:7:"pubDate";s:31:"Wed, 15 Aug 2012 00:49:23 +0000";s:11:"description";s:364:"Chez lecteurs (lectrices) nous arrivons à la partie la plus intéressante, selon moi, de l’utilisation du raspberry PI. Il s’agit de l’utilisation des ports GPIO (les 26 broches situées en haut a droite de votre raspberry). Cela ne vous évoque … Continuer la lecture ";s:7:"content";s:15043:"Chez lecteurs (lectrices) nous arrivons à la partie la plus intéressante, selon moi, de l’utilisation du raspberry PI.
Il s’agit de l’utilisation des ports GPIO (les 26 broches situées en haut a droite de votre raspberry). Cela ne vous évoque rien ? Et bien dites vous qu’il s’agit simplement d’une porte permettant a vos programme d’interagir avec le monde réel…
Je ne l’ai jamais caché, mon objectif concernant le raspberry est de pouvoir l’utiliser comme un outil de domotique à bas prix.
Je souhaite donc utiliser ce dernier pour gérer dans un premier temps, mon système d’éclairage, et dans un second temps, d’autres appareils et systèmes électriques de mon appart.
Comme je suis une pipe en électronique, j’ai commencé petit en construisant une “maquette” (le terme est pompeux vu la gueule de la maquette) de mon appart (aucune ressemblance avec le réel d’ailleurs) en me fixant pour défis de le piloter depuis une interface web.
J’ai réussi, et pour vous filer l’eau a la bouche (ou vous faire carrément bailler selon vos intérêts) voici une petite démo vidéo, cliquez sur l’image ci dessous pour la télécharger :
Pour ceux qui ne veulent pas de la vidéo, petit récap en images :
J’ai développé une interface web PHP appelée depuis mon raspberry PI qui a cette tronche :
Et une “maquette” papier de mon appart avec trois diodes électroluminescentes (LED) :
Je peux activer/désactiver une LED de la maquette en appuyant sur la zone d’état de chaque lignes :
Je peux également appuyer sur le bouton “Joyeux noël” qui m’allumera chaque diodes pendant une seconde à tour de rôle.
Comment j’ai fait : 1. Partie électronique…
Je me suis intéressé aux ports GPIO du raspberry PI, ce sont de petites broches (au nombre de 26) qui peuvent se comporter en entrée comme en sortie (recevoir une information ou en envoyer une) ces broches que nous appellerons PIN, ont deux états possibles : 0 (off) ou 1 (on).
Dans la suite de ce tutoriel, nous nommerons chaque PIN par leur numéro d’ordre de haut en bas et de gauche à droite (en prenant pour repère que la carte SD représente le haut du raspberry PI)
Ce serait une erreur de penser que chaque port GPIO est utilisable, car nombre d’entre eux sont réservés à d’autres tâches que de servir d’entrée sorties pour nous pauvres mortels.
EN réalité, seuls 8 ports sur les 26 sont vraiment disponibles, ce qui nous laisse la possibilité de contrôler 8 matériels de notre appart diffèrent maximums, a moins d’acheter une carte d’extension des ports.
Voila le schéma explicatif de chacun des PIN (source, le wiki de raspberry):
Ça parait peut être compliqué comme ça pour les néophytes de l’électronique comme moi, mais ça ne l’est pas, voila les choses essentielles a retenir :
Donc globalement pour allumer une diode nous utiliseront ? …
Le pin de masse (pin 6 en noir) et un des pin entrée sorties (au choix 7,11,12,13,15,16,18,22 en verts).
Nous allons monter notre circuit électronique de manière simplissime comme ça :
On vas utiliser la broche 11 (position physique) et la mettre a 0 ou 1 (via notre programme php), lorsqu’elle sera sur 1, le courant passera dans une petite résistance de 270 Ohms (pour protéger la Led et éviter qu’elle claque) puis directement dans notre led qui s’éclairera.
Enfin le circuit sera fermé a l’aide de la broche 6 qui sert de masse.
ça c’est l’idéal, 2 différences sur mon circuit réel:
Pour monter votre circuit, de simples fils suffisent, cependant je vous conseille très vivement d’acheter ou de dégoter quelque part des connecteurs adaptés aux broches afin d’éviter les faux contacts avec le pin, un câble d’imprimante démonté comme le mien ferait l’affaire aussi :
pour relier l’autre bout de mes fils aux diodes, j’ai utilisé une table de connexion que j’avais acheté pour faire un peut d’électronique amateur, évidemment vous n’avez pas a investir vous aussi la dedans, c’est juste plus pratique que d’entortiller voir souder les fils autour des pattes de chaque led.
Comment j’ai fait : 2. Partie programmation
Une fois le montage électronique effectué, vous allez devoir signaler au raspberry PI d’ouvrir ou fermer les PIN (7 11 et 12 dans mon exemple) pour allumer/éteindre les LED que vous souhaitez.
Pour nous faciliter la vie, nous allons installer une petite librairie toute bête qui nous permettra de faire ce genre de commandes dans la console du raspberry PI :
gpio write 11 1
qui signifiera : met l’état de la pin 11 à 1
Une fois cette librairie installée, nous utiliserons mon petit script gratuitement mis a votre disposition afin de donner une interface web plus conviviale a ces lignes de commandes.
La librairie se nomme wiring PI, pour l’installer depuis la ligne de commande de votre raspberry, suivez les instructions du lien.
Si tout se passe bien et que votre circuit électronique est correctement monté, lorsque vous taperez :
gpio mode 0 out
Cette ligne définira le PIN 11 comme une sortie
gpio write 0 1
La diode connectée a la PIN 11 devrait s’allumer, tapez alors
gpio write 0 0
Pour l’éteindre ![]()
Et la si vous suivez vous êtes en train de vous dire : “Attends un peu, il a mis “0” et pas “11” comme numéro de pin ?!!”
C’est juste, seulement rappelez vous que les électroniciens “adorent” les numéro de PIN “logiques” qui ne correspondent pas aux numéro “physiques”, notre pin qui se situe physiquement a la 11 eme position est représenté dans l’ordinateur comme le numéro 0
“Han mais comment savoir qui correspond à quoi maintenant?”
A l’aide d’une super table de correspondance fournie par notre amis créateur de wiringPi :
Les numéros centraux sont les positions physiques des PIN, les numéro de la colonne “wiringPI Pin” sont les correspondances que vous devrez appeler dans vos lignes de commandes, le reste ne vous en souciez pas ça risque de bien vous embrouiller.
ainsi pour parler du pin 15 j’utiliserais le chiffre 3, pour le pin 12 le chiffre 1, pour le 11 le 0 etc…
“Ca vas être vraiment chiant à gérer tout ça”
C’est la que ma petite interface PHP vous facilite la vie, j’y ai intégré la table des correspondances, vous n’aurez donc à vous soucier que des positions physiques des PIN.
Mon script est disponible a l’adresse : http://dizplay.idleman.fr//Projects/Archives/pihome.zip
Téléchargez le et décompressez le dans le dossier /var/www de votre raspberry PI
Puis accédez a l’adresse internet de votre raspberry PI (en tapant 127.0.0.1 dans un navigateur si vous êtes depuis le raspberry PI ou en tapant l’adresse IP réseaux du raspberry PI si vous êtes sur un autre PC du réseau).
Si vous voulez ajouter/supprimer/modifier le nombre de LED, les ports utilisés etc… vous avez juste a modifier le fichier configuration.php aux lignes suivantes
Ajoutez le libellé de la led et son numéro physique de PIN associé.
C’est tout pour aujourd’hui, cette partie du rasp n’est pas facile à appréhender pour les gens qui ne viennent pas du monde informatique ou du monde électronique, n’hésitez donc pas a poser vos questions ici si vous avez le moindre soucis
.
Dans un prochain tuto, nous tenterons d’agrandir l’expérience et de contrôler non pas des LED mais de véritables lampes d’appartement en utilisant le même principe (mais un tout petit peu plus d’électronique)
";s:7:"dateiso";s:15:"20120815_024923";}s:15:"20120813_133834";a:7:{s:5:"title";s:45:"Raspberry PI ~ 05 : Protéger notre précieux";s:4:"link";s:30:"http://blog.idleman.fr/?p=1552";s:4:"guid";s:30:"http://blog.idleman.fr/?p=1552";s:7:"pubDate";s:31:"Mon, 13 Aug 2012 11:38:34 +0000";s:11:"description";s:330:" Maintenant que nous disposons d’un raspberry PI en mode serveur fonctionnel, il serait d bon gout de penser à sa pérennité sur le long terme ! En effet un vilain coup de pied, un chat incontinent ou une chérie … Continuer la lecture ";s:7:"content";s:7326:"
Maintenant que nous disposons d’un raspberry PI en mode serveur fonctionnel, il serait d bon gout de penser à sa pérennité sur le long terme !
En effet un vilain coup de pied, un chat incontinent ou une chérie un peu gaffeuse (spéciale dédicace) est si vite arrivé et notre nouveau gadget (notre précieux) est encore fragile dans son état actuel.
C’est pourquoi je dédie cette petite étape de tuto à la présentation des boitiers que vous pouvez acheter ou fabriquer pour l’engin.
La communauté raspberry PI étant ce qu’elle est, des boitier spécialement conçu pour le rasp ont vus le jour, et je dois reconnaitre qu’ils font propre :
Le plus coloré : Pibow
Pibow est un ensemble de couches colorées a assembler sois même, vendu entre 15£ et 20£ selon l’endroit ou vous habitez (frais de ports variables), pour les ptit frenchies, ce sera 17.95£
Le gros avantage selon moi, c’est le couvercle transparent qui laisse une bonne visibilité sur le circuit imprimé à tout moment, le jeux de couleurs peut être disgracieux ou carrément avantageux selon vos penchants sexuels (blague, pas taper !!
).
nb : Le boitier prévois également des extensions pour les modules de caméra etc… et semble vouloir s’adapter aux futures évolution du rasp, bon point !
Le site de commande : http://www.pibow.com/
Le plus “pro” : Standard case for raspberry PI
Ce boitier vous offrira pour la modique somme de 25.51€ quelque chose de tout à fait propre et légèrement plus sobre que le précédent
.
Il est également disponible en semi opaque mais pas de quoi casser trois pattes à un canard.
L’avantage de ce boitier étant qu’il est assez simple a monter (deux parties a emboiter l’une dans l’autres) les manches du bricolages s’orienterons donc plus sur cette solution.
Le site de commande : http://www.shapeways.com/model/565087/raspberry-pi-standard-case.html
Le plus “design” : Raspberry design case
Ce boitier semble être du même constructeur et offre un côté un peu plus “design” et réfléchis que son prédécesseur pour 32.75€.
Les avantages que j’y vois au premier coup d’œil, c’est qu’ils ont prévus pas mal d’aérations ainsi qu’un relais optique pour chacune des LED du raspberry PI.
La version existe aussi en noir et en semi opaque.
Je pense qu’il s’agit du boitier le plus adapté au raspberry, c’est en conséquence le plus cher.
Le plus ”populaire” : ModMyPI
ModMyPI est une entrée de gamme qui a pour avantage de vous fournir un boitier “solide” (vous comprendrez avec le prochain boitier) pour une somme relativement réduite de 7.99£
A noter que si il est un peu moins design que les autres, il existe également en blanc, rouge, vert, bleu, gris, bicolor etc etc…
Toutes les déclinaisons ici : https://www.modmypi.com/shop/raspberry-pi-cases
Le plus ‘”low cost” : Punnet
Punnet à ceci d’avantageux qu’il s’agit en fait d’un origami a plier sois même selon le patron suivant : http://squareitround.co.uk/Resources/Punnet_net_Mk1.pdf .
Il ne vous coutera rien a l’exception d’une feuille cartonnée (perso je vais tenter de prendre un truc plastifié également).
L’avantage est tout trouvé, c’est du gratuit et pour un prototype de test de rasp, ça me conviendras très bien , d’autant que nous aurons peut être a investir encore 30 € dans une carte d’extensions pour ceux qui me suivront dans la partie domotique donc autant faire des économies de bout de ficelles.
C’est tout pour aujourd’hui, évidemment nous n’avons fait qu’un tour d’horizon, il existe évidemment d’autres boîtiers, mais je vous laisse un peu chercher histoire de vous faire vos propres avis sur la question (et puis j’ai la flemme de tous les répertorier ici).
Nb : Avec le raspberry PI, tout est permis, faites fonctionner votre imagination, certains n’ont pas attendus pour construire leurs propre boitiers de Rasp et je dois reconnaitre que ça dégomme tout !
Dans le prochain tuto, nous nous initierons à la maitrise des PIN GPIO (les petites broches sur un coin de la cartes) afin d’aborder la partie domotique, il faudra être indulgent, je découvre en même temps que vous, et l’électronique n’est pas du tout mon fort (d’ailleurs si certains de vous s’y connaissent un peu, qu’ils n’hésitent pas à me contacter).
";s:7:"dateiso";s:15:"20120813_133834";}s:15:"20120810_094754";a:7:{s:5:"title";s:42:"Snippet #19 ~ PHP: Une REGEX pour échelon";s:4:"link";s:30:"http://blog.idleman.fr/?p=1536";s:4:"guid";s:30:"http://blog.idleman.fr/?p=1536";s:7:"pubDate";s:31:"Fri, 10 Aug 2012 07:47:54 +0000";s:11:"description";s:347:"Sopa, Pipa, Acta, Lopsi, hadopi, échelon et tous les pros du toucher rectal: ne cherchez plus !! J’ai LE snippet qu’il vous faut ! En effet je me suis récemment mis un peu plus sérieusement aux regex (parce qu’il faut bien y … Continuer la lecture ";s:7:"content";s:1572:"Sopa, Pipa, Acta, Lopsi, hadopi, échelon et tous les pros du toucher rectal: ne cherchez plus !!
J’ai LE snippet qu’il vous faut !
En effet je me suis récemment mis un peu plus sérieusement aux regex (parce qu’il faut bien y passer un jour), vous savez ces expressions régulières puissamment flippantes permettant de récupérer une expression précise dans un texte à l’aide de filtres (pattern) !!?
Et comme je suis un patriote un peu fasciste sur les bords, je me suis dis que j’allais commencer par un exercice de contribution auprès de cette grande et fière nation que j’ai l’honneur de représenter :
Blague à part, pour ceux qui, comme moi, sont à la fois conscient de la puissance des expressions régulières et de leurs propre impuissance face à la syntaxe de “facho-violeur-de-chatons” associée à cette technique, je vous propose cette série de petites regex (légèrement liberticides) à décortiquer.
Evidemment, les patterns peuvent être améliorés, je débute dans ce domaine, les pro regex me pardonneront :p.
";s:7:"dateiso";s:15:"20120810_094754";}s:15:"20120807_090259";a:7:{s:5:"title";s:58:"Miss : méthode simple et stupide pour aboutir vos projets";s:4:"link";s:30:"http://blog.idleman.fr/?p=1528";s:4:"guid";s:30:"http://blog.idleman.fr/?p=1528";s:7:"pubDate";s:31:"Tue, 07 Aug 2012 07:02:59 +0000";s:11:"description";s:407:"A tous moments de l’année (mais surtout vers le début, complètement avinés que nous sommes), nous nous fixons des objectifs, nous prenons des résolutions, bref nous nous fixons un(plusieurs) projet(s). Il peux s’agir d’un projet personnel (perdre du poids, trouver l’âme sœur, … Continuer la lecture ";s:7:"content";s:3847:"
A tous moments de l’année (mais surtout vers le début, complètement avinés que nous sommes), nous nous fixons des objectifs, nous prenons des résolutions, bref nous nous fixons un(plusieurs) projet(s).
Il peux s’agir d’un projet personnel (perdre du poids, trouver l’âme sœur, renouer avec un proche…) comme professionnel (Gagner plus d’argent, finir le dossier “X”, plomber la tête d’un collègue…).
Le soucis avec ce genre de projets… hé bien disons le franchement, c’est que très peu aboutissent….
Il existe pourtant des tas de bouquins à la fnac et sur le net et moûltes méthodologies complexes pour se “manager” de façon à atteindre la réussite (rien que pour l’informatique : PMI, Agile, ITIL…) seulement voila : c’est long, c’est rébarbatif, et ce n’est pas toujours applicable dans votre vie ou dans votre entreprise.
C’est la que MISS entrez en jeux…
Mon idée était au départ de réunir les concepts “généraux” communs à toutes ces méthodes et à les synthétiser en un micro bouquin simple a lire et a retenir (une sorte de méthodologie pour les grands enfants que nous sommes).
J’ai donc commencé un petit “Ebook” (ça fait pompeux de dire ça vu les trois lignes d’html que c’est mais bon..) regroupant des petits conseils sous la forme :
1 page = 1 conseil = 1 image + 2 court paragraphe (+ 1 exemple).
Je voulais appliquer ça à mes projets informatique et, je me suis rendu compte que, d’une manière générale, c’est applicable à quasiment tout types de projets donc j’ai généralisé.
Je met ça au fur et à mesure sur : http://hades.idleman.fr/MISS/
Il est possible de consulter le bouquin en intégralité ou uniquement par “catégories” de conseils en cliquant sur les blocs de la première page :
Evidemment il reste des fautes à corriger, la mise en page peut être améliorée et certain conseil revu mais l’idée est la et j’espère qu’elle trouvera son chemin chez deux ou trois autres internautes, moi en tout cas je vais clouer ça sur la porte de mes toilettes (ben oui, c’est un endroit ou en quelque sorte on à que ça à foutre hein !!
).
Contactez moi si vous avez des idées d’ajouts ou des remarques sur le sujet
";s:7:"dateiso";s:15:"20120807_090259";}s:15:"20120803_085013";a:7:{s:5:"title";s:25:"Le bordel de l’info #18";s:4:"link";s:30:"http://blog.idleman.fr/?p=1513";s:4:"guid";s:30:"http://blog.idleman.fr/?p=1513";s:7:"pubDate";s:31:"Fri, 03 Aug 2012 06:50:13 +0000";s:11:"description";s:345:"Salut bande de cigognes ! Vous en avez de l’la chance !! A l’heure ou les maisons font de la luge, à l’heure ou le nouveau Furby traumatise une nouvelle génération de bébé innocents, bref à l’heure ou les étudiants … Continuer la lecture ";s:7:"content";s:10160:"
Salut bande de cigognes ! Vous en avez de l’la chance !! A l’heure ou les maisons font de la luge, à l’heure ou le nouveau Furby traumatise une nouvelle génération de bébé innocents, bref à l’heure ou les étudiants en physique pownent batman, vous êtes peinards, dans vos chaussettes (propres) à vous taper une (tardive) tranche du bordel de l’info n°18 !
Houlala yen a du retard a rattraper, bon je vais filtrer à mort j’ai presque 50 news dans les tuyaux
Maintenant que nous avons installé le système d’exploitation Raspian sur notre Raspberry PI (Raspian n’étant autre qu’une distribution linux spécialement conçue pour le Raspberry PI) et que nous nous sommes logué (sisi, rappelez vous des identifiants par défauts –> login : pi , mot de passe rqspberry) nous allons pouvoir commencer les choses sérieuses !!
En premier pensez à changer votre mot de passe administrateur :
sudo passwd su
Puis faire un ptit update de vos paquets :
sudo apt-get upgrade sudo apt-get update
Une fois ceci terminé, nous allons installer d’une traite apache (un serveur HTTP permettant de publier du contenu Html sur le web), PHP (langage serveur permettant le traitement dynamique d’informations) et MySQL (une base de donnée).
Certains seraient tenté d’installer directement le paquet lamp-server qui englobe tous ces paquets, grossière erreur, le Raspberry ne l’entendrait pas de cette oreille, il vous faut donc installer les paquets séparément (mais en une seule ligne)
sudo apt-get install apache2 php5 mysql-server libapache2-mod-php5 php5-mysql
Après quelques petites questions d’usage, votre serveur web est en place, pour le tester rien de plus simple, tapez la commande :
ifconfig
et repérez l’adresse IP réseau de votre Raspberry pi (très certainement une adresse commençant par 192.168.*.*)
Tapez cette adresse depuis un autre ordinateur banché sur le même réseaux local et TADDAA!! It works !
nb : si vous n’avez pas d’autres pc sur le réseau, passez en mode graphique sur votre Raspberry PI.
startx
Puis ouvrez le navigateur installé par défaut et tapez l’adresse suivante :
http://127.0.0.1
Notez qu’a partir de maintenant, toutes les pages situées dans le dossier /var/www de votre Raspberry PI seront accessibles via l’adresse réseau tapée (uniquement depuis votre réseau) ou via l’adresse WAN (votre adresse extérieure) une fois que vous aurez débloqué le port 80 sur votre box/routeur pour l’adresse réseau du Raspberry.
Pour plus d’information sur apache, MySQL et PHP je vous invite a lire la doc d’ubuntu : http://doc.ubuntu-fr.org/lamp nous ne traiterons pas plus en détail de cette partie étant donné qu’il ne s’agit pas de quelque chose de spécifique au Raspberry PI (libre a vous de m’envoyer vos questions par mail ou par commentaires pour ceux qui ne connaissent pas).
Je vous conseille également l’installation du célèbre paquet phpMyAdmin, script php permettant de gérer facilement votre base de données MySQL depuis l’adresse http://votre.ip/phpmyadmin :
sudo apt-get install phpmyadmin
(Le login par défaut est root et le mot de passe est celui que vous avec renseigné lorsque vous avez installé MySQL)
Dans le prochain mini tuto sur le Raspberry PI, nous parlerons boitier pour les riches, et boitiers pour les pauvres (amen) puis dans le suivant nous explorerons (si dieu le veux) la dimension domotique de cet engin a travers la découverte des ports GPIO (enfin si d’ici la je gère un peu plus en électronique, n’oubliez pas que je découvre avec vous
)
Ca y est ! Amazon m’a envoyé mes câbles !! Entrons maintenant dans le vif du sujet : l’installation et la configuration du raspberry PI
3 Os possibles à installer
Nous allons commencer par installer sur la carte SD (16 go pour moi, 8 go minimum conseillés) le système d’exploitation qui n’est autre qu’une distribution linux.
En gros trois distributions possibles : Debian squeeze, ARM Arch linux ou Raspian
Visiblement Debian squeeze est le plus simple a prendre en main, malheureusement c’est également le moins optimisé pour le raspberry, donc beaucoup de pertes de perfs, on peux rayer celui la .
Ca nous laisse deux Os auxquels je ne connais rien, donc a choisir, autant prendre celui qui a été “spécialement” conçu pour le raspberry j’ai nommé raspian.
Je télécharge donc raspian “wheezy” ici : http://www.raspberrypi.org/downloads
Pour l’installer sur la carte SD, j’utilise le programme utilitaire Win32DiskImager disponible ici : http://www.softpedia.com/get/CD-DVD-Tools/Data-CD-DVD-Burning/Win32-Disk-Imager.shtml
J’exécute Win32DiskImager qui me demande le chemin vers l’image de raspian (.img) ainsi que le lecteur sur lequel je veut l’installer (donc ma carte sd précédemment entrée dans le port SD de mon portable)
Un clic sur “write” puis sur “yes” (car un message bien flippant me disant que je pourrais perdre ou corrompre mes données de carte SD est apparus (je m’inquiète pas trop parce que quand même, il faut bien avouer que ladite carte est vierge)).
Au bout de quelques secondes (qui vont vous sembler une éternité si vous êtes aussi fébriles que moi) l’os est déployé sur la carte.
1 carte SSD à plugger
J’enlève donc la carte SD de mon pc pour la brancher directement sur la prise prévue a cet effet située sous le raspberry.
Je peux maintenant passer au branchement de mes câbles pour alimenter la bête !!
5 câbles à brancher
Dans le sens des aiguilles d’une montre (et en partant du câble le plus haut) nous devons brancher :
Une fois le bousin branché et alimenté, une inquiétante lumière rouge s’allume sur le raspberry puis une jaune, puis deux vertes, et la magie opère…
…ou pas !!
En effet chez moi aucun signal vidéo n’est émis.
Après quelques recherches, cela viendrait de l’os qui se serait mal installé sur la carte, j’ai donc réinstallé raspian et ça fonctionne.
…Et j’ai eu la chance d’obtenir une console de ce type sur mon écran :

(source image : http://www.benji1000.net )
1 identifiant en qwerty à taper
Login : pi
Mot de passe : rqspberry (car votre clavier est en anglais a ce moment précis)
ça y est, vous êtes logué sur votre magnifique serveur et pouvez m’envoyer quelques petites commentaires narquois pour me rendre jaloux ^^
Nb: Sur les dernnières versions, raspian nous mâche le travail en nous auto-loggant et en nous proposant plein de petites options avec un joli écran de configuration bleu de la mort.
Pas très à l’aise avec la ligne de commande? Tapez startx pour lancer l’interface graphique.

(source image : http://www.benji1000.net )
C’est quand même vachement plus sympa non ? Dans le prochain tuto, nous verrons comment installer les packages nécessaires pour transformer le raspberry en serveur web.
";s:7:"dateiso";s:15:"20120727_214610";}s:15:"20120720_195009";a:7:{s:5:"title";s:42:"Raspberry PI ~ 02 : Exploration technique";s:4:"link";s:30:"http://blog.idleman.fr/?p=1474";s:4:"guid";s:30:"http://blog.idleman.fr/?p=1474";s:7:"pubDate";s:31:"Fri, 20 Jul 2012 17:50:09 +0000";s:11:"description";s:368:" Ce soir, après une journée de dur labeur, j’ai eu « comme un pressentiment » au moment de rejoindre le numéro 204 du petit immeuble de Gradignan que j’habite… Il y avait comme… de la magie dans l’air ! Papilles et narines … Continuer la lecture ";s:7:"content";s:11424:"Ce soir, après une journée de dur labeur, j’ai eu « comme un pressentiment » au moment de rejoindre le numéro 204 du petit immeuble de Gradignan que j’habite…
Il y avait comme… de la magie dans l’air ! Papilles et narines palpitantes, lobes grands ouverts (oui, les miens s’ouvrent…), je me suis rué vers ma boite aux lettres pour y trouver le tant attendu colis de la Farnell compagny contenant le Raspberry PI de type B que j’avais commandé.
Enfin !! Après plusieurs mois d’attente, de pré commandes, de mails plus ou moins encourageants de la part de farnell, mon précieux m’a été procuré.
Avant d’aller plus loin et pour les retardataires, le Raspberry est, pour faire court, un ordinateur de la taille d’une carte de crédit, coutant environ 30€ et pouvant faire tourner une distribution de linux, plus d’infos sur mon précédent article.
Nous allons orienter cet article comme un tuto/découverte (en effet je n’y connais pour le moment rien du tout à cette étrange et fabuleuse machine), je commencerais donc par rediriger ceux qui souhaiterais commander cette merveille à l’adresse suivante : http://downloads.element14.com/raspberryPi1.html?isRedirect=true
Armez vous de patience, bien que vous puissiez maintenant commander directement (au lieu de passer par l’étape pré commande), ça risque d’être quand même long.
D’ici quelques semaines mois vous devriez recevoir un paquet informe de ce genre dans votre boite :
Si vous avez commandé chez farnell et que vous avez coché les bonnes cases, vous aurez le contenu suivant :
Au milieu, le certificat de conformité de l’appareil, en haut un Tshirt raspberry PI offert gracieusement par farnell (d’ou l’importance de cocher les bonnes cases) et à gauche une toute petite boite (qu’on pourrait presque omettre tant elle est insignifiante) contenant le magique appareil !
Je suis dans un jour de grâce, tenez vous bien mesdames,devant vos yeux ébahis et sans la moindre pudeur, vous est dévoilé mon gros engin (j’ai toujours rêvé de dire ça sur mon blog) :
Veuillez pardonner la gueule de reblochon mou : un gros manque de sommeil et une tentative d’expression “frimer à l’américaine” qui ont mal tournés
.
Mais vous noterez le port du magnifique t-shirt (qui je l’espère fait oublier le reste) tellement beaux (et rose) que je compte l’offrir à ma chérie (qui n’aura certainement pas la moindre idée de sa signification ni de sa provenance et c’est pas plus mal).
Voyons un peu ce que contient la ptite boite, après moultes déballages :
Oaaaaw une carte électronique avec plein de bitoniaux, des prises partout et … pas de câble associé arrrgghh… bon, je m’y attendais, les câbles (et la mémoire) sont à acheter à part, donc je fais un petit tour sur amazone et j’achète les éléments suivants :
Je m’en tire pour 52 € afin d’acheter un câble Ethernet pour relier l’engin au net, une carte SD qui fera office de mémoire morte sur la machine, un câble hdmi/VGA(DVI, c’est plus sûr) permettant de connecter mes écrans au raspberry et un switch USB histoire de pouvoir brancher simultanément souris, clavier etc… (bien que le raspberry semble disposer de deux ports par défaut au lieu de l’unique port USB que j’attendais).
Je devrais également acheter un câble micro USB (à 3€) pour me servir d’alim (attention, le câble dvras être alimenté en 5V pour fonctionner avec le raspberry), mais il me semble que j’en ai déjà un qui traîne (c’est sensiblement les même que pour nos smartphones).
Bon, 30€ de raspberry + 52€ de fourniture = 82€ dans la vue, ça fait un peu cher mais je me dis que les fournitures peuvent être utilisé pour autre chose dans tous les cas (jme rassure ^^) et que je ne devrait rien acheter de plus (a part peut être ces boîtiers stylé à 30€ si je craque).
En attendant mes fournitures, faisons un peu le tour de l’engin en lui même :
Une face comportant un simple port HDMI, c’est donc pour la vidéo, et c’est donc la que je brancherais mon câble HDMI/VGA fraichement commandé et je relierais l’autre bout à mon écran (jusqu’ici, ça m’a l’air simple), rien d’autre à signaler de ce côté, tournons un peu la carte…
Sur cette autre face, nous avons de gauche a droite : une entrée jack pour l’audio (personnellement je ne compte pas utiliser le raspberry comme centre multimédia donc aucun intérêt pour moi), un port jaunâtre que je ne connais pas mais qui est visiblement un port vidéo analogique, donc utile uniquement si vous souhaitez relier le raspberry à votre vielle TV cathodique (useless) et une série de broches GPIO…
Gnié? Gépéyo quoi?
Les broches GPIO sont des ports d’entrée/sortie très utilisés dans le monde des microcontrôleurs, ils vous serviront ici uniquement si vous êtes un peu calé en électronique et que vous souhaitez raccorder le raspberry pi par exemple a une lumière ou a un interrupteur (peut être très intéressant si vous voulez faire de la domotique à pas cher dans votre maison).
Voir une petite vidéo ici : http://www.raspberrypi.org/archives/1417
Si vous n’avez rien compris à cette histoire de broches, ce n’est pas bien grave vous pourrez quand même profiter de votre raspberry en toute impunité, passons donc à la suite.
De gauche à droite : un port Ethernet, c’est donc la que je brancherais le câble Ethernet que j’ai commandé afin de procurer le net au raspberry PI, l’autre bout du câble sera bien entendu branché à ma Freebox. Et enfin… deux magnifique port USB, ou je vais m’empresser de brancher mon switch USB histoire d’avoir 4 ports espacés au lieu de 2 (ben oui clavier+souris+clé wifi+ disque USB éventuel =4
).
La face restante comporte un port micro Usb qui servira à alimenter le raspberry (via le câble micro USB que je n’ai d’ailleurs pas acheté parce que je dois en avoir une vingtaine).
Enfin dernière petite chose : Sous la carte se trouve un petit compartiment pour placer la fameuse carte SD que nous avons commandé (8 Go minimum recommandés).
Je pense n’avoir rien oublié à part peux être le connecteur CSI (qui semble être utilisé dans le milieu de la vidéo) et le connecteur DSI (qui visiblement permet de brancher un touch screen si besoin est) concernant ces deux derniers élément je n’y connais strictement rien, je m’excuse donc d’avance auprès des puristes si je dis des conneries faites le moi savoir
.
Dans un prochain post et d’ici à ce que je reçoive mes fournitures amazones, nous verront comment brancher et installer la distribution linux adéquate (Raspbian “wheezy” , conçue spécifiquement pour raspberry ou la distribution Arch Linux ARM qui fonctionne aussi) sur la carte SD.
« Stay tuned » comme on dis (comment ça se dit plus?)
";s:7:"dateiso";s:15:"20120720_195009";}s:15:"20120711_202932";a:7:{s:5:"title";s:42:"AirDroid : pour les handicapés du tactile";s:4:"link";s:30:"http://blog.idleman.fr/?p=1447";s:4:"guid";s:30:"http://blog.idleman.fr/?p=1447";s:7:"pubDate";s:31:"Wed, 11 Jul 2012 18:29:32 +0000";s:11:"description";s:333:" Je peux bien vous le confier : je vois régulièrement un groupe de parole pour les tactilos handicapés de mon acabit qui sont strictement incapables de taper un sms ou de taper le moindre bout de texte sans déclarer … Continuer la lecture ";s:7:"content";s:3788:"
Je peux bien vous le confier : je vois régulièrement un groupe de parole pour les tactilos handicapés de mon acabit qui sont strictement incapables de taper un sms ou de taper le moindre bout de texte sans déclarer une grosse certaine angoisse et l’envie de m’enfuir à toutes jambes devant la corvée.
“Il y a une application pour tout” disait l’autre, je me suis donc mis en quête de quelque chose de peinard pouvant me permettre de manier mon SmartPhone comme un pro…depuis mon pc ![]()
Et que ne vous ai je pas encore dégoté comme perle !!
Comme les screenshots qui suivent parlent d’eux même, je ne vais pas m’étendre sur la beauté, la finition et les possibilités de l’application en question, sachez simplement qu’AirDroid est :
Vous pouvez, avec cette petite perle, utiliser les fonctions suivantes de votre androphone depuis un navigateur:
Ecran principal
Gestion SMS et contacts
Gestion des photos
Utilisation des SMS en mode Tchat
Franchement à essayer, un beau jayjay aux développeurs/entreprise du bijoux
";s:7:"dateiso";s:15:"20120711_202932";}s:15:"20120708_125457";a:7:{s:5:"title";s:48:"Tutoriel #1 : Surfer anonymement et gratuitement";s:4:"link";s:30:"http://blog.idleman.fr/?p=1405";s:4:"guid";s:30:"http://blog.idleman.fr/?p=1405";s:7:"pubDate";s:31:"Sun, 08 Jul 2012 10:54:57 +0000";s:11:"description";s:360:" Je me suis rendu compte récemment que je n’avait encore jamais fait de tutoriel sur ce blog. J’ai donc décidé de me rattraper aujourd’hui en vous donnant quelques astuces pour surfer sur le net de manière totalement anonyme. Evidemment … Continuer la lecture ";s:7:"content";s:13199:"
Je me suis rendu compte récemment que je n’avait encore jamais fait de tutoriel sur ce blog.
J’ai donc décidé de me rattraper aujourd’hui en vous donnant quelques astuces pour surfer sur le net de manière totalement anonyme.
Evidemment ce genre de sujet à déjà été traité 1000 fois sur d’autres blogs, mais un petit rappel ne fait pas de mal et j’ose croire que certains de mes lecteurs pourraient être intéressés par quelque chose d’un peu vulgarisé/simplifié.
Je ne traite ici que d’une manière (la plus sure à mon humble avis) de cacher changer votre adresse IP (et donc de vous rendre anonyme).
En effet il existe de nombreuses voies pour arriver au même résultat :
Explication rapide du principe du VPN
Quand vous vous connectez de manière traditionnelle à internet ça donne ça :
Quand vous passez par un serveur VPN ça donne plutôt ça :
Vous l’aurez compris, le serveur VPN se comporte simplement comme un relais, l’avantage étant que, pour la pluparts, les serveurs VN ne conservent aucune trace de votre passage et vous transmettent les infos qu’ils auront récupéré via leurs IP et non la vôtre.
Ainsi votre fournisseur d’accès (free, orange, Numéricâble …) et tous les gens qui font pression dessus (l’état, les ayants droits, et tous les autres guignols du même acabit) savent que vous vous connectez à un VPN (ce qui n’est pas illégale en sois) mais ne savent rien de plus : ni l’endroit ou vous vous rendez sur le net, ni aucune données échangée entre vous et ledit site.
Vous voyez l’intérêt? Cool ! Voyons maintenant comment utiliser un VPN gratuitement !
La plupart des serveurs VPN ne sont pas des enfants de cœurs, ils n’ont aucun avantage à prendre des risques pour vous (biens qu’ils soient basés à l’étranger ou la règlementation du web est moins castratrice), ils vous proposent donc leurs services pour la modique somme de 5€/mois minimum.
Bien que ça ne soit pas abusif, on ne devrais pas avoir à payer pour garantir son anonymat (et par conséquent, conserver sa liberté d’expression).
Fort heureusement il existe quelques VPN gratuits et performants et notamment Freedom-IP.
Nous allons donc nous inscrire à freedom IP, télécharger le logiciel permettant de faire le lien entre votre pc et le serveur VPN (freedom IP) et configurer ce dernier
.
1. Inscription a freedom-IP :
Inscrivez vous ici : https://freedom-ip.com/#inscription.php
Vous allez d’abord passer par un petit questionnaire bidon qu’il faudra prendre soin de remplir avec le plus grand sérieux comme dans l’exemple ci dessous :
nb : Si vous ne parvenez pas à vous inscrire, vous pouvez passer par Arethusa au lieu de freedom-ip, plus limité mais pas besoin d’inscription/validation (le compte et les fichiers config ici : http://bb.arethusa.su/viewtopic.php?id=81) vous pouvez ensuite suivre ce tuto pour la suite.
Puis cliquez sur “Je n’ai pas de compte sur le forum” et remplissez le champ 1 avec une adresse email valide et le champ 2 avec les chiffres compris dans l’image précèdent le champ:
Puis cliquez sur “envoyer ma candidature”.
Vous recevrez ensuite la suite des instruction par email si votre compte est validé
.
nb : Freedom IP est très long à envoyer les mails, soyez patients
nb2 : Il peut arriver que les inscriptions soit temporairement fermées pour cause de trop gros trafique, dans ce cas, demandez a un utilisateur de freedom ip de vous parrainer (je peux vous parrainer mais en nombre limité).
2. Récupération du programme et des configurations de votre compte
Une fois inscrit, connectez vous au site en allant sur la rubrique “mon compte” avec les identifiants qui vous auront été donné par mail, vous arrivez alors sur cette page :
Cliquez sur “Fichiers de configuration” cela téléchargera sur votre pc une archive ZIP comprenant le programme de connexion à Freedom-IP (nommé OPEN VPN) et les fichiers de configurations permettant de lier open VPN à freedom IP (car ce logiciel peut être utilisé pour se connecter à d’autre serveurs VPN que freedom IP):
3. Installation
Double cliquez sur l’exécutable openvpn-2.*.*_install_freedom-ip.exe et installez le programme sur votre disque dur principal puis allez dans le dossier ou se trouve le programme puis dans le sous dossier “Config” et copiez y tous les autres fichiers qui se trouvaient dans l’archive :
Votre programme est maintenant correctement installé et fin prêt à être utilisé !
4.Utilisation
Dans le répertoire du programme, cliquez sur le dossier “bin” puis sur l’exécutable “openvpn-gui-*.*.*.exe”
Une petite icône assez moche s’affiche alors dans votre barre de tâches (deux pc rouge avec une petite planète) :
L’icône est rouge parce que vous n’êtes pas encore connecté à freedom-ip, faites un clic droit sur l’icône, puis choisissez au hasard l’un des serveurs de freedom ip et cliquez sur “Connect” :
Une fenêtre s’affiche alors pour vous demander votre login et mot de passe freedom-ip, remplissez ces champs avec vos identifiants puis cliquez sur ok.
Si vous avez une icône qui ressemble à celui ci dessous c’est que vous êtes bien connecté :
Vous avez maintenant l’IP du serveur que vous avez choisis dans la liste
et vous êtes de ce fait, complètement anonyme, enjoy
!
Si vous souhaitez vérifier que le changement d’IP s’opère bien, allez voir sur des sites comme: http://www.mon-ip.com/ en mode déconnecté à freedom-ip puis en mode connecté pour voir la différence.
Chez moi ça donne ça :
En mode déconnecté :
(j’ai masqué volontairement certaines zones pour des raisons de sécurité, sachez simplement qu’il s’agit de ma véritable adresse IP ainsi que de toutes mes véritables infos)
En mode connecté :
Bonne journée ![]()
Salut bande de troublions !! Vous en avez d’la chance !! A l’heure où Kevina termine sa thèse sur les lolcats, à l’heure où l’algorithme parfait du super papa refait surface, vous êtes peinards, chez vous devant votre café en train de savourer cette 17 em édition du bordel de l’info !
Demain soir je pars en vacance pour une semaine en montagne avec ma mie (je sais, osef), et je me met en mode Into the wild : pas de pc, pas de portable, même pas de montre (et ça vas faire plaisir), ne vous étonnez donc pas si je ne réponds plus nul part
(si je craque, ya un cyber café a 130 Km, merci google map !)
Salut à tous !!
Entre deux lignes de développement DropCenter et de Leed, je me consacre au gestionnaire de snippet CodeZ dont je vous ai parlé lors de mon précédent post sur CodeX.
Comme vous pouvez le voir, le logiciel bureautique ci dessous est bien avancé
Cependant je n’ai malheureusement pas beaucoup de temps à consacrer au logiciel et je cherche activement des développeurs sympa pour m’aider dans ma tâche.
Pour le logiciel, je cherche des gens s’y connaissant en C++ (notamment en Qt ça serait le top) ainsi que des pros de la “regex” pour améliorer la coloration syntaxique pour le moment pas jojo.
De même un site web est prévu pour donner un aspect communautaire au logiciel afin de pouvoir partager vos snippets de manière simple et gratuite.
Je cherche donc également des gens pour m’intégrer et me développer cette partie, ce qui signifie des connaissances au choix :
Si vous êtes intéressés, contactez moi sur les commentaires ou par mail.
Bien à vous.
";s:7:"dateiso";s:15:"20120626_145532";}s:15:"20120622_060001";a:7:{s:5:"title";s:50:"Codex, un gestionnaire de snippet simple et léger";s:4:"link";s:30:"http://blog.idleman.fr/?p=1367";s:4:"guid";s:30:"http://blog.idleman.fr/?p=1367";s:7:"pubDate";s:31:"Fri, 22 Jun 2012 04:00:01 +0000";s:11:"description";s:365:"Les “snippet” sont des petit bouts de codes “standards” illustrant des fonctions couramment utilisées comme lire et écrire dans un fichier ou récupérer une adresse ip, lister les champs d’une base de données etc… Si vous êtes un peu … Continuer la lecture ";s:7:"content";s:4042:"Les “snippet” sont des petit bouts de codes “standards” illustrant des fonctions couramment utilisées comme lire et écrire dans un fichier ou récupérer une adresse ip, lister les champs d’une base de données etc…
Si vous êtes un peu tête en l’air comme moi, il vous arrivera souvent de rechercher le même snippet pour la nième fois sur le net… c’est agaçant pas vrai?
Codex est petit gestionnaire “portable” (mais pas cross system compatible) répondant a ce problème.
Développé par Uri Fridman, ce petit exécutable vous permettra de stocker, visualiser, trier et retrouver rapidement un bout de code par langages et par libellé.
A noter que le programme stocke tout dans des fichiers à plat (en .json) ce qui en fait un programme réactif et qui ne nécessite aucune bdd ou lourd pré requis du système.
De plus, le programme comprend une coloration syntaxique sur de nombreux langages, celle ci se met en place en fonction du nom de la rubrique.
Malheureusement, ce programme n’est plus distribué sur le net, son auteur semble en effet décidé à ne plus entendre parler du logiciel qu’il s’agisse dévolution ou de support donc inutile de le contacter à ce sujet.
D’ailleurs lorsque je l’ai contacté pour lui poser quelques questions et lui demander les sources je me suis pris un succin:
“Sorry. That program or any other windows programs are no longer supported or being actively developed.”
M’est avis que ce garçon à été traumatisé par le support bénévole (et je le comprends)
Bien que n’ayant pas distribué les sources, Uri m’a tous de même autorisé à diffuser le binaire du petit programme que la bloggeuse Akaiken m’avait auparavant généreusement envoyé (et fait découvrir par la même occasion).
je me permet donc de vous partager le lien de téléchargement de la ressource ici : http://idleman.fr/ressources/EXE/Codex.rar
NB : Uri fridman ne souhaite recevoir aucune demande de support ou d’évolution concernant ce programme, il a été très clair à ce sujet, merci de respecter son choix concernant l’abandon du logiciel.
Personnellement le concept me plais bien, si j’ai une minute, je redévelopperais quelque chose sur le même concept avec les plus-values suivante :
Pour tout vous avouer, j’ai déjà codé la base :
L’avantage étant qu’il fonctionne avec exactement la même base que Codex (fichiers json) et qu’il est développé avec Qt (donc compilable sur les trois Os principaux).
Il reste évidemment beaucoup à faire (design, coloration syntaxique sur les principaux langages, synchro des snippet avec internet…), j’ignore si j’aurais le temps de m’y consacrer d’avantage, ça n’est pas une priorité.
";s:7:"dateiso";s:15:"20120622_060001";}}