Fairphone 3 : soucis d’écran

Il y a une dizaine de jours, mon Fairphone 3 s’est mis à avoir un comportement bizarre, avec des symptômes pas toujours présents simultanément mais qui rendaient le téléphone pratiquement inutilisable :

  • Tactile qui ne répond plus
  • Délais de plusieurs secondes entre l’appui sur le bouton et la sortie de veille, avec au bout d’un moment plus du tout de sortie de veille apparente
  • Au reboot, pas d’affichage du bootscreen Fairphone (écriture blanche sur noir) mais apparition des « bulles » bleues plus tard dans le boot
  • Reboot en boucle dans aucun affichage (le téléphone envoyait un coup de vibreur toutes les 25-30 seconde)
  • Affichage d’un écran avec des pixels multicolores

Ce symptômes sont apparus brutalement sans raisons particulières.

Après une recherche, certains semblent dire que ce genre de symptômes puisse venir d’un mauvais contact entre l’écran et la carte mère. La solution : le nettoyage des contacts.

J’ai donc entrepris le démontage du téléphone, qui se fait littéralement en 10 minutes, la première fois. Et nettoyé les contacts de l’écran à l’alcool.A

Après remontage, tout fonctionne. Et depuis une semaine, plus aucun de ces symptômes. C’est un de soucis de ces téléphone démontables : la connexion des composants est moins robuste que des connexions soudées. Heureusement le démontage est aisé et la solution facile. Bref si vous avez ce genre de problème sur un Fairphone, profitez en : le démontage est sans impact sur la garantie.

Synology Photo Station : non chargement des photos (erreur « Failed to load data »)

J’ai a la maison un Synology qui me sert notamment à partager les photos sur le réseau local, avec Photo Station. Tout se passait bien jusqu’à peu, ou j’ai commencé à avoir des erreurs « Failed to load data » de plus en plus fréquentes, jusqu’à ce que je ne puisse plus rien charger. J’ai un peu galéré à trouver la solution, jusqu’à tomber sur ce site ! Il semble que la base de donnée soit mal configurée de base sur Photo Station, et finisse par être encombré de nombreuses données inutiles qui finissent par ralentir la base. La procédure est simplissime, je vous invite à le suivre sur le site lié ! En gros, il faut activer la fonction « Autovaccum » de PostgreSQL.

WordPress : erreur « Cannot modify header information » à la création d’articles ou de pages

Récemment, je me suis connecté à l’un de mes blogs pour ajouter un article, sans succès. J’obtenais en effet une erreur sur les pages d’administration d’ajout d’articles ou de pages, et ceci sur tous les blogs du réseau. L’erreur était la suivante :

Warning: Creating default object from empty value in /homepages/6/d310147084/htdocs/wp-admin/includes/post.php on line 732

Warning: Cannot modify header information - headers already sent by (output started at /homepages/6/d310147084/htdocs/wp-admin/includes/post.php:732) in /homepages/6/d310147084/htdocs/wp-admin/admin-header.php on line 9

L’erreur dans l’interface d’administration

En autres symptômes, je pouvais également noter la disparition de la possibilité de mettre à jour thèmes, plugins ou WordPress lui même. Je ne note rien de particulier par contre côté site public.

Je me met donc à chercher sur Internet la cause de cette erreur. Certains sites parlent d’espace en trop avant les balises <?php des pages concernées ou du fichier wp-config.php. Je n’ai rien touché, mais je regarde pas acquis de conscience dans les fichiers cités en erreur, sans rien constater d’anormal. Je décide de désactiver tous les thèmes et tous les plugins, puis carrément de les désinstaller, sans plus de succès de ce côté, l’erreur persiste. En me connectant a l’interface d’administration de mon hébergeur, côté gestion des base des données, je constat que la base qui héberge les blogs est largement pleine ! Elle affiche plus de 1200 Mo sur 1024 autorisés ! Connecté à PHP My Admin, je met la main sur la table fautive : l’une des tables de commentaires de l’un des blogs fait près de 750 Mo, et connecté sur le blog concerné, je constate qu’il a plus de 200 000 commentaires spam en attente de validation !

Je vide la table des commentaires, et magie, tout se remet à fonctionner ! Le problème était donc dû à la saturation de ma base de données. J’ai donc désactivé les commentaires sur ce blog sur lequel je n’en attend pas (sur les autres, j’ai un antispam, ce qui évite ce problème).

OpenSUSE Tumbleweed : lecteurs NFS qui ne se montent plus après mise à jour

Après une mise à jour de mon système, mes lecteurs réseaux NFS (montés via autoFS), ne se montaient plus. Il était également impossible de les monter via les autres biais. J’obtenais un message d’erreur de type :

mount.nfs: Protocol not supported

Il semblerait qu’un fichier de configuration n’ai pas été mis à jour lors de la mise à jour de mes outils NFS. J’ai trouvé la solution sur ce thread, je ne suis pas le seul à avoir eu ce soucis ! Apparemment, ce fichier de configuration est considéré comme un fichier de configuration utilisateur (quand bien même vous n’ayez JAMAIS édité ce fichier manuellement), et l’installateur créé un fichier de configuration suffixé .rpmnew, et c’est à vous d’effectuer la fusion !

