Ce Forum passera en lecture seule en janvier 2020
Image
Merci de vous rendre sur https://community.jeedom.com maintenant pour vos prochains postes ;)

[Plugin Tiers][Sujet Principal] ArduiDom

Pour échanger sur les plugins classés en catégorie "Protocoles domotiques"
PYCOTO
Timide
Messages : 17
Inscription : 12 mars 2016, 18:39

Re: [Sujet officiel] Plugin ArduiDom

Message par PYCOTO » 13 mars 2016, 20:22

Oui oui c'est ce que j'ai fait.
Mais le demon ne démarre toujours pas.
Je vais réinstaller pour voir si cela change qq chose.

Dans quelle répertoire tu stockes le sketch que je le modifie.

ps : bravo pour le boulot ;) c'est énorme ce que tu as fait.

PYCOTO
Timide
Messages : 17
Inscription : 12 mars 2016, 18:39

Re: [Sujet officiel] Plugin ArduiDom

Message par PYCOTO » 13 mars 2016, 20:47

C'est bon j'ai trouvé le rep du sketch.
Le demon a redémarré après réinstallation.

Avatar de l’utilisateur
chevalir
Timide
Messages : 148
Inscription : 04 juin 2015, 20:39
Localisation : Ain
Contact :

Re: [Sujet officiel] Plugin ArduiDom

Message par chevalir » 13 mars 2016, 21:26

bobox59 a écrit :
chevalir a écrit :
PYCOTO a écrit :Bonjour,

Mois aussi j'ai fait la modif du sketch mais ça change rien.
Bon je me suis perdu dans les différents problèmes, mon sketch règle les problèmes d'émission pas de réception. Donc le tiens @pycoto pas celui de @gaetandu80.

Cela doit corrigé ce que tu as d'écrits ici @pycoto :
PYCOTO a écrit : ...
J'ai alors branché un 2ieme arduinos uno branchés sur le PI pour débuger ( soit 1 en émission l'autre en réception).
Je constate de le code réellement émis est pour le code paramétré : H146972740101
touche 2 on :[ RFD:19907274:A:101:P:4 ] - pour eq en ACTION: [ H199072740101 ]
touche 2 off:[ RFD:19907274:A:1:P:4 ] - pour eq en ACTION: [ H199072740001 ]
Donc @pycoto est-ce que tu as bien re-configuré la prise avec la télécommande ? C'est à dire 1) reset de la prise 2) apprentissage avec la télécommande 3) vérifié que la prise marche avec la télécommande 4) mettre le code de la télécommande dans Jeedom H146972740001 et refaire le test.
Si tu as toujours H199072740001 lorsque tu envoi H146972740101 dans Jeedom c'est que tu as eu un souci dans le transfert vers l'arduino ou qqc comme cela...

chevalir
@chevalir désolé j'ai repassé le sketch a l'ancienne version, avant ta modif, car quelques uns m'ont demandé la version du sketch avant modif car le chacon ne fonctionnais plus
a force je ne sais plus, quand j'essaye de lire le forum, c'est vraiment confus !

j'ai une solution extrement simple: si quelqu'un parmis vous a du chacon dio, qu'il passe a la maison avec !
ca sera reglé en tres peu de temps, plutot que de s'acharner !
les autres modes sont fonctionnels, pour une simple raison, j'avais les differents éléments radio en main, chacon j'en ai pas !

de la je trouve un interet pour les plugins qui sont payants, ca peut payer le materiel a integrer...

bref, je suis ouvert ! mais la je n'arrive pas a suivre via le forum, et n'ai aucun moyen de verifier que ca fonctionne bien, et pour tous.
Pas de probléme j'image bien codé les yeux bandés au fond d'un tunnel :lol:

mais la tu peux tester sans Chacon : Tu log juste la valeur de ChaconSender juste avant le send mySwitch.send(ChaconSender, ChaconRecevr, onOff);
tu verra en utlilsant l'example de @PYCOTO que H146972740101 donne ChaconSender = 19907274 au lieu de 14697274.
Bien sur ceux qui ont programmé leur prises avec le code envoyé par l'Arduidom buggé doivent les re-programmer.
Sinon il y avait aussi bug dans ma première version du code mais uniquement pour numéro de télécommande qui commence par un ou plusieurs zéros comme H005972740101. La encore tu peux tester sans module juste regarder la valeur de ChaconSender, pour H005972740101 cela devrais donner ChaconSender= 5597274.
J'avais publié le correctif il y qq mois mais il était passé inaperçu (c'est celui que j'ai re-publié hier soir). Je pensais qu'il suffisait de retirer le zéro pour contourner le problème c'est pour cela que je n'ai pas insisté... mais en fait non. Donc le code qui supporte tous les cas est ici :

