[Tech] Application smartphone pour la domotique

Se simplifier l'existence, trouver des solutions, de l'aide ou un conseil : bricolage, jardinage, nouvelles technologies, déménagements ...
gtn
Messages : 419
Inscription : 07 oct. 2011
Résidence / Quartier / Activité : Solaris
A remercié : 0
A été remercié : 3 fois

Re: [domotique] Application smartphone pour la domotique

Message par gtn »

skorby a écrit :c est étonnant qu'il n y a aucun fan d Apple ici :) quand je vois qu'un mobile sur 2 est un Iphone dans le métro, c'est bizarre.
Apres je suis d'accord, ca reste un peu plus cher de développer pour ios mais y a bien un geek dans ce fort qui développe déja non ^^
il faut le trouver ;)
Si on m'offre un iPhone 6 (j'avoue que c'est une joli bestiole 8-) ), je suis près à faire un effort pour aider à porter le code :ouioui: ...
D'ailleurs il faut que j'update la version publiée WP, j'ai ajouté quelques fonctions (commandes générales volets et lumières sur l'accueil) :
wp_ss_20140923_0001.jpg
wp_ss_20140923_0001.jpg (27.25 Kio) Consulté 5930 fois
Avatar de l’utilisateur
Antoine&Fanny
Messages : 439
Inscription : 17 juil. 2013
Résidence / Quartier / Activité : Ex-résident
A remercié : 2 fois
A été remercié : 0

Re: [domotique] Application smartphone pour la domotique

Message par Antoine&Fanny »

gtn a écrit : Si on m'offre un iPhone 6 (j'avoue que c'est une joli bestiole 8-) ), je suis près à faire un effort pour aider à porter le code :ouioui: ...
On te fait une quête ? On a intérêt d’être nombreux vu le prix de la bête.
Tu préfères 6 ou 6Plus ?

:jesors:
gtn
Messages : 419
Inscription : 07 oct. 2011
Résidence / Quartier / Activité : Solaris
A remercié : 0
A été remercié : 3 fois

Re: [domotique] Application smartphone pour la domotique

Message par gtn »

Antoine&Fanny a écrit : On te fait une quête ? On a intérêt d’être nombreux vu le prix de la bête.
Tu préfères 6 ou 6Plus ?

:jesors:
Le 6 Plus et en 128 Go s'il te plait :dejadehors:
Avatar de l’utilisateur
Antoine&Fanny
Messages : 439
Inscription : 17 juil. 2013
Résidence / Quartier / Activité : Ex-résident
A remercié : 2 fois
A été remercié : 0

Re: [domotique] Application smartphone pour la domotique

Message par Antoine&Fanny »

gtn a écrit :
Antoine&Fanny a écrit : On te fait une quête ? On a intérêt d’être nombreux vu le prix de la bête.
Tu préfères 6 ou 6Plus ?

:jesors:
Le 6 Plus et en 128 Go s'il te plait :dejadehors:
Tu as des gouts de luxe ! :ane:

Bon je propose une collecte, mais on a intérêt d’être très (très très) nombreux à donner... :marteau:
Pour info : http://goo.gl/D5fCzr
gtn
Messages : 419
Inscription : 07 oct. 2011
Résidence / Quartier / Activité : Solaris
A remercié : 0
A été remercié : 3 fois

Re: [domotique] Application smartphone pour la domotique

Message par gtn »

Antoine&Fanny a écrit : Pour info : http://goo.gl/D5fCzr
Excellent ! Bon je vais me contenter de mon brave Samsung pour l'instant :( !
Minou159
Messages : 332
Inscription : 19 mai 2013
Résidence / Quartier / Activité : Ex-résident
A remercié : 2 fois
A été remercié : 2 fois

Re: [domotique] Application smartphone pour la domotique

Message par Minou159 »

Je développe sous iOS, je veux bien donner un coup de main si vous m'expliquez comment s'y prendre pour attaquer la domotique! Concernant l'iPhone 6, j'en ai pris un à la sortie que j'ai rendu 3 jours après pour retourner sur un 5s.... Trop gros à mon goût et n'apporte rien de plus techniquement (pour le moment).
Avatar de l’utilisateur
Antoine&Fanny
Messages : 439
Inscription : 17 juil. 2013
Résidence / Quartier / Activité : Ex-résident
A remercié : 2 fois
A été remercié : 0

Re: [domotique] Application smartphone pour la domotique

Message par Antoine&Fanny »

gtn a écrit : Bon je vais me contenter de mon brave Samsung pour l'instant :( !
C'est très bien Samsung ! :good:
Pour avoir fait S3, note2, note3 et bientôt note4 (avec une tab 2 et une gear fit aussi), je trouve ça très bien 8-)

