J3R3M Posté(e) le 16 mars 2019 Signaler Posté(e) le 16 mars 2019 (modifié) Réveil avancé paramétrable Version Scène : 3.6 - Version VD : 2.1 Réveil douceur en lumière et musique, en fonction du lever du soleil. Compatibilité éclairages : Dimmers, Modules RGBW, Volets Roulants, VDs (Philips Hue, Ikea TRÅDFRI...) etc. Compatibilité enceintes : Tous les VDs de système d'enceinte sont compatibles! Sonos, Yamaha Multicast, Bose... Préambule Cette semaine, j'ai pris le temps d'adapter un kit Scène+VD (qui marche bien chez moi depuis un petit moment) pour qu'il puisse être utile à d'autres. Il s'agit d'un réveil "douceur" où une ou plusieurs lampes seront progressivement allumées durant un temps défini et le programme de votre choix sera ensuite lu en fondu sur votre système d'enceintes. Ce kit Scène+VD peut être utilisé pour chaque chambre, c'est pourquoi il y a la variable ROOM à modifier à plusieurs reprises dans le VD et dans la scène. Bienfaits d'un Réveil "douceur" Citation Destiné à diffuser progressivement une lumière qui reproduit les conditions d’un lever ou d’un coucher de soleil, le simulateur a un fonctionnement simple et pratique. Cette variation de l’intensité lumineuse est capable de filtrer à travers vos paupières, même fermées. Ceci prépare le cerveau, et précisément l’hypothalamus, à l’idée du réveil ou d’un endormissement. Le simulateur d’aube agit donc sur les fonctions neurovégétatives de votre corps pour le mettre dans les meilleures prédispositions d’un réveil ou d’un endormissement. Tout se fait de façon progressive. La variation de l’intensité s’étale sur une durée programmée, allant de 1 à 100 minutes. Pendant cette période, le simulateur agit sur la sécrétion de l’hormone responsable de sommeil, la mélatonine. Lorsque le jour se lève, l’appareil, en imitant une aube, conditionne le cerveau à commander une inhibition de la production de cette substance. [...] En pratique, il vous faudra programmer l’heure de votre choix, pour que commence le processus de réveil. Si vous prévoyez vous lever à 7 h, la diffusion lumineuse peut commencer dès 6 h ou 6 h 30. Avant d’atteindre l’hypothalamus, la lumière pénètre d’abord les paupières puis le nerf optique avant d’atteindre la glande pinéale. En phase finale du réveil, l’intensité lumineuse est à son maximum et vous vous réveillez sans stress et tout en douceur. Source : https://www.simulateuraube.info Installation et Configuration du VD -- Manageable Alarm Clock Scene Id local SceneID = 193; -- Which room will this VD Manage ? Must be the same than the Scene local ROOM = "CHAMBRE"; -- Days Off local DaysOff = {"Samedi","Dimanche"}; -- By defaut, this scene will be launched to have full light at the time set up in the VD : Actual Hour - Dawn Time -- Change this var to anything else if you want to trigg the scene at the hour H. local StartScene = "DEFAULT"; -- Icon's ids local icon_ok = 1156 local icon_wait = 1158 local icon_off = 1160 Créer la variable globale REVEIL_CHAMBRE (ou autre nom type REVEIL_*** tant que la variable ROOM est bien modifiée partout) et importer le VD. SceneID : ID de la scène affectée à ce VD ROOM : Il faut modifier la valeur de cette variable dans les 3 derniers boutons (Une fois, Lun-Ven et Réveil OFF) et la boucle principale du VD pour qu'ils correspondant à la variable globale créée ci-dessus. DaysOff : Listez ici vos jours de repos hebdomadaires, entre guillemets et séparés par une virgule. Veillez à bien mettre la majuscule à chaque jour de la semaine. StartScene : Par défaut, le VD va démarrer la scène X minutes (le temps du fade lumière paramétré) avant l'heure de réveil programmé. Ceci pour que la lumière soit à son maximum et que la musique démarre à l'heure du réveil. Si vous souhaitez que la scène débute seulement à l'heure du réveil, remplacez la valeur de cette variable par n'importe quoi d'autre. icon_ok : Icone qui s'affichera lorsque la scène sera active icon_wait : Icone qui s'affichera lorsque le VD est en attente de l'heure du réveil icon_off : Icone qui s'affichera lorsqu'aucun réveil sera programmé (ou que le réveil "Une fois" sera déclenché) Suivre les indications de ce lien si vous ne savez pas comment connaître les IDs des icones Utilisation du VD Un appui sur : affichera 12:00 par défaut. Cela peut être modifié en changeant la valeur de la variable ClickHour dans le bouton correspondant. Le volume du son est en pourcentage (Agit directement sur les sliders) Le temps de fade son est en secondes La puissance des différents devices est en pourcentage* La durée de l'aube simulée est en minutes Le bouton Une fois programme le réveil pour le prochain horaire disponible et ce, quelque soit le jour. Après déclenchement, le réveil se désactivera automatiquement. Le bouton Semaine programme le réveil chaque jour, sauf ceux renseignés dans la variable DaysOff. La scène sera lancée automatiquement à heure fixe tant que le VD est activé. Le bouton Rappel rappellera les derniers paramètres en cours avant la désactivation du VD Le bouton Off sauvegardera les derniers paramètres enregistrés et désactivera le VD * Les volets roulants s'ouvriront au même rythme que les autres devices, mais à 100% dans tous les cas, quelque soit la valeur saisie dans le VD. J'ai trouvé plus judicieux de pouvoir jouer sur la puissance des différents devices, sans que le volet roulant se retrouve à moitié ouvert. Où modifier la valeur de la variable PIECE ? 1- Au début de la scène ci-dessous 2 - Dans le bouton "Une fois" du VD 3 - Dans le bouton "Semaine" du VD 4 - Dans le bouton "Réveil OFF" du VD 5 - Dans la Boucle Principale du VD Bien entendu, je rappelle que la valeur de cette variable doit correspondre à la Variable Globale que vous créerez. La variable globale est donc "REVEIL_CHAMBRE" par défaut. La base REVEIL_ est fixe. En cas d'incohérences entre ces valeurs, le réveil ne fonctionnera pas, soyez vigilents! Icones du VD Scène lancée et active - Réveil en attente - Réveil OFF Réglages de la scène -- Scene Settings local ROOM = "ROOM"; -- Room code corresponding to the Global Var created local StartVolume = 1; -- Which Speakers volume value the fadein will start at (percentage) local CurveLight = "linear"; -- Which function will be used to fadein light keys local CurveAudio = "linear"; -- Which function will be used to fadein speakers keys -- Curves list by family - Please see the graphic of each function to have a better understanding -- If a curve is not set, a random curve will be used to fade the parameters! -- Quad : inQuad / outQuad / inOutQuad / outInQuad -- Cubic : inCubic / outCubic / inOutCubic / outInCubic -- Quart : inQuart / outQuart / inOutQuart / outInQuart -- Quint : inQuint / outQuint / inOutQuint / outInQuint -- Sine : inSine / outSine / inOutSine / outInSine -- Expo : inExpo / outExpo / inOutExpo / outInExpo -- Circ : inCirc / outCirc / inOutCirc / outInCirc -- Bounce : inBounce / outBounce / inOutBounce / outInBounce -- Debug Vars local debug = 1; -- 1 Enable / 0 Disable local lang = "en"; -- Debug lang local DisplayNamesorID = "ID"; -- Display DeviceName + RoomName (Names) or Type + ID (ID) on each Debug line local DisplayNamesAtStartup = 1; -- Display Rooms & Names at scene startup (1) or not (0) local DisplayRGBWValues = 1; -- Display RGBW Values increasement when fading in (1) instead of only multiplier (0) local DayLightDelay = 60; -- After sunrise/sunset, it's still daylight for .. mn local VolDiffMin = 5; -- Minimum difference between Start Volume and Volume set in VD (in case of Start Volume > Volume set) local LimitDebugLines = 1; -- Limit number of Debug Lines to 4 max per device and to 20 max per roller shutter -- Changing next var values may seriously impact the scene local CheckAlarmMode = 1; -- Check if the alarm is set and not just memorized before starting sthis scene local DisplayScenesNames = 0; -- Display Scenes Names in debug (1) or not (0)! Active this function may delay the script local tempo = 1; -- Pause between two actions in LightsAction and SpeakersAction functions (s) - It' not recommended to change this value -- List of the light/shutter devices which will be dimmed/opened/launched -- Typ = Shutter / Dimmer / VD / RGBW / Program / Switch / Scene -- Mode="day" Device will be taken into accoung only if it's day -- Mode="night" Device will be taken into accoung only if it's night -- Modes are not mandatory to use this scene (no mode = mode="both") -- Add a Roller Shutter (FGR) -- Parameter "steps" is needed to set how many steps this roller shutter will do to open (to protect motors of 100 steps) --table.insert(LightsList, {typ="Shutter", id=279, steps=6}); -- Add a Dimmer (FGD) --table.insert(LightsList, {typ="Dimmer", id=10}); -- Add a RGBW device (FG-RGB) : To fade a choosen color with RGBW parameters (Set this color at full range, scene will fade this value from 0 to the value set in VD) --table.insert(LightsList, {typ="RGBW", id=20, r=150, g=100, b=0, w=255}); -- Add a RGBW Program : To set a RGBW program, just use "program" parameter -- Add "start" parameter to manage when this program will be started during the light fadein (in percentage) -- If no "start" parameter is set, program will be started at the beginning of the scene --table.insert(LightsList, {typ="Program", id=20, program=3, start=50}); -- Add a switch (FGS) -- Add "start" parameter to manage when this turnon action will be done during the light fadein (in percentage) -- If no "start" parameter is set, action will be done at the beginning of the scene --table.insert(LightsList, {typ="Switch", id=49, start=100}); -- To add a VD -- If it's a light VD : Parameter "slider" needed to manage brightness --table.insert(LightsList, {typ="VD", id=298, slider=10}); -- "btn" paramater can be added to set a color preset before the fadein (Be sure that the VD brightness for this button is set et 1%) --table.insert(LightsList, {typ="VD", id=298, slider=10, btn=6}); -- If it's not a light VD (with brightness slider) : Just indicate "btn" parameter --table.insert(LightsList, {typ="VD", id=298, btn=6}); -- Add "start" parameter if you want to manage when this button will be pressed during the dawn fade in (in percentage) --table.insert(LightsList, {typ="VD", id=298, btn=6, start=50}); -- Scene : To start a scene -- Add "start" parameter to manage when the action will be done during the light fadein (in percentage) -- If no "start" parameter is set, action will be done at the beginning of the scene --table.insert(LightsList, {typ="Scene", id=254, start=50}); -- List of the Audio System VDs which will be used to wake you up -- One line = One action : One parameter per line = slider OR btn, not both -- Exemple for an action on the slider 15 of the VD 245 --table.insert(SpeakerAction, {id=245, slider=15}); -- Exemple for an action on the button 6 of the VD 245 --table.insert(SpeakerAction, {id=245, btn=6}); Réglage basiques du fonctionnement de la scène ROOM Cette variable doit avoir la même valeur que celles du VD et le nom de la Variable Globale créée (REVEIL_***) StartVolume vous servira si vous ne souhaitez pas que le fondu audio commence à partir de la valeur 1. CurveLight et CurveAudio Courbes utilisées pour effectuer le Fade IN des devices. Si vous êtes joueurs, commentez ces lignes et la scène en sélectionnera au hasard à chaque lancement! Réglages du DEBUG debug 1 Activé / 0 Désactivé lang Langue du DEBUG ("fr" ou "en") DisplayNamesorID Affichage des Pièces + Noms des Devices ("Names) ou Type + ID lors du traitement de l'entrée (ID) DisplayNamesAtStartup Affichage (1) ou non (0) de la liste des entrées qui seront traitées au démarrage du script DisplayRGBWValues Affichage (1) ou non (0) des valeurs détaillées R,G,B,W utilisées pour varier le device RGBW DaylighDelay Durée après laquelle la scène considèrera qu'il fait jour après lever/coucher du soleil VolDiffMin Différence minimale de volume entre la valeur StartVolume et celui paramétré depuis le VD LimitDebugLines Limiter le nombre de lignes à 4 maxi par device et 20 maxi par volet roulant (1) ou Activer les 100 lignes de traitement pour chaque (0) CheckAlarmMode Vérifier si une alarme est programmée avant le démarrage du script DisplaySceneNames Afficher les nom et pièce des scènes utilisées. Activer cette option augmente le temps d'exécution du script CheckAlarmMode Vérifier si un réveil est programmé pour autoriser le déclenchement manuel de cette scène. Si cette option est à 0, la scène pourra être lancée et utilisera les derniers paramètres utilisés pour traiter les périphériques. DisplayScenesNames Afficher ou non les noms de scènes + les pièces où elles sont affectées dans le DEBUG. Cette option est susceptible de considérablement augmenter le temps de traitement du script (api.get pour chaque récupération de nom) tempo Temps entre deux actions sur un bouton Courbes (Robert Penner's Easing Equations) Ajout de périphériques LightsList typ = Shutter id ID du Module pas Nombre de pas pour ouvrir ce volet (pour préserver le moteur). 20 Pas maxi typ = Device id ID du Module typ = VD id ID du VD slider Numéro du slider de luminosité dans le VD btn Numéro du bouton à appuyer start* correspond à quel pourcentage du fondu lumineux sera appuyé le bouton en question typ = RGBW Note : Basez-vous sur une couleur à 100%, la scène fera les calculs pour graduer ces 4 valeurs simultanément à la valeur paramétrée depuis le VD id ID du Module r Valeur du Rouge (0-255) qui constitue la couleur que vous souhaitez au réveil g Valeur du Vert (0-255) qui constitue la couleur que vous souhaitez au réveil b Valeur du Bleu (0-255) qui constitue la couleur que vous souhaitez au réveil w Valeur du Blanc (0-255) qui constitue la couleur que vous souhaitez au réveil typ = Switch id ID du Module start* correspond à quel pourcentage du fondu lumineux sera envoyée la commande turnOn en question typ = Scene id ID de la scène start* correspond à quel pourcentage du fondu lumineux sera démarrée la scène en question typ = Program id ID du Module program ID du programme à démarrer start* correspond à quel pourcentage du fondu lumineux sera démarré le programme en question * Ces paramètres ne sont pas obligatoires. Si start n'est pas renseigné, les paramètres seront exploités au début du script. SpeakerAction id ID du VD de l'enceinte 2ème argument = Type du Bouton à préciser (l'un des deux seulement) avec l'id de ce bouton. slider Numéro du slider de puissance dans le VD btn Numéro du bouton à appuyer (exemple : allumage d'un ampli, choix d'une source...) Modes La scène est autonome sur la notion de jour et nuit. Ainsi, il est possible de préciser un mode pour chacune des entrées de la table LightsList. Ce mode n'est pas indispensable, mais il permet, pour chacune des entrées de préciser dans quelle(s) situation(s) on souhaite voir telle entrée de la table s'actionner : Seulement s'il fait jour : mode="jour" Seulement s'il fait nuit : mode="nuit" Dans tous les cas : mode="both" ou rien du tout Quelques exemples de configuration Lights et Speakers - Ajouter un dimmer (type FGD211) : table.insert(LightsList, {typ="Dimmer", id=79}); - Ajouter un module RGBW. Modifier les valeurs de r (rouge), g (vert), b (bleu) et w (blanc) par celles qui vous permettront d'avoir la couleur de votre choix. Attention : Basez-vous sur une puissance à 100% pour les valeurs de couleur. (0 à 255) C'est la scène qui ajustera la puissance de ces réglages en fonction de la puissance paramétrée dans le VD et la puissance nécessaire à l'instant t pour l'allumage progressif du module. L'exemple suivant donnera donc un blanc plutôt chaud qui s'allumera progressivement. table.insert(LightsList, {typ="RGBW", id=449, r=180, g=100, b=0, w=255}); - Ajouter une lampe type Hue (via VD), en utilisant la dernière couleur de celle-ci : table.insert(LightsList, {typ="VD", id=89, slider=10}); - Ajouter une lampe type Hue (via VD), en rechargeant un nouveau preset de couleur ou de balance des blancs. Attention, je conseille que la luminosité de ce bouton soit la plus basse possible. Sinon, vous aurez un flash à 100% lors de l'appui sur le bouton, avant d'avoir un allumage progressif vers la valeur programmée dans le VD. table.insert(LightsList, {typ="VD", id=89, slider=10, btn=6}); - Ajouter un volet roulant qui s'ouvrira en 6 étapes. table.insert(LightsList, {typ="Shutter", id=279, steps=6}); - On mélange et on complexifie : Je veux que le volet 45 s'ouvre progressivement en 20 étapes, seulement si le soleil est levé, que le device 67 s'allume seulement si le soleil n'est pas levé et que le VD 89 s'allume dans tous les cas : table.insert(LightsList, {typ="Shutter", mode="jour", id=45, pas=20}); table.insert(LightsList, {typ="Dimmer", mode="nuit", id=67}); table.insert(LightsList, {typ="VD", mode="both", id=89, slider=10, btn=6}); Pour les enceintes, c'est toujours de la même forme {id=ID du VD, TypedeBouton=NumBouton}. Mettre les actions dans l'ordre où vous voulez les voir se réaliser. TypedeBouton = btn ou slider - Ajouter une enceinte type Sonos : table.insert(SpeakerAction, {id=242, slider=15}); -- VD 242 / Action sur le slider 15 table.insert(SpeakerAction, {id=242, btn=18}); -- VD 242 / Appui sur le bouton 18 - Ajouter deux enceintes type Sonos. Regrouper les actions similaires. Dans l'exemple suivant, les deux enceintes se verront mettre leur slider à zéro avant que le moindre programme soit démarré (par l'appui sur le bouton 18). table.insert(SpeakerAction, {id=242, slider=15}); -- VD 242 / Action sur le slider 15 table.insert(SpeakerAction, {id=252, slider=15}); -- VD 252 / Action sur le slider 15 table.insert(SpeakerAction, {id=242, btn=18}); -- VD 242 / Appui sur le bouton 18 table.insert(SpeakerAction, {id=252, btn=18}); -- VD 252 / Appui sur le bouton 18 - Ajouter une enceinte type Yamaha Multicast table.insert(SpeakerAction, {id=242, btn=3}); -- VD 242 / Appui sur le bouton 3 pour l'allumage table.insert(SpeakerAction, {id=242, slider=24}); -- VD 242 / Action sur le slider 24 table.insert(SpeakerAction, {id=242, btn=10}); -- VD 242 / Appui sur le bouton 10 (Source) - Ajouter deux enceintes type Yamaha Multicast - Même chose en double : table.insert(SpeakerAction, {id=242, btn=3}); -- VD 242 / Appui sur le bouton 3 pour l'allumage table.insert(SpeakerAction, {id=245, btn=3}); -- VD 245 / Appui sur le bouton 3 pour l'allumage table.insert(SpeakerAction, {id=242, slider=24}); -- VD 242 / Action sur le slider 24 table.insert(SpeakerAction, {id=245, slider=24}); -- VD 245 / Action sur le slider 24 table.insert(SpeakerAction, {id=242, btn=10}); -- VD 242 / Appui sur le bouton 10 (Source) table.insert(SpeakerAction, {id=245, btn=10}); -- VD 245 / Appui sur le bouton 10 (Source) - On peut très bien avoir une enceinte type Sonos et une enceinte type Yamaha Multicast. Et bien, il suffit de mixer les deux méthodes : table.insert(SpeakerAction, {id=245, btn=3}); -- VD 245 / Appui sur le bouton 3 pour l'allumage (Yamaha Multicast) table.insert(SpeakerAction, {id=242, slider=15}); -- VD 242 / Action sur le slider 15 (Sonos) table.insert(SpeakerAction, {id=245, slider=24}); -- VD 245 / Action sur le slider 24 (Yamaha Multicast) table.insert(SpeakerAction, {id=242, btn=18}); -- VD 242 / Appui sur le bouton 18 (Sonos) table.insert(SpeakerAction, {id=245, btn=10}); -- VD 245 / Appui sur le bouton 10 (Yamaha Multicast) Icône de la scène Exemple de DEBUG Téléchargements [REVEIL]_CHAMBRE v2.1.vfib Advanced Alarm Clock 3.6.lua English Version : Advanced Alarm Clock on the offical forum Scène 2.7 (Le support n'est plus fourni pour cette version : Manageable Alarm Clock 2.7.lua Modifié le 22 avril 2020 par J3R3M Scène v3.6 - VD 2.1 3 2
Lazer Posté(e) le 16 mars 2019 Signaler Posté(e) le 16 mars 2019 Génial ! Je me réveille avec une scène programmée à l'arrache qui fait plus ou moins pareil (lumière ou volet + musique), mais là c'est super paramétrable avec un beau VD ! Je crois que je vais le tester... Faut que je trouve un moment et le courage de m'y remettre. D'ailleurs, tu crois qu'il serait utilisable avec un volet ? Sachant que pour éviter les 99 positions du volet (pas génial pour le moteur), je l'ouvre par palier de 25% (donc 4 positions en fait)
J3R3M Posté(e) le 16 mars 2019 Auteur Signaler Posté(e) le 16 mars 2019 Lire cela de ta part me fait plaisir @Lazer! Effectivement, ce n'est pas bête pour les volets. Je l'ai fait pour moi et j'ai visiblement oublié de le remettre en harmonisant mon code. Il est possible de corriger rapidement le truc en ajoutant une condition (similaire à celle que j'utilise pour les debugs à 25-50-75-100) d'ailleurs. Il faudrait cependant ajouter une option dans le script pour la gestion des volets pour que ce soit optimal et moins bidouille. À l'heure actuelle, si tu ajoutes un volet comme un module lumineux, ça va fonctionner mais tu vas rencontrer le problème des 99 pas effectivement. Mais je vais rapidement faire une modification qui permettra de choisir le nombre de pas, pour les volets roulants. Merci de la suggestion
J3R3M Posté(e) le 16 mars 2019 Auteur Signaler Posté(e) le 16 mars 2019 (modifié) Et voilà, la version 1.2 est disponible! Je viens d'éditer le premier post et j'ai mis à jour les scripts et téléchargements. Par contre, je n'ai pas le recul que j'avais sur la version précédente. Les tests que j'ai effectués semblaient concluants, mais n'hésitez pas à me dire si quelque chose n'est pas clair ou s'il y a un bug. Je rappelle que je suis ouvert aux suggestions, notamment au niveau de l'optimisation du code LUA. Il y a encore quelques mois, je ne savais pas ce qu'était le LUA, alors je ne maitrise forcément pas totalement la chose. J'ai donc ajouté la gestion des Volets Roulants. Les Volets Roulants s'intègrent comme un device lumière, avec d'autres paramètres pour optimiser leur utilisation. Désormais, il y a un mode à paramétrer sur les devices. Ce mode sert à gérer l'ouverture automatique des volets en fonction du levé du soleil. Le mode "AND" sur un "Shutter" ouvrira les volets au même rythme que les lumières. Les "device" et "VD" en mode "OR", ne s'allumeront que si le soleil n'est pas levé à l'instant t. Les autres devices en mode "AND" s'allumeront au même rythme que l'ouverture des volets roulants. Lors de la déclaration d'un volet roulant, il faut saisir un nombre de pas que fera le volet roulant, afin effectivement de ne pas abîmer le moteur en lui imposant les 100 pas. J'attends vos éventuels retours Modifié le 16 mars 2019 par J3R3M 1
pepite Posté(e) le 17 mars 2019 Signaler Posté(e) le 17 mars 2019 Excellentissime, je n'en utilisais pas. Fait que je trouve du temps pour le tester. Tu n'es pas mis d'exemples avec Speakerlist, mais je suppose que si tu n en specifies pas..pas d enceintes ? Aucune par defaut. Je pose la question sans avoir lu le code :-).Top. Et non ce n'est pas du temps perdu que de partager. Au contraire . Un grand merciEnvoyé de mon BND-L21 en utilisant Tapatalk
pepite Posté(e) le 17 mars 2019 Signaler Posté(e) le 17 mars 2019 Petite suggestion choisir les jours de la semaine :-) Envoyé de mon BND-L21 en utilisant Tapatalk 1
J3R3M Posté(e) le 17 mars 2019 Auteur Signaler Posté(e) le 17 mars 2019 (modifié) Salut @pepite il y a 33 minutes, pepite a dit : Tu n'es pas mis d'exemples avec Speakerlist, mais je suppose que si tu n en specifies pas..pas d enceintes ? Aucune par defaut. Effectivement, je partais du principe qu'il y avait au moins forcément une enceinte. Je viens de rajouter les conditions permettant de ne pas utiliser d'enceintes, ce qui donne une petite version 1.3 désormais il y a 30 minutes, pepite a dit : Petite suggestion choisir les jours de la semaine :-) Ce VD permet de mettre un réveil fixe pour tous les jours travaillés (Lun-Ven par défaut) ou en "One Shot" pour le prochain horaire disponible. Il est possible de modifier les jours travaillés pour les adapter à sa situation. Par contre, si le but est de programmer en avance différents réveils pour chaque jour de la semaine, je préconise plutôt l'utilisation du VD Triggers journaliers, que j'avais justement fait sur la base de cette idée Modifié le 17 mars 2019 par J3R3M
kioneoranga Posté(e) le 17 mars 2019 Signaler Posté(e) le 17 mars 2019 Super VD Merci pour le partage
Lazer Posté(e) le 17 mars 2019 Signaler Posté(e) le 17 mars 2019 @J3R3M pas encore testé le VD, mais j'ai commencé par lire les paramètres. Du coup, plusieurs questions me viennent : - l'aube, c'est à dire l'allumage progressif de la lumière, semble avoir lieu AVANT l'heure programmée de réveil (afin que la luminosité soit maximale précisément à l'heure du réveil). Comment faire si je souhaite que l'Aube démarre à l'heure du réveil ? - est-il possible de piloter un module RGBW ? - SpeakersList => comment puis-je faire pour effectuer plusieurs actions : allumer l'ampli/enceinte (appui sur un bouton) puis régler le volume sonore à 0 (slider), puis sélectionner une source (favori radio, playlist, etc => appui sur un 2nd bouton). Seulement après, le son pourra monter progressivement.
pepite Posté(e) le 17 mars 2019 Signaler Posté(e) le 17 mars 2019 Supposins que je sois a 80%, Mon reveil fixe (pas different chaque jour) n a lieu que lund, mardi, jeudi et vendredi.Ce serait un plus de pouvoir choisir non ? Envoyé de mon BND-L21 en utilisant Tapatalk
J3R3M Posté(e) le 17 mars 2019 Auteur Signaler Posté(e) le 17 mars 2019 (modifié) Il y a 8 heures, kioneoranga a dit : Super VD Merci pour le partage Merci @kioneoranga! N'hésite pas à faire un retour de ton expérience avec celui-ci! Il y a 7 heures, Lazer a dit : @J3R3M pas encore testé le VD, mais j'ai commencé par lire les paramètres. Effectivement @Lazer, en te lisant, je me suis rendu compte que ça manquait un peu d'explications sur le principe de fonctionnement du VD et de la scène. J'ai rajouté un peu plus d'infos sur le principe dans le premier post! Il y a 7 heures, Lazer a dit : - l'aube, c'est à dire l'allumage progressif de la lumière, semble avoir lieu AVANT l'heure programmée de réveil (afin que la luminosité soit maximale précisément à l'heure du réveil). Comment faire si je souhaite que l'Aube démarre à l'heure du réveil ? D'après les études qui ont été faites, le but est de réveiller peu à peu l'organisme en reproduisant l'effet du levé du soleil. Cela permet un réveil plus agréable et moins difficile à l'heure du réveil, soit quand la lumière est à 100%. Mais, à chacun son utilisation, j'ai donc modifié le VD dans ce sens. J'ai modifié le lien de téléchargement du premier post. Dans cette nouvelle version, tu as une variable "StartScene" qui, si tu en changes la valeur, démarrera la scène à l'heure du réveil et non x minutes avant celle-ci. J'espère que ça te conviendra Il y a 7 heures, Lazer a dit : - est-il possible de piloter un module RGBW ? Dans l'état actuel des choses, je ne peux pas te le dire, mais je ne pense pas. Je n'en ai pas, il faut que je regarde comment ces modules fonctionnent pour être certain que la scène puisse les gérer et l'adapter en conséquence. Je vais m'y pencher cette semaine Il y a 7 heures, Lazer a dit : SpeakersList => comment puis-je faire pour effectuer plusieurs actions : Pour le coup, ton besoin est plutôt précis. Voilà ce que fait la scène à ce jour : Mettre le Slider de chaque enceinte sur 0 (1s entre chaque appui) VD Lumières - Appuyer sur le bouton du VD s'il a été spécifié Simulation d'aube (Fade lumineux) de la durée paramétrée dans le VD, en respectant les modes des lampes/volets (AND ou OR) Appuyer sur le bouton de chaque enceinte pour démarrer le programme (1s entre chaque appui) Fade de toutes les enceintes de la durée paramétrée Désactivation du réveil s'il avait été paramétré sur "Une fois" C'est à dire que, dans ton cas, il va manquer simplement la première action qui est l'appui sur un bouton pour allumer l'enceinte, puisque les autres actions sont gérées par la scène. Je comprends donc que tes enceintes ne s'allument pas automatiquement lorsque tu sélectionnes une source? Tes enceintes doivent-elles d'abord être allumées avant que le volume soit envoyé via le slider ? Pour cet exemple spécifique et en fonction de tes réponses, je pense que le plus simple sera de mettre en place une fonction personnalisable dans le programme de la scène, pour permettre d'ajuster ces petits détails. Modifié le 17 mars 2019 par J3R3M
J3R3M Posté(e) le 17 mars 2019 Auteur Signaler Posté(e) le 17 mars 2019 Il y a 4 heures, pepite a dit : Supposins que je sois a 80%, Mon reveil fixe (pas different chaque jour) n a lieu que lund, mardi, jeudi et vendredi. Ce serait un plus de pouvoir choisir non ? Cher @pepite, j'ai modifié le VD pour que tu puisses l'utiliser comme bon te semble Dans le VD, tu peux spécifier les jours de repos et le réveil régulier ne se déclenchera pas lors de ceux-ci! Fais-moi le plaisir d'au moins le tester s'il-te-plaît, puisque ces modifications ont quand même demandé à ce que je me creuse pas mal la tête au niveau de la programmation
pepite Posté(e) le 18 mars 2019 Signaler Posté(e) le 18 mars 2019 Bonjour @J3R3M Malheureusement, je ne suis pas à 80 % Ce n'etait qu'un exemple ;-) mais ca peut permettre à tous de gerer les jours que l'on souhaite. Super évolution, y compris pour les enceintes ;-) . Je vias évidemment le tester et certainement l'adopter ;-) . Je vais tout relire histoire de bien comprendre ;-).
Lazer Posté(e) le 18 mars 2019 Signaler Posté(e) le 18 mars 2019 @J3R3M un grand merci pour tes réponses et ta réactivité à faire évoluer ton VD ! Pour mes enceintes, en effet, j'utilise mon VD Yamaha Musiccast ( https://www.domotique-fibaro.fr/topic/11713-yamaha-musiccast/ ) et je fais 2 clics pour allumer et choisir la source. Il y a 10 heures, J3R3M a dit : le plus simple sera de mettre en place une fonction personnalisable dans le programme de la scène, pour permettre d'ajuster ces petits détails C'est facile à faire ? Je n'ai pas encore regardé le code, je veux bien m'y mettre s'il le faut.
pepite Posté(e) le 18 mars 2019 Signaler Posté(e) le 18 mars 2019 Et cette fonction c'est toi qui l'a fait ? ou nous devons la faire ? Sinon, je pense à une évolution fortement suggéré par @Lazer et ses 2 clics : Permettre ceci, par exemple, qu'en penses tu/vous ? table.insert(SpeakersList, { {id=243, slider=10, btn=18}, {id=243, btn=19} }); table.insert(LightsList, { {typ="Device", mode="AND", id=67}, {typ="Device", mode="AND", id=82} })
Lazer Posté(e) le 18 mars 2019 Signaler Posté(e) le 18 mars 2019 Hihi, t'es en train de nous refaire une syntaxe à la GEA Mais j'approuve le concept, une liste d'actions à effectuer, qui sera facilement lue par une boucle for
J3R3M Posté(e) le 18 mars 2019 Auteur Signaler Posté(e) le 18 mars 2019 (modifié) Il y a 12 heures, pepite a dit : Malheureusement, je ne suis pas à 80 % Ce n'etait qu'un exemple ;-) mais ca peut permettre à tous de gerer les jours que l'on souhaite. Super évolution, y compris pour les enceintes ;-) . Je vias évidemment le tester et certainement l'adopter ;-) . Je vais tout relire histoire de bien comprendre ;-). Bon alors effectivement, il a plus d'options du coup Il y a 11 heures, Lazer a dit : @J3R3M un grand merci pour tes réponses et ta réactivité à faire évoluer ton VD ! @Lazer , c'est avec plaisir, surtout lorsque j'ai le temps de le faire! Il y a 11 heures, Lazer a dit : Pour mes enceintes, en effet, j'utilise mon VD Yamaha Musiccast ( https://www.domotique-fibaro.fr/topic/11713-yamaha-musiccast/ ) et je fais 2 clics pour allumer et choisir la source. Je vais aller voir ça, mais les appuis supplémentaires ne poseront pas de problème Il y a 11 heures, Lazer a dit : Je n'ai pas encore regardé le code, je veux bien m'y mettre s'il le faut. Il y a 11 heures, Lazer a dit : C'est facile à faire ? Oh oui, le plus difficile a été fait je pense. Je vais juste permettre l'appui sur plusieurs boutons pour le même VD, ça permettra pus de choses. Il y a 11 heures, Lazer a dit : Je n'ai pas encore regardé le code, je veux bien m'y mettre s'il le faut. Je vote pour que tu regardes le code après l'avoir testé, pour que tu ne me dises pas tout de suite que je me suis trop compliqué la vie, ou le contraire d'ailleurs Il y a 11 heures, pepite a dit : Et cette fonction c'est toi qui l'a fait ? ou nous devons la faire ? Je m'en occupe Il y a 11 heures, pepite a dit : Permettre ceci, par exemple, qu'en penses tu/vous ? En fait, je vois l'intérêt du double clic sans aucun doute, mais pas avec la syntaxe que tu proposes ci-dessus. Le but d'avoir deux tableaux est de les remplir simplement, mais utiliser qu'une seule ligne pour les remplir avec toutes les informations, je trouve ça plus complexe, moins lisible et plus difficile à maintenir. Utiliser cette syntaxe serait, je pense, un bon moyen de faire peur aux personnes ne voulant absolument pas trop avoir de lien avec la programmation. J'ai en tête une solution qui devrait permettre de conserver "la simplicité" tout en permettant plusieurs clics sur des boutons Enfin, vous me confirmerez cela ou pas quand j'aurai fait les modifs en question Modifié le 18 mars 2019 par J3R3M
J3R3M Posté(e) le 18 mars 2019 Auteur Signaler Posté(e) le 18 mars 2019 (modifié) Je vais publier une nouvelle version de la scène qui permettra plusieurs actions sur différents boutons et qui devrait pouvoir gérer les modules RGBW. Seulement, je n'en ai pas sous la main, donc je me suis renseigné et j'ai essayé de faire quelque chose, sans pouvoir tester... Pouvez-vous me confirmer qu'il failler faire ainsi pour allumer un module RGBW avec des valeurs personnalisées ? fibaro:call(id, "setColor", red, green, blue, white); fibaro:call(id, "turnOn"); Modifié le 18 mars 2019 par J3R3M
J3R3M Posté(e) le 18 mars 2019 Auteur Signaler Posté(e) le 18 mars 2019 (modifié) Voici la version bêta de la scène en v1.4 qui, je l'espère, répondra à toutes vos attentes. Avant de modifier le code du premier post, pouvez-vous me confirmer que la commande du post précédent est correcte pour la gestion des modules RGBW ? Si oui, pouvez-vous tester cette scène (avec le VD) s'il-vous-plaît et me dire si la gestion RGBW est bonne* ? Merci d'avance Non seulement je n'ai pas de module RGBW et je suis en déplacement, alors ce n'est pas des plus pratiques * EDIT : J'ai supprimé la ligne suivante qui n'a visiblement rien à faire pour la gestion des modules rgbw fibaro:call(LightsList[j].id, "turnOn"); Dans cette prochaine version, SpeakersList laisse place à SpeakerAction. Pour chaque entrée dans ce tableau, on met dans l'ordre les actions que l'on veut que la scène fasse : SpeakerAction(IDduVD, TypeBouton, NumBouton) Du coup, plus de limite à un bouton spécifique, si vous voulez lancer une source et la changer aussitôt après, vous pouvez le faire, mais l'intérêt sera nul pour un script qui sera retardé. Cependant, allumer un ampli avant de mettre un slider un zéro puis appuyer sur un autre bouton ensuite, plus aucun problème pour @Lazer en théorie! La boucle traite bêtement les informations du tableau : - Si c'est un bouton "btn", j'appuie sur ce bouton - Si c'est un slider, je le mets à 0% Pour le coup, je trouve cela plus simple à comprendre et à mettre en place pour une personne lambda. Par la suite, la boucle récupèrera les entrées qui ont un slider déclaré pour en faire monter le volume progressivement. Le code de cette scène a été supprimé de ce message et directement intégré au premier post. Modifié le 21 mars 2019 par J3R3M 2
Lazer Posté(e) le 18 mars 2019 Signaler Posté(e) le 18 mars 2019 Merci, c'est top tout ça Pas le temps de tester là, tu développes plus vite que ton ombre ! D'ici ce week-end normalement je m'y attelle
J3R3M Posté(e) le 18 mars 2019 Auteur Signaler Posté(e) le 18 mars 2019 (modifié) il y a 55 minutes, Lazer a dit : Merci, c'est top tout ça Pas le temps de tester là, tu développes plus vite que ton ombre ! D'ici ce week-end normalement je m'y attelle Merci de ta réponse De manière implicite, cela signifierait que les commandes de contrôle des modules RGBW sont bonnes (puisque tu parles directement de test) ? Je ne sais absolument pas comment réagit la HC2 aux enchaînements directs de deux fonctions pour le même module.. Edit : visiblement, la ligne fibaro:call(LightsList[j].id, "turnOn"); n'est jamais utilisée pour les modules RGBW et c'est tant mieux, c'est plus cohérent! Pour aller vite à programmer, il faut commencer par être très malade un week-end, mais pas trop pour pouvoir taper sur un clavier. Ensuite, quand ça va mieux (le dimanche soir ), il faut être en déplacement et ne rien avoir à faire, pas même prendre des nouvelles de madame qui n'est pas tellement sur le même fuseau horaire cette semaine! Bon, je triche un peu aussi : je ne fais que des choses simples qui ne demandent pas trop de réflexion : des tableaux, des conditions et des boucles... Modifié le 18 mars 2019 par J3R3M
pepite Posté(e) le 19 mars 2019 Signaler Posté(e) le 19 mars 2019 Bonjour, Parfait tout ca, well done. Bienvenu speakerActions ;-) Tu degaines vite ;-)
Lazer Posté(e) le 19 mars 2019 Signaler Posté(e) le 19 mars 2019 A vrai dire je ne sais pas pour le RGB, je n'ai qu'un seul ruban RGB, et je ne le pilote jamais via des scripts LUA. Je change la couleur via l'appli mobile (en pratique il est toujours de la même couleur), et c'est la Harmony qui permet de l'allumer/éteindre. C'est bien pour cela que je parlais de tester. En tout cas ça m'a l'air bien complet tout ça, il va falloir que je mette en place le VD/Scène complet et tester un matin
J3R3M Posté(e) le 19 mars 2019 Auteur Signaler Posté(e) le 19 mars 2019 il y a une heure, pepite a dit : Bonjour, Parfait tout ca, well done. Bienvenu speakerActions ;-) Tu degaines vite ;-) Salut @pepite et merci. J'espère surtout que c'est parfaitement fonctionnel il y a 2 minutes, Lazer a dit : A vrai dire je ne sais pas pour le RGB, je n'ai qu'une seul ruban RGB, et je ne le pilote jamais via des scripts LUA. Je change la couleur via l'appli mobile (en pratique il est toujours de la même couleur), et c'est la Harmony qui permet de l'allumer/éteindre. C'est bien pour cela que je parlais de tester. Je comprends mieux. Effectivement il est certain que la gestion des couleurs automatisée n'a pas grand intérêt et, quitte à le faire soi-même, autant le faire via l'application qui lui et consacrée. il y a 3 minutes, Lazer a dit : En tout cas ça m'a l'air bien complet tout ça, il va falloir que je mette en place le VD/Scène complet et tester un matin Merci, n'hésite pas à commencer par un test en journée avec un fade de seulement 1mn, histoire de ne pas louper le réveil le lendemain si jamais il y a la moindre erreur dans le traitement d'un device. Je ne veux pas être responsable d'une vraie panne de réveil xD
Lazer Posté(e) le 19 mars 2019 Signaler Posté(e) le 19 mars 2019 Oui oui c'est sûr que je vais commencer par un test en journée ! De toute façon le matin j'ai toujours mon réveil traditionnel..... euh, que dis-je, mon smarpthone en fait (j'ai passé plus d'années de ma vie réveillé par un téléphone (first Nokia 3310 ) que par un vrai réveil)
Messages recommandés