Code : Tout sélectionner

                        if (DataSerie[4] == 'H') { //// Radio Mode Chacon DIO ex: de H10100 à H999999990115 en passant par  H009999990111
							// Modifs par Chevalir
							byte lenRequest = request.length();
							DataSerie[lenRequest-4] = 0; // group char is not used so set 0 to limit the strtol function
							bool onOff = DataSerie[lenRequest-3] == '1';
							// @@rc trim to remove zero header char : 05580042 -> 5580042 ( string started by zero not supported by strtol )
							int notzero=4;
							do {} while (DataSerie[++notzero] == '0' && notzero < lenRequest-4);
							ChaconSender = strtol( &DataSerie[notzero], NULL, 0 );
							ChaconRecevr = 10 * int(DataSerie[lenRequest-2] - '0') + int(DataSerie[lenRequest-1] - '0');
							for (int i = 1; i <= RADIO_REPEATS; i++) {
								mySwitch.send(ChaconSender, ChaconRecevr, onOff);
							}
                            check = true;
						}

avec cette version il est possible de garder les zéros au début .... ou pas ...
C'est celui qui est maintenant en place sur mon installation ... à voir donc...

Sinon pour les tests il y a aussi la technique @PYCOTO un deuxième Arduidom en récepteur ... ce qui tu recois doit être identique à ce que tu envoi depuis Jeedom ..."simple" :roll:. .

Autre solution j'ai un inter avec le capot HS mais utilisable pour des tests je peux te l'envoyer par contre pour le moment je n'ai pas de module en non utilisé.

chevalir
chevalir

PYCOTO
Timide
Messages : 17
Inscription : 12 mars 2016, 18:39

Re: [Sujet officiel] Plugin ArduiDom

Message par PYCOTO » 13 mars 2016, 22:30

J'ai modifié le sketch mais je peux pas tester. après l'envoi dans l'arduino le demon ne redémarre plus :(!. je comprends pas!

je regarderai demain.

PYCOTO
Timide
Messages : 17
Inscription : 12 mars 2016, 18:39

Re: [Sujet officiel] Plugin ArduiDom

Message par PYCOTO » 14 mars 2016, 17:20

Bonjour,

j'ai re-flashé les 2 arduinos avec le sketch modifié.
Après 15 minutes le demon a redémarré (j'ai un PI 1 c'est peut être normal que ce soit long).

J'ai remarqué ça dans le log : le CP_OK n'est pas reconnu c'est normal. le thread tourne les 2 arduino sont à l'état NOK

2016-03-14 17:10:34,486 | INFO | MainThread - arduidomx:566 - ######################################
2016-03-14 17:10:34,489 | INFO | MainThread - arduidomx:567 - # ArduiDom - Arduino Link for jeeDom #
2016-03-14 17:10:34,493 | INFO | MainThread - arduidomx:568 - # v2 by Bobox59 & Cedric02 #
2016-03-14 17:10:34,496 | INFO | MainThread - arduidomx:569 - ######################################
2016-03-14 17:10:34,852 | INFO | MainThread - arduidomx:854 - Launch TCP Thread n°1
2016-03-14 17:10:35,363 | INFO | MainThread - arduidomx:854 - Launch TCP Thread n°2
2016-03-14 17:10:35,376 | INFO | MainThread - arduidomx:863 - ALL TCP Threads Launched !
2016-03-14 17:10:35,384 | INFO | MainThread - arduidomx:865 - Tell to jeedom Arduinos are OK
2016-03-14 17:10:35,456 | INFO | MainThread - arduidomx:869 - Surveille le .kill ...
2016-03-14 17:10:49,024 | ERROR | Thread-1 - arduidomx:382 - TIMEOUT : CPzzrzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzcccccccccccccccc
2016-03-14 17:11:00,166 | ERROR | Thread-2 - arduidomx:382 - TIMEOUT : CPzztzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzcccccccccccccccc
2016-03-14 17:12:33,282 | INFO | Thread-2 - arduidomx:282 - Arduino 2 (UNKNOWN ANSWER) >> [CP_OK]
2016-03-14 17:12:42,052 | ERROR | Thread-2 - arduidomx:382 - TIMEOUT : PING

