Fibaro HC2 HC Lite et RFXCom 433 Mhz

RFXCOM

RFXCOMEnfin une bonne nouvelle, la box Fibaro HC2 et le RFXCom.

Le 1er avril est passé, ce n’est pas un poisson et c’est tout à fait possible avec un RaspBerry.

Bien sûr, cela fonctionne aussi pour la HC Lite, l’Eedomus et toute box domotique pouvant recevoir des commandes http.

Il nous faut 1 RaspBerry, un RFXCom USB, le logiciel Domoticz.

Un script Lua sur le RaspBerry qui à chaque changement de valeur d’un device dans Domoticz va envoyer une commande http au HC2.

Dans le HC2, après avoir créer un module virtuel, à réception de la commande http, le module sera mis à jour avec un petit décalage de 1 à 2 secondes.

Vous trouvez de nombreux tutoriels pour installer Domoticz sur un Raspberry ainsi que curl, idem pour les modules virtuels de la HC2, c’est très simple, aussi je vais passer cette étape.

Ci dessous, le script à copier sur le RaspBerry dans le répertoire ‘/domoticz/scripts/lua/’

Attention, le nom du script doit toujours commencer par ‘script_device_’ et finir par ‘.lua’

Astuce : utilisez le logiciel FileZilla sur le port 22 pour copier le script que vous aurez préalablement enregistré et modifé sur votre disque dur.

 

 -- ~/domoticz/scripts/lua/script_device_fibaro.lua

function split(s,delimiter)
 result = {}
 for match in (s..delimiter):gmatch("(.-)"..delimiter) do
 table.insert(result,match)
 end
 return result
end

ip = "utilisateur:mot_de_passe@192.168.x.x"

commandArray = {}
tc = next(devicechanged)
n = string.find(tc,"_")
if n then
 device = string.sub(tc,1,n - 1)
else
 device = tc
end

-- bloc pour 1 device à envoyer
if device == "Temperature ext." then
 status = tostring(otherdevices[device])
 value = tostring(otherdevices_svalues[device])
 value = string.gsub(value,",",";")
 r = split(value,";")
 -- Pour tester les valeurs dans la log de Domoticz, décommettez la ligne suivante
 -- print("Domoticz|"..device.."|"..status.."|"..value)
 oss = "curl 'http://"..ip.."/api/callAction?deviceid=45&name=setProperty&arg1=ui.Label1.value&arg2="..r[1].."C'"
 os.execute(oss)
end
-- fin du bloc à envoyer 1 device

return commandArray

 

La variable ‘value‘ peut contenir plusieurs valeurs séparées par ‘;’ dans les cas suivants et qui ne sont pas exhaustifs :

THGR122NXPour une sonde Oregon extérieure de température avec humidité et point de rosée : 18.4;33;2
Valeur 1 – 18.4 – correspond à la température extérieure
Valeur 2 – 33 – correspond à l’humidité
Valeur 3 – 2 – je pense que l’indice UV

Pour une sonde anémomètre Oregon : 135.00;SE;15;17;0.0;0.0
Valeur 1 – 135.00 – direction du vent le Nord étant 0
Valeur 2 – SE – label direction du vent
Valeur 3 – 15 – Vitesse du vent (à diviser par 2.7648 pour des km/h)
Valeur 4 – 17 – Vitesse des rafales (idem valeur 3)
Je ne connais pas la signification des valeurs 5 et 6.

 

Pour le pluviomètre Oregon : 0;176.8
Valeur 1 – 0 – mm/h
Valeur 2 – 176.8 – mm total

 

Je vous conseille donc d’envoyer dans un premier temps les valeurs dans la log de Domoticz afin de vérifier cela.

Vous pourrez ainsi isoler la valeur désirée à envoyer dans la HC2.

 

Pour le fonctionnement définitif, quelques modifications sont nécessaires :

  1. Renseignez la variable ip de la HC2 précédée du non d’utilisateur et du mot de passe : utilisateur:mot_de_passe@92.168.x.x
  2. Ajoutez autant de blocs (orange) pour les devices Domoticz que de modules virtuels dans la HC2 pour les transferts.
  3. Indiquez le nom du device Domoticz tester.
  4. Renseignez le numéro du device Fibaro : deviceid=45
  5. Renseigner l’étiquette donnée dans le module virtuel de la HC2 : Label1
  6. Enfin isolez la partie de ‘value‘ suivant le device à transférer afin de donner le bon indice de la variable r[1]

Vous pouvez aussi transférer le ‘status’ dans le cas de devices Chacon ou autres, vérifiez avant dans la log de Domoticz les valeurs de la variable ‘value‘ pour vos devices.

 

Conclusion :

Pour à peine 150€ vous disposez d’une passerelle 433 Mhz sur votre box HC2 en attendant qu’un jour Fibaro nous offre cela en natif.

Un autre avantage est de disposer d’un système RaspBerry autonome, avec des événements que l’on peut programmer.

 

Dans un prochain article, vous verrez qu’avec un RaspBerry et la carte Z-Wave.me, on peut aussi piloter ses modules Z-Wave, et faire de même pour remonter les états dans la HC2 ou autre box.

 


A propos Olivier Everhard

Passionné de domotique, informaticien en systèmes d'information dans des secteurs d'activités bâtiment et ingénierie, depuis 2005 j'imagine des solutions pour nous faciliter la vie ...

Laissez un commentaire

Votre adresse de messagerie ne sera pas publiée. Les champs obligatoires sont indiqués avec *

Vous pouvez utiliser ces balises et attributs HTML : <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <strike> <strong>