Programmer les Ampoules Connectées en Python (Philips Hue)


Aujourd’hui, nous allons voir comment contrôler vos lumières à la maison avec du code. Si vous ne le savez pas, Philips Hue est une collection de lumière intelligente de chez Philips. Une application sur votre smartphone vous permet d’allumer et d’éteindre les lumières et de changer l’intensité ou de couleurs.
Mais en tant que bons bricoleurs, nous remplacerons cette application en codant la nôtre sur notre Raspberry Pi :).

Pour contrôler les lumières de la maison, des ampoules connectées comme celle vendues par Philips Hue sont nécessaires. Sur Raspberry Pi, le langage Python permet de se connecter à l’API et de gérer les lumières avec un script.

C’est ce que nous allons faire aujourd’hui !
Je vais commencer par présenter le produit, puis la préparation Raspberry Pi, et enfin nous verrons le code à utiliser pour contrôler vos lumières : des tests de base aux scénarios plus complexes.

À propos, si vous êtes novice sur Raspberry Pi et que vous souhaitez accélérer vos premiers pas (tout en vous amusant), n’hésitez pas à télécharger mon e-book « Maitrisez Raspberry Pi en 30 jours« . Il s’agit d’un défi de 30 jours au cours duquel vous apprendrez une nouvelle compétence chaque jour. Vous économiserez du temps et de l’argent et pourrez enfin apprécier cet appareil passionnant qu’est le Raspberry Pi. Je vous offre d’ailleurs 10% de remise aujourd’hui en utilisant ce lien !

Philips Hue

Philips

Philips est une entreprise néerlandaise bien connue.
C’est un leader dans de nombreux domaines, y compris les appareils électroménagers, la technologie et les produits de santé.

C’est une entreprise motivée par l’innovation. Elle a été la première à vendre des cassettes audios, CD et Blu-ray. Ils sont également des pionniers dans beaucoup d’autres produits, tels que la technologie Ambilight pour la télévision.
Mais les principaux produits qui nous intéressent aujourd’hui sont les lumières intelligentes qu’ils ont créées dans la collection Philips Hue.

Collection Philips Hue

La collection Philips Hue comprend toutes les lumières intelligentes de Philips.
C’est un concept comprenant des lumières, un pont et une application pour gérer les lumières.

  • Le pont est le routeur entre les lumières et votre application pour smartphone.
    Il a besoin d’accéder à votre réseau (RJ45), et si possible à une connexion Internet.
    La configuration est facile si vous utilisez un serveur DHCP sur votre réseau.
  • Les lumières se connectent automatiquement au pont (sans fil).
    Dès que vous les activez, elles sont disponibles sur l’application. Aucune configuration n’est nécessaire.
  • Et l’application Hue est disponible sur votre smartphone pour gérer tout cela.
    Vous pouvez allumer et éteindre les lumières, changer de couleur et créer des routines.

Et ce qu’ils ne vendent pas dans les annonces commerciales, c’est l’API.
Il y a une excellente API disponible sur le pont que vous pouvez utiliser pour faire ce que vous voulez. Et c’est ce que je vais vous montrer dans ce post.

Modèles

Si vous n’avez pas encore de packs Philips Hue à la maison, ou peut-être des lumières colorées, vous devez savoir qu’il existe plusieurs modèles et packs disponibles. De la lumière blanche on/off de base aux ampoules où vous pouvez changer la couleur, il y en a pour tous les gouts et besoins.

Voici quelques packs que je vous conseille :

Tous ces packs sont compatibles avec Alexa, et vous pouvez parfois même avoir un Echo Dot offert dans certains d’entre eux.
Pour les kits de démarrage, vous avez le choix du nombre d’ampoules que vous voulez.
J’ai les deux premiers packs à la maison depuis plus de cinq ans maintenant. Je suis très satisfait du produit !

Maîtrisez Raspberry Pi en 30 jours
10% de remise aujourd'hui !
Téléchargez le livre numérique.
Découvrez les secrets du Raspberry Pi à travers un challenge de 30 jours.

Préparation du Raspberry Pi et des ampoules

Avant de coder, vous devrez préparer deux ou trois choses.
Vérifions d’abord si tout est prêt.

Installation de Raspberry

