Hadopi

Rholala, le drame… J’ai reçu un email de la Haute Autorité pour la Diffusion des Oeuvres et la Protection des droits sur Internet.
Je réalise à l’instant qu’il manque quelques mots dans l’acronyme. Mais il faut bien reconnaître que HAPLDDOELPDDSI, ça aurait été moins facile à mémoriser…

Bref, « Votre connexion a été utilisée pour mettre à disposition, sans autorisation, des oeuvres protégées par le droit d’auteur, avec le(s) logiciel(s)/protocole(s) transmission. »

[Yeux de chaton ON]

chat-potte
Attention! Cette image provient du film Shrek, des studios Dreamworks. Je ne veux pas d’ennuis! Je suis innocent! Aaaaah!

Transmission, je ne l’utilise que pour télécharger mes distributions Linux.

Donc il n’y a plus qu’une possibilité: un virus!! quelqu’un a dû pirater mon ordinateur et l’exploiter pour télécharger illégalement des fichiers à mon insu! Et moi qui croyais que sous Linux on était peinard… Enfer! Damnation!

Je ne sais pas si j’arriverai à me protéger durablement des pirates, alors j’ai préféré prendre les devants et me protéger de l’Autorité en souscrivant à un service de VPN (Private Internet Access pour ne pas le nommer) pour 39$ par an (Merci Patrick pour en avoir vanté les mérites). Au moins, si ces salauds de pirates continuent à exploiter mon PC pour télécharger des fichiers sous copyright, je serai au moins protégé de l’Autorité.
[Yeux de chaton OFF]

LOL

Mais c’était quand déjà ? (partie 2)

Salut à tous!

Allez, je mets les pieds dans le plat. Vous vous rappelez mon dernier article à l’arrière goût nostalgique? Non? Mais siiiii… Il est juste en dessous, là… J’expliquais que cet article avait pris le pas sur ce que je désirais réellement écrire ce jour-là. Hé bien voilà, depuis longtemps, je cherche des dates. C’est con hein, mais par exemple, « C’était quand la dernière fois que j’ai changé de caleçon? »

Pardon? Ah. On me fait signe en régie que cet exemple n’est pas génial. Disons plutôt « je fais le plein de ma voiture tous les combien? Et combien ça me coûte, en cumulé? »

Ou encore « c’était quand la dernière fois que j’ai eu mal au crâne? » Ça pourrait être intéressant de savoir si j’ai plus souvent mal à la tête le vendredi ou le samedi, par exemple. Ou plus l’hiver que l’été.

Alors j’ai attrapé mon plus beau clavier et j’ai développé une application web qui permet justement de tracer les événements de ma vie, qu’ils soient ponctuels ou récurrents (c’est surtout intéressant pour les récurrents), et dont je veux pouvoir retrouver les dates plus tard, voire établir des statistiques.

statistics-exampleJe peux aussi faire un rapprochement entre les répétitions du vendredi soir et le mal de crâne du samedi matin (bien que cette corrélation fût déjà établie…)

Et surtout, plus que tout: je saurai enfin tous les combien on change la pile de la pendule du salon! Non mais c’est vrai quoi, elle les bouffe ou bien?

Alors j’ai mis en ligne whenwas.it, et je l’utilise évidemment, puisqu’à la base je l’ai conçu selon mes besoins.

J’y note les cafés que je bois, les jours où j’achète des clopes, les matins où je me lève avec le mal de crâne, quand je fais le plein (et dans ce cas j’indique les montants pour pouvoir calculer automatiquement des cumuls), et pas mal d’autres événements récurrents.

Je me suis dit que ce genre d’application pourrait être utile à pas mal de monde, alors les inscriptions sont ouvertes.

L’interface est responsive, et construite à base d’agrumes avec le très agréable framework materializecss.

Mais qu’est-ce que que je raconte avec mes citrons… Voyez plutôt:

when-was-it-nico

Et si vous pensez que ça peut vous être utile, alors n’hésitez pas!

