summaryrefslogtreecommitdiffhomepage
path: root/applications/luci-olsr/luasrc
diff options
context:
space:
mode:
authorPatrick Grimm <patrick@lunatiki.de>2013-07-10 17:52:38 +0000
committerPatrick Grimm <patrick@lunatiki.de>2013-07-10 17:52:38 +0000
commit25c4b954a6037811ecafcf8189ab79b0f74d0aed (patch)
tree07a0561ba11d7f7876ca59699a8e545c800ff4de /applications/luci-olsr/luasrc
parent46c61acd06b3c54f3d98fa809e4b9450bae04975 (diff)
luci-olsr: add snr for olsr neighbours and update Legend
Diffstat (limited to 'applications/luci-olsr/luasrc')
-rw-r--r--applications/luci-olsr/luasrc/controller/olsr.lua6
-rw-r--r--applications/luci-olsr/luasrc/tools/olsr.lua14
-rw-r--r--applications/luci-olsr/luasrc/view/status-olsr/legend.htm17
-rw-r--r--applications/luci-olsr/luasrc/view/status-olsr/neighbors.htm7
4 files changed, 35 insertions, 9 deletions
diff --git a/applications/luci-olsr/luasrc/controller/olsr.lua b/applications/luci-olsr/luasrc/controller/olsr.lua
index bef7e52eb1..daedcf54d9 100644
--- a/applications/luci-olsr/luasrc/controller/olsr.lua
+++ b/applications/luci-olsr/luasrc/controller/olsr.lua
@@ -227,9 +227,9 @@ function action_neigh(json)
for assocmac, assot in pairs(val.list) do
assocmac = string.lower(assocmac or "")
if rmac == assocmac then
- signal = tonumber(assot.signal)
- noise = tonumber(assot.noise)
- snr = signal/noise
+ signal = tonumber(assot.signal)*-1
+ noise = tonumber(assot.noise)*-1
+ snr = noise - signal
end
end
end
diff --git a/applications/luci-olsr/luasrc/tools/olsr.lua b/applications/luci-olsr/luasrc/tools/olsr.lua
index 425d09a31e..dfd8262f0d 100644
--- a/applications/luci-olsr/luasrc/tools/olsr.lua
+++ b/applications/luci-olsr/luasrc/tools/olsr.lua
@@ -26,3 +26,17 @@ function etx_color(etx)
return color
end
+function snr_color(snr)
+ local color = "#bb3333"
+ if snr == 0 then
+ color = "#bb3333"
+ elseif snr > 30 then
+ color = "#00cc00"
+ elseif snr > 20 then
+ color = "#ffcb05"
+ elseif snr > 5 then
+ color = "#ff6600"
+ end
+ return color
+end
+
diff --git a/applications/luci-olsr/luasrc/view/status-olsr/legend.htm b/applications/luci-olsr/luasrc/view/status-olsr/legend.htm
index 55b839f52f..7575c122f3 100644
--- a/applications/luci-olsr/luasrc/view/status-olsr/legend.htm
+++ b/applications/luci-olsr/luasrc/view/status-olsr/legend.htm
@@ -3,9 +3,18 @@
<li><strong>LQ: </strong><%:Success rate of packages received from the neighbour%></li>
<li><strong>NLQ: </strong><%:Success rate of packages sent to the neighbour%></li>
<li><strong>ETX: </strong><%:Expected retransmission count%></li>
- <li><strong><span style="color:#00cc00"><%:Green%></span></strong>:<%:Very good (ETX < 2)%></li>
- <li><strong><span style="color:#ffcb05"><%:Yellow%></span></strong>:<%:Good (2 < ETX < 4)%></li>
- <li><strong><span style="color:#ff6600"><%:Orange%></span></strong>:<%:Still usable (4 < ETX < 10)%></li>
- <li><strong><span style="color:#bb3333"><%:Red%></span></strong>:<%:Bad (ETX > 10)%></li>
+ <ul>
+ <li><strong><span style="color:#00cc00"><%:Green%></span></strong>:<%:Very good (ETX < 2)%></li>
+ <li><strong><span style="color:#ffcb05"><%:Yellow%></span></strong>:<%:Good (2 < ETX < 4)%></li>
+ <li><strong><span style="color:#ff6600"><%:Orange%></span></strong>:<%:Still usable (4 < ETX < 10)%></li>
+ <li><strong><span style="color:#bb3333"><%:Red%></span></strong>:<%:Bad (ETX > 10)%></li>
+ </ul>
+ <li><strong>SNR: </strong><%:Signal Noise Ratio%></li>
+ <ul>
+ <li><strong><span style="color:#00cc00"><%:Green%></span></strong>:<%:Very good (SNR > 30)%></li>
+ <li><strong><span style="color:#ffcb05"><%:Yellow%></span></strong>:<%:Good (30 > SNR > 20)%></li>
+ <li><strong><span style="color:#ff6600"><%:Orange%></span></strong>:<%:Still usable (20 > SNR > 5)%></li>
+ <li><strong><span style="color:#bb3333"><%:Red%></span></strong>:<%:Bad (SNR < 5)%></li>
+ </ul>
</ul>
diff --git a/applications/luci-olsr/luasrc/view/status-olsr/neighbors.htm b/applications/luci-olsr/luasrc/view/status-olsr/neighbors.htm
index 0fb9bc0a3c..f3b374536e 100644
--- a/applications/luci-olsr/luasrc/view/status-olsr/neighbors.htm
+++ b/applications/luci-olsr/luasrc/view/status-olsr/neighbors.htm
@@ -24,6 +24,7 @@ if luci.http.formvalue("status") == "1" then
link.linkCost = 0
end
local color = olsrtools.etx_color(link.linkCost)
+ local snr_color = olsrtools.snr_color(link.snr)
defaultgw_color = ""
if link.defaultgw == 1 then
defaultgw_color = "#ffff99"
@@ -43,6 +44,7 @@ if luci.http.formvalue("status") == "1" then
signal = string.format("%.3f", link.signal),
noise = string.format("%.3f", link.noise),
color = color,
+ snr_color = snr_color,
dfgcolor = defaultgw_color,
proto = link.proto
}
@@ -100,7 +102,7 @@ end
'<td class="cbi-section-table-titles" style="background-color:%s">%s</td>' +
'<td class="cbi-section-table-titles" style="background-color:%s" title="Signal: %s Noise: %s">%s</td>' +
'</tr>',
- neigh.dfgcolor, neigh.ifn, neigh.lip, neigh.lmac, neigh.dfgcolor, neigh.lq, neigh.dfgcolor, neigh.nlq, neigh.color, neigh.cost, neigh.color, neigh.signal, neigh.noise, neigh.snr || '?'
+ neigh.dfgcolor, neigh.ifn, neigh.lip, neigh.lmac, neigh.dfgcolor, neigh.lq, neigh.dfgcolor, neigh.nlq, neigh.color, neigh.cost, neigh.snr_color, neigh.signal, neigh.noise, neigh.snr || '?'
);
}
@@ -140,6 +142,7 @@ end
end
color = olsrtools.etx_color(link.linkCost)
+ snr_color = olsrtools.snr_color(link.snr)
defaultgw_color = ""
if link.defaultgw == 1 then
@@ -158,7 +161,7 @@ end
<td class="cbi-section-table-titles" style="background-color:<%=defaultgw_color%>"><%=string.format("%.3f", link.linkQuality)%></td>
<td class="cbi-section-table-titles" style="background-color:<%=defaultgw_color%>"><%=string.format("%.3f", link.neighborLinkQuality)%></td>
<td class="cbi-section-table-titles" style="background-color:<%=color%>"><%=string.format("%.3f", link.linkCost)%></td>
- <td class="cbi-section-table-titles" style="background-color:<%=color%>" title="Signal: <%=string.format("%.3f", link.signal)%> Noise: <%=string.format("%.3f", link.noise)%>"><%=string.format("%.3f", link.snr)%></td>
+ <td class="cbi-section-table-titles" style="background-color:<%=snr_color%>" title="Signal: <%=string.format("%.3f", link.signal)%> Noise: <%=string.format("%.3f", link.noise)%>"><%=string.format("%.3f", link.snr)%></td>
</tr>
<%
i = ((i % 2) + 1)