Notif’Heure V3 ( DIY)

l’Horloge Smart et Connectée avec Notification

Voici la toute nouvelle version du Notif’Heure , l’horloge connectée avec notification , basé sur un WEMOS ( ou compatible ESP8266 ).

Cette nouvelle version ajoute la mise en place d’une API ( format JSON) , afin de la rendre, le plus compatible possible avec un maximum de box domotique , ainsi qu’une toute nouvelle interface WEB , basé sur Bootstrap , et beaucoup d’autres nouvelles options .

Pré requis matériel :

  • Un WEMOS D1 ( ou compatible ESP8266 )
  • Un bloc de 4 matrices LED ( au minimum ) de type max72xx ( certains lecteurs  ont mis jusqu’à 8 bloc soit un affichage sur 32 matrices )

Le Notif’heure , dans son fonctionnement minimum , n’a besoin que de ces deux éléments . Mais il est possible d’ajouter des fonctionnalitées optionnels.

En option :

  • un module DHT ( pour affichage de la température de la pièce )
  • Une photo résistance et une résistance de 10Ko ( pour la gestion auto de la luminosité )
  • Un ou deux boutons poussoir  ( pour gérer des actions directement depuis le boitier du Notif’heure )
  • Une led et sa résistance ( ic une led blanche avec une résistance de 100  Ω.)

Schéma de câblage :

Ci dessous , un schéma de câblage , pour l’assemblage des différentes options.

Attention aux PIN , en fonction des Wemos utilisés . Utiliser les valeurs GPIO , afin de trouver les bonnes PIN .

Schema Notif'heure V3
Scema de câblage WEMOS D1 uniquement
Pour Wemos mini ou D2 ( attention au PIN )

Installation ( les pré requis )

Pour installer le logiciel et ces fichiers dans votre module , il va falloir l’interface IDE Arduino , ainsi que toutes ses bibliothèques nécessaires. 

Pour l’installation de l’interface IDE , et la gestion des cartes supplémentaires , je vous invite à suivre mon article “Projet wemos D1“.

Voici la liste des bibliothèques que j’utilise pour le projet “Notif’heure’

liste Bibliothèque
Liste Bibliothèque

Afin de vous faciliter , le chargement manuel de toutes ses bibliothèques , j’ai réalisé un ZIP de ces dossiers , que vous pouvez télécharger sur mon drive.

Installer le fichier jar dans le dossier tool de l Arduino , afin de pouvoir transférer le dossier data dans la mémoire SPIFFS ( voir mon article qui traite de ce sujet )

Puis , rendez vous , sur mon Github , pour télécharger les sources du projets  ( Dossier notif’heure V3 ) . Vous avez récupéré la structure suivante :

Structure projet Notif’heure

Un dossier data , comprenant toute la structure du serveur WEB ,  trois fichiers pour le sketch et deux fichiers images pour les icones.

Lancer votre interface Arduino , et ouvrez le projet “notifeur_V31.ino”

Configuration ( avant installation ) :

Avant de commencer à installer le sketch , sur votre module , il va falloir vérifier ou ajuster quelques paramètres :

parametre sketch
Parametre sketch à verifier ou à ajuster

Au tout début du sketch , vous allez pouvoir définir sur quel type et nombre de matrice vous allez travailler .

define HARDWARE_TYPE MD_MAX72XX::FC16_HW
define MAX_DEVICES 4 // nombre de matrice
define CLK_PIN D5
define DATA_PIN D7
define CS_PIN D6

