Table des matières:

Contrôleur LED Apple HomeKit WS2812B : 3 étapes (avec photos)
Contrôleur LED Apple HomeKit WS2812B : 3 étapes (avec photos)

Vidéo: Contrôleur LED Apple HomeKit WS2812B : 3 étapes (avec photos)

Vidéo: Contrôleur LED Apple HomeKit WS2812B : 3 étapes (avec photos)
Vidéo: Управление умным светом - Yeelight bluetooth mesh Gateway, работа с Apple Homekit и Home Assistant 2024, Juillet
Anonim
Image
Image
Contrôleur LED Apple HomeKit WS2812B
Contrôleur LED Apple HomeKit WS2812B
Contrôleur LED Apple HomeKit WS2812B
Contrôleur LED Apple HomeKit WS2812B
Contrôleur LED Apple HomeKit WS2812B
Contrôleur LED Apple HomeKit WS2812B

Il existe de nombreux projets basés sur les bandes LED WS2812B, mais la plupart d'entre eux utilisent homebridge ou toute autre solution - principalement basée sur MQTT - pour communiquer avec HomeKit.

Certains projets utilisent également des effets via Apple HomeKit, mais aucun d'entre eux ne prend en charge HomeKit autonome sans avoir besoin de pont. J'utilise les LED WS2812B depuis près de 3-4 ans maintenant avec HomeKit et elles fonctionnent très bien.

Étant donné que le code est très complexe et que j'ai utilisé de nombreuses bibliothèques personnalisées, j'ai créé des fichiers de firmware précompilés. Pour ceux qui souhaitent créer des projets HomeKit natifs, le code source d'esp-homekit est disponible ici.

Informations de base:

  • Actuellement, seules les bandes LED WS2812B, WS2812B ECO et WS2813 sont prises en charge !
  • Le nombre maximum de LED est limité à 500 pour économiser de la RAM
  • Convertisseur de niveau logique requis (pour la conversion de données de 3,3 V à 5 V)
  • Une alimentation 5V de bonne qualité est également nécessaire
  • Plus d'informations peuvent être trouvées sur mon GitHub
  • Adafruit Überguide peut également vous aider:-)

Conception de circuits imprimés:

J'ai conçu un PCB simple pour piloter les LED NeoPixel de la manière décrite dans l'Überguide NeoPixel d'Adafruit en utilisant le dernier IC convertisseur de niveau logique SN74HCT125N et le condensateur 1000uF également recommandé:-) J'utilise actuellement ce PCB avec une alimentation 5V 10A sans aucun problème (de température):-)

J'ai aussi une version USB Type-C pour les bandes LED plus courtes !

Vous pouvez commander les PCB d'ici et d'ici

Vous pouvez trouver plus d'informations sur les PCB ici

