Rflink, Node Red y Gladys

Buenas noches,
He adaptado el código siguiente para las temperaturas negativas

por este código:
Código para copiar:

let input = msg.payload[4];
var Sign = input.substring(5, 6); // para saber si la temperatura es < 0
var Neg = 0; // cifra a añadir al principio si la temperatura < 0
var Temp = input.substring(5, 9);
var TempNeg = input.substring(6, 9); // solo se toman los dígitos interesantes
// Gestión de temperaturas negativas
if (Sign == 8) {
    var CreationTempNeg = Neg.toString() + TempNeg;
    var NouvelleTempNeg = parseInt(CreationTempNeg, 16);
    msg.payload = -1 * (NouvelleTempNeg / 10);
}
// Gestión de temperaturas positivas
if (Sign == 0) {
    Temp = parseInt(Temp, 16);
    msg.payload = Temp / 10;
}
return msg;

msg.payload[4] corresponde a la entrada n°4 de la matriz; la primera siendo la n°0
Esto corresponde por lo tanto a TEMP=0010
Aquí, la temperatura es por lo tanto > 0

["20","26","Oregon TempHygro","2D6D","TEMP=0010","HUM=61","HSTATUS=0","BAT=LOW","\r\n"]