La première chose à faire est de préparer votre Raspberry Pi :

  • Allumez votre Raspberry Pi et installez Raspberry Pi OS si nécessaire.
    Vous pouvez choisir n’importe quelle version, je vais faire le tutoriel avec la version Lite.
    Si vous avez besoin d’aide sur ce point, consultez mon article sur Comment installer Raspbian sur un Raspberry Pi.
  • Branchez-le sur le réseau (ou configurez le Wi-Fi), activez SSH.
  • Mettez à jour votre système :
    sudo apt update
    sudo apt upgrade
  • Choisissez un éditeur, installez-le si nécessaire.
    Sur la version Desktop, Thonny et le shell Python sont déjà installés.
    Sur la version Lite, nano ou vim suffiront.
    Vous pouvez également créer des scripts sur votre ordinateur et les transférer après sur le Raspberry Pi (avec WinSCP par exemple).
  • Installez PIP pour vous permettre de télécharger des bibliothèques plus tard :
    sudo apt install python-pip

C’est tout ce dont vous avez besoin pour le moment.

Pont Hue

Ensuite, vous devez trouver l’adresse IP du pont Hue.
Si vous avez accès à votre routeur Internet ou à votre serveur DHCP, vous pouvez le trouver dedans.

Si ce n’est pas le cas, le moyen le plus simple est d’analyser le réseau.
Sous Windows, vous pouvez utiliser Advanced IP Scanner pour cette étape.
Mais comme le Raspberry Pi est prêt, nous pouvons l’utiliser pour trouver le pont :

  • Installez nmap avec apt :
    sudo apt install nmap
  • Exécutez cette commande :
    nmap -sP 192.168.1.0/24
    Ajustez le réseau à votre propre environnement
  • Vous obtiendrez une liste de tous les appareils sur le réseau.
    Trouvez le pont Hue dedans :
  • Ça y est, vous avez trouvé l’adresse IP du pont (192.168.1.10 dans mon cas).

Notez cette adresse IP, nous l’utiliserons plus tard.

Vous pouvez jeter un œil à ce tutoriel si vous avez du mal avec ce point, il vous aidera à trouver l’adresse IP. C’est écrit pour trouver celle du Raspberry Pi, mais c’est le même principe.

Configurer les lumières

Assurez-vous que toutes vos lumières sont installées et configurées sur votre application pour smartphone.
Donnez à chacune un nom pour vous permettre de les trouver facilement.
Nous les utiliserons plus tard.

Installer la librairie

Une librairie sur Python est une collection de fonctions pour faciliter le codage.
Au lieu de créer tout le code nous-mêmes, nous allons utiliser une bibliothèque existante sur GitHub : phue.

Comme vous l’avez probablement déjà deviné, nous allons coder en Python et phue est une librairie Python pour vous aider à utiliser l’API Hue dans Python.
Si vous préférez un autre langage, cela devrait être similaire.
Je vais vous donner des liens de bibliothèque pour d’autres langages à la fin de l’article.

La dernière étape de préparation consiste donc à installer phue sur le Raspberry Pi.
Faites-le avec cette commande :
sudo pip install phue

Ça y est, nous sommes prêts à passer au codage.

Initiation au Raspberry Pi
10% de remise aujourd'hui !
Visionnez ma formation vidéo pour démarrer du bon pied.
Découvrez le Raspberry Pi, le matériel, ses logiciels particuliers et créez vos 5 premiers projets avec moi.

Découverte de l’API

Sur votre pont Hue, une API est disponible.
L’URL de base est http://<IP>/api/v1.

Je vais vous montrer les appels de base que vous pouvez faire, comment cela fonctionne, et après cela, nous allons créer les premiers scripts.

Introduction de l’API

Si vous débutez en programmation, API signifie Application Programming Interface (Interface de Programmation Applicative).
L’objectif principal est de permettre aux appareils ou aux logiciels de parler ensemble, avec le même langage.

Dans notre cas, le Raspberry Pi parlera au pont Hue, Python effectuant des requêtes HTTP pour obtenir ou modifier la configuration du système Hue.
Ainsi, l’API Hue nous donne des fonctions HTTP pour changer les choses pour les lumières (comme éteindre une lumière par exemple).

Cette API est généralement protégée par un nom d’utilisateur que nous devons créer avant d’effectuer des appels (vous avez peut-être vu l’erreur « unauthorized user » si vous avez essayé l’URL de base de l’API).

Testeur d’API

Pour tester l’API sans codage, Philips nous donne un outil pour créer des requêtes dans un formulaire.
Ce formulaire est disponible à l’adresse http://<IP>/debug/clip.html.

