RSS

Pilotage en Bash du Cube Canalsat…

Entre nous, le décodeur « Cube » de Canalsat n’est pas terrible et surtout pas très fiable. Si vous voulez l’intégrer dans votre solution domotique, apprendre les codes de télécommande Infrarouge restait la meilleure solution mais ça c’était avant… Avant la version de SAGEM (SAG1) qui ne comprend pas tout, si vous avez un PACE : bichonnez-le ! Parce qu’il vous sera remplacé par un … SAGEM (Bruit du Tonnerre !) . Après il vous restera l’UPNP pour le commander et c’est le but de cet article.

1. On fixe l’adresse IP du Cube Canalsat : chez moi : 192.168.1.102

2. On télécharge le script de Markus qui va bien ici : https://gist.github.com/markusfisch/6130842

3. On note l’uuid qui est dans ce fichier xml : http://192.168.1.102:49152/stbdevice.xml (si 192.168.1.102 est l’adresse IP de votre Cube aussi !). Toutes les commandes ci-dessous en ont besoin. Chez moi : uuid:DEADBEEF-31c8-1234-1234-1c23d45f6789

4. On « Pair » son Canalsat avec son PC/Server avec cette commande (en utilisant le script en 2):

./upnpscript.sh 192.168.1.102:49152/RegistrationService/control/ urn:schemas-nds-com:service:Registration:1#RequestPairing ‘<uuid>uuid:DEADBEEF-31c8-1234-1234-1c23d45f6789</uuid>’

Le Cube doit afficher en face avant un code de 4 chiffres:

canal_cubeIci il affiche 2222, donc on doit écrire « vite vite vite » la commande suivante :

./upnpscript.sh 192.168.1.102:49152/RegistrationService/control/ urn:schemas-nds-com:service:Registration:1#RegisterSmartPhone ‘<uuid>uuid:DEADBEEF-31c8-1234-1234-1c23d45f6789</uuid><pairingData>2222</pairingData>’

Notez le 2222 entre les balises « pairingData ». Si pas assez rapide, il faudra refaire le « RequestPairing ».

5. A partir de là, vous pouvez discuter avec le Cube, pour envoyer des codes de Télécommande:

./upnpscript.sh 192.168.1.102:49152/RemoteControlService/control/ urn:schemas-nds-com:service:Remote-Control:1#SendKey ‘<uuid>uuid:DEADBEEF-31c8-1234-1234-1c23d45f6789</uuid><key>57350</key>’

Notez que je suis assez pauvre en code de télécommande et que je suis preneur si vous en trouvez d’autres :

57350 CH+
57350 CH-
57347 VOL+
57348 VOL-

C’est tout, à mettre entre les balises « key ». (Update du 05/05/2014: voir les commentaires pour d’autres codes !)

Pour le reste, il faut creuser encore. j’ai bien trouvé comment changer de chaîne avec :

./upnpscript.sh 192.168.1.102:49152/ChannelSelectionService/control/ urn:schemas-nds-com:service:Channel-Selection:1#SetSelectedChannel ‘<uuid>uuid:DEADBEEF-31c8-1234-1234-1c23d45f6789</uuid><channelListId>3d0a2a1</channelListId><locator>dvb://1.438.2267</locator><channelNumber>21</channelNumber>’

Cette commande ci-dessus met la 21, mais le paramètre important est ce qui est entre les balises « locator » (le reste ne compte pas) que vous retrouvez avec la commande:

./upnpscript.sh 192.168.1.102:49152/ChannelSelectionService/control/ urn:schemas-nds-com:service:Channel-Selection:1#GetSelectedChannel ‘<uuid>uuid:DEADBEEF-31c8-1234-1234-1c23d45f6789</uuid>’

Bonne Chance !

 
27 Commentaires

Publié par le 8 février 2014 dans Hardware, Software

 

Mise à Jour du script Bash pour Alarme Somfy Protexion

logoSomfyBlNouveau « Post » pour la publication de ma mise à jour du script Bash qui date d’un an déjà !

Téléchargement Ici

Cette nouvelle version qui permet (comme la précédente) la vérification de l’état des 3 zones (A,B & C), l’envoi d’un message Xpl (si l’option est activée dans le script : xplon=1) et aussi la modification de l’état des zones avec retour d’état Xpl en option.