Tschüss!

C’était quand déjà?

 

Attention

Ceci est un message à caractère totalement nostalgique à base de flashbacks, dans lequel je fais un bilan de ce blog depuis sa création. Si je risque d'en ennuyer quelques uns, je m'en excuse par avance.
Moi, ça m'a fait du bien de l'écrire.
En tout cas c'est marrant, parce que ce post a complètement remplacé celui que je voulais écrire à l'origine. Mais il y a un lien, vous verrez.

Bref...

C’était le 18 mai 2011, bien sûr!

Ce jour-là, je postai mon premier article sur ce blog, c’est fou… 5 ans, 5 mois et 18 jours.

A l’époque, on venait d’emménager et je modélisais ma salle de bain dans Maya. Motivé le gars! J’ai donc commencé à parler de 3D, et pis je suis passé sous linux.

Après ça, j’ai acheté ma première Arduino Uno (qui fut un déclencheur), et j’ai commencé à bricoler un peu d’électronique. Ecran LCD, baromètre (qui a un succès fou auprès des lecteurs!). Ensuite, un petit retour à la programmation avec quelques projets web, et arriva le jour… Du montage de l’imprimante 3D.

Ouvrons une parenthèse:

Hé, d’ailleurs… je réalise à l’instant un truc, là: jusqu’alors, zéro commentaire, les gars(et peut-être les filles, qui sait) !

Zéro commentaire, c’est sympa hein… Non mais je vous jure…

Fin de la parenthèse.

Où en étais-je… Oui! Donc, je me suis lancé dans l’impression 3D en août 2013 (je m’aide hein, j’ai la liste des posts à côté).

A ce moment, j’ai touché deux cordes sensibles: la mienne et la vôtre. La mienne, parce que je me suis rendu compte que ça pouvait libérer, délivrer l’imagination, et on peut vraiment s’amuser très fort

Attention

Ici, l'auteur parle d'amusement. Bien entendu, son raisonnement est biaisé par le fait qu'il est un gros geek.

avec cette machine. Et la vôtre pour les mêmes raisons bien sûr!

Alors bon, faut avouer que les réglages ont été assez longs, puisque j’ai mis un bon mois à avoir un calibrage enfin correct (tout était dans l’accélération Z et dans la ventilation de la buse…). Tu plonges là dedans, tu découvres, et c’est vraiment passionnant.

Même topo.

Et du coup c’est un peu comme les tatouages, la chirurgie esthétique, l’héroïne ou les M&M’s: il t’en faut plus.

[Ah tiens au passage, j’ai un brouillon de tuto pour exploiter un module GPS EM406A avec une Arduino, ça intéresse quelqu’un?]

Il t’en faut plus disais-je alors tu te mets à fabriquer une fraiseuse CNC 3 axes, avec les pièces que tu as modélisées et imprimées. Très utile l’imprimante 3D!

Oh merde, Charlie hebdo… Putain.

[en fait je parcours ma liste de posts du plus ancien au plus récent]

Non content de la machine 3 axes (et c’est vrai qu’elle n’était pas précise), J’ai monté un CoreXY sur 2 axes pour jouer avec un laser. Ficelles et poulies, c’était bien fun et rapide!

Et la Shapeoko est arrivée, je me suis dit « Rhaaa ça c’est cool, une bonne machine robuste et préciiiiise! Enfin pouvoir sortir des trucs sans se faire chier! »

Bah tu parles! J’ai cru que je n’allais pas m’en sortir avec celle là et sa connexion USB qui sautait pendant l’usinage, c’était loin d’être top!

Tu parles. L'auteur fait genre "je plaisante", mais il s'est fait chier comme un rat mort pendant près de deux mois, à essayer de faire quelque chose de cette machine extrêmement frustrante. Au grand désespoir de sa femme qui l'entendait râler dans le garage sans trop savoir que faire.

