Comme annoncé, ce forum est passé en lecture seule au 1er janvier 2020. Désormais nous vous invitons à vous rendre sur notre nouvelle page communauté :
Image

A très bientôt !

[Plugin Tiers][Sujet Principal] MiFlora - Xiaomi mi plants

Pour échanger sur les plugins classés en catégorie "Nature"
rene.jullien
Timide
Messages : 326
Inscription : 24 mai 2015, 17:31
Localisation : Alpes Maritimes

Re: MiFlora - Xiaomi mi plants

Message par rene.jullien » 04 déc. 2016, 18:58

frederic34 a écrit :
rene.jullien a écrit :@frederic34: j ai modifie la FAQ mais je ne sais pas re-generer le html avec asciidoctor en ajoutant la TOC. Comment as tu fait ?
Bonjour
J'ai utilisé:

Code : Tout sélectionner

asciidoctor -n -a toclevels=3 -a toc=left index.asciidoc
en me plaçant dans le dossier de la doc fr

Fred
Super, merci ca marche.
J'ai essayé de recupérer les questions de ce forum pour les ajouter a la FAQ

HDB
Timide
Messages : 43
Inscription : 22 mai 2015, 10:28

Re: MiFlora - Xiaomi mi plants

Message par HDB » 04 déc. 2016, 20:30

frederic34 a écrit :Bonjour
Est-ce que quelqu'un en 2.6.6 peut essayer ceci:

Code : Tout sélectionner

gatttool --device=C4:7C:8D:xx:xx:xx --char-write-req -a 0x33 --value=A01F
en remplaçant les xx:xx:xx et faire ensuite un "gattool 35"

Fred
Voila ce que ca donne :

Code : Tout sélectionner

jeedom@Jeedom-07-07-16:~ $ gatttool --device=C4:7C:8D:61:7E:BC --char-write-req -a 0x33 --value=A01F
Characteristic value was written successfully
jeedom@Jeedom-07-07-16:~ $ gatttool -b C4:7C:8D:61:7E:BC --char-read -a 0x35
Characteristic value/descriptor: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 
Pas plus de remontée...

Merci

rene.jullien
Timide
Messages : 326
Inscription : 24 mai 2015, 17:31
Localisation : Alpes Maritimes

Re: MiFlora - Xiaomi mi plants

Message par rene.jullien » 04 déc. 2016, 20:37

HDB a écrit :
frederic34 a écrit :Bonjour
Est-ce que quelqu'un en 2.6.6 peut essayer ceci:

Code : Tout sélectionner

gatttool --device=C4:7C:8D:xx:xx:xx --char-write-req -a 0x33 --value=A01F
en remplaçant les xx:xx:xx et faire ensuite un "gattool 35"

Fred
Voila ce que ca donne :

Code : Tout sélectionner

jeedom@Jeedom-07-07-16:~ $ gatttool --device=C4:7C:8D:61:7E:BC --char-write-req -a 0x33 --value=A01F
Characteristic value was written successfully
jeedom@Jeedom-07-07-16:~ $ gatttool -b C4:7C:8D:61:7E:BC --char-read -a 0x35
Characteristic value/descriptor: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 
Pas plus de remontée...

Merci
Peux tu nous lire le resultat apres l'ecriture:
gatttool --device=C4:7C:8D:61:7E:BC --char-write-req -a 0x33 --value="0xA01F"
gatttool -b C4:7C:8D:61:7E:BC --char-read -a 0x33

Pour la valeur je testerais avec 0x devant pour preciser qu'il s'agit d'hexa

HDB
Timide
Messages : 43
Inscription : 22 mai 2015, 10:28

Re: MiFlora - Xiaomi mi plants

Message par HDB » 04 déc. 2016, 20:39

Code : Tout sélectionner

jeedom@Jeedom-07-07-16:~ $ gatttool --device=C4:7C:8D:61:7E:BC --char-write-req -a 0x33 --value="0xA01F" 
Characteristic Write Request failed: Attribute value length is invalid
jeedom@Jeedom-07-07-16:~ $ gatttool -b C4:7C:8D:61:7E:BC --char-read -a 0x33
Characteristic value/descriptor: 00 00 
jeedom@Jeedom-07-07-16:~ $
Et sans le 0x :

Code : Tout sélectionner