Dans ce formulaire, vous trouverez trois parties :

  • URL : L’URL que vous souhaitez appeler.
    Vous verrez plus tard que chaque fonction a une URL différente
  • Méthode : GET, PUT, POST ou DELETE.
    Ce sont différentes actions que vous pouvez effectuer lors de vos requêtes.
    Par exemple, GET permet de voir la configuration tandis que PUT sert à changer quelque chose.
  • Corps du message : Pour des fonctions spécifiques, vous devez ajouter plus de détails pour expliquer ce que vous souhaitez modifier dans la configuration Hue.
  • Réponse de commande : Lorsque vous envoyez des demandes, vous verrez la réponse du pont dans ce champ.
    Cela vous aidera à déboguer vos demandes.

Maintenant que vous comprenez ce que c’est, commençons par créer votre nom d’utilisateur.

Créer un utilisateur

Dans la plupart des demandes, nous avons besoin d’une authentification pour permettre l’accès à la configuration du pont Hue.
Pour créer votre jeton d’authentification, remplissez le formulaire comme suit :

  • URL : /api
  • Corps du message :
    {"devicetype":"TestApp#RaspberryPi"}
    Mettez ce que vous voulez pour le type d’appareil (nom de l’application ou appareil comme vous le souhaitez).
  • Appuyez ensuite sur le bouton bridge (pont).
  • Dans les 30s suivantes, appuyez sur le bouton POST pour exécuter la requête.

Cela devrait ressembler à ceci dans le formulaire :

Dans le champ « Command Response », vous pouvez voir le nom d’utilisateur (username) généré par le pont Hue.
Notez-le, nous l’utiliserons dans tous les prochains appels.

Liste des lumières

Avant de modifier la configuration dans une pièce spécifique, nous devons obtenir la liste de toutes les lumières installées.

Obtenir toutes les lumières

Pour obtenir une liste avec toutes les lumières disponibles, remplissez le formulaire avec ceci :

  • URL : /api/<username>/lights.
    Remplacez <username> par celui que vous avez obtenu à l’étape précédente (longue chaîne aléatoire).
  • Appuyez ensuite sur « GET » pour obtenir la réponse.

La réponse est au format JSON, ce qui n’est pas forcément facile à lire.
Vous devriez voir un paragraphe par lumière.
Chaque paragraphe commence par un nombre (1, 2, 3, …) et contient toutes les informations sur la lumière correspondante.

Essayez de trouver quel nombre correspond à quelle lumière.
Par exemple : 1=>Bedroom, 2=>LED strip, etc…
Plus tard, nous n’utiliserons que l’ID, vous devez donc récupérer ces informations.

Obtenir une seule lumière

Vous pouvez également obtenir des informations pour une seule lumière.
Ajoutez simplement l’ID de lumière à la fin de l’URL, comme ceci :

  • URL : /api/<username>/lights/1
  • Méthode GET.

De cette façon, vous vous assurez que la lumière 1 est celle que vous pensez.

Éteindre et allumer une lumière

Éteindre une lumière

Pour éteindre une lumière, utilisez ces paramètres dans le formulaire :

  • URL : /api/<username>/lights/2/state
  • Corps du message :
    {"on":false}
  • Cliquez ensuite sur PUT

Vous devriez voir la lumière s’éteindre sans utiliser l’application pour smartphone.

Allumer une lumière

Ensuite, pour la remettre, utilisez exactement le même paramètre.
Et remplacez false par true dans le corps du message.

Les tests sont terminés, passons à la partie intéressante : la programmation !

Premiers scripts

Dans cette partie, je vais vous montrer quelques scripts de base, pour apprendre à utiliser l’API via la bibliothèque phue.

Allumer et éteindre la lumière

Éteindre la lumière

Je vous donne le script directement et j’explique après :

  • Ouvrez votre éditeur Python (Thonny ou nano).
    nano switch.py
  • Collez ce code à l’intérieur :
    #!/usr/bin/python
    from phue import Bridge
    import logging

    logging.basicConfig()
    b = Bridge('192.168.1.10')

    #Uncomment this line to register the app (see below)
    #b.connect()

    #Change the light state
    b.set_light(1, 'on', False)


    Remplacez 192.168.1.10 par l’adresse IP de votre pont que vous avez précédemment notée.
    Dans la fonction set_light remplacez le premier paramètre par votre ID de lumière.
  • Enregistrez-le et exécutez-le.
    Dans Thonny, cliquez sur « Run » dans le menu supérieur.
    Ou dans un terminal, utilisez :
    python switch.py