Je salue au passage Jorge de Carbide3D, qui est un des ingénieurs électroniciens. Il a tout fait pour m’aider, il m’a même envoyé une nouvelle version de la carte de la Shapeoko, mais rien n’y a fait.

J’ai donc fait ma propre carte de contrôle, et ça a marché avec une astuce, mais ça a marché, merde! Du coup j’utilise toujours cette machine avec plaisir. Tout comme l’imprimante 3D d’ailleurs, qui me sert régulièrement à fabriquer des petites pièces.

Ah oui, après ça je me suis re-emballé avec mon laser et j’ai réécrit un programme qui permet de générer du G-Code pour graver des images. C’était cool ça.

Rhoooo et l’ESP8266 est arrivé (grâce à Sandrine de bloguelinux.ca), la folie du WiFi! C’était rigolo de faire ces adaptateurs pour le PC 🙂

Et un thermomètre connecté (à base de DHT22+ESP8266), dont les données sont accessibles ici. Comme ça Olivier, tu pourras voir à quel point ça caille dans ma maison l’hiver 😉 !

Alors j’en profite pour saluer la patience de ma femme, qui supporte tant bien que mal le fait que la maison soit un atelier… Merci ma poule 🙂

Publication de WP Login Door (au fait, vous avez essayé? il y a aujourd’hui plus de 60 utilisateurs actifs, c’est pas foufou mais ça fait plaiz)

Et enfin, nous en sommes là, novembre 2016.

Ah si, il y a un truc marrant, ce sont les statistiques de visite du site!

Il fallait quand même que j’en parle. Figurez-vous que vous êtes plus nombreux à arriver ici pendant l’hiver, que pendant l’été. Et vraiment, une belle sinusoïde, quoi:

selection_001

C’est pas fou une alternance pareille? Et le pire vous savez quoi? c’est que les deux sommets ont exactement la même hauteur. Certains y verraient certainement la main de dieu; perso j’y vois une courbe.

Allez, je ne vous embête pas plus, il est temps d’aller se coucher. Et j’ai un gros article à suivre…

Atténuer la lumière bleue sur les écrans

Salut tout le monde!