jeedom@Jeedom-07-07-16:~ $ gatttool --device=C4:7C:8D:61:7E:BC --char-write-req -a 0x33 --value="A01F" 
Characteristic value was written successfully
jeedom@Jeedom-07-07-16:~ $ gatttool -b C4:7C:8D:61:7E:BC --char-read -a 0x33
Characteristic value/descriptor: 00 00 
jeedom@Jeedom-07-07-16:~ $ gatttool -b C4:7C:8D:61:7E:BC --char-read -a 0x35
Characteristic value/descriptor: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 
jeedom@Jeedom-07-07-16:~ $ 
Je précise que je ne comprend rien à ces commandes, alors je tape aveuglement !

Merci en tout cas pour le support !

rene.jullien
Timide
Messages : 326
Inscription : 24 mai 2015, 17:31
Localisation : Alpes Maritimes

Re: MiFlora - Xiaomi mi plants

Message par rene.jullien » 04 déc. 2016, 21:46

j ai trouvé une doc assez complete: https://wiki.hackerspace.pl/projects:xiaomi-flora

Available handles:
0x0038 - Reading returns 7 bytes - 1 byte battery level and 6 ASCII chars of firmware version
0x0033 - You need to write 0xA01F to this handle to enable real-time data reading
0x0035 - The actual data from the sensors, can be read only after you enable real-time data, otherwise returns zeros

en 2.6.6 il faut bien trouver un moyen d'ecrire 0xA01F dans le handle 0x0033. Cette operation n'est pas necessaire en 2.6.2.
J'ai 0xaabb dans 0x33 en 2.6.2

rene.jullien
Timide
Messages : 326
Inscription : 24 mai 2015, 17:31
Localisation : Alpes Maritimes

Re: MiFlora - Xiaomi mi plants

Message par rene.jullien » 04 déc. 2016, 22:10

D'apres les different commentaires il faut passer les deux commandes en une fois
je ne sais pas si c est possible de le faire comme ca:
gatttool --device=C4:7C:8D:61:7E:BC --char-write-req -a 0x33 --value=0xA01F --char-read -a 0x35

sinon tu peux essayer en interactif
gatttool --device=C4:7C:8D:61:7E:BC -I
connect
char-write-req 0x33 0xA01F
char-read-hnd 0x35
quit

HDB
Timide
Messages : 43
Inscription : 22 mai 2015, 10:28

Re: MiFlora - Xiaomi mi plants

Message par HDB » 04 déc. 2016, 22:26

J'ai essayé les 2 commandes. La premiere ne donne pas le resultat escompté :

Code : Tout sélectionner

jeedom@Jeedom-07-07-16:~ $ gatttool --device=C4:7C:8D:61:7E:BC --char-write-req -a 0x33 --value=0xA01F --char-read -a 0x35
Characteristic value/descriptor: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 
jeedom@Jeedom-07-07-16:~ $ gatttool --device=C4:7C:8D:61:7E:BC --char-write-req -a 0x33 --value=A01F --char-read -a 0x35
Characteristic value/descriptor: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
Par contre, la deuxieme, en respectant bien le timing du connect, m'a permis d'obtenir un résultat... Mais ca ne reste pas... Attention, il ne faut pas mettre l'indicateur 0x pour l'Hexa, sinon ca passe pas.

Code : Tout sélectionner

jeedom@Jeedom-07-07-16:~ $ gatttool --device=C4:7C:8D:61:7E:BC -I
[C4:7C:8D:61:7E:BC][LE]> connect
Attempting to connect to C4:7C:8D:61:7E:BC
Connection successful
Notification handle = 0x0021 value: 00 
Notification handle = 0x0021 value: 00 
[C4:7C:8D:61:7E:BC][LE]> char-write-req 0x33 A01F
[C4:7C:8D:61:7E:BC][LE]> char-read-hnd 0x35 
Characteristic value was written successfully
Characteristic value/descriptor: d3 00 00 28 00 00 00 20 7c 02 02 3c 00 fb 34 9b 
Notification handle = 0x0021 value: 00 
[C4:7C:8D:61:7E:BC][LE]> quit
jeedom@Jeedom-07-07-16:~ $ gatttool -b C4:7C:8D:61:7E:BC --char-read -a 0x33
Characteristic value/descriptor: 00 00 
jeedom@Jeedom-07-07-16:~ $ gatttool -b C4:7C:8D:61:7E:BC --char-read -a 0x35
Characteristic value/descriptor: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 
jeedom@Jeedom-07-07-16:~ $ 
Je sais donc que les données existent, reste à savoir comment les remonter.

rene.jullien
Timide
Messages : 326
Inscription : 24 mai 2015, 17:31
Localisation : Alpes Maritimes

Re: MiFlora - Xiaomi mi plants

Message par rene.jullien » 04 déc. 2016, 22:53