PYCOTO
Timide
Messages : 17
Inscription : 12 mars 2016, 18:39

Re: [Sujet officiel] Plugin ArduiDom

Message par PYCOTO » 14 mars 2016, 17:30

Dans le arduidom_daemon_stderr j'ai les lignes suivantes :

INFO:arduidom:Arduino 1 (UNKNOWN ANSWER) >> [MySwitch Avail]
INFO:arduidom:Arduino 1 (UNKNOWN ANSWER) >> [MySwitch Avail]
....

Traceback (most recent call last):
File "/var/www/html/plugins/arduidom/ressources/arduidomx.py", line 880, in <module>
main()
File "/var/www/html/plugins/arduidom/ressources/arduidomx.py", line 570, in main
username = os.environ['USER']
File "/usr/lib/python2.7/UserDict.py", line 23, in __getitem__
raise KeyError(key)
KeyError: 'USER'

bobox59
Timide
Messages : 488
Inscription : 08 sept. 2014, 13:03
Localisation : Nord

Re: [Sujet officiel] Plugin ArduiDom

Message par bobox59 » 14 mars 2016, 20:50

PYCOTO a écrit :Dans le arduidom_daemon_stderr j'ai les lignes suivantes :

INFO:arduidom:Arduino 1 (UNKNOWN ANSWER) >> [MySwitch Avail]
INFO:arduidom:Arduino 1 (UNKNOWN ANSWER) >> [MySwitch Avail]
....

Traceback (most recent call last):
File "/var/www/html/plugins/arduidom/ressources/arduidomx.py", line 880, in <module>
main()
File "/var/www/html/plugins/arduidom/ressources/arduidomx.py", line 570, in main
username = os.environ['USER']
File "/usr/lib/python2.7/UserDict.py", line 23, in __getitem__
raise KeyError(key)
KeyError: 'USER'
supprime la ligne 722 du sketch

Code : Tout sélectionner

            Serial.println(F("MySwitch Avail"));
j'ai oublié de la retirer, et la lenteur du pi1 fait que ca le perturbe
Bobox59 - Le papa du plugin Arduidom
Jeedom sur Serveur Dell - RPi 2 (Dev) - RPi 1B (Dev,Tests)
Modules Radio DIY, Detecteurs IR Radio Electro-Depot & Tike-Securité, Prises Radio Eurodomest 972086 & SITE RCS-K02 (Action)

I<3JEEDOM

bobox59
Timide
Messages : 488
Inscription : 08 sept. 2014, 13:03
Localisation : Nord

Re: [Sujet officiel] Plugin ArduiDom

Message par bobox59 » 14 mars 2016, 20:53

chevalir a écrit : Pas de probléme j'image bien codé les yeux bandés au fond d'un tunnel :lol:

mais la tu peux tester sans Chacon : Tu log juste la valeur de ChaconSender juste avant le send mySwitch.send(ChaconSender, ChaconRecevr, onOff);
tu verra en utlilsant l'example de @PYCOTO que H146972740101 donne ChaconSender = 19907274 au lieu de 14697274.
Bien sur ceux qui ont programmé leur prises avec le code envoyé par l'Arduidom buggé doivent les re-programmer.
Sinon il y avait aussi bug dans ma première version du code mais uniquement pour numéro de télécommande qui commence par un ou plusieurs zéros comme H005972740101. La encore tu peux tester sans module juste regarder la valeur de ChaconSender, pour H005972740101 cela devrais donner ChaconSender= 5597274.
J'avais publié le correctif il y qq mois mais il était passé inaperçu (c'est celui que j'ai re-publié hier soir). Je pensais qu'il suffisait de retirer le zéro pour contourner le problème c'est pour cela que je n'ai pas insisté... mais en fait non. Donc le code qui supporte tous les cas est ici :

Code : Tout sélectionner

                        if (DataSerie[4] == 'H') { //// Radio Mode Chacon DIO ex: de H10100 à H999999990115 en passant par  H009999990111
							// Modifs par Chevalir
							byte lenRequest = request.length();
							DataSerie[lenRequest-4] = 0; // group char is not used so set 0 to limit the strtol function
							bool onOff = DataSerie[lenRequest-3] == '1';
							// @@rc trim to remove zero header char : 05580042 -> 5580042 ( string started by zero not supported by strtol )
							int notzero=4;
							do {} while (DataSerie[++notzero] == '0' && notzero < lenRequest-4);
							ChaconSender = strtol( &DataSerie[notzero], NULL, 0 );
							ChaconRecevr = 10 * int(DataSerie[lenRequest-2] - '0') + int(DataSerie[lenRequest-1] - '0');
							for (int i = 1; i <= RADIO_REPEATS; i++) {
								mySwitch.send(ChaconSender, ChaconRecevr, onOff);
							}
                            check = true;
						}