Je voulais partager avec vous trois outils pour trois plateformes, dont je ne peux plus me passer.
Leur finalité est la même: réchauffer (ajouter du jaune/rouge) la couleur de l’écran pour limiter l’émission de lumière bleue. La lumière bleue est connue notamment pour fatiguer les yeux avoir des effets sur la qualité du sommeil (http://www.lapresse.ca/vivre/sante/201412/02/01-4824576-la-lumiere-bleue-et-notre-sante.php)

J’utilise au quotidien trois programmes donc:

  • A la maison, sous Linux: redshift
  • Au bureau, sous Windows: f.lux
  • Sous Android, pour lire sur la tablette le soir: twilight
  • Sous iOS et OSX… Je plaisante.

Alors bien évidemment, pour faire de la retouche photo, c’est nul parce que les couleurs sont altérées; mais pour aller sur le net, lire ou développer, je peux vous garantir que c’est le top.

D’ailleurs, si vous voulez tester un de ces programmes, essayez-le un moment, puis désactivez-le pendant 30 secondes et vous sentirez bien la différence!

Surfaçage du plateau de la fraiseuse

Ce week-end, j’ai fait quelque chose que je voulais faire depuis longtemps: mettre à niveau le plateau de la machine.
Depuis le début, il présentait des variations de niveau, jusqu’à 0.6mm en plus ou en moins.

Alors pour graver des circuits imprimés ce n’est pas grave (paradoxalement) grâce à l’outil d’autoleveling de bCNC qui compense les variations de hauteur. Mais pour de la découpe standard de bois par exemple (dont la surface n’est pas conductrice, jusqu’à preuve du contraire), un coup il va rester de la matière en bas, ou alors la fraise va carrément attaquer le plateau de la machine…

Bref: pas bien!

J’ai trouvé sur ebay une fraise à surfacer de 21mm de diamètre, avec une queue de 6mm.

fraise-surfacage
Fraise à surfacer de 21mm
Fraise à surfacer de 21mm
Vue de dessous

Je crois que j’en avais parlé dans un précédent article, mais j’ai un problème avec les queues de 6mm: elles ne sont pas correctement serrées dans la pince de 1/4 de pouce (6.35mm). Jusqu’à présent j’étais contraint d’enrouler du papier alu autour pour compenser les 0.35mm et pouvoir serrer la fraise correctement… Pas génial comme truc.
Mais avec la défonceuse, une pince de 8mm était livrée, et j’ai trouvé sur ebay également un adaptateur 8mm->6mm.
C’est juste un cylindre de métal fendu qu’on enfile autour de la queue (de la fraise, bande de cochons!) avant de l’insérer dans la pince. Et ça marche du feu de dieu.

Enfin un élargisseur de queue qui marche!
Enfin un élargisseur de queue qui marche! (bon, ça la passe de 6mm à 8mm…)

J’ai utilisé l’outil d’autoleveling de bCNC pour mesurer les écarts de hauteur maximums, en déplaçant une chute de circuit imprimé sur la surface pendant le sondage. L’écart max étant de +-0.6mm, j’ai fraisé toute la surface à -1mm, et je me retrouve désormais avec une surface bien parallèle aux axes X et Y de la machine.

CQFD.

Une belle table bien plane!
Une belle table bien plane!

Interfaces de programmation pour ESP8266

La première question qu’on se pose quand on reçoit un ESP8266, c’est…

« Ah merde, mais comment je vais programmer ce machin? »

Il y a besoin de 4 fils : +, -, Rx et Tx, donc la première chose, c’est de se procurer un convertisseur USB-série. Le point crucial, c’est la tension de sortie de ce convertisseur. Elle doit être de 3.3v à la fois sur le Vcc ET sur le Tx. Le risque avec du 5V, c’est tout bêtement de griller l’ESP.

L'interface USB-série
L’interface USB-série. On peut voir en bas le sélecteur 5V-3.3V, et en haut le bouton reset.

L’ESP8266 01 a des broches au pas de 2.54mm, mais n’est pas utilisable dans une breadboard à cause de la position des broches. Donc soit on y va avec des fils et des connecteurs Dupont, soit un se fait un petit circuit imprimé pour connecter tout ça à l’adaptateur USB-série. Au début, j’utilisais la première méthode, mais j’ai finalement opté pour un petit circuit imprimé…

Vert jaune rouge... Rastaman!
Vert jaune rouge… Rastaman!

A gauche, il y a un emplacement pour un cavalier. Il sert à faire démarrer l’ESP8266 en mode programmation.

Oui, je n'avais que des connecteurs femelles à 8 contacts...
Oui, je n’avais que des connecteurs femelles à 8 contacts… C’est joli le scotch…
Et l'ensemble connecté sur le PC, prêt à être programmé!
Et l’ensemble connecté sur le PC, prêt à être programmé!

Le truc avec l’ESP8266, c’est qu’il se décline en je ne sais combien de versions différentes. J’ai aussi un 12e sous la main, et pour lui, l’emplacement des broches est un peu plus particulier, dans le sens où elles sont espacées de 2mm, et non de 2.54mm. Du coup j’ai dû commander des headers au pas de 2mm afin de faire un programmateur et adaptateur.

Il est juste glissé entre les headers pour faire le contact. Pas de soudures, c'est cool!
Il est juste glissé entre les headers pour faire le contact. Pas de soudures, c’est cool!

Après coup, je me dis que j’aurais pu placer les headers pour faire en sorte que l’ESP8266 soit carrément enfiché sur les headers. Mais là, ça va pile poil.

Il faut un cavalier en permanence entre la GPIO15 et la masse pour qu’il démarre (ça il faut le savoir…), et un autre en bas pour mettre la GPIO0 à la masse (ça c’est pour le mode programmation).

Côté connection au PC, c’est le même principe.

Un peu plus gros mais ça va bien :)
Un peu plus gros mais ça va bien 🙂

 