Notez que vous devez toujours renseigner le Code Pin utilisateur 1, l’adresse IP de la Centrale Téléphonique et ré-écrire complètement la Carte d’authentification (la carte par défaut est dans ce script) et n’oubliez pas le « chmod +x SomfyProtexiom.sh » !

Un peu d’aide :

domophil@server:~$ ./SomfyProtexiom.sh –help
Somfy Protexion Bash Control Script
–help or -h            this menu
–view or -v            Check the status only
–AllON or -ABC         To secure all Zone A,B & C
–AllOFF or -off        To disable all Zone A,B & C
-A or -a                To secure Zone A
-B or -b                To secure Zone B
-C or -c                To secure Zone C

  • Note #1 :

Les messages XPL sont de type plcbus.basic pour que ce soit compatible avec mon ancienne version de Domogik (0.1) mais ils peuvent être facilement modifiés : xpl-stat plcbus.basic « device=B1,command=OFF »

plcbus.basic
{
device=B1
command=OFF
}

  • Note #2 :

Pour que le script puisse envoyer des messages XPL, j’utilise le script « send.py » de Domogik (0.1), et le login de l’utilisateur doit avoir des droits root (problème identique voir Update2 de cet article)
Par facilité, j’ai ajouté une ligne avec mon login (domophil) dans le fichier /etc/sudoers
domophil        ALL = NOPASSWD: /usr/bin/python

Pour la configuration de Domogik 0.1, il suffit de créer 3 devices plcbus (voir plus haut pourquoi !) une par zone :

DevicesAlarme

et j’ai choisi de les intégrer sur la vue Domogik :

DeviceZoneAlarme

Update du 19/04/2014: Petite correction d’un bug

 
1 commentaire

Publié par le 2 novembre 2013 dans Software

 

Mise à Jour du Rack…

image

Ce qui a été fait sur le rack :

  • Ajout d’un Switch 8 Ports gigabit pour faciliter le brassage et la circulation de l’air.
  • Fabrication d’une « pieuvre » 5V car la multiplication des adaptateurs 5V commençait a être gênante: Un adaptateur 5 Volts alimente les 2 Switchs et une caméra IP.
  • Changement du boitier du disque dur externe Esata (l’alimentation du précédant boitier avait lâché)
  • Changement du hub USB Alimenté (4 à 7 ports)
  • Ajout d’un ventilateur frontal de 12cm (quand l’été arrivera)

Ce qui reste à faire:

  • fabriquer des câbles RJ45 de très courte taille
  • Réorganiser les câbles d’alimentation
  • Trouver un support pour le Wattmètre Belkin

Résumé de mon matériel: Dans About>Hardware

 
Poster un commentaire

Publié par le 28 mai 2013 dans Cables, Hardware

 

Statistiques 2012…

2012 a été une année assez pauvre en articles mais pas en projets (J’ai beaucoup d’articles à écrire !). Aussi 2012 a été l’année du passage à la « Phase 2 » de mon projet complet.

Je suis maintenant très satisfait de mon installation domotique (Réseaux IP/1-Wire, Serveur, Capteur, Carte Relais, PLCBUS…) : avec les quelques modifications récentes (injecteur 5V et GCE Relay Board Buffer) la fiabilité est au rendez-vous ! Mes 2 applications « Phares » : MonThermostat & MonChauffeEau tournent (en production) et les économies d’énergie sont déjà visibles ! J’espère pouvoir partager tout ça très bientôt.

Aussi, je ne voulais pas vous faire un article classique avec les statistiques de visites de ce blog : qui n’ont pas vraiment de sens ! Mais vous montrer, plutôt, les « stats » de notre maison avec cette infographie (dont Hervé est très friand) et merci « easel.ly » !

easelly_visual

Vivement l’année prochaine pour faire des comparaisons.

Encore quelques chiffres (des sous !)

  • 1132.12 Euros pour 9997958W (abonnement HP/HC inclus)
  • 251.81 Euros pour 78936.75 Litres pour l’eau (taxes diverses incluses)
 
2 Commentaires