Dans le cas d’un fichier de configuration que vous n’aviez pas touché, cela consiste à supprimer le fichier d’origine (ou plus sagement le renommer en .old dans un premier temps et à le nettoyer par la suite) et à renommer le nouveau fichier avec le nom du fichier de configuration d’origine. Dans mon cas :

sudo mv /etc/nsswitch.conf /etc/nsswitch.conf.old
sudo mv /etc/nsswitch.conf.rpmnew /etc/nsswitch.conf

Après un reboot, tout refonctionne, ouf !

Cette logique est vraiment chiante !!!

Vous pouvez vérifier si vous avez d’autres fichiers dans ce cas via la commande rpmconfigcheck.

Rollback avec btrfs sous OpenSuSE

J’ai ré-installé récemment ma machine sous OpenSuSE Tumbleweed (je souhaitais avoir des paquets plus récents dans les dépôts), et, à cette occasion, j’ai passé mon système de fichier système sous btrfs. Ce système de fichier offre un mécanisme de « snapshot », qui permet, d’enregistrer un état de tous les fichiers a un instant T, en vue de pouvoir restaurer cet état plus tard, si besoin. Cela peut par exemple servir si une mise à jour se passe mal et que le système devient instable ou inutilisable (c’est ce qui m’étais arrivé avec ma précédente installation d’OpenSuSE Leap).

OpenSuSE créé régulièrement et automatiquement des snapshot, notamment avant chaque mise à jour via YaST. Un script m’a fracassé aujourd’hui ma configuration KVM (virt-manager n’arrivait plus à se connecter à KVM). J’ai donc décider de tenter un rollback ! Je parvenais, via btrfs subvolume set-default snapshotId /, à rebooter sur un ancien snapshot, mais celui ci était en lecture seule, et la commande btrfs property set -ts @/path/to/snapshot ro false restait sans aucun effet !

Après quelques recherches, j’ai découvert que c’était encore plus simple sous OpenSuSE ! Il suffit de rebooter, et dans GRUB, de demander de démarrer sur un snapshot en read-only. Une fois démarré, on vérifie que ce qui nous interesse est revenu dans l’ordre, puis, si cela convient, on tape dans un terminal :

sudo snapper rollback

Et voila, reste à rebooter et le tour est joué, le FS est restauré dans l’état demandé via le GRUB et redevient en lecture-écriture !

Ouf !

Bref, avant de s’agacer, RTFM !

Remplacement de batterie onduleur APC Back UPS 700

J’ai acheté en avril 2015 un onduleur APC BackUPS 700, pour protéger le NAS qui héberge mes précieuses données.

Depuis quelques mois, la batterie donnait des signes de faiblesse : le NAS se mettait à bipper de façon continue avec le voyant qui clignotait : la notice indique batterie en fin de vie. Après quelques mois passés avec un reboot régulier du NAS quand il se mettait en erreur, il a fini par abdiquer de façon définitive, avec impossibilité de rallumer l’onduleur et les appareils connectés dessus.

Officiellement, ce NAS n’est pas prévu pour permettre le remplacement de la batterie par l’utilisateur. Dans la pratique, c’est faux ! Il suffit de retirer la façade avec les 2 vis accessibles dessous, et on accède à la batterie simplement branchée via des câbles à cosses.

APC BackUPS 700 ouvert

APC BackUPS 700 ouvert

Il suffit de sortir la batterie pour y lire la référence :

La batterie en fin de vie, référence GP1272 F2

La batterie en fin de vie, référence GP1272 F2

Un coup de Google permet de voir que cette référence est disponible pour une trentaine d’euros, voir parfois moins sur certains sites.

Le changement est trivial, il faut juste prendre garde de ne pas inverser les polarités (difficile de se tromper avec le code couleur…). Ne jetez pas votre veille onduleur qui peut repartir pour 3 ans environ moyen cette modique somme, vous éviterez ainsi d’aller rajouter un lourd onduleur sur les tas de déchets que nous produisons déjà tout au long de l’année !

J’ignore combien APC facture cette opération si on la leur demande en SAV comme le demande le manuel. Mais je suis prêt à mettre ma main à couper que le tarif est dissuasif, au prix d’un onduleur neuf si ce n’est plus… alors qu’il y a pour 30€ de pièces et 10 minutes (et encore…) de main d’oeuvre.

Il n’y a ensuite plus qu’à aller déposer la batterie usagée dans une déchetterie (en principe toutes celles qui acceptent les batteries auto devraient accepter cette petite batterie de même technologie).

Liseuse : l’horreur des DRM

Le père Noël nous a apporté dans sa hotte une liseuse Kindle (Amazon). J’ai fait le choix de cette marque car leur catalogue est sans conteste l’un des plus important !

La lecture est effectivement très reposante, infiniment plus que sur un écran, et j’apprécie aussi la légèreté et le fait que l’on ne soit pas embêté par le livre qui se referme tout seul… on peut vraiment lire dans toutes les positions sans se prendre le chou ! De même, on reprend toujours la lecture sur la dernière page, quoi qu’il arrive, plus besoin de courir après un marque pages !