Caractéristiques:

  • Changer de couleur
  • Modifier la luminosité
  • Changer la température de couleur (aucune bande RGBW requise)
  • Effets de lumière WS2812FX (bêta !!!)
  • Configuration du nombre de LED WS2812B (au premier démarrage de 1 à 500)
  • Caractéristique de comportement de puissance (couleur par défaut / dernière utilisation au démarrage via l'application Eve)
  • Transition (Rapide / Par défaut / Modéré / Calme via l'application Eve)
  • Verrouillage enfant (appuyer sur le bouton Activer/Désactiver via l'application Eve)
  • Manuel d'utilisation téléchargeable (via l'application Eve)
  • Bouton d'alimentation/réinitialisation

Fournitures

Pour créer le PCB personnalisé, vous aurez besoin d'un fer à souder bon marché ou d'une station de soudage comme celle-ci ou celle-ci. Un pistolet à souder à air chaud serait également utile ! Pour télécharger le code, vous devrez probablement aussi acheter un adaptateur USB TTL.

Pièces nécessaires:

  • NodeMCU ou Wemos D1 Mini
  • Convertisseur de niveau logique IC
  • Bande LED WS2812B
  • Connecteur femelle JST 3 broches
  • Alimentation 5V 2-10A v1 ou alimentation 5V 2-10A v2
  • Câbles de démarrage

Pièces de PCB:

  • ESP12F/E
  • ESP-01S (1 Mo flash)
  • Résistances CMS 0805
  • Condensateurs CMS 0805
  • AMS1117-3.3
  • Bouton tactile
  • en-tête de 2,54 mm
  • SN74HCT125N
  • Condensateur CMS 10,5x10,5 1000uF
  • Connecteur CC
  • Borne à vis 3 broches
  • Porte-fusible
  • Fusible

Étape 1: Installation du micrologiciel

Installation du micrologiciel
Installation du micrologiciel
Installation du micrologiciel
Installation du micrologiciel
Installation du micrologiciel
Installation du micrologiciel

Vous pouvez télécharger le firmware depuis ma page GitHub

les fenêtres

Pour Windows, vous pouvez utiliser l'outil de téléchargement de firmware officiel d'Espressif

Le réglage des adresses flash (0x2000), de la taille du flash (1 Mo/8 mbit, 4 Mo/32 mbit) et du mode flash (DIO/QIO) est une étape très importante, mais ces paramètres peuvent changer en fonction du module que vous utilisez ! Je recommande également d'effacer le flash avant de télécharger les fichiers.bin !

Paramètres:

  • Débit en bauds 115200
  • Taille du flash 4Mo ou 32mbit (selon votre module)
  • Flash Mode QIO (ou DIO, selon votre module)
  • 0x0000 rboot.bin
  • 0x1000 blank_config.bin
  • 0x2000 ledstrip.bin
  • 40MHz

Mac OS

Pour MacOS, vous pouvez utiliser cet outil de clignotant

Paramètres:

  • Effacer le flash - oui
  • Débit en bauds 115200
  • Taille du flash 4Mo ou 32mbit (selon votre module)
  • Flash Mode QIO (ou DIO, selon votre module)
  • Fichier: ledstrip.bin
  • 40MHz

Flasher manuellement

Nous devons installer esptool.py sur notre Mac afin de pouvoir flasher notre module ESP. Pour travailler avec esptool.py, vous aurez besoin de Python 2.7, Python 3.4 ou d'une installation Python plus récente sur votre système. Nous vous recommandons d'utiliser la dernière version de Python, alors allez sur le site Web de Python et installez-la sur votre ordinateur.

Avec Python installé, ouvrez une fenêtre Terminal et installez la dernière version stable d'esptool.py avec pip:

pip installer esptool

Remarque: avec certaines installations Python, cette commande peut ne pas fonctionner et vous recevrez une erreur. Si c'est le cas, essayez d'installer esptool.py avec:

pip3 installer esptool python -m pip installer esptool pip2 installer esptool

Après l'installation, esptool.py sera installé dans le répertoire par défaut des exécutables Python et vous devriez pouvoir l'exécuter avec la commande esptool.py. Dans votre fenêtre Terminal, exécutez la commande suivante:

esptool.py

Avec esptool.py installé sur votre ordinateur, vous pouvez facilement flasher votre carte ESP8266 avec le firmware.

Au début, vous devez télécharger trois fichiers bin: rboot.bin et blank_config.bin et la dernière version. Le rboot.bin contient le bootloader pour l'ESP8266 et le blank_config.bin dans juste un fichier de configuration vierge et ledstrip.bin contient le firmware. Connectez maintenant votre appareil à votre adaptateur FTDI en mode flash.

Liens miroir:

rboot.binblank_config.binledstrip.bin

Mettre l'appareil en mode Flash

Pour activer le micrologiciel ESP8266, la broche GPIO0 clignotante doit être tirée vers le bas lors de la mise sous tension de l'appareil. Avec mon PCB personnalisé, il y a un bouton, nodeMCU a également un bouton flash et le Wemos le fait automatiquement à l'aide de l'USB. Inversement, pour un démarrage normal, GPIO0 doit être tiré haut ou flottant. Démarrer en MODE FLASH

Allez dans le répertoire que vous avez créé où vous avez placé les fichiers rboot.bin blank_config.bin précédemment téléchargés (par exemple Téléchargements)

Ouvrez l'application Terminal. Cliquez sur l'icône du Finder dans votre dock. Cliquez sur Aller. Cliquez sur Utilitaires. Double-cliquez sur Terminal. Accédez au répertoire de téléchargements.

Vous aurez besoin d'un adaptateur USB TTL pour vous connecter à l'ESP8266. Si vous utilisez un Wemos D1 Mini, vous n'avez besoin que d'un câble microUSB, le Wemos dispose d'un adaptateur TTL intégré.

téléchargements de CD

Remarque: si vous utilisez une autre bibliothèque pour stocker les trois fichiers.bin, accédez à cette bibliothèque à l'aide de la commande `cd`:

Utilisez esptool.py pour flasher votre appareil. Nous devons d'abord effacer le flash:

esptool.py -p /dev/effacer_flash

Normalement, votre ESPPort sera quelque chose comme /dev/cu.usbserial-`xxxxxx`. Ensuite, mettez à nouveau votre appareil en mode flash et flashez le nouveau firmware:

esptool.py -p /dev/cu.wchusbserial1420 --baud 115200 write_flash -fs 32m -fm dio -ff 40m 0x0 rboot.bin 0x1000 blank_config.bin 0x2000 ledstrip.bin

Étape 2: Configuration Wi-Fi et HomeKit

Configuration Wi-Fi et HomeKit
Configuration Wi-Fi et HomeKit
Configuration Wi-Fi et HomeKit
Configuration Wi-Fi et HomeKit

Configuration Wi-Fi

Vous devez configurer le réseau wifi avant d'ajouter l'accessoire à HomeKit. Pour configurer les paramètres Wi-Fi, l'appareil génère son propre Wi-Fi en mode AP. Vous devez vous y connecter pour configurer votre réseau Wi-Fi. Prenez simplement votre appareil iOS, allez dans Paramètres -> Wi-Fi et recherchez un SSID appelé HomeKid- suivi de l'adresse MAC du module et connectez-vous. Pour des raisons de sécurité, le point d'accès est protégé par un mot de passe ! Mot de passe par défaut du point d'accès: 12345678

Attendez quelques secondes jusqu'à ce qu'un site Web apparaisse vous montrant tous les réseaux Wi-Fi que l'appareil a trouvés. Sélectionnez le vôtre et entrez votre mot de passe ! Après cela, vous pouvez ajouter le nombre exact de LED dans votre bande LED ! Entrez un nombre de 1 à 500 ! Cliquez ensuite sur le bouton Rejoindre ! Le module essaiera de se connecter au réseau Wi-Fi sélectionné, cela prendra quelques secondes.

Remarque: Si le mot de passe donné est erroné, vous pouvez réinitialiser les paramètres Wi-Fi en maintenant le bouton de réinitialisation enfoncé pendant 10 secondes.

Configuration de HomeKit

Sur votre appareil iOS, ouvrez l'application Home et suivez les étapes normales pour ajouter un nouvel accessoire. La configuration du jumelage prend environ 30 secondes.

Le code HomeKit par défaut est 021-82-017

Vous pouvez également scanner ce code QR HomeKit:

Remarque: si l'appairage échoue, vous pouvez éteindre votre appareil, le remettre sous tension et redémarrer la configuration de HomeKit (les paramètres Wifi restent configurés). Une fois l'appairage réussi, la bande LED clignotera 3 fois en blanc !

Problèmes courants:

  • Parfois, l'ajout de plusieurs accessoires à l'aide du code QR échoue, si HomeKit signale "Accessoire déjà ajouté", ajoutez simplement le code d'appairage manuellement au lieu de scanner le code QR !
  • En cas de problème, vous pouvez voir les fichiers journaux à l'aide du moniteur série d'Arduino et n'hésitez pas à ouvrir un problème sur GitHub

Étape 3: Paramètres personnalisés

Paramètres personnalisés
Paramètres personnalisés
Paramètres personnalisés
Paramètres personnalisés

Malheureusement, l'application Home ne prend pas en charge les caractéristiques personnalisées de tiers, vous aurez donc besoin de l'application Elgato EVE pour modifier ces paramètres et utiliser les effets WS2812B. De plus, l'accessoire agit comme un accessoire Fake Eve Light Strip lorsque vous l'ajoutez via l'application Eve ?

Transitions et comportement de pouvoir

La bande originale Eve Light prend en charge ces deux caractéristiques. Avec Transitions, vous pouvez modifier la vitesse de la bande LED lors de l'utilisation des effets WS2812FX ! Le régler sur Quick désactivera les fondus entrants/sortants et il s'allumera rapidement !

Avec Power Behavior, vous pouvez changer la couleur par défaut lorsque la bande LED s'allume ! Par défaut, il est défini sur Dernière couleur utilisée, donc lorsque vous éteignez la bande LED, elle se souviendra toujours de la dernière couleur que vous avez utilisée ! Lorsqu'il est réglé sur le blanc par défaut, chaque fois que vous éteignez la bande LED, la couleur redevient blanche !

Réinitialiser

Le code a une fonction de réinitialisation en cas de problème. Attendez environ 5 secondes pour permettre à l'appareil de démarrer complètement, puis appuyez longuement sur le bouton pendant au moins 10 secondes !

Tous les paramètres configurés ont été supprimés et l'appareil redémarre. Cela supprime les paramètres HomeKit et Wi-Fi, et votre appareil passera en mode Point d'accès la prochaine fois afin de reconfigurer le Wi-Fi.

Remarque: une simple pression sur le même bouton active ou désactive la bande LED

Conseillé: