Commande volet

Forum dédie aux capteurs et gateway mysensors.org
caape
Messages : 16
Inscription : 15 sept. 2015, 09:38

Commande volet

Message par caape »

Bonjour
Je viens de passer a MySensors mes 2 volets du salon.
J'arrive bien a les ouvrir ou les fermer et même a les ouvrir juste un peu (Blinds).
Le soucis, j'ai deux interrupteurs par volet qui se sont créés sur domoticz. Un qui fonctionne avec Monter, Descendre, Stop et un avec le curseur de réglage en %. J'aurai préféré en avoir qu'un avec tout mais surtout avec les boutons qui fonctionnent avec le curseur. J'ai du faire une bidouille avec un getBool() pour ouvrir ou fermer avec les boutons. en plus, le curseur ne se mets pas a la bonne valeur a l'arret du volet. J mets a jour avec un V_PERCENTAGE et un V_UP ou V_DOWN ou V_STOP suivant le cas.
Quand je mets le type blinds sur l'autre interrupteur, le curseur ne fonctionne pas, je ne peux pas le bouger dans domoticz.
Y a-t-il une astuce que j'ai raté ?

Comment faire pour n'avoir qu'un devices qui fonctionne avec le curseur ET le bouton STOP.

A+
Artpol5
Messages : 12
Inscription : 17 oct. 2015, 21:17

Re: Commande volet

Message par Artpol5 »

Bonjour,

J ai quasi le même problème, j ai un volet roulant et 2 interrupteurs qui se crée, l un pour la montée et l autre pour la descente. Est-il possible de fuisionner 2 interrupteurs ou un autre interrupteur pour ce blinds existe ?
Raspberry+ rfx+ Oregon (thermo, hygro, pluvio, anémo)+interrupteur livolo+carte relais gpio+ pH-mètre+ Flamingo fa21rf+Aeotec use gen 5+ Fdg-212+ Fibaro rgbw+ Fgbs-001+ Fgms-001+ Fgk-101
AlexElectro
Messages : 55
Inscription : 18 juil. 2015, 22:13

Re: Commande volet

Message par AlexElectro »

Bonjour
je relance le sujet... avez vous trouvé une solution ce problème?
Domoticz sur RPi - RfxCom - Sondes oregon DIY - Bus one wire - sondes DS18B20 - BMP085 - Home confort
http://electro.bassignyinformatique.fr/
vil1driver
Messages : 5661
Inscription : 30 janv. 2015, 11:07
Localisation : Rennes (35)

Re: Commande volet

Message par vil1driver »

salut,

3 personnes et pas une pour dire comment elle à créé son volet...

ça fonctionne bien ici... vous devriez faire comme je fais.. ;) bonne journée :D
Dernière modification par vil1driver le 12 févr. 2016, 17:00, modifié 1 fois.
MAJ = VIDER LE CACHE(<-Clicable)
/!\Les mises à jour de Domoticz sont souvent sources de difficultés, ne sautez pas dessus
modules.lua

Un ex domoticzien
deennoo
Messages : 4036
Inscription : 25 janv. 2015, 02:00

Re: Commande volet

Message par deennoo »

Avez vous essaye les venitian blind ?
De quoi se faire Plaisir et essayer d'aider...
http://www.domo-attitude.fr
lucaskywalker
Messages : 4
Inscription : 14 déc. 2015, 11:15

Re: Commande volet

Message par lucaskywalker »

Bonjour

Il y a deux choses que je ne comprend pas avec le s_cover.

Dans les variables qui apparaissent sous domoticz, j ai V_UP, V_DOWN, V_STOP mais aussi V_FORECAST?? est ce normal.

Je ne comprends pas non plus le type de message que renvois domoticz.
Ils n ont pas l air d etre de type V_UP, V_DOWN, V_STOP.
quand je fais:

Code : Tout sélectionner

Serial.print(message.type);
il imprime "29,30,31"...est qu il y a une commande pour transformer le type de variable en string?

Sinon pour le souci du curseur c pareil pour moi, il est bloqué quand je créer ce type d'interrupteur. mm en venitian blind.
Par contre pour moi c peut etre normal vu que je n ai pas de V_PERCENTAGE.

Code : Tout sélectionner

/* ===============================================================
      Project: Store Test
       Author: Lucas van Rossum
      Created: 14/02/2016
  Arduino IDE: 1.7.8

================================================================== */


#include <MySensor.h>
#include <SPI.h> 
#define RELAY_ON 0
#define RELAY_OFF 1 
// relay pin
#define RELAY_UP  4
#define RELAY_DWN  6

// CHILD ID
#define CHILD_IDA 1  
 
#define BUTUP  3 //boutton pin
#define BUTDWN  5 //boutton pin

// to store button
int ValButUP=0;
int ValButDWN=0;

int oldAction=0;


bool state;

// Construct MySensors library
MySensor gw; 

MyMessage msgAUp(CHILD_IDA,V_UP);
MyMessage msgADwn(CHILD_IDA,V_DOWN);
MyMessage msgAStp(CHILD_IDA,V_STOP);