Côté bouquins, le plus simple est effectivement de faire ses emplettes dans la boutique dans laquelle la liseuse a été achetée. Dans un tel cas, le livre est immédiatement disponible sur la tablette (si tant est qu’elle soit connectée à un réseau Wifi – ou 3G pour les modèles compatibles). Ça se corse si on souhaite s’approvisionner ailleurs (parcequ’un titre est introuvable sur la boutique d’origine de la liseuse par exemple), ou si on souhaite archiver ses eBook dans un format « standard » pour le cas ou on changerait un jour de crèmerie à l’occasion d’un renouvellement de liseuse par exemple. Dans mon cas, la médiathèque de ma commune met à disposition un certain nombre d’eBooks sur son site Web. Ils ont recours pour la diffusion aux services du logiciel Adobe Digital Edition. En théorie, une fois l’eBook téléchargé via Adobe Digital Edition, il suffit de brancher sa tablette, qui sera reconnue par le logiciel d’Adobe, ce qui permettra de charger l’eBook sur la tablette. Ça, c’est le théorie, j’ai essayé la manip, la Kindle n’est pas reconnue. Après vérification, la Kindle n’est pas compatible avec le logiciel d’Adobe (ouais, ils ont réussit à pondre un truc pas compatible avec le modèles de liseuses du leader mondial dans le domaine…). Bien sur, comme les eBook sont protégés et pas dans un format supporté par la tablette (ePub alors que la Kindle attend des .mobi ou des .aws), ça n’est même pas la peine de les copier directement à la main dans la liseuse.

Liseuse Kindle

Liseuse Kindle

Heureusement, il existe des logiciels capables de supprimer les DRM et d’effectuer la conversion pour les rendre compatibles avec a peu près n’importe quelle liseuse.

Supprimer les DRM des eBooks avec Calibre

J’ai toujours une préférence pour les logiciels libres, j’ai donc naturellement orienté mon choix vers Calibre et son plugin DeDRM. Il vous faudra les logiciels Adobe Digital Edition (ADE). Le plugin DeDRM suggère d’installer la version 2.0.1 (disponible ici), les versions 3.0 et suivantes étant susceptibles d’utiliser des DRM que DeDRM ne sais pas encore faire sauter. Malheureusement, il se peut que certains fournisseurs requièrent une version plus récente, c’est le cas de certains eBooks de la médiathèque de ma commune, étrangement pas de tous… Pour ces eBooks récalcitrants, voir plus bas ! Il semble que certaines personnes parviennent à lancer ADE sous Linux via Wine. Je n’y suis pas parvenu, que cela soit pour ADE 2.0.1 ou ADE 4.5.7. J’ai donc installé ADE et Kindle for PC sous Windows via mon instance virtualisée sous KVM de l’OS de Microsoft. Il faudra vous créer un Adobe ID. Et ensuite ajouter vos livres dans ADE.

La procédure :

  • Installez Calibre
  • Téléchargez le plugin DeDRM
  • Dézippez l’archive de DeDRM, vous trouverez dedans un dossier DeDRM_calibre_plugin contenant un fichier DeDRM_plugin.zip, c’est ce fichier qu’il faut fournir à Calibre
  • Installez le plugin dans Calibre. Sous Calibre :
    • Menu Préférence
    • Dans la section avancé, cliquez sur Plugin
    • Cliquez sur charger une extension à partir d’un fichier
    • Sélectionnez le fichier DeDRM_plugin.zip, validez puis relancer Calibre pour activer le nouveau plugin
    • En principe, DeDRM importe automatiquement vos clés ADE et Kindle For PC. Vérifiez en retournant dans Préférences/Avancé/Plugin, sous la section extensions Type de fichier, vous devez trouver DrDRM. Double cliquez dessus. Il doit y avoir une ligne default_key pour Adobe Digital Edition ebooks et Kindle For Mac/PC ebooks. Profitez en pour ajouter le numéro de série de votre Kindle sous eInk Kindle ebools (cela permettra de déchiffrer les ebooks que vous auriez récupéré directement dans la liseuse en la connectant à votre PC par USB. Ce numéro de série se trouve sur la boite de la Kindle, ou dans ses Paramètres sous Options de l’appareil -> Infos sur l’appareil). Je vous conseil d’exporter les clés (vous permettra de déchiffrer vos ebooks cas d’import ultérieur sur une autre machine par exemple).

      Configuration de DeDRM

      Configuration de DeDRM

  • Vous êtes prêts ! Les ebooks sont DéDRMisés à leur import. Il faut donc réimporter les ebooks avec DRM que vous auriez déjà importé. Les ebooks ADE se trouvent sous Documents/My Digital Editions, et sous Documents/My Kindle Content pour Kindle.

Lors du premier lancement de Calibre, il vous sera proposé configurer vos comptes et notamment pour la Kindle, l’adresse mail privée vers laquelle envoyer vos eBook déDRMisés pour qu’ils soient importés dans la tablette. Je vous conseil de le faire, c’est très pratique ensuite, car Calibre fera tout le nécessaire (conversion si nécessaire puis envoi sur l’adresse adéquate). J’ai personnellement créé un compte mail sur GMX, l’intérêt est que ce service autorise des pièces-jointes de 50 Mo (contre 25 Mo seulement pour GMail), ce qui est pratique pour les gros eBook (et évitera d’encombrer votre boite mail principale).