Publié par le 26 mars 2013 dans Commentaires

 

MonThermostat : Work In Progress (Still !)

MTH-WIP

Juste un petit article pour indiquer mon avancement sur le projet « MonThermostat » (depuis le dernier)

Toujours beaucoup de travail en ce moment, de trajets (en Avion) donc du temps pour bosser sur MonThermostat en l’interface PHP !

  • Concept : 100%

L’idée est OK, je n’ai pas encore trouvé la meilleure solution pour gérer l’inertie des radiateurs en fonction de la température extérieur.

  • Programmation du Deamon (PHP & BASH) : 95%

Le Deamon est pratiquement terminé puisqu’il est déjà en mode production. Mon système fonctionne sur 4 zones (SDB, Bureau, Chambre Bébé & Salon) pas de problèmes techniques à signaler excepté des erreurs humaines. J’ai pu tester le comportement de ce dernier en cas de panne de sonde de température: conforme !

  • Interface Web PHP: 50%

L’interface global d’utilisation fonctionne (réglage des consignes de température). Je dois ajouter tout ce qui concerne les erreurs de saisie opérateur. Il ne me manque plus que la partie configuration du Thermostat en question : Ajout des actionneurs (Sonde de température / Radiateurs)

  •  Plugin Domogik pour Carte Relais USB (8 relais) de chez GCE-Electronics : 100%

Le plugin gceusbrb ainsi que le gcerbuffer est OK : les nombreuses commutations des relais électrique jours après jours et le « zéro panne » sont là pour prouver la bonne marche de cette carte USB.

 
2 Commentaires

Publié par le 22 février 2013 dans Hardware, MonThermostat, Software

 

GCE Relay Board Buffer

Je suis très content de ma carte 8 relais de chez GCE, hormis la réactivité qui n’est pas des plus rapides. Un autre problème se pose lorsque l’on souhaite créer un système automatique (et non manuel) avec cette carte. Si un script (type thermostat) souhaite changer l’état de plusieurs relais : il faudra observer un temps d’attente entre les différentes commandes. Mais si plusieurs scripts veulent changer l’état d’un ou plusieurs relais en même temps : là, nous allons avoir un problème puisque, seule, la première commande, sera exécutée et les suivantes seront oubliées.

Et c’est là qu’intervient le « GCERBUFFER » ou GCE Relay Board Buffer. C’est un script ou plutôt un service Linux qui va lire une pile (FIFO) qui va lancer les commandes d’ouverture ou fermeture de relais toutes les 60 secondes (cet intervalle entre les « switch » de relais est configurable) et si ces dernières sont présentes. Il suffira, aux scripts, voulant fermer un relai, de lancer la commande suivante « gcerbset led<numero_relai>_<etat> » pour charger la pile de commande. Aussi, par protection, toute commande en doublon ne sera pas chargée.

schemaFIFO

Pour le téléchargement, ça se passe ICI et pour l’installation lire la « note.txt ».

 

Troubleshooting 1-Wire

DS18B20

J’ai de temps à autre des soucis avec mon réseau « 1-wire »:

  • Plus de remontée de températures
  • Plus de remontée de Compteur (compteur d’eau)
  • Plus de remontée de températures et compteur

Malgré les logs très détaillés de Domogik 0.1, seul le stop et start du plugin 1-wire de Domogik résolvait temporairement ces problèmes : Ce qui m’a amené à créer un script qui détecte un des problèmes (ci dessus) et redémarre le plugin. A télécharger ICI (Lisez la note(.txt) pour la configuration.

Insérez dans la Crontab pour être executé toutes les 5 minutes:

*/5 * * * * /home/domophil/AutoRestartDMGplugin/AutoDMGplugin.sh

J’ai relevé de nombreux « restart » de plugin, le jour ou j’ai ajouté de nouvelles sondes, ce qui a confirmé mes craintes, l’alimentation du bus (en mode parasite) ne suffisait plus pour mes 10 sondes de température et mon compteur. J’ai donc créé un injecteur 5V suivant les plans de Domino et Yoann :

MontageInjecteur

Et c’est beaucoup mieux !

 
3 Commentaires

Publié par le 31 décembre 2012 dans Cables, Hardware, MonThermostat, Software