je n’ai pas testé possible, même probable !
A un détail près, je crois qu’il y a obligation d’avoir une bind key dans la trame MI, qui sera je crois a 0000, a voir si ca permet d’être lue
try !
je n’ai pas testé possible, même probable !
A un détail près, je crois qu’il y a obligation d’avoir une bind key dans la trame MI, qui sera je crois a 0000, a voir si ca permet d’être lue
try !
Attention aux bonnets rouge on est solidaires en bretagne

rien compris 
C’était une boutade
ah ok, je pensais que tu répondais a mon commentaire juste au dessus, j’avais oublié ce message ^^
Tu as relancé le daemon depuis ?
sauf erreur avec maj le démon a forcement redémarré je crois
Bonjour,
Oui après l’installation de la mise à jour du plugin. J’ai testé en firmware en 2.7 2.9 3.0.
Bonsoir,
Si je passe en valeur négative ,la température affiche 6552°C.
Il n’est pas prévu de pouvoir lire les valeurs en dessous de 0°C?
Je suis sur le dernier firmware 3.1.
Merci.
tu ne dois pas avoir mis adversering sur t1441
ca caille dans le 59 
Attention au lcd au dessous de 0
normalement il va jusqu’à -10°C
configuration bien mise sur t1441.
Je décompte bien.
-14°C je suis environ à 6539.
j’ai donc un décompte qui se fait correctement par rapport à la température.
tu as bien fait send config et pas seulement flash erreur qu’avait commise stomm sur un autre post ?
Oui ,send config.
Je pense que le firmware n’a pas prévu les valeurs négatives.
S’il y a un volontaire pour faire l’essai, je me sentirais moins seul. 
Je testerais par curiosité, mais je rappel que de base, le thermomètre est donner en plage de fonctionnement normal -10 max
Tu en fais quoi pour avoir besoin de temp en dessous de zéro, tu habites sur la banquise ?
Blague à part si je le mets au congél j’ai des doutes sur le signal ce qui expliquerais les valeurs fantaisistes.
Je me suis émis cette hypothèse en voulant tester pour te rendre service 
après test je confirme le problème de la valeur négative…
Relevé fait :
6552.8 -0.8
6552.3 -1.3
6551.8 -1.8
6550.4 -3.0
6549.8 -3.8
6548.7 -4.7
6550.8 -0.8
6552.7 -0.7
comme dans le code la valeur est divisé par 10 c’est donc un décompte a l’envers, soit :
65528 -0.8
65523 -1.3
65518 -1.8
65504 -3.0
65498 -3.8
65487 -4.7
65508 -0.8
65527 -0.7
donc 0 = 65530
J’ai donc bidouiller le code pour le prendre en compte (ma premier codage en python
)
en ajoutant :
if temp > 60000 :
temp = 0 - ( 65530 - temp )
Et voici le fichier entier, comme d’hab edition avec JeeXplorer
# coding: utf-8
from bluepy import btle
import time
import logging
import globals
import struct
from multiconnect import Connector
from notification import Notification
class Lywsd03():
def __init__(self):
self.name = 'lywsd03'
self.ignoreRepeat = False
def isvalid(self,name,manuf='',data='',mac=''):
logging.debug('LYWSD03------isvalid data=%s, mac=%s, name=%s, manuf=%s' % (data, mac, name, manuf))
if name.lower() in [self.name]:
return True
if data.lower().startswith("1a18") and (mac.lower().startswith("a4:c1:38")):
#broadcasted advertising data
return True
def parse(self,data,mac,name,manuf):
logging.info('LYWSD03------adv data=%s, mac=%s, name=%s, manuf=%s' % (data, mac, name, manuf))
action={}
action['present'] = 1
bd = bytes.fromhex(data)
(temp,) = struct.unpack('>H', bd[8:10])
if temp > 60000 :
temp = 0 - ( 65530 - temp )
temp = temp / 10
humi = bd[10]
batt = bd[11]
action["temperature"] = temp
action["moisture"] = humi
action["battery"] = batt
logging.info('LYWSD03------mac=%s, temp=%s, humi=%s, batt=%s' % (mac, temp,humi,batt))
return action
def read(self,mac):
result={}
try:
conn = Connector(mac)
conn.connect()
if not conn.isconnected:
conn.connect()
if not conn.isconnected:
return
batt = bytearray(conn.readCharacteristic('0x3a'))
battery = batt[0]
notification = Notification(conn,Lywsd03)
notification.subscribe(10)
result['battery'] = battery
result['id'] = mac
logging.debug('LYWSD03------'+str(result))
return result
except Exception as e:
logging.error(str(e))
return result
def handlenotification(self,conn,handle,data,action={}):
result={}
if hex(handle) == '0x36':
received = bytearray(data)
temperature = float(received[1] * 256 + received[0]) / 100
moisture = received[2]
result['moisture'] = moisture
result['temperature'] = temperature
result['id'] = conn.mac
result['source'] = globals.daemonname
globals.JEEDOM_COM.add_changes('devices::'+conn.mac,result)
globals.COMPATIBILITY.append(Lywsd03)
Bon je sort le mien du congélateur 