La première fois, vous obtiendrez une erreur, car le script doit créer son propre nom d’utilisateur (comme nous l’avons fait dans le testeur d’API).
Pour cela, vous devez :

  • Décommentez la ligne b.connect().
  • Appuyez sur le bouton bridge (pont).
  • Exécutez le script.
  • Commentez la ligne.
  • Réexécutez le script.

La lumière correspondante doit s’éteindre.
Il vous suffit de le faire la première fois, pour tous les scripts suivants, le nom d’utilisateur existe déjà et la ligne b.connect() n’est pas nécessaire.

Allumer la lumière

Pour ne pas rester dans l’obscurité plus longtemps, nous allumerons à nouveau la lumière :).
Fondamentalement, vous n’avez qu’à changer une chose, remplacer false par true dans la fonction set_lights.

Voici le script que vous pouvez utiliser :
#!/usr/bin/python

from phue import Bridge
import logging
logging.basicConfig()

b = Bridge('192.168.1.10')
b.set_light(1, 'on', True)

N’oubliez pas de remplacer l’adresse IP du pont.

Modifier la couleur de la lumière

Vous avez besoin d’une lumière qui gère les couleurs pour suivre cette partie.
Si vous ne l’avez pas, passez à la section suivante.

Philips Hue utilise deux valeurs : x et y, pour définir la couleur.
Vous avez peut-être vu ces valeurs dans le testeur d’API

En résumé, x et y sont des nombres compris entre 0 et 1, et la modification de leurs valeurs changera la couleur de la lumière.
Vous pouvez trouver des informations ici sur le site officiel pour convertir les couleurs RVB en couleurs XY.

Pour notre test, nous allons simplement prendre des valeurs aléatoires et voir ce qui se passe.

Voici le code que vous pouvez utiliser pour modifier la couleur de la lumière :

#!/usr/bin/python

from phue import Bridge
import logging
import random
logging.basicConfig()

b = Bridge('192.168.1.10')

b.set_light(1, 'xy', [random.random(),random.random()])

C’est le même code qu’avant, mais au lieu de changer le paramètre « on« , nous jouons avec les valeurs « xy« .
La fonction aléatoire renvoie un nombre compris entre 0 et 1, parfait dans ce cas.

Vous utilisez la même fonction « set_light » pour modifier d’autres paramètres que vous avez vus dans le testeur d’API, comme la luminosité ou la saturation.

Mais maintenant que vous comprenez les bases, nous allons passer à des scénarios plus complexes.

Scénarios

Dans cette section, je vais vous donner une idée de ce que vous pouvez construire avec cette API, Python et votre Raspberry.
Il n’y a pas de limite à ce que vous pouvez faire ! Il suffit de trouver une idée et d’essayer de la coder.

Planification des lumières

Nous pouvons coder un planning pour l’éclairage de la maison.
Par exemple, pour les allumer juste avant de rentrer ou de vous réveiller.

Dans l’application pour smartphone, cela est disponible dans l’onglet « Routines ».
Mais nous allons le faire en Python ici (cela n’a aucun intérêt si vous définissez des horaires fixes, mais a du sens si les horaires dépendent d’une autre information que votre script récupère).

Voir les routines actuelles

L’URL de l’API de base pour les routines est : /api/<username>/schedules.
Vous pouvez appeler cette URL avec la méthode GET pour afficher vos routines existantes dans le testeur d’API.

Vous obtiendrez un JSON avec toutes les routines, et pour chacune d’elles la configuration que vous avez effectuée.

Vous pouvez également les voir de manière plus intuitive sur votre téléphone.
C’est peut-être le moyen le plus simple de vérifier si les routines créées avec le script sont correctes ou non.

Créer une routine

Pour créer une routine, vous devez publier des données sur la même URL.
Voici un exemple :

#!/usr/bin/python

from phue import Bridge
import logging
logging.basicConfig()

b = Bridge('192.168.1.10')

data = {'on': True, 'transitiontime': 600}

b.create_schedule('Wake up', '2019-05-01T07:00:00', 1, data, 'Wake Me Up' )

