Skip to content

Commit 0cc7352

Browse files
committed
Minor bug fixes
1 parent 8b28c20 commit 0cc7352

File tree

3 files changed

+22
-14
lines changed

3 files changed

+22
-14
lines changed

priv/admin/admin.js

Lines changed: 6 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -318,7 +318,7 @@ myApp.config(['NgAdminConfigurationProvider', function (nga) {
318318
.template('<qgraph value="value"></qgraph>')
319319
]).concat([
320320
nga.field('devstat.battery', 'number').label('Battery'),
321-
nga.field('devstat.margin', 'number').label('Margin'),
321+
nga.field('devstat.margin', 'number').label('SNR (dB)'),
322322
nga.field('devstat_time', 'datetime').label('Status Time'),
323323
nga.field('devstat_fcnt', 'number').label('Status FCnt'),
324324
nga.field('devaddr', 'template').label('Device Status')
@@ -364,7 +364,7 @@ myApp.config(['NgAdminConfigurationProvider', function (nga) {
364364
nga.field('devaddr', 'reference').label('DevAddr')
365365
.targetEntity(links)
366366
.targetField(nga.field('devaddr')),
367-
nga.field('lsnr').label('SNR'),
367+
nga.field('rxq.lsnr').label('SNR'),
368368
nga.field('fcnt', 'number').label('FCnt'),
369369
nga.field('port', 'number'),
370370
nga.field('data')
@@ -423,7 +423,7 @@ myApp.config(['NgAdminConfigurationProvider', function (nga) {
423423
nga.field('devaddr', 'reference').label('DevAddr')
424424
.targetEntity(links)
425425
.targetField(nga.field('devaddr')),
426-
nga.field('lsnr').label('SNR')
426+
nga.field('rxq.lsnr').label('SNR')
427427
])
428428
.sortField('datetime')
429429
.perPage(7)
@@ -679,7 +679,7 @@ return {
679679
$scope.rxdChartObject.options = {
680680
"vAxes": {
681681
0: {"title": 'Battery'},
682-
1: {"title": 'Margin (dB)'}
682+
1: {"title": 'SNR (dB)'}
683683
},
684684
"series": {
685685
0: {"targetAxisIndex": 0},
@@ -698,7 +698,8 @@ return {
698698
"gridlines": {"count": -1}
699699
},
700700
"vAxes": {
701-
0: {"minValue":0, "maxValue": 255}
701+
0: {"minValue":0, "maxValue": 255},
702+
1: {"minValue":-32, "maxValue": 31}
702703
}
703704
};
704705
updateData();

src/lorawan_admin_devstat.erl

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -38,7 +38,7 @@ get_rxframe(Req, State) ->
3838
Array = [{cols, [
3939
[{id, <<"fcnt">>}, {label, <<"FCnt">>}, {type, <<"number">>}],
4040
[{id, <<"batt">>}, {label, <<"Battery">>}, {type, <<"number">>}],
41-
[{id, <<"margin">>}, {label, <<"Margin (dB)">>}, {type, <<"number">>}]
41+
[{id, <<"snr">>}, {label, <<"SNR (dB)">>}, {type, <<"number">>}]
4242
]},
4343
{rows, lists:filtermap(
4444
fun (#rxframe{devstat=undefined}) ->
@@ -47,6 +47,7 @@ get_rxframe(Req, State) ->
4747
{true, [{c, [
4848
[{v, FCnt}],
4949
[{v, Batt}],
50+
% what the standard calls "margin" is simply the SNR
5051
[{v, Margin}]
5152
]}]}
5253
end, ActRec)

src/lorawan_ws_frames.erl

Lines changed: 14 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -64,14 +64,20 @@ websocket_handle(Data, State) ->
6464
store_frame(Msg, #state{format=raw} = State) ->
6565
store_frame0(undefined, #txdata{data=Msg}, State);
6666
store_frame(Msg, #state{format=json} = State) ->
67-
Struct = jsx:decode(Msg, [{labels, atom}]),
68-
store_frame0(extract_bin(devaddr, Struct, undefined),
69-
#txdata{
70-
confirmed = proplists:get_value(confirmed, Struct, false),
71-
port = proplists:get_value(port, Struct),
72-
data = extract_bin(data, Struct, <<>>),
73-
pending = proplists:get_value(pending, Struct, false)
74-
}, State).
67+
case jsx:is_json(Msg) of
68+
true ->
69+
Struct = jsx:decode(Msg, [{labels, atom}]),
70+
store_frame0(extract_bin(devaddr, Struct, undefined),
71+
#txdata{
72+
confirmed = proplists:get_value(confirmed, Struct, false),
73+
port = proplists:get_value(port, Struct),
74+
data = extract_bin(data, Struct, <<>>),
75+
pending = proplists:get_value(pending, Struct, false)
76+
}, State);
77+
false ->
78+
lager:warning("JSON syntax error"),
79+
{stop, State}
80+
end.
7581

7682
store_frame0(undefined, TxData, #state{devaddr=DevAddr, gname=undefined} = State) ->
7783
lorawan_application_handler:store_frame(DevAddr, TxData),

0 commit comments

Comments
 (0)