void setup(){
   // Initialize library and add callback for incoming messages
   gw.begin(incomingMessage, AUTO, true);
    // Send the sketch version information to the gateway and Controller
   gw.sendSketchInfo("Store ", "0.1");

   // Register all sensors to gw (they will be created as child devices)
  gw.present(CHILD_IDA, S_COVER);
  
   //Setup all the Arduino Pins
   
   pinMode(RELAY_UP, OUTPUT);
   pinMode(RELAY_DWN, OUTPUT);
   pinMode(BUTUP, INPUT);
   pinMode(BUTDWN, INPUT);
   
   // Activate internal pull-up
   //digitalWrite(BUTUP,HIGH);
   //digitalWrite(BUTDWN,HIGH);
   
   //Turn OFF any power to the Relay channels
   
   digitalWrite(RELAY_UP,RELAY_OFF);
   digitalWrite(RELAY_DWN,RELAY_OFF);
   
   
   
   
 }
 
 void loop(){
   // Alway process incoming messages whenever possible
   gw.process();
   //Recuperer le statut des poussoirs
   ValButUP = digitalRead(BUTUP);
   ValButDWN = digitalRead(BUTDWN);
   
//   if (ValButUP == HIGH ){
//   Serial.print(", up  ");
//}
//   if (ValButDWN == HIGH ){
//   Serial.print(", down ");
//}   
   //UP
   if (ValButUP == HIGH && ValButDWN == LOW  ){
     int action=1;                                 //1 monté,2descente, 0stop
     if (action!=oldAction) {
       Serial.print(", up relay ");
       digitalWrite(RELAY_UP,RELAY_ON);
       gw.send(msgAUp.set(1), false);} // retour info vers Controleur
     oldAction=action;}
   //DOWN
   if (ValButDWN == HIGH && ValButUP == LOW ){
     int action=2;                              //1 monté,2descente, 0stop
     if (action!=oldAction) {
       Serial.print(", down relay ");
       digitalWrite(RELAY_DWN,RELAY_ON);
       gw.send(msgADwn.set(1), false);} // retour info vers Controleur
     oldAction=action;
   //stop  
   }
   
   if (ValButDWN == LOW && ValButUP == LOW ){
     int action=0;                  //1 monté,2descente, 0stop
     if (action!=oldAction){
       Serial.print(", none ");
       digitalWrite(RELAY_UP,RELAY_OFF);
       digitalWrite(RELAY_DWN,RELAY_OFF);
       gw.send(msgAStp.set(1), false);} // retour info vers Controleur
     oldAction=action;;  
   }
   
   
}
   
void incomingMessage(const MyMessage &message) {
  // Write some debug info
     Serial.println("[incomingMessage]");
     Serial.print("Incoming change for sensor:");
     Serial.print(message.sensor);
     Serial.print("messagetype");
     Serial.print(message.type);
     Serial.print(", New status: ");
     Serial.println(message.getBool());
     
     
  //if (message.type == V_UP) {
  
  //if (message.type == V_UP) {
     // Change relay state
  //   state = message.getBool();
  //   if(state == 1){
  //      digitalWrite(RELAY_UP, RELAY_ON);
   //  }else{
   //     digitalWrite(RELAY_UP, RELAY_OFF);
  //      }
  //}      
  //if (message.type == V_DOWN) {
     // Change relay state
  //   state = message.getBool();
  //   if(state == 1){
   //     digitalWrite(RELAY_DWN, RELAY_ON);
  //   }else{
  //      digitalWrite(RELAY_DWN, RELAY_OFF);
  //      }  
     
 // }   
     
     
//}
}  
   


vil1driver
Messages : 5661
Inscription : 30 janv. 2015, 11:07
Localisation : Rennes (35)

Re: Commande volet

Message par vil1driver »

Il n'y a que des chiffres à transiter..
Si tu regardes la doc de l'api tu verras que ça correspond.
Pour tester fais un Serial.print(V_UP) ;)

Pas de pourcentage non plus mais le reste est fonctionnel
MAJ = VIDER LE CACHE(<-Clicable)
/!\Les mises à jour de Domoticz sont souvent sources de difficultés, ne sautez pas dessus
modules.lua

Un ex domoticzien
lucaskywalker
Messages : 4
Inscription : 14 déc. 2015, 11:15

Re: Commande volet

Message par lucaskywalker »

Ah merci, je n'avais pas vue la colonne value dans la doc de l'API.
Est ce que tu as un V_FORECAST de ton coté? Il apparaît dans domoticz materiel et réglage du node.
Sinon j ai bug sur l appli android, quelque soit le bouton il renvoit 31(V_stop).
Lucas
AlexElectro
Messages : 55
Inscription : 18 juil. 2015, 22:13

Re: Commande volet

Message par AlexElectro »

Salut

J'ai testé le script de lucaskywalker. J'ai quelques soucis car il émet en permanence.... Comme j'ai pas trop confiance dans la breadbord je fais quelques soudures et je vous raconte ! :lol:
Domoticz sur RPi - RfxCom - Sondes oregon DIY - Bus one wire - sondes DS18B20 - BMP085 - Home confort
http://electro.bassignyinformatique.fr/
AlexElectro
Messages : 55
Inscription : 18 juil. 2015, 22:13

Re: Commande volet

Message par AlexElectro »

Bon même bien soudé/cablé ça émet de manière aléatoires des infos.... bizarre....

Sinon pour les curieux c'est assez bien expliqué là : https://www.jeedom.com/forum/viewtopic.php?f=35&t=5381

oui, je sais, c'est la concurrence..... :oops: :oops:
Domoticz sur RPi - RfxCom - Sondes oregon DIY - Bus one wire - sondes DS18B20 - BMP085 - Home confort
http://electro.bassignyinformatique.fr/
Répondre