DIY

💡 LumiSetup : Ma lampe connectée (ESP8266 + PIR + WS2812B

Salut les makers ! Aujourd’hui je vous partage un projet que j’utilise au quotidien chez moi : LumiSetup. L’idée est simple : une lampe qui s’allume toute seule quand vous passez devant, mais seulement aux heures que vous avez choisies.

Le nécessaire

ComposantDétailsLien
ESP8266 NodeMCUESP-12E / ESP8266MODAliExpress
Capteur PIRHC-SR501 (recommandé)AliExpress
Ruban LEDWS2812B (30 LEDs/m)AliExpress
Alimentation5V / 3A minimum(pour 40Led)
Connecteur USB Type-C femelle 2 brochesAliExpress

Le câblage

Le montage est rapide, 3 fils par composant :

  • Capteur PIR : VCC → 3.3V | GND → GND | OUT → D5 (GPIO14)
  • LEDs WS2812B : DIN → D6 (GPIO12) | 5V → alimentation externe | GND → GND commun
  • Alimentation 5V : +  → VIN (NodeMCU) + 5V (LEDs) | −  → GND commun

Installation

Tout le code est disponible sur GitHub. Avant d’uploader, installez les librairies suivantes dans Arduino IDE :

LibrairieAuteurSource
FastLEDDaniel GarciaGestionnaire Arduino
ArduinoJson v6Benoit BlanchonGestionnaire Arduino
NTPClientFabrice WeinbergGestionnaire Arduino
ESPAsyncTCPme-no-devGitHub (installer en premier)
ESPAsyncWebServerme-no-devGitHub

Premier démarrage

  1. Branchez le NodeMCU.
  2. Connectez-vous au WiFi « LumiSetup » (mot de passe : lumi1234).
  3. Une page de configuration s’ouvre automatiquement — ou tapez 192.168.4.1 dans votre navigateur.
  4. Choisissez votre langue (FR/EN), entrez vos identifiants WiFi et validez.
  5. L’ESP redémarre et rejoint votre réseau. C’est tout !

Une fois connecté, accédez à l’interface via http://lumisetup.local depuis n’importe quel appareil sur votre réseau.

L’interface web

L’interface est disponible en français ou en anglais selon votre choix — et ce choix est mémorisé. Depuis celle-ci vous pouvez gérer :

  • Mode AUTO : le PIR s’active uniquement dans la plage horaire configurée (ex : 22h–07h pour une veilleuse de nuit).
  • Mode ON : les LEDs restent allumées en permanence.
  • Override : force l’allumage à tout moment, hors plage ou hors durée.
  • Couleur & intensité : pour une ambiance tamisée ou vive selon vos envies.
  • Durée d’allumage : combien de secondes les LEDs restent allumées après une détection.
  • Effet fondu : fade-in / fade-out pour une transition douce.

Les fichiers

Tout est disponible en open source sur GitHub — le code complet en fichier unique, le schéma de câblage, et les instructions d’installation complètes dans le README.

Buy Me A Coffee

Soutenir le projet

Si mes tutos t’aident, tu peux m’offrir un petit café !

☕ Offrir un café