96 lines
4.7 KiB
C
96 lines
4.7 KiB
C
// -------------------------------------------------------------
|
|
//
|
|
// Fichier de configuration de votre Box compatible Somfy RTS ou Chacon DiO
|
|
// Mise à jour par TOST Corp. le 2 janvier 2020
|
|
// 1.0.0 Initiale
|
|
// 1.0.1 Suppression du vector pour remotes
|
|
// 1.0.2 Ajout de la compatibilité CHACON DiO 1.0
|
|
// 1.1.0 Ajoute d'information pour chaque équipement, notamment le groupe pour la commande groupée
|
|
// et le delai entre deux commandes groupées
|
|
// www.tostcorp.com/boxsomfyrts
|
|
//
|
|
// -------------------------------------------------------------
|
|
|
|
// Vous pouvez contrôler autant d'équipements (volets, prises, ...) que vous le souhaitez en ajoutant des éléments
|
|
// à la list remotes ci-dessous
|
|
// L'identifiant par exemple 0x123450 doit être unique, le code roulant par défaut peut rester à 1, incrémenter l'adresse
|
|
// de l'EEPROM de 4 pour chaque équipement
|
|
|
|
// Après avoir téléchargé le code dans votre box
|
|
// 1. Appuyer quelques secondes sur le bouton PROG de la télécommande d'un de vos équipements, le volet va faire un mouvement de va-et-vient haut/bas
|
|
// 2. Envoyer un message "p" sur la messagerie MQTT avec le topic correspondant à l'équipement
|
|
// 3. Envoyer un message "u", "d" ou "s" pour monter, descendre ou stopper le volet.
|
|
|
|
// Structure d'une télécommande
|
|
// Ne pas toucher ces lignes
|
|
|
|
|
|
#ifndef Config_h
|
|
#define Config_h
|
|
|
|
// Librairies utilisées
|
|
#include <Arduino.h>
|
|
// #include "sql_database_helper.h"
|
|
#include <EEPROM.h>
|
|
#include <ESP8266WiFi.h>
|
|
#include "PubSubClient.h"
|
|
#include "Ticker_v2.h"
|
|
#include "Somfy.h"
|
|
// ----------------
|
|
// Etape 1
|
|
// ----------------
|
|
// Liste de vos équipements
|
|
// L'id est un nombre en hexadécimal de votre choix, unique pour chaque équipement
|
|
// id,"topic MQTT", code roulant par défaut, adresse EEPROM, "description", "nom de groupe"
|
|
REMOTE remotes[] = {{0x100000, "jerome.delacotte@gmail.com/manon/volet", 1, 0, "cuisine", "jerome.delacotte@gmail.com/somfy/groupe_1" }
|
|
,{0x120010, "jerome.delacotte@gmail.com/theo/volet", 1, 4, "chambre sullivan", "jerome.delacotte@gmail.com/somfy/groupe_1" }
|
|
,{0x120020, "jerome.delacotte@gmail.com/chambre/volet", 1, 8, "room_3", "jerome.delacotte@gmail.com/somfy/groupe_2" }
|
|
};
|
|
|
|
DIO_REMOTE dio_remotes[] = {{0x000000, "jerome.delacotte@gmail.com/dio/portail", 1000, 0 , "portail", "jerome.delacotte@gmail.com/dio/groupe_1"}
|
|
,{0x000010, "jerome.delacotte@gmail.com/dio/inter_1", 2000, 1 , "inter_1", "jerome.delacotte@gmail.com/dio/groupe_2"}
|
|
,{0x000030, "jerome.delacotte@gmail.com/dio/inter_2", 4000, 3 , "inter_2", "jerome.delacotte@gmail.com/dio/groupe_2"}
|
|
};
|
|
|
|
// Laissez ce champ à false à moins de vouloir ré-initialiser le code roulant
|
|
const bool reset_rolling_codes = false;
|
|
// Mettre true pour mettre à jour la base de données avec les équipements
|
|
// définis dans ce fichier (sinon à false pour gain de temps au reboot de la box).
|
|
const bool update_database = false;
|
|
const int delay_group_radio_signal = 500; // délai en millisecondes entre les ordres pour les commandes par groupe
|
|
|
|
// ----------------
|
|
// Etape 2
|
|
// ----------------
|
|
// Configuration des identifiants Wifi de votre Box Internet (Free, SFR, Orange, Sosh, Bouygues...)
|
|
const char* wifi_ssid = "Livebox-37cc";
|
|
const char* wifi_password = "8A6060920A8A86896F770F2C47";
|
|
|
|
|
|
// ----------------
|
|
// Etape 3
|
|
// ----------------
|
|
// Configuration de votre serveur MQTT
|
|
// Nom du serveur MQTT (à changer si nécessaire, par exemple tailor.cloudmqtt.com)
|
|
// Sample: mosquitto_pub -h 192.168.1.3 -u souti -P setaou -t "jerome.delacotte@gmail.com/manon/volet" -m "u"
|
|
|
|
const char* mqtt_server = "192.168.1.3"; //"maqiatto.com";
|
|
// Numéro de port
|
|
const unsigned int mqtt_port = 1883;
|
|
// Nom de l'utilisateur
|
|
const char* mqtt_user = ""; //"souti"; //"jerome.delacotte@gmail.com";
|
|
// Mot de passe de l'utilisateur
|
|
const char* mqtt_password = ""; //"setaou";
|
|
// Identifiant de l'utilisateur (à votre convenance mais sans espaces ni caractères spéciaux)
|
|
const char* mqtt_id = ""; //"tost_corp_dio_jd_1969";
|
|
|
|
//
|
|
// Ne pas changer les lignes qui suivent
|
|
//
|
|
const char* status_topic = "smartHome/somfy-remote/status"; // Online / offline
|
|
const char* ack_topic = "smartHome/somfy-remote/ack"; // Commands ack "id: 0x184623, cmd: u"
|
|
#define PORT_TX D1 // Output data on pin 23 (can range from 0 to 31). Check pin numbering on ESP8266.
|
|
#define PORT_DIO_TX D1 // Output data on pin 23 (can range from 0 to 31). Check pin numbering on ESP8266.
|
|
|
|
#endif
|