diagnostico: fix ethernet e Rx Power
Signed-off-by: Rodrigo Bertoldo de Sousa Martins <rodrigo.sousa.577@gmail.com>
This commit is contained in:
1 parent
1a9769a2d7
commit
5f72c08ddd
1 file changed
+15
-15
+15
-15
@@ -716,23 +716,23 @@ class FiberhomeManager {
|
|||||||
const txIdx = colIdx('TxPower');
|
const txIdx = colIdx('TxPower');
|
||||||
console.log(`[TL1-DIAG] OMDDM rxIdx=${rxIdx} txIdx=${txIdx}`);
|
console.log(`[TL1-DIAG] OMDDM rxIdx=${rxIdx} txIdx=${txIdx}`);
|
||||||
|
|
||||||
// Nota: no TL1 FiberHome, RxPower = sinal que a OLT recebe (= TX da ONU)
|
// LST-OMDDM reporta valores na perspectiva da ONU:
|
||||||
// TxPower = sinal que a OLT envia (= RX da ONU)
|
// RxPower = sinal que a ONU recebe (downlink, da OLT para a ONU)
|
||||||
|
// TxPower = sinal que a ONU transmite (uplink, da ONU para a OLT)
|
||||||
// Posições fixas de fallback: ONUID=0, RxPower=1, TxPower=3
|
// Posições fixas de fallback: ONUID=0, RxPower=1, TxPower=3
|
||||||
const oltRxRaw = (rxIdx >= 0 ? valores[rxIdx] : valores[1])?.replace(',', '.');
|
const rxRaw = (rxIdx >= 0 ? valores[rxIdx] : valores[1])?.replace(',', '.');
|
||||||
const oltTxRaw = (txIdx >= 0 ? valores[txIdx] : valores[3])?.replace(',', '.');
|
const txRaw = (txIdx >= 0 ? valores[txIdx] : valores[3])?.replace(',', '.');
|
||||||
console.log(`[TL1-DIAG] OMDDM oltRxRaw=${oltRxRaw} oltTxRaw=${oltTxRaw}`);
|
console.log(`[TL1-DIAG] OMDDM rxRaw=${rxRaw} txRaw=${txRaw}`);
|
||||||
|
|
||||||
const COMP_RX = 2.7;
|
const COMP = 2.7; // compensação de calibração
|
||||||
const COMP_TX = -2.7;
|
|
||||||
|
|
||||||
if (oltRxRaw && oltRxRaw !== '--' && !isNaN(parseFloat(oltRxRaw))) {
|
if (rxRaw && rxRaw !== '--' && !isNaN(parseFloat(rxRaw))) {
|
||||||
resultado.txPower = `${(parseFloat(oltRxRaw) + COMP_RX).toFixed(2)} dBm`;
|
resultado.rxPower = `${(parseFloat(rxRaw) + COMP).toFixed(2)} dBm`;
|
||||||
console.log(`[TL1-DIAG] ✅ TxPower ONU ← OLT RxPower ${oltRxRaw} → ${resultado.txPower}`);
|
console.log(`[TL1-DIAG] ✅ RxPower ONU: ${rxRaw} → ${resultado.rxPower}`);
|
||||||
}
|
}
|
||||||
if (oltTxRaw && oltTxRaw !== '--' && !isNaN(parseFloat(oltTxRaw))) {
|
if (txRaw && txRaw !== '--' && !isNaN(parseFloat(txRaw))) {
|
||||||
resultado.rxPower = `${(parseFloat(oltTxRaw) + COMP_TX).toFixed(2)} dBm`;
|
resultado.txPower = `${(parseFloat(txRaw) + COMP).toFixed(2)} dBm`;
|
||||||
console.log(`[TL1-DIAG] ✅ RxPower ONU ← OLT TxPower ${oltTxRaw} → ${resultado.rxPower}`);
|
console.log(`[TL1-DIAG] ✅ TxPower ONU: ${txRaw} → ${resultado.txPower}`);
|
||||||
}
|
}
|
||||||
} else {
|
} else {
|
||||||
console.log('[TL1-DIAG] ⚠️ OMDDM: header encontrado mas nenhuma linha com número decimal após ele');
|
console.log('[TL1-DIAG] ⚠️ OMDDM: header encontrado mas nenhuma linha com número decimal após ele');
|
||||||
@@ -746,8 +746,8 @@ class FiberhomeManager {
|
|||||||
const rxDireto = dados.match(/(-\d+\.\d+)/);
|
const rxDireto = dados.match(/(-\d+\.\d+)/);
|
||||||
if (rxDireto) {
|
if (rxDireto) {
|
||||||
const v = parseFloat(rxDireto[1]) + 2.7;
|
const v = parseFloat(rxDireto[1]) + 2.7;
|
||||||
resultado.txPower = `${v.toFixed(2)} dBm`;
|
resultado.rxPower = `${v.toFixed(2)} dBm`;
|
||||||
console.log(`[TL1-DIAG] TxPower ONU via regex último recurso → ${resultado.txPower}`);
|
console.log(`[TL1-DIAG] RxPower ONU via regex último recurso → ${resultado.rxPower}`);
|
||||||
} else {
|
} else {
|
||||||
console.log('[TL1-DIAG] ⚠️ OMDDM: regex também falhou, rxPower permanece N/A');
|
console.log('[TL1-DIAG] ⚠️ OMDDM: regex também falhou, rxPower permanece N/A');
|
||||||
}
|
}
|
||||||
|
|||||||
Reference in new issue
Block a user