luci-olsr: add snr for olsr neighbours and update Legend
This commit is contained in:
parent
46c61acd06
commit
25c4b954a6
4 changed files with 35 additions and 9 deletions
|
@ -227,9 +227,9 @@ function action_neigh(json)
|
||||||
for assocmac, assot in pairs(val.list) do
|
for assocmac, assot in pairs(val.list) do
|
||||||
assocmac = string.lower(assocmac or "")
|
assocmac = string.lower(assocmac or "")
|
||||||
if rmac == assocmac then
|
if rmac == assocmac then
|
||||||
signal = tonumber(assot.signal)
|
signal = tonumber(assot.signal)*-1
|
||||||
noise = tonumber(assot.noise)
|
noise = tonumber(assot.noise)*-1
|
||||||
snr = signal/noise
|
snr = noise - signal
|
||||||
end
|
end
|
||||||
end
|
end
|
||||||
end
|
end
|
||||||
|
|
|
@ -26,3 +26,17 @@ function etx_color(etx)
|
||||||
return color
|
return color
|
||||||
end
|
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
|
||||||
|
|
||||||
|
|
|
@ -3,9 +3,18 @@
|
||||||
<li><strong>LQ: </strong><%:Success rate of packages received from the neighbour%></li>
|
<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>NLQ: </strong><%:Success rate of packages sent to the neighbour%></li>
|
||||||
<li><strong>ETX: </strong><%:Expected retransmission count%></li>
|
<li><strong>ETX: </strong><%:Expected retransmission count%></li>
|
||||||
<li><strong><span style="color:#00cc00"><%:Green%></span></strong>:<%:Very good (ETX < 2)%></li>
|
<ul>
|
||||||
<li><strong><span style="color:#ffcb05"><%:Yellow%></span></strong>:<%:Good (2 < ETX < 4)%></li>
|
<li><strong><span style="color:#00cc00"><%:Green%></span></strong>:<%:Very good (ETX < 2)%></li>
|
||||||
<li><strong><span style="color:#ff6600"><%:Orange%></span></strong>:<%:Still usable (4 < ETX < 10)%></li>
|
<li><strong><span style="color:#ffcb05"><%:Yellow%></span></strong>:<%:Good (2 < ETX < 4)%></li>
|
||||||
<li><strong><span style="color:#bb3333"><%:Red%></span></strong>:<%:Bad (ETX > 10)%></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>
|
</ul>
|
||||||
|
|
||||||
|
|
|
@ -24,6 +24,7 @@ if luci.http.formvalue("status") == "1" then
|
||||||
link.linkCost = 0
|
link.linkCost = 0
|
||||||
end
|
end
|
||||||
local color = olsrtools.etx_color(link.linkCost)
|
local color = olsrtools.etx_color(link.linkCost)
|
||||||
|
local snr_color = olsrtools.snr_color(link.snr)
|
||||||
defaultgw_color = ""
|
defaultgw_color = ""
|
||||||
if link.defaultgw == 1 then
|
if link.defaultgw == 1 then
|
||||||
defaultgw_color = "#ffff99"
|
defaultgw_color = "#ffff99"
|
||||||
|
@ -43,6 +44,7 @@ if luci.http.formvalue("status") == "1" then
|
||||||
signal = string.format("%.3f", link.signal),
|
signal = string.format("%.3f", link.signal),
|
||||||
noise = string.format("%.3f", link.noise),
|
noise = string.format("%.3f", link.noise),
|
||||||
color = color,
|
color = color,
|
||||||
|
snr_color = snr_color,
|
||||||
dfgcolor = defaultgw_color,
|
dfgcolor = defaultgw_color,
|
||||||
proto = link.proto
|
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">%s</td>' +
|
||||||
'<td class="cbi-section-table-titles" style="background-color:%s" title="Signal: %s Noise: %s">%s</td>' +
|
'<td class="cbi-section-table-titles" style="background-color:%s" title="Signal: %s Noise: %s">%s</td>' +
|
||||||
'</tr>',
|
'</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
|
end
|
||||||
|
|
||||||
color = olsrtools.etx_color(link.linkCost)
|
color = olsrtools.etx_color(link.linkCost)
|
||||||
|
snr_color = olsrtools.snr_color(link.snr)
|
||||||
|
|
||||||
defaultgw_color = ""
|
defaultgw_color = ""
|
||||||
if link.defaultgw == 1 then
|
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.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:<%=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%>"><%=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>
|
</tr>
|
||||||
<%
|
<%
|
||||||
i = ((i % 2) + 1)
|
i = ((i % 2) + 1)
|
||||||
|
|
Loading…
Reference in a new issue