Tu pourras nous faire une visite des appartements en réalité virtuelle pour quand on aura le Gear VR ? :ane:
:dejadehors:
gtn
Messages : 419
Inscription : 07 oct. 2011
Résidence / Quartier / Activité : Solaris
A remercié : 0
A été remercié : 3 fois

Re: [domotique] Application smartphone pour la domotique

Message par gtn »

Minou159 a écrit :Je développe sous iOS, je veux bien donner un coup de main si vous m'expliquez comment s'y prendre pour attaquer la domotique!
Avec plaisir, je vais préparer ça.
Antoine&Fanny a écrit :
Tu pourras nous faire une visite des appartements en réalité virtuelle pour quand on aura le Gear VR ? :ane:
:dejadehors:
Ce n'est plus (du tout) de mon niveau :cry:
Minou159
Messages : 332
Inscription : 19 mai 2013
Résidence / Quartier / Activité : Ex-résident
A remercié : 2 fois
A été remercié : 2 fois

Re: [domotique] Application smartphone pour la domotique

Message par Minou159 »

gtn a écrit :Avec plaisir, je vais préparer ça.
Merci gtn, j'attends vos infos avec impatience pour faire quelques tests ;)
Avatar de l’utilisateur
psm
Messages : 13
Inscription : 09 juin 2014
Résidence / Quartier / Activité : Ô Paris
A remercié : 0
A été remercié : 0
Contact :

Re: [domotique] Application smartphone pour la domotique

Message par psm »

Bonjour tout le monde.

Nouveau venu au Ô Paris, et fraichement connecté aux internets depuis hier, j'ai commencé à regarder un peu tout ça, aussi bien le site myhomeweb.com que les diverses applications (iOS pour moi) qui permettent de piloter le tout depuis son canapé.

Pour iOS, la seule application est donc iMyHome (ou iMyHomeLE en version limité) qui ne fait malheureusement pas la découverte auto
des lampes/volets/whatever.

Du coup j'ai deux questions:

- le protocole OpenWebNet ne permet t'il pas de faire un listing des "devices" qu'il gère ? (et donc les adresses)
- qqu'un aurait-il déjà essayé le gazillion de possibilités et du coup fait une liste à jour des devices ?

Merci à vous !

[EDIT]

Bon en bidouillant un peu, j'ai trouvé un moyen de faire tourner une appli Android sur mon Mac, donc je vais tester ce soir pour voir ce que ça donne.

[/EDIT]
gtn
Messages : 419
Inscription : 07 oct. 2011
Résidence / Quartier / Activité : Solaris
A remercié : 0
A été remercié : 3 fois

Re: [domotique] Application smartphone pour la domotique

Message par gtn »

Pour débuter/essayer :

Pour faire simple (on peut faire beaucoup beaucoup plus complexe et sécurisé) : il faut que le serveur domotique « Master » soit connecté à la box, ça permet de l’attaquer via le réseau WiFi depuis son smartphone/ordi/tablette.
(attention à la réservation d’@ip de façon à ne pas avoir de changement à chaque reboot, il y a un fil la-dessus)
Minou159 a écrit : Merci gtn, j'attends vos infos avec impatience pour faire quelques tests ;)
J'espère que ce sera un bon début :

Il n’y a pas d’authentification, tout se passe sur le port 20 000.

Il « suffit » d’envoyer directement sur @Master:20000 les commandes (en ascii c’est important, pas en unicode) et quand on lui parle bien, le serveur répond : *#*1##
Puis, si c’est une interrogation, il balance les données et termine par le même ack *#*1##
Ce serait simple s’il répondait en une seule trame mais non, il fait ça au fur et à mesure, rien de rédhibitoire mais du coup il faut attendre le ack de fin.

En WP8.1/C# pour envoyer les commandes, c’est obligatoirement de l’asynchrone, chez moi, ça donne ça, il y a surement plus joli mais ça fonctionne bien, j’ai fait une petite classe avec du send et du send+receive comme ci-dessous :

async public Task<String> WSend_r(string message, string serverHostname, string serverPort)
{
StreamSocket clientSocket = null;
HostName serverHost;
string r_message = "";
try {
clientSocket = new StreamSocket();
serverHost = new HostName(serverHostname);
await clientSocket.ConnectAsync(serverHost, serverPort);
}
catch (Exception ex) {
// Debug string mes = ex.Message;
return "KO";
}
try {
DataWriter writer = new DataWriter(clientSocket.OutputStream);
DataReader reader = new DataReader(clientSocket.InputStream);
reader.InputStreamOptions = Windows.Storage.Streams.InputStreamOptions.None;
writer.WriteString(message);

await writer.StoreAsync();
//Lecture premier octet
await reader.LoadAsync(1);

r_message = reader.ReadString(1);
string[] stringSeparators = new string[] { "*#*1##" } ;
string[] res = new string [] {""};
bool End_read = false ;
int i = 0;
// au 2 ème ack *#*1## on sort, c’est ok.
while (i<2)
{
await reader.LoadAsync(1);
r_message += reader.ReadString(reader.UnconsumedBufferLength);
if (r_message.EndsWith("*#*1##"))
{
i++;
}
}
writer.DetachStream();
reader.Dispose();
writer.Dispose();
clientSocket.Dispose();
clientSocket = null;

}
catch (Exception exception)
{
// Debug string err = exception.Message;
return "KO";
}
return r_message;
}
}


