Bonsoir,
J’ai adapté le code ci-dessous pour les températures négatives
par ce code :
code à copier :
let input = msg.payload[4];
var Sign = input.substring(5, 6); // pour savoir si la température est < 0
var Neg = 0; // chiffre à rajouter au début si température < 0
var Temp = input.substring(5, 9);
var TempNeg = input.substring(6, 9); // on ne prend que les chiffres intéressants
// Gestion des températures négatives
if (Sign == 8) {
var CreationTempNeg = Neg.toString() + TempNeg;
var NouvelleTempNeg = parseInt(CreationTempNeg, 16);
msg.payload = -1 * (NouvelleTempNeg / 10);
}
// Gestion des températures positives
if (Sign == 0) {
Temp = parseInt(Temp, 16);
msg.payload = Temp / 10;
}
return msg;
msg.payload[4] correspond à l’entrée n°4 de la matrice ; la première étant la n°0
Cela correspond donc à TEMP=0010
Ici, la température est donc > 0
["20","26","Oregon TempHygro","2D6D","TEMP=0010","HUM=61","HSTATUS=0","BAT=LOW","\r\n"]