Si vous avez suivi , le schéma de câblage , vous n’aurez pas besoin de modifier les numéro des PIN du module.
C’est l’instruction MAX_DEVICES qui va définir le nombre de matrice utilisés.
Le type sera à définir en fonction des matrices utilisés ( plus de détail sur mon article suivant :  Gestion des matrices.

//****************************************************
// En fonction de vos matrices , si probléme         *
// d'affichage ( inversé , effet miroir , etc .....) *
// ***************************************************
// matrix   - decocher selon config matrix    ********     
#define HARDWARE_TYPE MD_MAX72XX::FC16_HW        //***
//#define HARDWARE_TYPE MD_MAX72XX::PAROLA_HW    //***
//#define HARDWARE_TYPE MD_MAX72XX::ICSTATION_HW //***
//#define HARDWARE_TYPE MD_MAX72XX::GENERIC_HW   //***
// ***************************************************
Voici un exemple de problème d’affichage

les “define” suivant indique les numéros de broches ou sont branchés les options comme les boutons , led ou dht … A modifier si nécessaire.

username et password , sont les valeurs par défaut pour se connecter à l’interface d’administration.

Installation

Puis télécharger le sketch via le câble USB. Redémarrer le module esp8266.

Le module va redémarrer et se mettre en mode AP , afin de configurer le wifi pour la première fois.  Connecter vous au réseau Notifheure. 

Puis redémarrer. À partir de ce moment vous pourrez faire les mises à jour en OTA. Si besoin relancer , l’interface Arduino. ( pour la mode OTA , python doit être installé . Ne pas installer la version 3 ou supérieur , pas géré actuellement par ARDUINO.) Il se peut que sur certains modules , l’OTA ne fonctionne pas tout de suite , installer le tout via le port USB dans un premier temps si il y a un problème.

Sélectionnez le port : 

Uploader les fichiers du dossier data avec la commande esp8266 Sketch Data Upload du menu outil  de l interface Arduino.

Si l’outil n’apparait pas , vérifier si il à été bien installé. ( voir cet article )

Vous pouvez maintenant vous connecter au notif’heure via son adresse ip ( affiché à la fin de la procédure de démarrage ) ou via le protocole bonjour. Sous Mac , il est activé par défaut , sous Windows il faudra l’installer .

Connectez vous à votre notif’heure :  http://Newnotif .local    ou si le protocole bonjour n’est pas installé connectez vous via l’adresse IP .

Utilisation :

Envoie Notification
Envoie Notification

lors de votre première connexion , vous pouvez tester si tous fonctionne correctement en envoyant une notif , via ce formulaire.

Si tout ok , on va pouvoir passer aux options :

Juste en dessous les options :

Options
Options

Puis en bas de la page , des onglets , dont le premier et un état du système :

Information système

Dans le cadre Matériel , vous pourrez voir quels sont les éléments activés ( au premier démarrage , tout est désactivé ) .Pour configurer vos options , il va falloir se rendre dans l’onglet Admin .

Dans l’onglet Admin , il y a un lien vers la page de configuration. Ainsi que la liste de tous les Notif’heure installé sur le réseau. Cliquer sur Page de configuration.

Le login et mot de passe par défaut : admin / notif

page configuration

Configuration ( après installation )

Il est possible sur cette page de :

  • Exporter la configuration ( si elle existe , au premier démarrage le fichier n’existe pas encore ) au format Json.
  • Importer un fichier de config ( au format json ) – peut être utile suite à une mise à jour , afin de récupérer ces paramètres.
  • Reboot du module si necessaire
  • Retour à la page d’accueil
  • Paramètrage du système : Nom du module , suffixe hostname , Activer ou non option DEBUG ( si besoin ) et réglage du multi-zone .
multizone
Multizone
  • Parametrage Horloge : ( Serveur de temp , TimeZone ( UTC ) , gestion des heures Hiver/été )
  • Parametrage Matériel : Activer si présence LED et boutons , en activant le bouton , il sera possible de choisir une action pour un type de clic.
    • Simple clic : Affichage des secondes
    • Double clic : ON / OFF Horlogeetc …
materiel
options materiels

Pour les boutons , pour chaque type de clic , il est possible de choisir :

  • Affichage des secondes
  • ON/OFF horloge
  • Mode Auto / Manuel 
  • ON/OFF LED
  • Action 1 / Action 2 / Action 3  ( qui permet d’adresser des URL , à une box domotique par exemple )
  • Tempo affichage notification : Permet de regler les vitesses d’affichages des notifications.
  • Paramètre Box Domotique : Permet de renseigner les URLS pour action , ainsi qu’une URL pour une Mise à jour des infos Modules dans la domotique ( l’update entraine un ralentissement de 1 à 2 secondes sur Jeedom , ce dernier ne gérant pas les websockets réactualise toutes les données ) – Dans un prochain article , j’expliquerai plus en détail le paramétrage du notif’heure et de jeedom.
programmation des URL pour action et update
  • Timer systèmes : Pour un réglage personnel des differentes tempo utilisés dans le Notif’Heure.

Sauvegarder et rebooter votre module , afin d’enregistrer vos paramètres de configuration personnel.

Il est aussi possible , de réinitialiser le module à ses réglages par défaut.

De retour sur votre page d’accueil , vous serez en mesure de constater dans les infos systèmes , les options mis en place.

Intégration Jeedom ( ou Box Domotique )

Les anciens scripts de la version 2.6 sont compatibles , pour ceux qui avaient intégrés la 2.6 dans Jeedom. vos scénarios de notification continuerons à fonctionner.

Dans le cadre de la version 3 , je suis en train d”écrire un nouvel article sur l’intégration du Notif’Heure dans Jeedom , afin de prendre en compte les nouvelles Options et autres spécificités.

L’article est disponible , pour le lire cliquer ici.

Mis à jour

Pour les futurs , mis à jour ou toutes modifications , il est conseillé d’exporter son fichier de config , puis de le réinjecter une fois la mise à jour terminé.

Si vous n’avez pas pensé à exporter le fichier , voici un exemple de la Structure d’un fichier config :

{
"Hostname":"Notif",
"Name":"new",
"NTPserver":"pool.ntp.org",
"timeZone":1,
"DLS":true,
"DEBUG":true,
"BOUTON1":true,
"BOUTON2":true,
"LED":true,
"multizone":false,
"DispRight":false,
"LZTime":2,
"speed_time":35,
"pause_time":3,
"interval_lux":15,
"interval_dht":10,
"interval_debug":40,
"AutoIn":true,
"TimeOn":true,
"DisSec":false,
"intensite":0,
"maxdisplay":4,
"btn1":[1,2,3],
"btn2":[4,5,7],
"txtAnim":"Notif",
"URL_Update":"http://ipbox/update",
"URL_Action1":"",
"URL_Action2":"",
"URL_Action3":"",
"JEEDOM":true
}

Historique version : ( a retrouver sur Github )

  • V3.1 : Nouvelle Interface et API JSON
  • V3.1.1 : Bug DHT , et autres petites améliorations.
  • V3.1.2 : quelques petits correctif et prise en charge nouveau script php jeedom
  • V3.1.3 : Fix bug affichage en multizone , ajout nouveau type info et fix pour affichage texte court permanent .
  • V3.1.4 : Bug fix . Modification mot clé , modification page web interne
  • V3.2 : historisation des notifications , effets pour type info , ajsutement interface , nouvelle options config et bug fix.

Laisser un commentaire

Ce site utilise Akismet pour réduire les indésirables. En savoir plus sur comment les données de vos commentaires sont utilisées.

171 commentaires sur “Notif’Heure V3 ( DIY)”

%d blogueurs aiment cette page :