Pour allumer les lumières (idem send_r au-dessus mais plus simple, pas besoin de retour, juste Send) :
Send("*1*1*" + num + "##");
Avec num étant le n° d’index de la lumière (j’y viens ensuite)

Pour éteindre :
Send("*1*0*" + num + "##");

Pour interroger l’état des lumières :
WSend_r("*#1*0##", serverHostname, serverPort);

Qui va donner une réponse du type :
*1*0*33##*1*0*34##*1*1*35##*1*0*36##*1*0*16##*1*0*15##*1*1*17## etc

Avec 1 = lumière ; 0/1 = éteint/allumé ; 33/36/etc = les index des lumières :ouioui: .

Et donc si on split avec ## on a donc l’état de chaque lumière et accessoirement ça me sert pour la détection des index :japon: (qui sont individuellement > = 10) .

Pour les volets, c’est tout pareil sauf qu’il n’y a pas d’état.
Pour ouvrir le volet d’index « num » :
Send("*2*1*" + num + "##");
Pour fermer :
Send("*2*2*" + num + "##");
Pour stopper :
Send("*2*0*" + num + "##");

Pour obtenir la liste des index des volets, idem lampes :
WSend_r("*#2*0##");
On split avec ## pour avoir les index.


Pour les sondes de température :

WSend_r("*#4*1##");
Liste les différentes sondes avec leur température, elles sont séparées par ##
Je n’affiche que la principale ( chez moi il y en a deux, il peut y en avoir plus suivant les apparts/config)

Il y a un paquet d’autres fonctionnalités assez simple à récupérer voir modifier mais ce sera pour plus tard (pas eu le temps).
Je m’intéresse pour la suite à la programmation du chauffage, aux relevés de consos, aux scénarios, et pour le fun au visiophone. Il y a aussi des fonctions potentiellement sympa d'extinctions temporisées qui peuvent être utiles.

J’allais oublier, pour éteindre par zone et général, chez moi 0,1,2,3, il y a 4 zones de définies de mémoire (salon+ entrée, chambre, sdb+sde, ext), donc pour tout éteindre :
Send("*1*1*0##");
Send("*1*1*1##");
Send("*1*1*2##");
Send("*1*1*3##");
Pour tout allumer :
Send("*1*0*0##");
Send("*1*0*1##");
Send("*1*0*2##");
Send("*1*0*3##");

Pareil pour les volets, tout up :
Send("*2*1*0##");
Send("*2*1*1##");
Send("*2*1*2##");
Down :
Send("*2*2*0##");
Send("*2*2*1##");
Send("*2*2*2##");
Stop :
Send("*2*0*0##");
Send("*2*0*1##");
Send("*2*0*2##");

Voilà de quoi s’occuper pour quelques heures … :good: !
gtn
Messages : 419
Inscription : 07 oct. 2011
Résidence / Quartier / Activité : Solaris
A remercié : 0
A été remercié : 3 fois

Re: [domotique] Application smartphone pour la domotique

Message par gtn »