Merci, c'est confirmé, il faut passer les deux commandes en un seule fois. Dans le lien que j ai donné plus haut ils passent par un script python
J ai l impression que pour la 2.6.6 on va devoir passer par un script externe.
@nechry: sais tu integrer l'appel d'un script externe ? Il faut le mettre dans 3rd partie ?

Je viens de publier une version beta avec la derniere pull request de @nechry et une version bien plus a jour de la doc.

HDB
Timide
Messages : 43
Inscription : 22 mai 2015, 10:28

Re: MiFlora - Xiaomi mi plants

Message par HDB » 04 déc. 2016, 23:06

Nechry nechry... Meme quand j'essai de faire sans toi, ca revient quand dans tes mains...

Merci en tout cas rene.julien, ca avance bien... Du coup, confiant, j'ai lancé une commande pour 4 autres devices !

Avatar de l’utilisateur
frederic34
Timide
Messages : 62
Inscription : 05 sept. 2016, 18:05
Localisation : ST Drézéry - Hérault
Contact :

Re: MiFlora - Xiaomi mi plants

Message par frederic34 » 04 déc. 2016, 23:22

Bonjour
@HDB ton capteur a été associé à l'appli du téléphone, est-ce que tu éteint le tel quand tu fais tes essais?

Fred
Envie de me payer une bière... c'est par ici: http://paypal.me/frederic34

Avatar de l’utilisateur
nickasimir
Actif
Messages : 693
Inscription : 06 août 2014, 19:35
Localisation : Montreuil, Idf

Re: MiFlora - Xiaomi mi plants

Message par nickasimir » 04 déc. 2016, 23:39

bonsoir,

Au vu de l'avancer du plugin je vais me laissé tenter par les mi plants au lieu de mes parrots...
J'ai deux questions est-ce que je peux faire cohabiter sur la même clé ble un parrot et des mi plants ?
et mon autre question est directement lié a mi plant, est-ce le mi plant est utilisable dehors ?

Merci et beau boulot @rene.jullien

edit : je viens de checker le plugin parrot et la clé doit être dédié....
Jeedom en DIY sur NUCI3| Mon Matos : Ici

HDB
Timide
Messages : 43
Inscription : 22 mai 2015, 10:28

Re: MiFlora - Xiaomi mi plants

Message par HDB » 05 déc. 2016, 07:18

@frederic34

Le téléphone est allumé, mais je pense hors de portée du mi plant... je suis d'ailleurs même pas sur qu'il soit encore couplé avec le mi plant depuis la dernière mise à jour de l'IOS.
Je testerai ce soir.

Avatar de l’utilisateur
nechry
Actif
Messages : 9644
Inscription : 24 juin 2014, 20:07
Localisation : Suisse
Contact :

Re: MiFlora - Xiaomi mi plants

Message par nechry » 05 déc. 2016, 08:28

@rene.jullien oui, le script, faut le mettre dans 3rdparty. as-tu le plugin harmonyhub ? c'est de cette façon dont on récupère les info du hub.

Code : Tout sélectionner

$cmd = '/usr/bin/python ' .dirname(__FILE__) . '/../../3rdparty/monscript.py --param1 '. $param1 .' --param2 '. $param2;
$config=str_replace('\\','\\\\',trim(shell_exec($cmd)));
$result_json=json_decode($config,true);		
As-tu consulté la documentation avant de poser ta question?
Les demandes de support en MP ne seront pas traité mais j'accepte les dons paypal.me/nechry
Visiter mon blog http://nechry-automation.ch/

Avatar de l’utilisateur
nechry
Actif
Messages : 9644
Inscription : 24 juin 2014, 20:07
Localisation : Suisse
Contact :

Re: MiFlora - Xiaomi mi plants

Message par nechry » 05 déc. 2016, 08:32

@nickasimir j'ai flowerpowerbt sur le même jeedom qui utilise aussi le même dongle BT que MiFlora.
As-tu consulté la documentation avant de poser ta question?
Les demandes de support en MP ne seront pas traité mais j'accepte les dons paypal.me/nechry
Visiter mon blog http://nechry-automation.ch/

rene.jullien
Timide
Messages : 326
Inscription : 24 mai 2015, 17:31
Localisation : Alpes Maritimes

Re: MiFlora - Xiaomi mi plants

Message par rene.jullien » 05 déc. 2016, 18:33

nechry a écrit :@nickasimir j'ai flowerpowerbt sur le même jeedom qui utilise aussi le même dongle BT que MiFlora.
il me semblait bien que depuis le changement des API parrot le plugin n etait plus exclusif.
Je modifie la FAQ: validé par Nechry :)
Comme gatttools ne fonctionne pas sur mon RPI2, je ne peux pas le tester, pourtant le plugin flowerpowerbt fonctionne sur ce RPI2.