Dans ce script, nous demandons à l’API de créer une routine appelée « Wake Me Up ».
Cette routine allumera la lumière avec l’ID 1 à la date spécifiée.

Vous devriez maintenant voir cette routine sur votre smartphone (Routines > From other applications).
Ou vous pouvez vérifier à nouveau avec le testeur d’API.

Cela ne sert à rien de faire cela si vous avez l’application sur votre smartphone.
Mais vous pouvez inclure ce morceau de code dans un programme plus grand.

Si vous avez des horaires avec des heures de réveil différentes qui changent chaque semaine, il sera difficile de créer ces horaires avec votre téléphone.
Mais dans votre code Python, vous pouvez importer un fichier CSV avec l’heure de réveil pour chaque jour, ou même vous connecter à une page Web pour mettre à jour l’heure de réveil pour demain.
Vous créez le code une fois et n’avez rien à faire après cela.

Juste une idée … passons au suivant :).

Jouer avec les couleurs

Nous avons vu précédemment comment définir la couleur de la lumière si votre ampoule peut gérer cela.
Avec la puissance de Python, vous pouvez créer une animation indisponible dans l’application pour smartphone.
Par exemple, nous pourrions changer la couleur automatiquement et progressivement chaque minute.

Je vais commencer par quelque chose de facile mais pas le plus joli.
Et puis nous verrons un code plus complexe pour changer la couleur étape par étape.

Premier essai

Dans un paragraphe précédent, j’ai écrit que la couleur des ampoules Hue est définie par deux valeurs : x et y.
Afin de changer la couleur progressivement, vous pouvez augmenter cette valeur bit par bit. Par exemple, en commençant à 0/0 et en augmentant une valeur de 0,01 chaque minute.

Essayons :

#!/usr/bin/python
from phue import Bridge
from time import sleep
import logging

logging.basicConfig()

b = Bridge('192.168.1.10')

x=0
y=0
while True:
   x = x+0.01
   if x>1 :
     x=0
   print(x)
   b.set_light(3, 'xy', [x,y])
   sleep(1)

  • J’importe sleep à partir de la bibliothèque time pour attendre une seconde entre chaque changement (vous pouvez définir un autre temps d’attente, mais pour l’essai, une seconde est ok).
  • Ensuite, je définis mes deux valeurs : x et y, initialisées à 0.
  • Pour que la lumière change de couleur pour toujours, je dois créer une boucle infinie (while True).
  • J’incrémente la valeur x de 0,01 chaque seconde et je m’assure qu’elle reste comprise entre 0 et 1.
  • J’affiche la valeur dans la sortie pour surveiller si tout se passe bien.
  • Enfin, j’ai réglé la lumière sur les valeurs x et y actuelles (set_light),et j’attends une seconde (sleep).

Exécutez le script et voyez ce qui se passe.
Vous devriez voir votre ampoule ou votre bande commencer par une lumière bleue, puis passer du violet au rose, et enfin passer au rouge.

Essayez de modifier la valeur y pour voir quelles couleurs vous obtenez, ou même modifier les deux valeurs en même temps.

Le résultat est cool mais pas parfait.
Nous ne passons pas par toutes les couleurs possibles et à la fin de la boucle, nous passons du rouge au bleu sans transition.
Peut-on créer un meilleur scénario ? Oui absolument.

Première amélioration

Pour éviter de passer du rouge au bleu sans transition, vous devez faire passer votre valeur de 0 à 1, puis de 1 à 0.
Pour ce faire, pour chaque itération, vous devez savoir si la direction est une incrémentation ou une décrémentation.
Et changez la direction lorsque vous atteignez les limites (0 ou 1).

Voici comment j’ai fait ce code :

 #!/usr/bin/python
 from phue import Bridge
 from time import sleep
 import logging

 logging.basicConfig()
 b = Bridge('192.168.1.10')
 x=0
 y=0
 direction="inc"

 while True:
         if direction=="inc":
                 x = x+0.01
                 if x>=1 :
                         direction="dec"
         else:
                 x = x-0.01
                 if x<=0:
                         x=0
                         direction="inc"
         print(x)
         b.set_light(3, 'xy', [x,y])
         sleep(1)

Maintenant, si vous exécutez le script, la couleur passera du bleu au rouge comme avant, puis du rouge au bleu progressivement.

C’est mieux mais nous n’avons toujours pas toutes les couleurs. Pour améliorer cela, vous devez comprendre quelles sont ces valeurs x et y et comment elles fonctionnent.

