Files

222 lines
7.0 KiB
Plaintext

# DW5821e Snapdragon X20 LTE
O=$(sms_tool -d $DEVICE at "at+temp")
T=$(echo "$O" | awk -F: '/xo_therm_buf:/ {print $2}' | xargs)
if [ -n "$T" ]; then
TEMP="$T °C"
else
O=$(sms_tool -d $DEVICE at "at^temp?")
T=$(echo "$O" | awk '{gsub("C","");print $2}' | sort -r | head -n 1)
[ -n "$T" ] && TEMP="$T °C"
fi
O=$(sms_tool -d $DEVICE at "at^ca_info?;^debug?")
O1=$(echo "$O" | sed -n '/^RAT:/,/^SCell1:/p')
[ -z "$O1" ] && O1=$(echo "$O" | sed -n '/^EARFCN/,/^SCell1:/p')
T=$(echo "$O1" | awk '/TAC:/ {print $2}')
if [ -n "$T" ]; then
T_DEC=$(printf "%d" "0x$T")
T_HEX=$T
fi
T=$(echo "$O" | awk '/^RSSI:/ {print $2}' | sed 's/dBm//')
[ -n "$T" ] && RSSI=$T
T=$(echo "$O" | awk '/^RSRP:/ {print $2}' | sed 's/dBm//')
[ -n "$T" ] && RSRP=$T
T=$(echo "$O" | awk '/^RSRQ:/ {print $2}' | sed 's/dB//')
[ -n "$T" ] && RSRQ=$T
T=$(echo "$O" | awk '/^RS-SINR/ {print $2}' | sed 's/dB//')
[ -n "$T" ] && SINR=$T
T=$(echo "$O" | awk '/^RS-SNR/ {print $2}' | sed 's/dB//')
[ -n "$T" ] && SINR=$T
# SNR > SINR
T=$(echo "$O1" | awk '/^BAND:/ {print $2}')
if [ -n "$T" ]; then
B=$(band4g $T)
PBAND="$B"
MODE="$MODE $B"
fi
T=$(echo "$O1" | awk '/^BW:/ {print $2}')
[ -n "$T" ] && PBAND="$PBAND @$T MHz"
T=$(echo "$O1" | awk -F[\(\)] '/^eNB ID\(PCI\)/ {print $4}')
[ -n "$T" ] && PCI="$T"
T=$(echo "$O1" | awk '/^EARFCN/ {print $2}' | xargs)
if [ -n "$T" ]; then
EARFCN="$(echo $T | cut -f1 -d/)"
# addon 34 "EARFCN DL" "$(echo $T | cut -f1 -d/)"
# addon 34 "EARFCN UL" "$(echo $T | cut -f2 -d/)"
fi
T=$(echo "$O" | awk '/^SCC1 info:/ {print $5}')
if [ -n "$T" ]; then
T=${T/,/}
T=${T/LTE_B/}
S1BAND="$(band4g $T)"
MODE="${MODE/LTE/LTE_A} / $(band4g $T)"
T=$(echo "$O" | awk '/^SCC1 info:/ {print $8}')
[ -n "$T" ] && S1BAND="$S1BAND @$T MHz"
O1=$(echo "$O" | sed -n '/^SCell1:/,/^SCell2:/p')
T=$(echo "$O1" | awk -F [:,\ ] '/^EARFCN/{print $2}')
[ -n "$T" ] && S1EARFCN="$T"
T=$(echo "$O1" | awk -F [:,\ ] '/^EARFCN/{print $4}' | xargs)
[ -n "$T" ] && S1PCI="$T"
T=$(echo "$O1" | awk -F [:,] '/^RSRP/{print $2}' | sed 's/dBm//')
# [ -n "$T" ] && addon 56 "(S1) RSRP" "$T"
T=$(echo "$O1" | awk -F [:,] '/^RSRP/{print $4}' | xargs | sed 's/dB//')
# [ -n "$T" ] && addon 57 "(S1) RSRQ" "$T"
T=$(echo "$O1" | awk -F [:,] '/^RSSI/{print $2}' | sed 's/dBm//')
# [ -n "$T" ] && addon 55 "(S1) RSSI" "$T"
T=$(echo "$O1" | awk -F [:,] '/^RSSI/{print $4}' | xargs | sed 's/dB//')
# [ -n "$T" ] && addon 58 "(S1) SNR" "$T"
fi
T=$(echo "$O" | awk '/^SCC2 info:/ {print $5}')
if [ -n "$T" ]; then
T=${T/,/}
T=${T/LTE_B/}
S2BAND="$(band4g $T)"
MODE="${MODE} / $(band4g $T)"
T=$(echo "$O" | awk '/^SCC2 info:/ {print $8}')
[ -n "$T" ] && S2BAND="$S2BAND @$T MHz"
O1=$(echo "$O" | sed -n '/^SCell2:/,/^SCell3:/p')
T=$(echo "$O1" | awk -F [:,\ ] '/^EARFCN/{print $2}')
[ -n "$T" ] && S2EARFCN="$T"
T=$(echo "$O1" | awk -F [:,\ ] '/^EARFCN/{print $4}' | xargs)
[ -n "$T" ] && S2PCI="$T"
T=$(echo "$O1" | awk -F [:,] '/^RSRP/{print $2}' | sed 's/dBm/ dBm/')
# [ -n "$T" ] && addon 66 "(S2) RSRP" "$T"
T=$(echo "$O1" | awk -F [:,] '/^RSRP/{print $4}' | xargs | sed 's/dB/ dB/')
# [ -n "$T" ] && addon 67 "(S2) RSRQ" "$T"
T=$(echo "$O1" | awk -F [:,] '/^RSSI/{print $2}' | sed 's/dBm/ dBm/')
# [ -n "$T" ] && addon 65 "(S2) RSSI" "$T"
T=$(echo "$O1" | awk -F [:,] '/^RSSI/{print $4}' | xargs | sed 's/dB/ dB/')
# [ -n "$T" ] && addon 68 "(S2) SNR" "$T"
fi
T=$(echo "$O" | awk '/^SCC3 info:/ {print $5}')
if [ -n "$T" ]; then
T=${T/,/}
T=${T/LTE_B/}
S3BAND="$(band4g $T)"
MODE="${MODE} / $(band4g $T)"
T=$(echo "$O" | awk '/^SCC3 info:/ {print $8}')
[ -n "$T" ] && S3BAND="$S3BAND @$T MHz"
O1=$(echo "$O" | sed -n '/^SCell3:/,/^SCell4:/p')
T=$(echo "$O1" | awk -F [:,\ ] '/^EARFCN/{print $2}')
[ -n "$T" ] && S3EARFCN="$T"
T=$(echo "$O1" | awk -F [:,\ ] '/^EARFCN/{print $4}' | xargs)
[ -n "$T" ] && S3PCI="$T"
T=$(echo "$O1" | awk -F [:,] '/^RSRP/{print $2}' | sed 's/dBm/ dBm/')
# [ -n "$T" ] && addon 66 "(S3) RSRP" "$T"
T=$(echo "$O1" | awk -F [:,] '/^RSRP/{print $4}' | xargs | sed 's/dB/ dB/')
# [ -n "$T" ] && addon 67 "(S3) RSRQ" "$T"
T=$(echo "$O1" | awk -F [:,] '/^RSSI/{print $2}' | sed 's/dBm/ dBm/')
# [ -n "$T" ] && addon 65 "(S3) RSSI" "$T"
T=$(echo "$O1" | awk -F [:,] '/^RSSI/{print $4}' | xargs | sed 's/dB/ dB/')
# [ -n "$T" ] && addon 68 "(S3) SNR" "$T"
fi
T=$(echo "$O" | awk '/^SCC4 info:/ {print $5}')
if [ -n "$T" ]; then
T=${T/,/}
T=${T/LTE_B/}
S4BAND="$(band4g $T)"
MODE="${MODE} / $(band4g $T)"
T=$(echo "$O" | awk '/^SCC4 info:/ {print $8}')
[ -n "$T" ] && S4BAND="$S4BAND @$T MHz"
O1=$(echo "$O" | sed -n '/^SCell4:/,/^SCell5:/p')
T=$(echo "$O1" | awk -F [:,\ ] '/^EARFCN/{print $2}')
[ -n "$T" ] && S4EARFCN="$T"
T=$(echo "$O1" | awk -F [:,\ ] '/^EARFCN/{print $4}' | xargs)
[ -n "$T" ] && S4PCI="$T"
T=$(echo "$O1" | awk -F [:,] '/^RSRP/{print $2}' | sed 's/dBm/ dBm/')
# [ -n "$T" ] && addon 66 "(S4) RSRP" "$T"
T=$(echo "$O1" | awk -F [:,] '/^RSRP/{print $4}' | xargs | sed 's/dB/ dB/')
# [ -n "$T" ] && addon 67 "(S4) RSRQ" "$T"
T=$(echo "$O1" | awk -F [:,] '/^RSSI/{print $2}' | sed 's/dBm/ dBm/')
# [ -n "$T" ] && addon 65 "(S4) RSSI" "$T"
T=$(echo "$O1" | awk -F [:,] '/^RSSI/{print $4}' | xargs | sed 's/dB/ dB/')
# [ -n "$T" ] && addon 68 "(S4) SNR" "$T"
fi
MODE=$(echo $MODE | sed 's,/,+,' | sed 's,LTE_A,LTE-A | ,' | sed 's,LTE B,LTE | B,')
# Cell ID & LAC & TAC
LAC_HEX=$(printf "%X" $LAC_DEC)
if [ -n "$LAC_DEC" ]; then
TAC_HEX=$LAC_HEX
fi
CID_HEX=$(printf "%X" $CID_DEC)
if [ -z "$TAC_DEC" ]
then
[ -n "$TAC_HEX" ] && TAC_DEC=$(echo $((0x$TAC_HEX)))
fi
# Protocol
# DRIVER=QMI_WWAN & DRIVER=CDC_MBIM & DRIVER=CDC_ETHER
PV=$(cat /sys/kernel/debug/usb/devices)
PVCUT=$(echo $PV | awk -F 'Vendor=413c ProdID=81d7' '{print $2}' | cut -c-1520)
if echo "$PVCUT" | grep -q "Driver=qmi_wwan"
then
PROTO="qmi"
elif echo "$PVCUT" | grep -q "Driver=cdc_mbim"
then
PROTO="mbim"
elif echo "$PVCUT" | grep -q "Driver=cdc_ether"
then
PROTO="ecm"
fi
# Modem
PVMODEL=$(echo $PV | awk -F 'Vendor=413c ProdID=81d7' '{print $2}' | cut -c-150)
if [ -z "$MODEL" ]
then
MODELBCUT=$(echo $PVMODEL | awk -F 'Manufacturer=|S: Product=' '{print $2}' | sed s/"Inc. "// | xargs)
MODELACUT=$(echo $PVMODEL | awk -F 'Product=| S: SerialNumber' '{print $2}'| xargs)
MODEL="$MODELBCUT "$MODELACUT
# MODELC="$MODELBCUT "$MODELACUT
# MODEL=$(echo "$MODELC" | awk '{for (i=1;i<=NF;i++) if (!a[$i]++) printf("%s%s",$i,FS)}{printf("\n")}' | tr -d '\r\n')
fi
# FW
OF=$(sms_tool -d $DEVICE at "ati")
DEV2=$(echo $OF | tr -s "\n" | xargs)
FW=$(echo $DEV2 | awk -F 'Revision: | IMEI: ' '{print $2}' | cut -c-50)
T=$(echo "$O" | awk -F ': ' '/ICCID:/ {print $2}')
if [ -n "$T" ]; then
NR_ICCID="$T"
fi
# International Mobile Equipment Identity (IMEI)
O=$(sms_tool -d $DEVICE at "AT+GSN" | xargs)
NR_I=$(echo "$O")
if [ -n "$NR_I" ]; then
NR_IMEI="$NR_I"
fi
# International Mobile Subscriber Identity (IMSI)
O=$(sms_tool -d $DEVICE at "AT+CIMI" | xargs)
NR_C=$(echo "$O")
if [ -n "$NR_C" ]; then
NR_IMSI="$NR_C"
fi
# Integrated Circuit Card Identifier (ICCID)
O=$(sms_tool -d $DEVICE at "AT+ICCID" | xargs)
NR_D=$(echo "$O" | awk -F [:] '/^\ICCID:/{print $2}' | xargs)
if [ -n "$NR_D" ]; then
NR_ICCID="$NR_D"
fi