Page 5 sur 7
Re: Appairage volets profalux
Publié : 07 juil. 2024, 19:08
par Growlfy
MAJ firmware 321 ok et plugin ok.
J'ai maintenant bien le retour des volets y compris avec lorsque je manipule les volets avec la télécommande.
Il me reste cependant un os j'ai toujours le pb du retour de fermeture totale. Dans ce cas une fois fermé le retour dans domoticz est fermé puis 1%.

Re: Appairage volets profalux
Publié : 07 juil. 2024, 21:01
par pipiche
oui, le 1% j'ai exactement la meme chose.je verrais si je peu faire quelque chose pour ca
Re: Appairage volets profalux
Publié : 07 juil. 2024, 21:05
par Growlfy
Ca me rassure xD. Merci en tout cas pour votre aide

Re: Appairage volets profalux
Publié : 08 juil. 2024, 18:55
par pipiche
fixe disponible sur la branche de developement
Re: Appairage volets profalux
Publié : 08 juil. 2024, 20:29
par Growlfy
Ok super merci,
j'ai suivi la procédure de maj suivante :
Dans .../domoticz/plugins/Domoticz-Zigbee/
Code : Tout sélectionner
git reset --hard
sudo service domoticz.sh stop
sudo git checkout wip-stable7-7.1.13
sudo git pull
sudo python3 -m pip install -r requirements.txt --upgrade --break-system-packages
sudo service domoticz.sh start
Tout semble s'être déroulé normalement mais dans le Plugin il est indiqué 7.1.012 [5.271]
Dans les logs de domoticz :
2024-07-08 22:56:38.434 Status: Zigate: Z4D starting with stable7-7.1.012
Les fichiers semblent bien être les bons notamment le domoMaj.py (ligne 1642 return normalized_value est présent)
Cependant j'ai toujours le retour de Fermé à 1%.
A toutes fins utiles voici les logs dans lesquels on trouve aussi des deconnections de la zigate :
2024-07-09 08:06:55.074 Error: Zigate: tcp_re_connect - TCP connection successfuly re-established

<socket.socket fd=29, family=2, type=1, proto=6, laddr=('192.168.1.73', 58942), raddr=('192.168.1.84', 9999)>
2024-07-09 08:10:40.383 Error: Zigate: tcpip_read_from_zigate: Connection error while receiving data [Errno 110] Connection timed out on <socket.socket fd=29, family=2, type=1, proto=6, laddr=('192.168.1.73', 58942)>
2024-07-09 08:10:40.409 Error: Zigate: tcp_re_connect - Trying to reconnect the TCP connection !!!! <socket.socket fd=29, family=2, type=1, proto=6, laddr=('192.168.1.73', 58942)>
2024-07-09 08:10:40.439 Status: Zigate: ZigateTransport: TCPIP Connection open: <socket.socket fd=31, family=2, type=1, proto=6, laddr=('192.168.1.73', 51358), raddr=('192.168.1.84', 9999)>
Re: Appairage volets profalux
Publié : 09 juil. 2024, 11:13
par Growlfy
Dans le fichier domoMAJ.py du github le code suivant peut poser problème dans le cas ou l'analog_value == 1
Code : Tout sélectionner
# Normalize analog value to percentage (0-100)
normalized_value = round((analog_value / 255) * 100)
# Looks like in the case of the Profalux shutter, we never get 0 or 100
if switchType in (13, 14, 15, 16):
if normalized_value == 1 and analog_value == 1:
normalized_value = 0
if normalized_value == 99 and analog_value == 254:
normalized_value = 100
return normalized_value
En effet le calcul suivant doit renvoyer 0 si analog_value == 1 :
Par conséquent on ne peut pas avoir normalized_value == 1 and analog_value == 1 et donc on aura jamais la normalized_value == 0
Est-il judicieux de changer le code par ceci :
Code : Tout sélectionner
# Normalize analog value to percentage (0-100)
normalized_value = round((analog_value / 255) * 100)
# Looks like in the case of the Profalux shutter, we never get 0 or 100
if switchType in (13, 14, 15, 16):
if (normalized_value == 1 and analog_value == 1) or (normalized_value == 0 and analog_value == 1):
normalized_value = 0
if normalized_value == 99 and analog_value == 254:
normalized_value = 100
return normalized_value
Re: Appairage volets profalux
Publié : 09 juil. 2024, 11:23
par pipiche
Je pense que la bonne question c'est l'utilité du test ci-après car a priori
si analog_value = 1 => normalized == 0
si analog_value = 254 => normalized == 100
n'hésites pas a tester et pousser une PR si ca a du sens
Code : Tout sélectionner
if normalized_value == 1 and analog_value == 1:
normalized_value = 0
if normalized_value == 99 and analog_value == 254:
normalized_value = 100
Code : Tout sélectionner
def normalized_lvl_value( switchType, value ):
# Normalize sValue vs. analog value comming from a ReadAttribute
analog_value = value if isinstance( value, int) else int(value, 16)
# Ensure analog value is within valid range
analog_value = min(max(analog_value, 0), 255)
# Normalize analog value to percentage (0-100)
normalized_value = round((analog_value / 255) * 100)
# Looks like in the case of the Profalux shutter, we never get 0 or 100
if switchType in (13, 14, 15, 16):
if normalized_value == 1 and analog_value == 1:
normalized_value = 0
if normalized_value == 99 and analog_value == 254:
normalized_value = 100
return normalized_value
return max(normalized_value, 1) # Ensure normalized value is at least 1
Re: Appairage volets profalux
Publié : 09 juil. 2024, 15:50
par Growlfy
Effectivement, le test semble superflux d'autant qu'il est suivi de :
Code : Tout sélectionner
return max(normalized_value, 1) # Ensure normalized value is at least 1
qui renverra forcément 1
Avant d'aller plus loin j'aimerai comprendre pourquoi on doit absolument remettre cette normalized_value à 1.
Re: Appairage volets profalux
Publié : 09 juil. 2024, 15:52
par pipiche
C’est nécessaire pour les ampoules et autre dimmer. C’est plus lié à Domoticz et sa gestion de certaines widgets
Envoyé de mon iPhone en utilisant Tapatalk
Re: Appairage volets profalux
Publié : 09 juil. 2024, 22:30
par Growlfy
Bon j'ai rien pu faire aujourd'hui à cause de cette foutue Zigate Wifi qui s'est mis en caraf, j'ai mis 3 plombes à reflasher la puce wifi pour que ce remarche convenablement. Si cela peut servir à quelqu'un voici la méthode qui marche avec ma Zigate v1 Wifi :
J'ai utilisé un vieux esptool (version 2.6) pour que le flash se passe bien avec les bonnes commandes (notamment -fs 32m):
Code : Tout sélectionner
.\esptool.py --port COM7 --baud 115200 erase_flash
.\esptool.py --port COM7 --baud 115200 write_flash -fs 32m -ff 80m 0x00000 .\firmware\boot_v1.7.bin 0x1000 .\firmware\user1.bin 0x3FE000 .\firmware\blank.bin 0x3FC000 .\firmware\esp_init_data_default.bin
PS : avec la dernière version d'esptool j'ai remplacé la commande -fs 32m par -fs detect mais la zigate wifi était lente du coup j'ai recommencé avec la version 2.6 d'esptool (de début 2019) pour que tout fonctionne ....
En effet l'article d'origine date d'octobre 2019 (
https://zigate.fr/documentation/install ... are-v2-xx/)