Procédure complémentaire pour les DRM récalcitrants

On l’a vu, DeDRM ne déchiffre pas (encore) certains DRM des versions ultérieures à la version 2.0.1 d’ADE. J’ai dégoté un petit logiciel s’appelant ePUBee DRM Removal. Vous pouvez le télécharger ici, installez le, et lancez le. L’utilisation est simplissime, puisqu’il détecte tout seul les eBooks, puis les déchiffre et les met dans C/Users/nomDUtilisateur/AppData/Romaing/decrypt. Il vous suffit d’importer ces fichiers dans Calibre, et le tour est joué !

Conclusion

Si l’usage dans la boutique d’origine de la liseuse est très simple (2 clics pour acheter un eBook), c’est vite assez galère, à cause des mesures de protection, dès qu’on sort de la boutique d’origine. Heureusement, des outils assez simples et faciles à installer permettent de rendre lisible les eBook sur à peu près n’importe quelle liseuse. La principale difficulté est de trouver le bon outil, la bonne procédure, et éventuellement de configurer les outils.

Pour archives, je remet les outils ici :

Notre deuxième voiture : un vélo cargo biporteur

Depuis novembre 2016, je me rend au boulot tous les jours à vélo, sans exceptions, qu’il pleuve, qu’il neige, qu’il vente (le second est rare à Bordeaux, mais le premier et le troisième sont réguliers) ! Conséquence immédiate : notre seconde voiture ne roulait presque plus ! Largement moins de 100 km par mois, voir même moins de 50 ! Conserver cette seconde voiture pour rouler si peu est un non sens économique (coûts fixes + dépréciation temporelle, déjà que de base la possession automobile n’a rien de très rationnel, alors la…).

Depuis plusieurs mois, l’idée de la remplacer par un vélo capable de transporter nos 2 enfants et/ou des charges encombrantes avait donc fait son chemin dans nos esprits…

Début mai, je me rend donc chez un velociste spécialisé notamment dans les velos-cargo à Bordeaux. Nos critères sont les suivants :

  • Plutôt biporteur, pour la maniabilité aussi bonne qu’un vélo classique et la stabilité en virage (contrairement au triporteur, qui lui est stable à l’arrêt, mais pas stable en virage)
  • Avec assistance électrique, oui parce qu’un tel vélo vide, c’est déjà lourd, mais alors chargé dans une côte, le petit coup de main de la fée électricité est plus que bienvenu !

Le choix dans les modèles dispo à l’essai se réduisait donc à l’Urban Arrow et au Douze Cycle (les 2 autres marques principales étant bakfiets et Bullitt, mais non disponibles à l’essai avec assistance), ça tombait bien puisque c’était ces deux marques que j’avais plus spécialement repéré.

De base j’avais une préférence pour le Douze, une marque française, avec des lignes que je trouve très esthétique ! La marque met en avant 2 innovations essentielles : le cadre en 2 parties, qui permet de se faire un cadre « à la carte » et de faciliter le transport du vélo (3 cadres arrière : traditionnel, ouvert, et grand taille. 3 taille de cadre avant, avec plateforme de 40, 60 ou 80 cm de longueur), et le système de direction par câble, qui permettrait une meilleure maniabilité.

En essai comparatif, force est de constater que le Douze marque des points. Je le trouve en effet plus facile à conduire, et son rayon de braquage est clairement meilleur que celui de l’Urban Arrow, en ville, ça a son intérêt, en circulation, mais aussi dans les manœuvres de stationnements ! On est très vite à l’aise sur le Douze ! Au bout de quelques minutes je suis suffisamment en confiance pour démarrer en danseuse ! C’est un vélo cargo magique qui se conduit aussi bien et aussi facilement qu’un vélo normal. C’est un vélo normal ! Le vendeur le sait et a poussé le vice jusqu’à me proposer de le tester avec mon fils dans la caisse sans même l’essayer à vide (j’ai décliné et j’ai d’abord fait un tour à vide !).

Le Douze Cycle en version blanche, extra long, avec sa canopy. Source : site Douze-Cycle.com

Le Douze Cycle en version blanche, extra long, avec sa canopy. Source : site Douze-Cycle.com

Notre choix se porte sur le Douze, en version extra-long (caisse de 80 cm de long pour 60 de large), histoire de pouvoir y caser nos 2 enfants plus un peu de barda ! Nous y retournons quelques temps plus tard avec ma compagne, histoire de valider le choix. Elle l’essaye, est moins à l’aise que moi au début, mais elle valide. Dans la foulée, nous mettons donc notre deuxième voiture en vente… vendue (très bien) en 15 jours. Avec les 600€ de subvention de Bordeaux Métropole, auxquels Mérignac, ou nous résidons, ajoute 100€, nous n’avons besoin d’abonder que de quelques centaines d’euros prises dans nos économies pour boucler le budget, le vélo sera donc « amorti » en quelques mois, si on considère l’économie d’assurance, de carburant, et d’entretien issu de la suppression de la seconde voiture ! Début juillet, je retourne au magasin passer commande. Configuration retenue, un Douze blanc Extra Long, avec sa canopy, motorisation pédalier, et transmission par courroie (les chaines souffrent sur ce type de vélo avec motorisation pédalier, du au poids du vélo et du couple important fourni. Cela nécessite donc un changement de chaîne tous les 2000 km, voir moins. La courroie, elle, est inusable, ou quasiment).