Pouvez-vous faire mieux ?

Voici la représentation des valeurs x et y avec la couleur correspondante (source : Wikipédia).

Comme vous pouvez le voir, il ne sera pas facile de se déplacer à travers toutes les couleurs possibles.
Ma seule idée était d’utiliser un tableau avec certains points définis manuellement dans votre couleur préférée.
Et puis de définir ces couleurs étape par étape.

J’ai eu une autre idée : convertir le code de couleurs hexadécimal (#123456) à la valeur XYZ correspondante.
Et il existe une bibliothèque Python pour ce faire.
Pour l’installer, utilisez cette commande :
sudo pip install rgbxy

Et ensuite vous pouvez utiliser des fonctions comme converter.hex_to_xy(‘12345’) pour obtenir la valeur xy de la valeur hexadécimale.
Vous trouverez toutes les fonctions ici.

Mais je ne trouve pas comment parcourir toutes les couleurs progressivement.
Donc ça ne m’aide pas.

Je vous laisse faire vos recherches de votre côté si cela vous intéresse 🙂

Utiliser une API externe

Le dernier scénario que je souhaite introduire est l’utilisation d’une API externe.
Par exemple, vous pouvez obtenir des heures de lever et de coucher du soleil à partir d’une API et prévoir d’éteindre les lumières lorsque le jour se lève.

Si vous voulez une anecdote, je me souviens que j’ai créé un script pour définir une couleur spécifique en fonction du nombre de joueurs sur mon serveur Minecraft en temps réel.
Par exemple, blanc s’il est vide, vert jusqu’à 10, orange jusqu’à 20 et rouge au-delà de 30 joueurs. C’est une idée que vous pouvez adapter en fonction de vos centres d’intérêts et besoins / envies.

C’est drôle et facile à faire !

Autres langages

Si vous préférez coder avec d’autres langages, je veux vous donner les bibliothèques principales que j’ai trouvées pour les langages principaux :

Sur un Raspberry Pi, Python ou PHP devrait suffire pour un script autonome.
Mais cela dépend de l’endroit où vous souhaitez l’inclure ou si vous utilisez une autre API.

Conclusion

Voilà ! Vous savez désormais contrôler vos lumières depuis un Raspberry Pi, grâce au système Philips Hue.
Il est difficile de commencer, mais lorsque vous comprenez les bases, vous pouvez construire ce que vous voulez en quelques minutes.

Si vous avez besoin de plus d’informations, consultez le site Web Philips Hue Developer pour découvrir d’autres conseils.

Ressources pour Raspberry Pi

Initiation au Raspberry Pi en vidéo
Si vous débutez et voulez passer rapidement à la vitesse supérieure, j’ai exactement ce qu’il vous faut.
Regardez ma formation vidéo qui vous aidera à démarrer du bon bien, choisir votre matériel, installer les meilleures applications et vous lancer directement dans vos premiers projets avec mon aide.
Regarder les vidéos dès maintenant

Maîtrisez votre Raspberry Pi en 30 jours
Vous avez besoin de plus ? Si vous êtes à la recherche des meilleures astuces pour devenir expert sur Raspberry Pi, ce livre est fait pour vous. Développez vos compétences sous Linux et pratiquez via de nombreux projets en suivant mes guides étape par étape. 10% de remise aujourd’hui !
Télécharger le livre au format PDF ici

Autres ressources pour profiter de votre Raspberry Pi
J’ai regroupé toutes mes recommandations de logiciels, sites utiles et de matériel sur cette page de ressources. Je vous invite à la consulter régulièrement pour faire les bons choix et rester à jour.
Visiter les pages ressources

Restez connectés!

Tenez vous informés des dernières nouveautés en vous inscrivant ici. Pas de panique, il s'agit seulement d'un mail par mois histoire de rester à jour :)


Ce tutoriel ne marche plus à 100%? Prévenez-moi pour que je le mette à jour!

Patrick Fromaget

Je suis l'auteur principal et le créateur de RaspberryTips. Mon but est de vous aider sur tous vos problèmes qui concernent Raspberry Pi en publiant des guides détaillés et des tutoriels rapides. Dans la vraie vie, je suis administrateur système (Linux principalement) avec une solide expérience dans le développement web.

Recent Posts

Promo: -10% sur "Maitrisez Raspberry Pi en 30 jours"

X