Mini tuto sur MakerCam

A la demande d’un lecteur (Nico, si tu nous entends…), je me suis penché sur makercam, un program de CAM en ligne (et en Flash) qui permet de générer des fichiers gcode à partir de dessins 2D réalisés directement sur le site, ou importés depuis un fichier SVG.

Note: j’ai fait ce test sous windows pour des raisons… de flash…

makercam vide
MakerCam à l’état naturel

Ok, donc nous allons, pour cette démo, réaliser la découpe de la lettre A.

Par pur souci de fainéantise, je vais dessiner un A de gros cochon à main levée directement dans makercam. Ne pas oublier de passer en centimètres en haut à droite si on veut travailler en centimètres!

makercam lettre A
Ah bah c’est du joli!

Avec l’outil flèche (en haut à gauche, le 2ème bouton), nous allons sélectionner notre A au complet. Il apparait en rouge.

Pour découper cette lettre, des opérations de contour (profile en anglais) suffisent. Disons que nous voulons faire une découpe sur 10mm de profondeur.

Allons ensemble, si vous le voulez bien, dans le menu CAM>Profile. Une boite de dialogue s’ouvre et nous pouvons entrer les paramètres de l’opération.

Disons que j’ai une fraise de 1/8 » (3.175mm)

Je rentre mes paramètres:

makercam profile
Création de l’opération de découpe

En cliquant sur OK, notre A se remplit de bleu. Il est temps de générer le parcours d’outil, en allant dans CAM>Calculate all!

makercam toolpath
Le parcours d’outil s’affiche en vert

Ok, donc là on est pas mal. Mais si on découpe ça tel quel à la machine, à la dernière passe, notre pièce risque de bouger et de prendre un coup de fraise dans les côtelettes. Pas top.

Nous devons donc éviter que la pièce soit totalement détachée, et pour ça nous allons mettre en place des tenons (tabs en anglais).

Avec notre forme toujours sélectionnée, allons dans CAM>add tabs to selected.

Un menu s’affiche, et on peut y définir l’espacement entre les tenons, ainsi que leur longueur et leur épaisseur.

Paramétrage des tenons
Paramétrage des tenons
makercam-tabs
Les tenons ont été générés, mais l’emplacement c’est pas toujours idéal

Il ne faut pas hésiter à les faire glisser à la souris pour qu’ils soient plus faciles à découper manuellement après l’usinage.

Une fois que tout est prêt, il n’y a plus qu’à recalculer les parcours d’outil (CAM>Calculate all), et on peut maintenant exporter le G-Code 🙂

CAM>Export GCode. On sélectionne tout, et on clique sur Export selected toolpaths. Il n’y a plus qu’à télécharger le fichier, qu’on peut éventuellement visualiser dans Chilipeppr:chilipeppr

Détail des tenons
Détail des tenons

Bon, j’avoue que je ne suis pas ultra fan de MakerCam, il y a quelques bugs et des comportements bizarres à l’utilisation; mais ça peut quand même bien dépanner si on n’a rien sous la main pour générer du G-Code.

En tout cas, c’est un énorme boulot qu’il faut saluer, et le programme est open source!

Fonctionnalités très appréciables dans l’IDE Arduino

Adieu l’équipe!

J’avais envie d’écrire un petit article pour saluer les évolutions de l’IDE Arduino.

Par rapports aux débuts, il y a eu à mes yeux deux avancées majeures: le gestionnaire de cartes et le gestionnaire de librairies.

Le gestionnaire de cartes

Aujourd’hui, l’IDE Arduino est utilisable avec de nombreux microcontrôleurs, par forcément Atmel.

Parmi les cartes notables que j’ai pu utiliser, il y a la Teensy 3.x et l’ESP8266.

Evidemment, le protocole d’upload des programmes vers l’un ou l’autre des microcontrôleurs est différent, et l’IDE doit savoir comment communiquer.

