Skip to content

Commit 287e10f

Browse files
authored
Up to 1.0.73-20240622
1 parent 05465f4 commit 287e10f

File tree

11 files changed

+1415
-24
lines changed

11 files changed

+1415
-24
lines changed

luci-app-3ginfo-lite/Makefile

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -12,7 +12,7 @@ MAINTAINER:=Rafał Wabik <4Rafal@gmail.com>
1212
LUCI_DESCRIPTION:=LuCI JS interface for the 3ginfo-lite. The package allows you to view the parameters of the mobile internet connection.
1313
LUCI_DEPENDS:=+sms-tool +comgt +kmod-usb-serial-option
1414
LUCI_PKGARCH:=all
15-
PKG_VERSION:=1.0.72-20240519
15+
PKG_VERSION:=1.0.73-20240622
1616

1717
include $(TOPDIR)/feeds/luci/luci.mk
1818

Lines changed: 223 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,223 @@
1+
# Foxconn T99W175 (FW 6.0.0.6)
2+
3+
O=$(sms_tool -d $DEVICE at "AT^TEMP?")
4+
5+
T=$(echo "$O" | awk '/^TSENS: / {gsub("C","",$2); print $2}')
6+
T1=$(echo "$O" | awk '/^PA: / {gsub("C","",$2); print $2}')
7+
if [ -n "$T" ] && [ -n "$T1" ]; then
8+
if [[ "$T1" =~ ^[0-9]+$ && "$T" =~ ^[0-9]+$ ]]; then
9+
if [ "$T1" -gt "$T" ]; then
10+
T="$T1"
11+
fi
12+
fi
13+
fi
14+
15+
T1=$(echo "$O" | awk '/^Skin Sensor: / {gsub("C","",$2); print $2}')
16+
if [ -n "$T" ] && [ -n "$T1" ]; then
17+
if [[ "$T1" =~ ^[0-9]+$ && "$T" =~ ^[0-9]+$ ]]; then
18+
if [ "$T1" -gt "$T" ]; then
19+
T="$T1"
20+
fi
21+
fi
22+
fi
23+
[ -n "$T" ] && TEMP="$T &deg;C"
24+
25+
if [ "$REGOK" = "1" ]; then
26+
27+
O=$(sms_tool -d $DEVICE at "at^debug?")
28+
29+
case "$MODE_NUM" in
30+
"7")
31+
MODE="LTE |"
32+
echo "$O" | grep -q "scell:" && MODE="LTE-A |"
33+
;;
34+
"11")
35+
MODE="5G SA |"
36+
;;
37+
"13")
38+
MODE="5G NSA |"
39+
;;
40+
esac
41+
42+
T=$(echo "$O" | awk -F: '/^lte_tac:/ {print $2}' | xargs)
43+
if [ -n "$T" ]; then
44+
# TAC_HEX=$(printf "%X" $T)
45+
# TAC_DEC=$(printf "%d" "0x$T")
46+
47+
TAC_HEX=$(printf "%X" $T)
48+
TAC_DEC="$T"
49+
fi
50+
51+
O1=$(echo "$O" | grep -A 3 pcell)
52+
T=$(echo "$O1" | awk -F: '/^pcell:/ {print $3}' | cut -f1 -d" ")
53+
if [ -n "$T" ]; then
54+
MODE="$MODE $(band4g $T)"
55+
T1=$(echo "$O1" | awk -F: '/^pcell:/ {print $4}' | xargs)
56+
PBAND="$(band4g $T) @${T1/MHz/} MHz"
57+
58+
T=$(echo "$O1" | awk -F: '/pci:/ {print $3}' | xargs)
59+
[ -n "$T" ] && PCI=$T
60+
T=$(echo "$O1" | awk -F: '/^channel:/ {print $2}' | cut -f1 -d" " | xargs)
61+
[ -n "$T" ] && EARFCN=$T
62+
T=$(echo "$O1" | awk -F[:,] '/^lte_rsrp:/ {print $2}')
63+
[ -n "$T" ] && RSRP="${T/dBm/}"
64+
T=$(echo "$O1" | awk -F[:,] '/rsrq:/ {print $4}' | xargs)
65+
[ -n "$T" ] && RSRQ="${T/dB/}"
66+
T=$(echo "$O1" | awk -F[:,] '/^lte_rssi:/ {print $2}')
67+
[ -n "$T" ] && RSSI="${T/dBm/}"
68+
T=$(echo "$O1" | awk -F[:,] '/lte_snr:/ {print $4}' | xargs)
69+
[ -n "$T" ] && [ "$T" != "NA" ] && SINR="${T/dB/}"
70+
fi
71+
72+
O1=$(echo "$O" | grep -A 3 scell)
73+
IDX=0;
74+
while true; do
75+
O2=$(echo "$O1" | head -n4)
76+
if [ -z "$O2" ]; then
77+
break
78+
fi
79+
IDX=$((IDX + 1))
80+
81+
T=$(echo "$O2" | awk -F: '/^scell:/ {print $3}' | cut -f1 -d" ")
82+
MODE="$MODE / $(band4g $T)"
83+
T1=$(echo "$O2" | awk -F: '/^scell:/ {print $4}' | xargs)
84+
if [ -n "$T1" ]; then
85+
case $IDX in
86+
1) S1BAND="$(band4g $T) @${T1/MHz/} MHz";;
87+
2) S2BAND="$(band4g $T) @${T1/MHz/} MHz";;
88+
3) S3BAND="$(band4g $T) @${T1/MHz/} MHz";;
89+
4) S4BAND="$(band4g $T) @${T1/MHz/} MHz";;
90+
*) ;;
91+
esac
92+
fi
93+
94+
T=$(echo "$O2" | awk -F: '/pci:/ {print $3}' | xargs)
95+
if [ -n "$T" ]; then
96+
case $IDX in
97+
1) S1PCI="$T";;
98+
2) S2PCI="$T";;
99+
3) S3PCI="$T";;
100+
4) S4PCI="$T";;
101+
*) ;;
102+
esac
103+
fi
104+
105+
T=$(echo "$O2" | awk -F: '/^channel:/ {print $2}' | cut -f1 -d" " | xargs)
106+
if [ -n "$T" ]; then
107+
case $IDX in
108+
1) S1EARFCN="$T";;
109+
2) S2EARFCN="$T";;
110+
3) S3EARFCN="$T";;
111+
4) S4EARFCN="$T";;
112+
*) ;;
113+
esac
114+
fi
115+
116+
T=$(echo "$O2" | awk -F[:,] '/^lte_rsrp:/ {print $2}')
117+
# [ -n "$T" ] && addon $((POS + 6)) "(S${IDX}) RSRP" "${T/dBm/} dBm"
118+
T=$(echo "$O2" | awk -F[:,] '/rsrq:/ {print $4}' | xargs)
119+
# [ -n "$T" ] && addon $((POS + 7)) "(S${IDX}) RSRQ" "${T/dB/} dB"
120+
T=$(echo "$O2" | awk -F[:,] '/^lte_rssi:/ {print $2}')
121+
# [ -n "$T" ] && addon $((POS + 5)) "(S${IDX}) RSSI" "${T/dBm/} dBm"
122+
T=$(echo "$O2" | awk -F[:,] '/lte_snr:/ {print $4}' | xargs)
123+
# [ -n "$T" ] && [ "$T" != "NA" ] && addon $((POS + 8)) "(S${IDX}) SNR" "${T/dB/} dB"
124+
125+
O1=$(echo "$O1" | sed '1,4d')
126+
done
127+
128+
T=$(echo "$O" | awk -F: '/^nr_band:/ {print $2}' | xargs)
129+
if [ -n "$T" ]; then
130+
MODE="$MODE / $(band5g ${T/n/})"
131+
IDX=$((IDX + 1))
132+
133+
T1=$(echo "$O" | awk -F: '/^nr_band_width:/ {print $2}' | xargs)
134+
if [ -n "$T1" ]; then
135+
case $IDX in
136+
1) S1BAND="$(band5g ${T/n/}) @${T1/MHz/} MHz";;
137+
2) S2BAND="$(band5g ${T/n/}) @${T1/MHz/} MHz";;
138+
3) S3BAND="$(band5g ${T/n/}) @${T1/MHz/} MHz";;
139+
4) S4BAND="$(band5g ${T/n/}) @${T1/MHz/} MHz";;
140+
*) ;;
141+
esac
142+
fi
143+
144+
T=$(echo "$O" | awk -F: '/^nr_pci:/ {print $2}' | xargs)
145+
if [ -n "$T" ]; then
146+
case $IDX in
147+
1) S1PCI="$T";;
148+
2) S2PCI="$T";;
149+
3) S3PCI="$T";;
150+
4) S4PCI="$T";;
151+
*) ;;
152+
esac
153+
fi
154+
T=$(echo "$O" | awk -F: '/^nr_channel:/ {print $2}' | xargs)
155+
if [ -n "$T" ]; then
156+
case $IDX in
157+
1) S1EARFCN="$T";;
158+
2) S2EARFCN="$T";;
159+
3) S3EARFCN="$T";;
160+
4) S4EARFCN="$T";;
161+
*) ;;
162+
esac
163+
fi
164+
T=$(echo "$O" | awk -F: '/^nr_rsrp:/ {print $2}' | cut -f1 -d" ")
165+
# [ -n "$T" ] && addon $((POS + 6)) "(S${IDX}) RSRP" "${T/dBm/} dBm"
166+
T=$(echo "$O" | awk -F: '/^nr_rsrq:/ {print $2}' | xargs)
167+
# [ -n "$T" ] && addon $((POS + 7)) "(S${IDX}) RSRQ" "${T/dB/} dB"
168+
T=$(echo "$O" | awk -F: '/^nr_snr:/ {print $2}' | xargs)
169+
# [ -n "$T" ] && [ "$T" != "NA" ] && addon $((POS + 8)) "(S${IDX}) SNR" "${T/dB/} dB"
170+
fi
171+
172+
fi
173+
174+
MODE=$(echo $MODE | sed 's,/,+,'| sed 's,LTE B,LTE | B,')
175+
176+
177+
# Modem
178+
179+
MODELA=$(sms_tool -d $DEVICE at "AT+CGMM" | tr -s "\n" | xargs)
180+
MODELB=$(sms_tool -d $DEVICE at "AT+CGMI" | tr -s "\n" | xargs)
181+
MODELACUT=$(echo $MODELA | sed s/"AT+CGMM "//)
182+
MODELBCUT=$(echo $MODELB | sed s/"AT+CGMI "//)
183+
MODEL="$MODELBCUT "$MODELACUT
184+
185+
FWA=$(sms_tool -d $DEVICE at "AT+CGMR" | tr -s "\n" | xargs)
186+
FW=$(echo $FWA | sed s/"AT+CGMR "//)
187+
188+
# International Mobile Equipment Identity (IMEI)
189+
O=$(sms_tool -d $DEVICE at "AT+CGSN" | xargs)
190+
NR_I=$(echo "$O" | sed s/"AT+CGSN "//)
191+
if [ -n "$NR_I" ]; then
192+
NR_IMEI="$NR_I"
193+
fi
194+
195+
# International Mobile Subscriber Identity (IMSI)
196+
O=$(sms_tool -d $DEVICE at "AT+CIMI" | xargs)
197+
NR_C=$(echo "$O" | sed s/"AT+CIMI "//)
198+
if [ -n "$NR_C" ]; then
199+
NR_IMSI="$NR_C"
200+
fi
201+
202+
# Integrated Circuit Card Identifier (ICCID)
203+
O=$(sms_tool -d $DEVICE at "AT+ICCID")
204+
NR_D=$(echo "$O" | awk -F [:] '/^\ICCID:/{print $2}' | xargs)
205+
if [ -n "$NR_D" ]; then
206+
NR_ICCID="$NR_D"
207+
fi
208+
209+
# Protocol
210+
# DRIVER=QMI_WWAN & DRIVER=CDC_MBIM & DRIVER=CDC_ETHER
211+
212+
PV=$(cat /sys/kernel/debug/usb/devices 2>/dev/null)
213+
PVCUT=$(echo $PV | awk -F 'Vendor=05c6 ProdID=9025' '{print $2}' | cut -c-1290)
214+
if echo "$PVCUT" | grep -q "Driver=qmi_wwan"
215+
then
216+
PROTO="qmi"
217+
elif echo "$PVCUT" | grep -q "Driver=cdc_mbim"
218+
then
219+
PROTO="mbim"
220+
elif echo "$PVCUT" | grep -q "Driver=cdc_ether"
221+
then
222+
PROTO="ecm"
223+
fi

0 commit comments

Comments
 (0)