Viens ensuite l’attente… Trop longue (en fait 3 semaines… C’est pas énorme en fait). Il est disponible au magasin le 21 juillet, je m’y rend, accompagné de mon fils, aussi impatient que moi ! Nous prenons possession de notre nouveau véhicule urbain. Je vais devoir me lancer dans la circulation bordelaise avec l’engin ! Petit détour par le miroir d’eau, à 2 tours de pédales du magasin. Nous nous lançons ensuite dans la dizaine de km qui nous sépare de la maison. Malgré le petit dénivelé, et le poids du vélo, cela se fait sans difficultés et à bon rythme, merci l’assistance. Je suis très vite à l’aise sur le vélo, après quelques hésitations sur les premiers km.

Le week-end suivant, nous avons pic-nic. Nous décidons d’y aller à vélo. C’est à l’autre bout de Bordeaux. Au programme 15 bornes aller, 15 bornes retour, avec une bonne grosse côte sur la fin du trajet (un petit mur de 60 m de dénivelé sur 1,8 km, soit presque 3,5%). Avec les 2 enfants dans la caisse et le pic-nic sur le porte bagage, je fait l’essentiel du trajet sans assistance, je joue le jeu en ballade quand je suis accompagné de ma chérie, qui elle est sur un vélo sans assistance. J’ai mis un peu d’assistance dans la montée, car il faut bien avouer que la masse du vélo chargé devient vraiment pénalisante dans cette situation. Au final, 30 km A/R qui sont passés très facilement, et de boucler 150 km sur la première semaine d’utilisation !

Après seulement 3 mois d’utilisation, nous avons franchi la barre des 1000 km parcourus avec le cargo. Cela démontre que ce vélo est vraiment venu remplacer une voiture. Nous ne nous servons plus de la voiture pour les courses, ni pour un simple trajet de quelques km avec les 2 enfants. Les enfants sont au sec et à l’abri du vent et du froid dans tous les cas (d’ailleurs, notre aîné adore nous dire que nous allons être mouillé et pas lui !).

Rapidement, j’en suis arrivé à accrocher le système follow-me derrière le cargo ! L’ensemble fait environ 3,60 m de long, mais reste tout à fait pilotable (et fait aussi les cuisses) !

Follow-Me attelé au cargo biporteur Douze Cycle

Follow-Me attelé au cargo biporteur Douze Cycle

Ainsi attelé, il est très facile d’avoir suffisamment de place dans la caisse pour y loger ma fille et les courses pour 4 pour la semaine (en général, dans cette configuration, je prend les sacoches, ça permet de charger sans jouer à Tetris).

Les freins de base (hydrauliques à disque 160 mm Tektro) sont peut-être un chouilla limite quand on roule très très chargé (proche de la limite de poids soit entre 160 et 200 kg de charge). Une bonne anticipation devient alors nécessaire pour rouler en sécurité.

Si j’ai personnellement trouvé la prise en main très simple, cela fut un peu plus long pour ma compagne pour se trouver à l’aise avec ce vélo. Elle à fini par y arriver au bout de quelques temps. Je pense que la technique est de bien utiliser les freins pour se stabiliser au démarrage (au début, après, on démarre sans y penser). Il faut aussi ne pas chercher à savoir où passe la roue avant, et oublier qu’elle est 1 mètre 20 devant ! Je pense que la canopy aide à cela, du fait qu’elle cache la roue (au moins pour les cyclistes de moins d’1,75 m). Se dire que c’est un vélo normal et faire comme tel ! Après l’avoir fait essayer à au moins 5 ou 6 personnes (avec une grande diversité de pratique cyclistes), toutes on réussit à démarrer dessus immédiatement et rapidement prendre des virages relativement serrés.

Dans les options utiles, j’ai pris le porte bagages, au cas ou. Je pensait que ça serait peut-être superflu, mais finalement c’est très utile pour laisser de la place dans la caisse aux enfants.

J’ai également découvert avec ce vélo le système de transmission NuVinci. C’est un moyeu vitesse à variation continue : on a plus de « crans » de vitesse comme sur les transmissions classiques. La poignée tourne en continu (comme un accélérateur de moto, mais sans ressort de rappel), et le rapport devient progressivement plus dur. C’est très agréable comme système, car on n’hésite plus entre 2 rapports, on est toujours sur sa cadence de pédalage optimale (pour moi entre 85 et 95 RPM sur du plat, jusqu’à 105/110 en montée), et bien sur comme toit moyeu vitesse, on peut changer à l’arrêt.

Un avantage que je n’avais pas anticipé de ce type de vélo : on est beaucoup moins mouillé quand il pleut ! La caisse protège évidement un peu de la pluie qui arrive en face, mais surtout, la roue avant loin devant évite de prendre des gerbes de flotte lorsque la chaussée est mouillée !