avec cette version il est possible de garder les zéros au début .... ou pas ...
C'est celui qui est maintenant en place sur mon installation ... à voir donc...

Sinon pour les tests il y a aussi la technique @PYCOTO un deuxième Arduidom en récepteur ... ce qui tu recois doit être identique à ce que tu envoi depuis Jeedom ..."simple" :roll:. .

Autre solution j'ai un inter avec le capot HS mais utilisable pour des tests je peux te l'envoyer par contre pour le moment je n'ai pas de module en non utilisé.

chevalir
je prends volontier.
je vais voir pour ce test, qu'on regle le pb une bonne fois ! et qu'on puisse avancer
Bobox59 - Le papa du plugin Arduidom
Jeedom sur Serveur Dell - RPi 2 (Dev) - RPi 1B (Dev,Tests)
Modules Radio DIY, Detecteurs IR Radio Electro-Depot & Tike-Securité, Prises Radio Eurodomest 972086 & SITE RCS-K02 (Action)

I<3JEEDOM

PYCOTO
Timide
Messages : 17
Inscription : 12 mars 2016, 18:39

Re: [Sujet officiel] Plugin ArduiDom

Message par PYCOTO » 14 mars 2016, 22:05

J'ai fait les modifs. J'ai compilé avec arduino 1.6.8. J'ai uploadé le .HEX (avec bootloader) sur le PI et téléversé depuis le plugin dans les 2 arduinos. J'attends le redémarrage depuis presque 50min :(.

Dans le log du plugin j'ai : [2016-03-14 22:02:01][arduidom][ERROR] : Dépassement du délai de démarrage du démon...
Comme le PI 1 est lent n'y a-t-il pas un time out à allonger ?

PYCOTO
Timide
Messages : 17
Inscription : 12 mars 2016, 18:39

Re: [Sujet officiel] Plugin ArduiDom

Message par PYCOTO » 14 mars 2016, 22:31

J'ai rebooté le pi la connexion avec les 2 arduino s'est réactivée.

visiblement le code n'est pas changé!

C'est bien le fichier uno.hex dans ./var/www/html/plugins/arduidom/ressources qu'il faut remplacer ?

J'ai fait la compil sous windows en me disant que le .hex ne dépend pas de l'os sur lequel on le compile.

Avatar de l’utilisateur
chevalir
Timide
Messages : 148
Inscription : 04 juin 2015, 20:39
Localisation : Ain
Contact :

Re: [Sujet officiel] Plugin ArduiDom

Message par chevalir » 14 mars 2016, 22:33

PYCOTO a écrit :J'ai rebooté le pi la connexion avec les 2 arduino s'est réactivée.

visiblement le code n'est pas changé!

C'est bien le fichier uno.hex dans ./var/www/html/plugins/arduidom/ressources qu'il faut remplacer ?

J'ai fait la compil sous windows en me disant que le .hex ne dépend pas de l'os sur lequel on le compile.
moi je compile sur Mac peu importe cela marche. Mais depuis la dernière version de Jeedom 2 et Arduidom je n'arrive plus à téléversé depuis le plugins. J'utilise directement la commande :

Code : Tout sélectionner

sudo avrdude -c arduino -b 57600 -P /dev/ttyUSB1 -p atmega328p -vv -U flash:w:/home/pi/ComArduino/Arduidom_unified_v24.ino.standard.hex
et c'est la version sans bootloader qu'il faut téléversé...en fin c'est celle que moi j'utilise, jamais essayé d'envoyer la version avec le bootloader. Bien sur avant de téléverser il faut arréter le démon Arduidom sinon le port USB n'est pas dispo. Il faut aussi trouver le port, moi c'est ttyUSB1 mais c'est peut-être un autre pour toi. j'ai juste fait un

Code : Tout sélectionner

ls /dev/tty*
avec et sans l'arduino pour voir quel port était utilisé.
Bonne soirée,

chevalir
chevalir

PYCOTO
Timide
Messages : 17
Inscription : 12 mars 2016, 18:39

Re: [Sujet officiel] Plugin ArduiDom

Message par PYCOTO » 14 mars 2016, 22:42

OK je teste

capitainabloc
Timide
Messages : 87
Inscription : 15 juil. 2015, 12:20

Re: [Sujet officiel] Plugin ArduiDom

Message par capitainabloc » 14 mars 2016, 23:08

bonjour,
je tourne sur DIY, ubuntu.
ca marchait super bien jusqu'à ce que je debranche l'arduino de l'usb, maintenant le temps de démon est dépassé... ca veut plus!
une idée pour remettre ca d'équerre?

PYCOTO
Timide
Messages : 17
Inscription : 12 mars 2016, 18:39

Re: [Sujet officiel] Plugin ArduiDom

Message par PYCOTO » 15 mars 2016, 00:03

C'est bon ça la dernière correction du sketch fonctionne.
Merci.

PYCOTO
Timide
Messages : 17
Inscription : 12 mars 2016, 18:39

Re: [Sujet officiel] Plugin ArduiDom

Message par PYCOTO » 15 mars 2016, 00:05

Vérifie que le port USB n'ait pas changé.

S'il n'a pas changé redémarre ton pc. Moi ça repris la com après le redémarrage du PI.

Avatar de l’utilisateur
chevalir
Timide
Messages : 148
Inscription : 04 juin 2015, 20:39
Localisation : Ain
Contact :

Re: [Sujet officiel] Plugin ArduiDom

Message par chevalir » 16 mars 2016, 22:12

Pour tous les utilisateurs de module 433mhz qui rêvent d'avoir un état de retour ...

Tous les utilisateurs de module Chacon savent que l'un des défauts de ces modules est l'absence de retour d'état. Il y a plusieurs post sur ce forum qui explique comment faire un retour d'état virtuel via Arduidom. Ici je vous propose un montage que j'ai installé depuis plusieurs semaines. Ce montage connecté à mon Arduidom me permet de remonter dans jeedom l'état réel de mon éclairage en détectent directement le 220V.
retour etat lampe.png
retour etat lampe.png (131.15 Kio) Consulté 503 fois
pour ceux qui n'ont pas peur d'un fer à souder ... tout est expliqué ici : http://cabrastudio.eu/cabrablog/?p=60

chevalir
Dernière édition par chevalir le 11 déc. 2017, 20:48, édité 1 fois.
chevalir

Avatar de l’utilisateur
RolluS
Timide
Messages : 176
Inscription : 20 nov. 2014, 23:55

Re: [Sujet officiel] Plugin ArduiDom

Message par RolluS » 17 mars 2016, 08:40

Joli montage chevalir.

J'utilise un virtuel pour ma lampe ou mes chauffage et ainsi, commandé par un plugin, un thermostat, le dashboard, ou une télécommande, l'état du virtuel est mis à jour.
Seuls défauts: si le rx433 rate la telecommande commande évidemment pas de mise à jour, et si le récepteur (prise) rate le tx433 idem.
Quand on pilote la lumière c'est pas critique, pour le chauffage ton montage peut être intéressant.

(Bon perso je vais passer en ESP avec des modules Wemos»

capitainabloc
Timide
Messages : 87
Inscription : 15 juil. 2015, 12:20

Re: [Sujet officiel] Plugin ArduiDom

Message par capitainabloc » 17 mars 2016, 08:53

pas mal du tout, je cherchais un truc comme ca.
J'ai essayé Wemo, c'est pas mal. Faut aller faire un tour chez ouimeaux.

Le seul problème, c'est que je commande le reboot de ma Livebox (merci Orange...) et que donc, je pers le WIFI, donc ca ne se rallume pas...
Au final je préfère Chacon, ou Otio (10 euros chez Géant!) qui fonctionne sur le même protocole.

latwingo
Actif
Messages : 504
Inscription : 24 nov. 2014, 10:58
Localisation : Cagnes Sur Mer

Re: [Sujet officiel] Plugin ArduiDom

Message par latwingo » 17 mars 2016, 08:59


Avatar de l’utilisateur
Aloïs
Timide
Messages : 425
Inscription : 02 août 2014, 13:44

Re: [Sujet officiel] Plugin ArduiDom

Message par Aloïs » 17 mars 2016, 09:03

Je vais aussi installé des Wemos sous peut mais il me semble évident que mon serveur Jeedom sera équipé de ça propre clef wifi, un hot-spot dédié objets connectés, isolé de la box.

Envoyé depuis mobile @RolluS
Cuisine connectée : Porte Cachée

Répondre

Revenir vers « [Catégorie] Protocoles domotiques »

Qui est en ligne ?

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