Pour cela, on a le menu Outils>Types de cartes, et on peut sélectionner la bonne. Mais quid des cartes non listées dans ce menu?

Et bien c’est pas compliqué.

Avant tout, il faut éventuellement ajouter la source du package pour obtenir le driver de cette carte, dans les préférences de l’IDE:

arduino-esp-preferences

Puis on va dans Outils>Types de cartes>Gestionnaire de cartes et nous avons à disposition une liste de cartes pour lesquelles on peut installer le driver, et paf! il n’y a plus qu’à la sélectionner dans le menu pour la programmer. Sympa! (bon, pas de pot, la Teensy n’apparait pas dans cette liste, il faut installer Teensyduino, un complément disponible sur le site du constructeur).
Donc plutôt pratique le gestionnaire de cartes.

arduino-esp-boards

Le gestionnaire de librairies

Alors là c’est encore mieux!
Tu as dégoté un nouveau composant et tu n’as pas le cœur à te farcir la datasheet pour comprendre comment discuter avec lui? Comme je te comprends…
Prenons à tout hasard le DHT22, qui est un capteur de température/humidité assez répandu.
Hé bien pas de prise de tête: on va dans Croquis>Inclure une bibliothèque>Gérer les bibliothèques. Une liste se charge, on tape DHT22 dans le filtre en haut, et paf! on tombe sur DHT sensor library by Adafruit.

arduino-dht22-librairy

Il n’y a plus qu’à cliquer sur le bouton installer, et on se trouve non seulement avec la librairie disponible, mais il y a aussi des exemples disponibles dans Fichier>Exemples! C’est-y pas beau, ça? Hein?

arduino-dht22-exemples

J’ai particulièrement apprécié cette fonctionnalité avec un capteur que j’avais acheté il y a quelque temps, et qui est une vraie merde à programmer: le MLX90614. C’est un thermomètre IR directionnel. Ça permet d’obtenir la température d’un objet sans contact. Mais alors pour communiquer avec, amuse toi si tu n’as que la datasheet sous la main… C’est un protocole I2C modifié, le truc bien relou.
Hé bien l’autre jour j’ai tapé MLX dans le champ de recherche du gestionnaire de librairies, et j’ai eu le plaisir de pouvoir utiliser le capteur hyper simplement. Merci à Adafruit d’avoir écrit cette classe…
Et d’ailleurs en regardant le code, c’est pas si long… Respect 🙂

Communiquer avec Adafruit IO en PHP

Salut tout le monde!

Voilà un moment que je n’ai rien posté, mais j’ai de bonnes raisons… Bricolage intensif sur l’ESP8266 (merci Sandrine de Bloguelinux) sur lequel je ferai très bientôt un gros billet 🙂

Bref, pour aujourd’hui, je vais vous parler de la plateforme Adafruit IO, qui est un superbe environnement pour stocker les données d’objets connectés.

La structure des données est simple et efficace: on crée des feeds, qui sont de simples listes de valeurs.

Chaque élément d’un feed a une valeur (une température par exemple), et éventuellement des coordonnées GPS.

Pour ma part, j’ai utilisé un capteur DHT22, et l’ESP8266 balance les données de température et d’humidité relative dans deux feeds.

Et avec les feeds, on peut (entre autres) afficher des courbes :

adafruit io graphique
Ça caille encore un peu dans le salon…

https://io.adafruit.com/toxnico

L’interaction avec AdaFruit IO pour envoyer ou lire les données se fait par une API REST; du coup je me suis dit qu’il serait intéressant d’avoir la possibilité, en PHP, de charger la dernière valeur de chaque feed pour l’afficher sur un site web par exemple.

Alors j’ai écrit cette petite librairie sous GPL v2 pour permettre à tout le monde de récupérer facilement ses données : https://github.com/toxnico/php-adafruitio

Vos retours et impressions sont les bienvenus!

A très bientôt pour une grosse aventure ESP8266 🙂