psm a écrit :Bonjour tout le monde.
Pour iOS, la seule application est donc iMyHome (ou iMyHomeLE en version limité) qui ne fait malheureusement pas la découverte auto
des lampes/volets/whatever.
Ils veulent vraiment vendre la version complète :( , c'est pourtant assez "simple" (voir ci-dessus).
Avatar de l’utilisateur
psm
Messages : 13
Inscription : 09 juin 2014
Résidence / Quartier / Activité : Ô Paris
A remercié : 0
A été remercié : 0
Contact :

Re: [domotique] Application smartphone pour la domotique

Message par psm »

gtn a écrit :
psm a écrit :Bonjour tout le monde.
Pour iOS, la seule application est donc iMyHome (ou iMyHomeLE en version limité) qui ne fait malheureusement pas la découverte auto
des lampes/volets/whatever.
Ils veulent vraiment vendre la version complète :( , c'est pourtant assez "simple" (voir ci-dessus).
Oui c'est vrai, mais bon si j'arrive à la faire fonctioner ça peut valoir les 3X€, j'ai déjà toutes les lumières, les volets aussi, il me reste la gestion de température et d'énergie et c'est là que ça se complique.

J'ai testé Domotouch (via un émulateur Android), et il chope sans soucis lamps et volets mais pas le reste. Affaire à suivre donc.
Minou159
Messages : 332
Inscription : 19 mai 2013
Résidence / Quartier / Activité : Ex-résident
A remercié : 2 fois
A été remercié : 2 fois

Re: [domotique] Application smartphone pour la domotique

Message par Minou159 »

Merci gtn, je vais jeter un œil... J'ai essayé avec un navigateur de me connecter directement sur l'ip de la domotique et il faut un login et mdp, quels sont-ils?
Minou159
Messages : 332
Inscription : 19 mai 2013
Résidence / Quartier / Activité : Ex-résident
A remercié : 2 fois
A été remercié : 2 fois

Re: [domotique] Application smartphone pour la domotique

Message par Minou159 »

Autre question, qu'envoyez-vous dans la string "serverHostName"? Avez-vous un exemple d'appel de la fonction? Merci.
gtn
Messages : 419
Inscription : 07 oct. 2011
Résidence / Quartier / Activité : Solaris
A remercié : 0
A été remercié : 3 fois

Re: [domotique] Application smartphone pour la domotique

Message par gtn »

Minou159 a écrit :Merci gtn, je vais jeter un œil... J'ai essayé avec un navigateur de me connecter directement sur l'ip de la domotique et il faut un login et mdp, quels sont-ils?
Je ne sais plus, il faut que je regarde ça ce soir (de mémoire bticino/bticino en user et admin/*****, remplacer ***** par une suite logique :siffle: en admin...)
mais de cette façon vous accéderez au serveur http et pas aux commandes types openwebnet qui ne nécessitent pas d'authentification.
Minou159 a écrit :Autre question, qu'envoyez-vous dans la string "serverHostName"? Avez-vous un exemple d'appel de la fonction? Merci.
Pour serverHostName (en c#), soit le fqdn soit directement l'adresse ip locale du serveur (et ça renvoie en asynchrone le string de réponse du serveur domotique).
Exemple :
WSend_r("*#1*0##", "192.168.1.10", "20000");
Minou159
Messages : 332
Inscription : 19 mai 2013
Résidence / Quartier / Activité : Ex-résident
A remercié : 2 fois
A été remercié : 2 fois

Re: [domotique] Application smartphone pour la domotique

Message par Minou159 »

Merci gtn pour toutes les infos, j'ai réussi à interagir avec la domotique, il faut que je creuse pour la découverte automatique puis ensuite une interface !
gtn
Messages : 419
Inscription : 07 oct. 2011
Résidence / Quartier / Activité : Solaris
A remercié : 0
A été remercié : 3 fois

Re: [domotique] Application smartphone pour la domotique

Message par gtn »

Minou159 a écrit :Merci gtn pour toutes les infos, j'ai réussi à interagir avec la domotique, il faut que je creuse pour la découverte automatique puis ensuite une interface !
:good: :good: :good:

Je suis justement en train de refondre l'interface, c'est long, fastidieux, compliqué, j'ai pas le temps... :cry:, l'idée étant de scroller entre les différentes contrôles pour que ce soit lisible, simple et rapide, tout un programme (c'est le cas de le dire :) )
Minou159
Messages : 332
Inscription : 19 mai 2013
Résidence / Quartier / Activité : Ex-résident
A remercié : 2 fois
A été remercié : 2 fois

Re: [domotique] Application smartphone pour la domotique

Message par Minou159 »

Est-ce que votre application fonctionne uniquement en local?
gtn
Messages : 419
Inscription : 07 oct. 2011
Résidence / Quartier / Activité : Solaris
A remercié : 0
A été remercié : 3 fois

Re: [domotique] Application smartphone pour la domotique

Message par gtn »

Minou159 a écrit :Est-ce que votre application fonctionne uniquement en local?
Techniquement rien n'empêche de l'utiliser via internet.

Version simple (et fort déconseillée) : il faut connaitre son @ip publique (ou avoir un dns/dyndns) et paramétrer la box pour rediriger les entrées (port 20000 par défaut) vers le serveur domotique. Mais comme il n'y a pas d'authentification, n'importe qui peut alors jouer avec la centrale domotique de l'extérieur :( .
Remarque à ce sujet: le serveur étant upnp par défaut dans le version installée (il est conseillé de le flasher) , avec certaines box, il semblerait que le routage soit actif :marteau: , une personne mal intentionnée pourrait probablement se faire un tetris immeuble au fort :crazy:.

Sinon, l'idéal, c'est d'avoir un VPN perso mais il faut un serveur à la maison (pc ou nas synology par exemple), là pas de problème.
Répondre