diff --git a/src/terminal_api_driver.cpp b/src/terminal_api_driver.cpp index 72f9677..a8bbdc1 100644 --- a/src/terminal_api_driver.cpp +++ b/src/terminal_api_driver.cpp @@ -145,7 +145,7 @@ std::string api_driver::ApiDriver::loadTerminalState() { result << ",\"rx.snr\":" << tmpStr; CP_GetLevelDemod(sid, "rssi", &tmpd); - sprintf(tmpStr, "%.2f", tmpd); + sprintf(tmpStr, "%.2f", -tmpd); result << ",\"rx.rssi\":" << tmpStr; CP_GetDemodulatorParams(sid, "modcod", &tmpu32); diff --git a/static/main.html b/static/main.html index 39825e7..8815859 100644 --- a/static/main.html +++ b/static/main.html @@ -75,8 +75,8 @@ @@ -192,6 +192,7 @@ krokodil +

Последнее обновление статистики: {{ lastUpdateTime }}

@@ -213,7 +214,7 @@ const app = new Vue({ el: '#app', data: { - rx: { + stat_rx: { // индикаторы state: '?', // общее состояние sym_sync_lock: '?', // захват символьной @@ -222,72 +223,70 @@ pkt_sync: '?', // захват пакетной синхронизации // куча других параметров, идет в том же порядке, что и в таблице - snr: 0, rssi: -105, - modcod: 0, frameSize: 0, + snr: '?', rssi: '?', + modcod: '?', frameSize: '?', pilots: '?', - symError: 0.0, - freqErr: 0, freqErrAcc: 0, - inputSignalLevel: 0, - pllError: 0, - speedOnRx: 0, - speedOnIif: 0, + symError: '?', + freqErr: '?', freqErrAcc: '?', + inputSignalLevel: '?', + pllError: '?', + speedOnRxKbit: '?', + speedOnIifKbit: '?', // статистика пакетов - packetsOk: 0, - packetsBad: 0, - packetsDummy: 0, + packetsOk: '?', packetsBad: '?', packetsDummy: '?', }, - - tx: { + stat_tx: { // состояние state: '?', // прочие поля - snr: -90, - modcod: -90, - frameSize: 'normal', - pilots: 'no pilots', - speedOnTx: 0, - speedOnIif: 0, + snr: '?', modcod: '?', frameSize: '?', pilots: '?', speedOnTxKbit: '?', speedOnIifKbit: '?', + }, + stat_cinc: { + occ: '?', + + }, + stat_device: { // температурные датчики + adrv: 0, zync: 0, fpga: 0 }, testState: '?', lastUpdateTime: new Date(), - activeTab: getCurrentTab() }, methods: { updateMainState(vals) { this.lastUpdateTime = new Date(); - this.rx.state = vals["mainState"]["rx.state"] - this.rx.sym_sync_lock = vals["mainState"]["rx.sym_sync_lock"] - this.rx.freq_search_lock = vals["mainState"]["rx.freq_search_lock"] - this.rx.afc_lock = vals["mainState"]["rx.afc_lock"] - this.rx.pkt_sync = vals["mainState"]["rx.pkt_sync"] - this.rx.snr = vals["mainState"]["rx.snr"] - this.rx.rssi = vals["mainState"]["rx.rssi"] - this.rx.modcod = vals["mainState"]["rx.modcod"] - this.rx.frameSize = vals["mainState"]["rx.frameSize"] - this.rx.pilots = vals["mainState"]["rx.pilots"] - this.rx.symError = vals["mainState"]["rx.symError"] - this.rx.freqErr = vals["mainState"]["rx.freqErr"] - this.rx.freqErrAcc = vals["mainState"]["rx.freqErrAcc"] - this.rx.inputSignalLevel = vals["mainState"]["rx.inputSignalLevel"] - this.rx.pllError = vals["mainState"]["rx.pllError"] - this.rx.speedOnRxKbit = vals["mainState"]["rx.speedOnRxKbit"] - this.rx.speedOnIifKbit = vals["mainState"]["rx.speedOnIifKbit"] - this.rx.packetsOk = vals["mainState"]["rx.packetsOk"] - this.rx.packetsBad = vals["mainState"]["rx.packetsBad"] - this.rx.packetsDummy = vals["mainState"]["rx.packetsDummy"] + this.stat_rx.state = vals["mainState"]["rx.state"] + this.stat_rx.sym_sync_lock = vals["mainState"]["rx.sym_sync_lock"] + this.stat_rx.freq_search_lock = vals["mainState"]["rx.freq_search_lock"] + this.stat_rx.afc_lock = vals["mainState"]["rx.afc_lock"] + this.stat_rx.pkt_sync = vals["mainState"]["rx.pkt_sync"] + this.stat_rx.snr = vals["mainState"]["rx.snr"] + this.stat_rx.rssi = vals["mainState"]["rx.rssi"] + this.stat_rx.modcod = vals["mainState"]["rx.modcod"] + this.stat_rx.frameSize = vals["mainState"]["rx.frameSize"] + this.stat_rx.pilots = vals["mainState"]["rx.pilots"] + this.stat_rx.symError = vals["mainState"]["rx.symError"] + this.stat_rx.freqErr = vals["mainState"]["rx.freqErr"] + this.stat_rx.freqErrAcc = vals["mainState"]["rx.freqErrAcc"] + this.stat_rx.inputSignalLevel = vals["mainState"]["rx.inputSignalLevel"] + this.stat_rx.pllError = vals["mainState"]["rx.pllError"] + this.stat_rx.speedOnRxKbit = vals["mainState"]["rx.speedOnRxKbit"] + this.stat_rx.speedOnIifKbit = vals["mainState"]["rx.speedOnIifKbit"] + this.stat_rx.packetsOk = vals["mainState"]["rx.packetsOk"] + this.stat_rx.packetsBad = vals["mainState"]["rx.packetsBad"] + this.stat_rx.packetsDummy = vals["mainState"]["rx.packetsDummy"] - this.tx.state = vals["mainState"]["tx.state"] - this.tx.snr = vals["mainState"]["rx.snr"] - this.tx.modcod = vals["mainState"]["rx.modcod"] - this.tx.frameSize = vals["mainState"]["rx.frameSize"] - this.tx.pilots = vals["mainState"]["rx.pilots"] - this.tx.speedOnTxKbit = vals["mainState"]["rx.speedOnTxKbit"] - this.tx.speedOnIifKbit = vals["mainState"]["rx.speedOnIifKbit"] + this.stat_tx.state = vals["mainState"]["tx.state"] + this.stat_tx.snr = vals["mainState"]["rx.snr"] + this.stat_tx.modcod = vals["mainState"]["rx.modcod"] + this.stat_tx.frameSize = vals["mainState"]["rx.frameSize"] + this.stat_tx.pilots = vals["mainState"]["rx.pilots"] + this.stat_tx.speedOnTxKbit = vals["mainState"]["tx.speedOnTxKbit"] + this.stat_tx.speedOnIifKbit = vals["mainState"]["rx.speedOnIifKbit"] this.testState = vals["mainState"]["testState"] } @@ -301,11 +300,11 @@ doFetch().then(() => { setInterval(() => { doFetch().then(() => {}) }, 1000); }); + + document.getElementById("app").removeAttribute("hidden") } }) - document.getElementById("app").removeAttribute("hidden") - // import MyComponent from './modules/header' // const sh = new Vue(MyComponent)