PS: je viens de recevoir mes autres MiFlora commandés au black friday, mais toujours en 2.6.2, dommage ...

HDB
Timide
Messages : 43
Inscription : 22 mai 2015, 10:28

Re: MiFlora - Xiaomi mi plants

Message par HDB » 05 déc. 2016, 21:29

@rene.jullien
Je vais essayer de regarder avec Nechry, il connait mon installation. Peut etre qu'il pourra trouver quelque chose depuis un VPN sur mon réseau si il a le temps demain.
Je ou il vous tiendra au courant.

rene.jullien
Timide
Messages : 326
Inscription : 24 mai 2015, 17:31
Localisation : Alpes Maritimes

Re: MiFlora - Xiaomi mi plants

Message par rene.jullien » 05 déc. 2016, 22:47

HDB a écrit :@rene.jullien
Je vais essayer de regarder avec Nechry, il connait mon installation. Peut etre qu'il pourra trouver quelque chose depuis un VPN sur mon réseau si il a le temps demain.
Je ou il vous tiendra au courant.
J ai fait un petit script python pour le 2.6.6, je le publie dans 3rd partie sur github, peux tu le lancer et verifier si ca recupere les bonnes valeurs

Code : Tout sélectionner

python ./getMiFloraData.py C4:7C:8D:61:7E:BC 2.6.6
python ./getMiFloraData.py C4:7C:8D:61:7E:BC 2.6.2
Le 1er devrais fonctionner mais pas le 2nd

Si ca marche je peux continuer l integration dans le plugin avec l'exemple de Neschy. Reste juste a savoir si ca recupere bien les bonnes valeurs en 2.6.6

Pour le deporté, il va falloir transferer le script dans /tmp en plus.

@Neschy: as tu une idee comment recuperer le niveau de log dans jeedom ? En regardant rapidement ta pull request je pensais que tu avais fait ca, mais c etait juste une variable locale. Pour les helper, je ne maitrise pas non plus.

Avatar de l’utilisateur
nechry
Actif
Messages : 9644
Inscription : 24 juin 2014, 20:07
Localisation : Suisse
Contact :

Re: MiFlora - Xiaomi mi plants

Message par nechry » 05 déc. 2016, 23:32

monlevel=log::getLogLevel('monlog');


Sent from my iPad using Tapatalk
As-tu consulté la documentation avant de poser ta question?
Les demandes de support en MP ne seront pas traité mais j'accepte les dons paypal.me/nechry
Visiter mon blog http://nechry-automation.ch/

HDB
Timide
Messages : 43
Inscription : 22 mai 2015, 10:28

Re: MiFlora - Xiaomi mi plants

Message par HDB » 06 déc. 2016, 09:30

Salut,

Voila les resultats de la commande. J'ai fait ca a distance, alors j'ai pas les valeures exactes, mais la temps doit etre au alentours de 24°C, l'humiditée vers 32%, et la fertility vers 650.

Ca s'annonce bien !

Code : Tout sélectionner

jeedom@Jeedom-07-07-16:~ $  cd /var/www/html/plugins/MiFlora/3rparty/
jeedom@Jeedom-07-07-16:/var/www/html/plugins/MiFlora/3rparty $ python ./getMiFloraData.py C4:7C:8D:61:7E:BC 2.6.2
('Got ', u'Characteristic value/descriptor: aa bb cc dd ee ff 99 88 77 66 00 00 00 00 00 00', ' from gatttool')
('read_ble:', [170, 187, 204, 221, 238, 255, 153, 136, 119, 102, 0, 0, 0, 0, 0, 0])
jeedom@Jeedom-07-07-16:/var/www/html/plugins/MiFlora/3rparty $

Avatar de l’utilisateur
lunarok
Actif
Messages : 6704
Inscription : 08 août 2014, 12:48
Localisation : Anjou

Re: MiFlora - Xiaomi mi plants

Message par lunarok » 06 déc. 2016, 11:40

Et il faut penser à changer la couleur de l'icone :)
Mon Blog | Xiaomi Home
Pour contribuer au développement des plugins (don ou achat de matériel) : Paypal
Aides nous à t'aider : les logs, détails du soucis, la doc, recherche sur le forum ...
PS : pas de support par MP, je ne répondrais pas

Répondre

Revenir vers « [Catégorie] Nature »

Qui est en ligne ?

Utilisateurs parcourant ce forum : Aucun utilisateur inscrit et 12 invités