Rendez vous dans quelques mois pour un second bilan !

Code Colorer avec PHP7

J’ai récemment migré mon hébergement vers PHP 7. J’ai ensuite constaté que mes blogs sur lesquels étaient actif le plugin code colorer ne fonctionnaient plus. Malheureusement, ce plugin ne semble plus maintenu, et il ne faut donc pas compter sur une hypothétique mise à jour pour corriger le problème. Heureusement, certains proposent la solution. Je la reprend ici pour archives.

PHP Warning: preg_replace(): The /e modifier is no longer supported, use preg_replace_callback instead in [...]/wp-content/plugins/codecolorer/codecolorer-core.php on line 50

Dans le fichier wp-content/plugins/codecolorer/codecolorer-core.php, trouvez les lignes suivantes (vers la ligne 50) :

/** Search content for code tags and replace it */
function BeforeHighlightCodeBlock($content) {
$content = preg_replace('#(\s*)\[cc([^\s\]_]*(?:_[^\s\]]*)?)([^\]]*)\](.*?)\[/cc\2\](\s*)#sie', '$this-&gt;PerformHighlightCodeBlock(\'\\4\', \'\\3\', $content, \'\\2\', \'\\1\', \'\\5\');', $content);
$content = preg_replace('
#(\s*)\&lt;code(.*?)\&gt;(.*?)\(\s*)#sie', '$this-&gt;PerformHighlightCodeBlock(\'\\3\', \'\\2\', $content, \'\', \'\\1\', \'\\4\');', $content);

return $content;
}

Et remplacer par :

/** Search content for code tags and replace it */
function BeforeHighlightCodeBlock($content) {
$content = preg_replace_callback('#(\s*)\[cc([^\s\]_]*(?:_[^\s\]]*)?)([^\]]*)\](.*?)\[/cc\2\](\s*)#si', function($matches){
return $this-&gt;PerformHighlightCodeBlock($matches[4], $matches[3], $matches[2], $matches[1], $matches[5]);
}, $content);
$content = preg_replace_callback('#(\s*)\&lt;code(.*?)\&gt;(.*?)\(\s*)#si', function($matches){
return $this-&gt;PerformHighlightCodeBlock($matches[3], $matches[2], '', $matches[1], $matches[4]);
}, $content);

return $content;
}

Convertisseur DC-DC 12V -> 0.75-5.5V 16A

Je dispose d’un gonfleur destiné à gonfler des matelas pneumatiques de chez Décathlon (ce modèle). Il s’agit d’une chinoiserie extrêmement mal conçue, car il est équipé d’une batterie NiMh, mais sans aucun circuit de gestion de charge, ni aucun circuit de décharge. Résultat, au bout de quelques utilisation, la batterie est fichue, car elle a été déchargée trop profondément, puis rechargée d’une façon incorrecte (pas de circuit de détection de fin de charge → la batterie finie surchargée, ce qui l’use). Vous trouverez des éléments sur la théorie de charge des batteries NiMh ici.

Bref, fort de ce constat, j’ai décidé de virer la batterie est de faire fonctionner ce gonfleur avec une alimentation externe. J’ai donc modifié le gonfleur pour faire sortir des fils d’alimentation que je voulais brancher sur mon alim de labo 5A. Il s’avère que ce gonfleur consomme en réalité bien plus, et mon alimentation se mettait en protection courant constant, et me limitait à environ 1,6V/5,1A, alors que le gonfleur fonctionne sous 3,6V. Un rapide calcul avec la loi d’ohm montre que le chargeur consommerait dans les 12A à sa tension nominale :

  U = RI \\  R = \frac{U}{I} = \frac{1,6}{5,1} \approx 0,31 \Omega

La résistance exposée par le gonfleur vaut donc 0,31 Ω, soit alimenté sous 3.6V :

  U = RI \\  I = \frac{U}{R} = \frac{3,6}{0,31} \approx 11.5A

Le prix des alimentations de laboratoire 10A ou plus devient assez vite excessif à mon goût (surtout vu l’usage envisagé). J’ai donc eu l’idée de me construire un convertisseur qui prendrait en entrée une tension de 10 à 15V sous 5A maximum et me donnerait à la place une tension de 3.6V sous une quinzaine d’ampères.

J’ai décidé de partir sur un convertisseur DC-DC (dit buck converter) du commerce, et de « concevoir » le boitier et les commandes qui vont autour. J’ai retenu ce modèle de chez Murata, capable de sortir une tension séléctable entre 0.75 et 5.5V, sous 16A. Quitte à faire un boitier, autant que celui-ci soit polyvalent, et donc puisse me permettre de sortir l’ensemble de la gamme de tension autorisée par le convertisseur.

Le convertisseur OKX10

Le convertisseur

La tension en sortie du convertisseur est réglable par un jeu de résistances. Le boitier sera donc équipé d’un bouton ON/OFF, d’un potentiomètre de réglage, d’un bouton permettant de choisir le « calibre » (limitation du range à 3.6V pour mon gonfleur ou range complet jusqu’à 5.5V), d’un bouton permettant d’avoir la tension minimale du convertisseur (0.75V, mon potentiomètre de 100 kΩ me limitant à environ 0.85V). Le convertisseur étant capable de compenser la chute de tension dans les câbles, j’ai également ajouté un bouton qui me permet de faire soit la compensation en mesurant la tension aux bornes du boitier, soit la compensation en utilisation un retour de la tension venant de l’extérieur.

Le schéma final du montage ressemble donc à ça :

Montage convertisseur CC-CC Murata non isolé, régulé, sérioe OKX

Montage convertisseur CC-CC Murata non isolé, régulé, série OKX

Je pense que le schéma parle de lui-même.

Les condensateurs de faible valeur (22, 10 et 1 µF) sont montés conformément à la recommandation de la datasheet du convertisseur. Le condensateur 1000 µF a été monté ensuite car mon alimentation 5A ne parvenait pas à alimenter suffisamment le convertisseur durant la montée en régime du moteur : elle se mettait en protection courant constant, en faisant chuter la tension, ce qui faisait s’éteindre le convertisseur (appel de courant à la montée en régime du moteur). Cela arrivait quand je montait la tension en sortie vers 3.2V. Avec ce condensateur, j’arriver à faire monter progressivement la tension de sortie à 3.6V sans que mon alimentation se mette en protection (enfin, elle s’y met brièvement lors de ma montée en régime du moteur, mais le condensateur fait sont travail pendant ce temps et le convertisseur reste allumé. Il est important que le régulateur ne s’arrête pas, car il met une dizaines de ms pour redémarrer).

La résistance R1 vise à empêcher de descendre en dessous de 1.21 kΩ, ce qui évite de risquer de faire monter la tension du régulateur au delà de son maximum spécifié : 5.5V. L’interrupteur 0.75VSwitch vise à mettre une résistance « infinie » afin d’avoir la tension minimale disponible. Enfin la résistance de 1.47 kΩ court-circuitable permet de mettre une résistance totale minimale de 2.68 kΩ, et donc de limiter la tension maximale à 3.6V. J’ai personnellement utilisé pour cette fonction deux résistances en série de 470 et 1000 Ω que j’avais sous le coude.

Pour le réglage de la tension, j’ai utilisé un potentiomètre logarithmique. Cela est imposé par la conception du régulateur, la fonction qui donne la résistance R à appliquer en fonction de la tension U à obtenir est en effet :

  R = \dfrac{10500}{U-0,7525 }-1000

Ce qui donne une courbe loin d’être linéaire :

Résistance à présenter au convertisseur en fonction de la tension voulue


Résistance à présenter au convertisseur en fonction de la tension voulue

Le branchement du potentiomètre est important. Celui-ci dispose de 3 broches. Initialement, je l’avais branché de sorte que la résistance maximale soit présentée lorsque le bouton est complètement à gauche, histoire d’avoir la tension basse sur le côté gauche de l’échelle. Malheureusement, le comportement logarithmique associé à la logique du convertisseur faisait que la tension résultant restait en dessous de 1V sur la quasi 90% de la course, puis passait brutalement sur les tensions supérieures sur les 10% restants… pas très utilisable. Je me suis résolu à brancher le potentiomètre sur l’autre broche, ma tension mini se trouve donc sur la droite du bouton, mais le potar est déjà bien plus utilisable (même si pas encore totalement linéaire comme je l’aurai souhaité).Je pense qu’un potar antilog aurait permi d’avoir le même comportement avec le bouton dans le « bon » sense. Ci dessous, la courbe de la tension en sortie en fonction de la position du curseur.

Tension résultante en fonction de la position du potentiomètre


Tension résultante en fonction de la position du potentiomètre

Il est possible de commuter du circuit de surveillance de tension interne à une mesure externe grâce au switch SenseInternal. Bon à savoir, en l’absence de retour de tension sur la broche sense, la sortie est limitée à la tension de consigne (elle ne part pas en butée et heureusement).

En interne, les câbles de puissance sont en 2.5 mm², les câblages de commande en 0.2 mm². Pour pouvoir repiquer aisément les câbles 2.5 mm² sur la plaque à bande, ceux-ci sont connectés via des borniers. Les pistes des broches de puissance sont renforcées avec une bonne épaisseur d’étain. Les broches de puissances qui ne peuvent pas être connectées entre elles par un pont d’étain (essentiellement les broches Output+ et Common) sont connectées entre elles par du câble 2.5 mm² branché côté composant via les borniers.

Le résultat final donne ceci :

Vue interne convertisseur DC-DC

Vue interne convertisseur DC-DC

Mise en boitier

Attention, les dimensions de la plaque à bandes sont légèrement supérieures aux dimensions internes du boitier (j’ai été étonné de ne pas trouver de boitier qui colle pile aux dimensionnions de la plaque à bande, qui semble pourtant présenter des dimensions plus ou moins standard). Il est donc nécessaire de raboter légèrement (environ un demi millimètre) 2 des côtés de la plaque. Pensez à le faire avant d’implanter les composants… Je l’ai fait pour ma part à la ponceuse dremel, l’inconvénient de cette technique étant qu’il est très difficile de faire des côtés bien droits…

La plaque à bandes est immobilisée dans le fond du boitier grâce à des morceaux de contreplaqué 5 mm d’épaisseur, eux-même fixés au boitier par les connecteurs.

Le perçage du boitier est assez galère, mine de rien, ce plastique de 3 mm d’épaisseur n’est pas simple à travailler. Il faut s’équiper d’une visseuse avec un bon couple. Le plus délicat à été le perçage du support de fusible, j’ai essayé à la dremel, mais vu l’épaisseur du plastique, la disque traverse difficilement. Bref, c’est système D sur ce point (et du coup, mon porte fusible n’est pas installé très horizontalement).

La façade est simplement faite en papier que j’ai ensuite plastifié et collé sur le boitier au double face, non sans avoir au préalable découpé aux endroits idoines avant l’installation.

Façade installée sur le boitier


Façade installée sur le boitier

J’ai utilisé un « gabarit » pour le perçage des trous des fiches bananes femelles sur le côté du boitier :

Gabarit de perçage


Gabarit de perçage

Le fichier « source » de la façade et de ce gabarit est disponible ici au format SVG Inkscape, si vous souhaitez le modifier.

La température dans le boitier est à surveiller. Le rendement du convertisseur est de l’ordre de 92% (datasheet, 12V@3.3V, avec 14 V en entrée), soit une dissipation thermique de 3 à 4W. J’ai mené un petit test, sur 8,5 minutes,  la température est passée de 23 à 40°C dans le boitier. A cette température, le « dérating » d’intensité est donné pour 14.5A. J’ai donc un peu de marge vis à vis de la surchauffe du convertisseur. Pour un usage prolongé à ces intensités où au delà de 14.5A, il faut prévoir au moins une aération du boitier, voir une ventilation active si on pousse le convertisseur dans ses retranchements.

Courbes de rendement et de derating sous 3.3V


Courbes de rendement et de derating sous 3.3V

A noter que plus la tension d’alimentation est faible, meilleur est le rendement. J’ai donc pour ma part opté pour une solution intermédiaire : démarrage du moteur avec en entrée une tension élevée (13.5V), puis abaissement de la tension d’entrée afin de profiter d’un meilleur rendement (et donc moins produire de chaleur dans le boitier). Avec mes 3 condensateurs de 1000 µF, j’arrive à descendre aux alentours de 10V en entrée.

Le boitier vu de côté

Le boitier vu de côté

Le boitier vu du dessus

Le boitier vu du dessus

Liste des composants

En lien chez Radiospares et Conrad car c’est chez eux que j’ai commandé… je n’ai pas d’actions chez eux 😉 ! D’ailleurs, vous constaterez que certains items sont liés chez les 2 vendeurs, pour que vous puissiez choisir le meilleur tarif ou le plus adapté à vos quantités (exemple les interrupteurs : 2 modèles non identiques chez les 2 vendeurs, par 10 chez RS, à l’unité chez Conrad).

Chez Conrad

Il vous faudra évidement des fusibles auto à placer sur le porte fusible. Si vous n’en avez pas, vous pouvez partir sur un kit de ce genre, bien pratique.

Je suppose que vous avez sous le coude du fil 2.5 mm² souple.

Pour brancher le moteur, j’ai opté pour des fiches bananes classiques (rouge, noir, vert).

RS n’expédie plus aux particuliers via son site officiel, il faut passer par leur site particulier. Les pièces sont au même tarif sur les 2 sites, mais affichés HT sur le site pro et TTC sur le site particuliers. Pour retrouver un composant sur le site particulier, il suffit de taper le numéro du composant dans la barre de recherche.

Le budget global en composants et boîtiers est d’environ 80€, modulé selon le matériel dont vous pouvez déjà disposer.

Essai

A l’essai, le système fait son petit effet : matelas 2 places gonflé en moins de 3 minutes. Je pense que le système est plus efficace que l’original avec sa batterie !

Merci au passage aux membres du forum Futura Science pour leurs judicieux conseils sur ce montage !

Booster DC

On l’a vu, pour améliorer le rendement du convertisseur, il faut le faire fonctionner à la tension d’entrée la plus basse possible. J’ai constaté que je pouvais abaisser ma tension d’entrée en rajoutant des capacités en entrée du boitier. Comme je ne savais pas quel serait l’impact de ces capacités, j’ai décidé de ne pas les mettre en interne du convertisseur, mais de les ajouter en externe. J’ai donc rajouté un petit boitier qui contient environ 8300 µF de condensateurs (5×1000 µF + 3300 µF).

En photo, ça donne ceci :

La face composant du booster

La face composant du booster

La face piste du booster

La face piste du booster

Avec ce boitier, je gagne 1 à 2V sur ma tension d’entrée avant que mon alimentation se mette en courant constant. Concrètement, cela me permet, une fois que le moteur à pris sa vitesse nominale, de descendre ma tension d’alimentation de 13V à un peu moins de 10V.

Il n’y a qu’un seul jeu de fiches bananes sur ce boitier : j’empile 2 fiches bananes sur chacune des prises femelle : un des câbles va vers l’alim, l’autre vers le convertisseur.

Le tout rentre tout pile dans le petit boitier !

Les composants sont pris chez Conrad :