251

Odp: Pakiet luci-app-modemdata i co dalej..

sh -x /usr/share/modemdata/params.sh

{
"csq":"11",
"signal":"87",
"operator_name":"Orange",
"operator_mcc":"260",
"operator_mnc":"03",
"country":"Poland",
"mode":"LTE-A B1 (2100 MHz) / B7 (2600 MHz) / B3 (1800 MHz) / B8 (900 MHz)",
"registration":"1",
"lac_dec":"53112",
"lac_hex":"CF78",
"cid_dec":"59322902",
"cid_hex":"3893216",
"addon":[{"idx":10,"key":"Temperature","value":"55 °C"},{"idx":23,"key":"TAC","value":"53112 (CF78)"},{"idx":30,"key":"Primary band","value":"B1 (2100 MHz) @15 MHz"},{"idx":33,"key":"PCI","value":"326"},{"idx":34,"key":"EARFCN DL","value":"75"},{"idx":34,"key":"EARFCN UL","value":"18075"},{"idx":36,"key":"RSRP","value":"-89 dBm"},{"idx":35,"key":"RSSI","value":"-59 dBm"},{"idx":37,"key":"RSRQ","value":"-8 dB"},{"idx":53,"key":"(S1) PCI","value":"326"},{"idx":54,"key":"(S1) EARFCN DL","value":"3025"},{"idx":50,"key":"(S1) band","value":"B7 (2600 MHz) @15 MHz"},{"idx":56,"key":"(S1) RSRP","value":"-105 dBm"},{"idx":57,"key":"(S1) RSRQ","value":"-7 dB"},{"idx":63,"key":"(S2) PCI","value":"326"},{"idx":64,"key":"(S2) EARFCN DL","value":"1725"},{"idx":60,"key":"(S2) band","value":"B3 (1800 MHz) @15 MHz"},{"idx":66,"key":"(S2) RSRP","value":"-91 dBm"},{"idx":67,"key":"(S2) RSRQ","value":"-8 dB"},{"idx":73,"key":"(S3) PCI","value":"326"},{"idx":74,"key":"(S3) EARFCN DL","value":"3764"},{"idx":70,"key":"(S3) band","value":"B8 (900 MHz) @5 MHz"},{"idx":76,"key":"(S3) RSRP","value":"-80 dBm"},{"idx":77,"key":"(S3) RSRQ","value":"-9 dB"}]
}

+ DEVICE=/dev/ttyACM2
+ '[' -z /dev/ttyACM2 ]
+ '[' '!' -e /dev/ttyACM2 ]
+ FORCE_PLMN=
+ '[' x '=' x1 ]
+ FORCE_PLMN=
+ RES=/usr/share/modemdata
+ sms_tool -D -d /dev/ttyACM2 at 'AT+CPIN?;+CSQ;+COPS=3,0;+COPS?;+COPS=3,2;+COPS?;+CREG=2;+CREG?'
+ tr -d '\r'
+ O='
+CPIN: READY

+CSQ: 11,6

+COPS: 0,0,"Orange",7

+COPS: 0,2,"26003",7

+CREG: 2,1,"CF78","03893216",7

OK'
+ echo '
+CPIN: READY

+CSQ: 11,6

+COPS: 0,0,"Orange",7

+COPS: 0,2,"26003",7

+CREG: 2,1,"CF78","03893216",7

OK'
+ awk '-F[, ]' '/^\+(csq|CSQ)/ {print $2}'
+ CSQ=11
+ '[' -z 11 ]
+ '[' 11 -ge 0 ]
+ '[' 11 -le 31 ]
+ CSQ_PER=35
+ COUNTRY=
+ COPS=
+ COPS_MCC=
+ COPS_MNC=
+ echo '
+CPIN: READY

+CSQ: 11,6

+COPS: 0,0,"Orange",7

+COPS: 0,2,"26003",7

+CREG: 2,1,"CF78","03893216",7

OK'
+ awk '-F["]' '/^\+COPS:\s*.,2/ {print $2}'
+ COPS_NUM=26003
+ '[' -n 26003 ]
+ COPS_MCC=260
+ COPS_MNC=03
+ '[' -z  ]
+ echo '
+CPIN: READY

+CSQ: 11,6

+COPS: 0,0,"Orange",7

+COPS: 0,2,"26003",7

+CREG: 2,1,"CF78","03893216",7

OK'
+ awk '{if(NF==2 && tolower($1)==tolower($2)){print $1}else{print $0}}'
+ awk '-F["]' '/^\+COPS:\s*.,0/ {print $2}'
+ COPS=Orange
+ '[' -z Orange ]
+ '[' -n 26003 ]
+ awk '-F[;]' '/^26003;/ {print $2}' /usr/share/modemdata/libs/mccmnc.dat
+ COUNTRY=Poland
+ echo '
+CPIN: READY

+CSQ: 11,6

+COPS: 0,0,"Orange",7

+COPS: 0,2,"26003",7

+CREG: 2,1,"CF78","03893216",7

OK'
+ busybox awk '-F[,]' '/^\+CREG/ {gsub(/[[:space:]"]+/,"");printf "T=\"%d\";LAC_HEX=\"%X\";CID_HEX=\"%X\";LAC_DEC=\"%d\";CID_DEC=\"%d\";MODE_NUM=\"%d\"", $2, "0x"$3, "0x"$4, "0x"$3, "0x"$4, $5}'
+ eval 'T="1";LAC_HEX="CF78";CID_HEX="3893216";LAC_DEC="53112";CID_DEC="59322902";MODE_NUM="7"'
+ T=1
+ LAC_HEX=CF78
+ CID_HEX=3893216
+ LAC_DEC=53112
+ CID_DEC=59322902
+ MODE_NUM=7
+ REG=1
+ '[' -z 7 ]
+ '[' x7 '=' x0 ]
+ MODE=LTE
+ echo '
+CPIN: READY

+CSQ: 11,6

+COPS: 0,0,"Orange",7

+COPS: 0,2,"26003",7

+CREG: 2,1,"CF78","03893216",7

OK'
+ awk '-F[, ]' '/^\+CME ERROR:/ {print $0;exit}'
+ T=
+ '[' -n  ]
+ echo '
+CPIN: READY

+CSQ: 11,6

+COPS: 0,0,"Orange",7

+COPS: 0,2,"26003",7

+CREG: 2,1,"CF78","03893216",7

OK'
+ + awkxargs '-F[, ]'
 '/^\+CPIN:/ {print $0;exit}'
+ T='+CPIN: READY'
+ '[' -n '+CPIN: READY' ]
+ '[' '+CPIN: READY' '=' '+CPIN: READY' ]
+ REGOK=0
+ '[' x1 '=' x1 ]
+ REGOK=1
+ . /usr/share/modemdata/libs/getdevicevendorproduct
+ getdevicevendorproduct /dev/ttyACM2
+ basename /dev/ttyACM2
+ devname=ttyACM2
+ readlink -f /sys/class/tty/ttyACM2/device
+ devpath=/sys/devices/platform/soc/11200000.usb/usb1/1-1/1-1.1/1-1.1:1.4
+ T=/sys/devices/platform/soc/11200000.usb/usb1/1-1/1-1.1
+ cat /sys/devices/platform/soc/11200000.usb/usb1/1-1/1-1.1/idVendor
+ cat /sys/devices/platform/soc/11200000.usb/usb1/1-1/1-1.1/idProduct
+ echo usb/8087095a
+ VIDPID=usb/8087095a
+ '[' -e /usr/share/modemdata/addon/usb/8087095a ]
+ ADDON=
+ cat /tmp/sysinfo/board_name
+ . /usr/share/modemdata/addon/usb/8087095a
+ sms_tool -d /dev/ttyACM2 at 'AT+MTSM=1'
+ O='
+MTSM: 55

'
+ echo '
+MTSM: 55

'
+ awk -F: '/^\+MTSM:/ {print $2}'
+ xargs
+ T=55
+ '[' -n 55 ]
+ addon 10 Temperature '55 °C'
+ '[' -n  ]
+ ADDON='{"idx":10,"key":"Temperature","value":"55 °C"}'
+ '[' 1 '=' 1 ]
+ sms_tool -d /dev/ttyACM2 at 'AT+XLEC?;+XMCI=1;+XCCINFO=1;+XCCINFO?'
+ O='
+XLEC: 0,4,4,4,4,2,BAND_LTE_1,0,0,0,0

+XMCI: 4,260,03,"0xCF78","0x03893216","0x0146","0x0000004B","0x0000469B","0xFFFFFFFF",52,24,50,"0x00000014","0x00000000"

+XMCI: 5,000,000,"0xFFFE","0xFFFFFFFF","0x0146","0x00000BD1","0xFFFFFFFF","0xFFFFFFFF",36,26,255,"0x7FFFFFFF","0x00000000"

+XMCI: 5,000,000,"0xFFFE","0xFFFFFFFF","0x0146","0x000006BD","0xFFFFFFFF","0xFFFFFFFF",50,25,255,"0x7FFFFFFF","0x00000000"

+XMCI: 5,000,000,"0xFFFE","0xFFFFFFFF","0x0146","0x00000EB4","0xFFFFFFFF","0xFFFFFFFF",61,22,255,"0x7FFFFFFF","0x00000000"

+XCCINFO: 1,260,03,"03893216",3,101,"FFFF",1,"FF","CF78",0,0,0,0,0,0,0,0

'
+ '[' x7 '=' x7 ]
+ echo '
+XLEC: 0,4,4,4,4,2,BAND_LTE_1,0,0,0,0

+XMCI: 4,260,03,"0xCF78","0x03893216","0x0146","0x0000004B","0x0000469B","0xFFFFFFFF",52,24,50,"0x00000014","0x00000000"

+XMCI: 5,000,000,"0xFFFE","0xFFFFFFFF","0x0146","0x00000BD1","0xFFFFFFFF","0xFFFFFFFF",36,26,255,"0x7FFFFFFF","0x00000000"

+XMCI: 5,000,000,"0xFFFE","0xFFFFFFFF","0x0146","0x000006BD","0xFFFFFFFF","0xFFFFFFFF",50,25,255,"0x7FFFFFFF","0x00000000"

+XMCI: 5,000,000,"0xFFFE","0xFFFFFFFF","0x0146","0x00000EB4","0xFFFFFFFF","0xFFFFFFFF",61,22,255,"0x7FFFFFFF","0x00000000"

+XCCINFO: 1,260,03,"03893216",3,101,"FFFF",1,"FF","CF78",0,0,0,0,0,0,0,0

'
+ xargs
+ awk '-F[,:]' '/^\+XCCINFO:/{print $11}'
+ T=CF78
+ '[' -n CF78 ]
+ printf '%d' 0xCF78
+ T_DEC=53112
+ addon 23 TAC '53112 (CF78)'
+ '[' -n '{"idx":10,"key":"Temperature","value":"55 °C"}' ]
+ ADDON='{"idx":10,"key":"Temperature","value":"55 °C"},'
+ ADDON='{"idx":10,"key":"Temperature","value":"55 °C"},{"idx":23,"key":"TAC","value":"53112 (CF78)"}'
+ PB=
+ S1B=
+ S2B=
+ S3B=
+ S4B=
+ BWP=
+ BWS1=
+ BWS2=
+ BWS3=
+ BWS4=
+ echo '
+XLEC: 0,4,4,4,4,2,BAND_LTE_1,0,0,0,0

+XMCI: 4,260,03,"0xCF78","0x03893216","0x0146","0x0000004B","0x0000469B","0xFFFFFFFF",52,24,50,"0x00000014","0x00000000"

+XMCI: 5,000,000,"0xFFFE","0xFFFFFFFF","0x0146","0x00000BD1","0xFFFFFFFF","0xFFFFFFFF",36,26,255,"0x7FFFFFFF","0x00000000"

+XMCI: 5,000,000,"0xFFFE","0xFFFFFFFF","0x0146","0x000006BD","0xFFFFFFFF","0xFFFFFFFF",50,25,255,"0x7FFFFFFF","0x00000000"

+XMCI: 5,000,000,"0xFFFE","0xFFFFFFFF","0x0146","0x00000EB4","0xFFFFFFFF","0xFFFFFFFF",61,22,255,"0x7FFFFFFF","0x00000000"

+XCCINFO: 1,260,03,"03893216",3,101,"FFFF",1,"FF","CF78",0,0,0,0,0,0,0,0

'
+ awk '-F[,:]' '/^\+XLEC:/{print $3}'
+ CELLS=4
+ '[' -z 4 ]
+ echo '
+XLEC: 0,4,4,4,4,2,BAND_LTE_1,0,0,0,0

+XMCI: 4,260,03,"0xCF78","0x03893216","0x0146","0x0000004B","0x0000469B","0xFFFFFFFF",52,24,50,"0x00000014","0x00000000"

+XMCI: 5,000,000,"0xFFFE","0xFFFFFFFF","0x0146","0x00000BD1","0xFFFFFFFF","0xFFFFFFFF",36,26,255,"0x7FFFFFFF","0x00000000"

+XMCI: 5,000,000,"0xFFFE","0xFFFFFFFF","0x0146","0x000006BD","0xFFFFFFFF","0xFFFFFFFF",50,25,255,"0x7FFFFFFF","0x00000000"

+XMCI: 5,000,000,"0xFFFE","0xFFFFFFFF","0x0146","0x00000EB4","0xFFFFFFFF","0xFFFFFFFF",61,22,255,"0x7FFFFFFF","0x00000000"

+XCCINFO: 1,260,03,"03893216",3,101,"FFFF",1,"FF","CF78",0,0,0,0,0,0,0,0

'
+ awk '-F[,:]' '/^\+XLEC:/{print $4}'
+ T=4
+ bandwidth 4
+ echo 15
+ BWP=15
+ echo '
+XLEC: 0,4,4,4,4,2,BAND_LTE_1,0,0,0,0

+XMCI: 4,260,03,"0xCF78","0x03893216","0x0146","0x0000004B","0x0000469B","0xFFFFFFFF",52,24,50,"0x00000014","0x00000000"

+XMCI: 5,000,000,"0xFFFE","0xFFFFFFFF","0x0146","0x00000BD1","0xFFFFFFFF","0xFFFFFFFF",36,26,255,"0x7FFFFFFF","0x00000000"

+XMCI: 5,000,000,"0xFFFE","0xFFFFFFFF","0x0146","0x000006BD","0xFFFFFFFF","0xFFFFFFFF",50,25,255,"0x7FFFFFFF","0x00000000"

+XMCI: 5,000,000,"0xFFFE","0xFFFFFFFF","0x0146","0x00000EB4","0xFFFFFFFF","0xFFFFFFFF",61,22,255,"0x7FFFFFFF","0x00000000"

+XCCINFO: 1,260,03,"03893216",3,101,"FFFF",1,"FF","CF78",0,0,0,0,0,0,0,0

'
+ awk '-F[,:]' '/^\+XLEC:/{print $5}'
+ T=4
+ bandwidth 4
+ echo 15
+ BWS1=15
+ echo '
+XLEC: 0,4,4,4,4,2,BAND_LTE_1,0,0,0,0

+XMCI: 4,260,03,"0xCF78","0x03893216","0x0146","0x0000004B","0x0000469B","0xFFFFFFFF",52,24,50,"0x00000014","0x00000000"

+XMCI: 5,000,000,"0xFFFE","0xFFFFFFFF","0x0146","0x00000BD1","0xFFFFFFFF","0xFFFFFFFF",36,26,255,"0x7FFFFFFF","0x00000000"

+XMCI: 5,000,000,"0xFFFE","0xFFFFFFFF","0x0146","0x000006BD","0xFFFFFFFF","0xFFFFFFFF",50,25,255,"0x7FFFFFFF","0x00000000"

+XMCI: 5,000,000,"0xFFFE","0xFFFFFFFF","0x0146","0x00000EB4","0xFFFFFFFF","0xFFFFFFFF",61,22,255,"0x7FFFFFFF","0x00000000"

+XCCINFO: 1,260,03,"03893216",3,101,"FFFF",1,"FF","CF78",0,0,0,0,0,0,0,0

'
+ awk '-F[,:]' '/^\+XLEC:/{print $6}'
+ T=4
+ bandwidth 4
+ echo 15
+ BWS2=15
+ echo '
+XLEC: 0,4,4,4,4,2,BAND_LTE_1,0,0,0,0

+XMCI: 4,260,03,"0xCF78","0x03893216","0x0146","0x0000004B","0x0000469B","0xFFFFFFFF",52,24,50,"0x00000014","0x00000000"

+XMCI: 5,000,000,"0xFFFE","0xFFFFFFFF","0x0146","0x00000BD1","0xFFFFFFFF","0xFFFFFFFF",36,26,255,"0x7FFFFFFF","0x00000000"

+XMCI: 5,000,000,"0xFFFE","0xFFFFFFFF","0x0146","0x000006BD","0xFFFFFFFF","0xFFFFFFFF",50,25,255,"0x7FFFFFFF","0x00000000"

+XMCI: 5,000,000,"0xFFFE","0xFFFFFFFF","0x0146","0x00000EB4","0xFFFFFFFF","0xFFFFFFFF",61,22,255,"0x7FFFFFFF","0x00000000"

+XCCINFO: 1,260,03,"03893216",3,101,"FFFF",1,"FF","CF78",0,0,0,0,0,0,0,0

'
+ awk '-F[,:]' '/^\+XLEC:/{print $7}'
+ T=2
+ bandwidth 2
+ echo 5
+ BWS3=5
+ echo '
+XLEC: 0,4,4,4,4,2,BAND_LTE_1,0,0,0,0

+XMCI: 4,260,03,"0xCF78","0x03893216","0x0146","0x0000004B","0x0000469B","0xFFFFFFFF",52,24,50,"0x00000014","0x00000000"

+XMCI: 5,000,000,"0xFFFE","0xFFFFFFFF","0x0146","0x00000BD1","0xFFFFFFFF","0xFFFFFFFF",36,26,255,"0x7FFFFFFF","0x00000000"

+XMCI: 5,000,000,"0xFFFE","0xFFFFFFFF","0x0146","0x000006BD","0xFFFFFFFF","0xFFFFFFFF",50,25,255,"0x7FFFFFFF","0x00000000"

+XMCI: 5,000,000,"0xFFFE","0xFFFFFFFF","0x0146","0x00000EB4","0xFFFFFFFF","0xFFFFFFFF",61,22,255,"0x7FFFFFFF","0x00000000"

+XCCINFO: 1,260,03,"03893216",3,101,"FFFF",1,"FF","CF78",0,0,0,0,0,0,0,0

'
+ awk '-F[,:]' '/^\+XLEC:/{print $8}'
+ T=BAND_LTE_1
+ '[' -n BAND_LTE_1 ]
+ '[' xBAND_LTE_1 '!=' x0 ]
+ band4g 1
+ echo -n B1
+ echo ' (2100 MHz)'
+ PB='B1 (2100 MHz)'
+ '[' -z 15 ]
+ addon 30 'Primary band' 'B1 (2100 MHz) @15 MHz'
+ '[' -n '{"idx":10,"key":"Temperature","value":"55 °C"},{"idx":23,"key":"TAC","value":"53112 (CF78)"}' ]
+ ADDON='{"idx":10,"key":"Temperature","value":"55 °C"},{"idx":23,"key":"TAC","value":"53112 (CF78)"},'
+ ADDON='{"idx":10,"key":"Temperature","value":"55 °C"},{"idx":23,"key":"TAC","value":"53112 (CF78)"},{"idx":30,"key":"Primary band","value":"B1 (2100 MHz) @15 MHz"}'
+ MODE='LTE B1 (2100 MHz)'
+ echo '
+XLEC: 0,4,4,4,4,2,BAND_LTE_1,0,0,0,0

+XMCI: 4,260,03,"0xCF78","0x03893216","0x0146","0x0000004B","0x0000469B","0xFFFFFFFF",52,24,50,"0x00000014","0x00000000"

+XMCI: 5,000,000,"0xFFFE","0xFFFFFFFF","0x0146","0x00000BD1","0xFFFFFFFF","0xFFFFFFFF",36,26,255,"0x7FFFFFFF","0x00000000"

+XMCI: 5,000,000,"0xFFFE","0xFFFFFFFF","0x0146","0x000006BD","0xFFFFFFFF","0xFFFFFFFF",50,25,255,"0x7FFFFFFF","0x00000000"

+XMCI: 5,000,000,"0xFFFE","0xFFFFFFFF","0x0146","0x00000EB4","0xFFFFFFFF","0xFFFFFFFF",61,22,255,"0x7FFFFFFF","0x00000000"

+XCCINFO: 1,260,03,"03893216",3,101,"FFFF",1,"FF","CF78",0,0,0,0,0,0,0,0

'
+ awk '-F[,:]' '/^\+XLEC:/{print $9}'
+ T=0
+ '[' -n 0 ]
+ '[' x0 '!=' x0 ]
+ echo '
+XLEC: 0,4,4,4,4,2,BAND_LTE_1,0,0,0,0

+XMCI: 4,260,03,"0xCF78","0x03893216","0x0146","0x0000004B","0x0000469B","0xFFFFFFFF",52,24,50,"0x00000014","0x00000000"

+XMCI: 5,000,000,"0xFFFE","0xFFFFFFFF","0x0146","0x00000BD1","0xFFFFFFFF","0xFFFFFFFF",36,26,255,"0x7FFFFFFF","0x00000000"

+XMCI: 5,000,000,"0xFFFE","0xFFFFFFFF","0x0146","0x000006BD","0xFFFFFFFF","0xFFFFFFFF",50,25,255,"0x7FFFFFFF","0x00000000"

+XMCI: 5,000,000,"0xFFFE","0xFFFFFFFF","0x0146","0x00000EB4","0xFFFFFFFF","0xFFFFFFFF",61,22,255,"0x7FFFFFFF","0x00000000"

+XCCINFO: 1,260,03,"03893216",3,101,"FFFF",1,"FF","CF78",0,0,0,0,0,0,0,0

'
+ awk '-F[,:]' '/^\+XLEC:/{print $10}'
+ T=0
+ '[' -n 0 ]
+ '[' x0 '!=' x0 ]
+ echo '
+XLEC: 0,4,4,4,4,2,BAND_LTE_1,0,0,0,0

+XMCI: 4,260,03,"0xCF78","0x03893216","0x0146","0x0000004B","0x0000469B","0xFFFFFFFF",52,24,50,"0x00000014","0x00000000"

+XMCI: 5,000,000,"0xFFFE","0xFFFFFFFF","0x0146","0x00000BD1","0xFFFFFFFF","0xFFFFFFFF",36,26,255,"0x7FFFFFFF","0x00000000"

+XMCI: 5,000,000,"0xFFFE","0xFFFFFFFF","0x0146","0x000006BD","0xFFFFFFFF","0xFFFFFFFF",50,25,255,"0x7FFFFFFF","0x00000000"

+XMCI: 5,000,000,"0xFFFE","0xFFFFFFFF","0x0146","0x00000EB4","0xFFFFFFFF","0xFFFFFFFF",61,22,255,"0x7FFFFFFF","0x00000000"

+XCCINFO: 1,260,03,"03893216",3,101,"FFFF",1,"FF","CF78",0,0,0,0,0,0,0,0

'
+ awk '-F[,:]' '/^\+XLEC:/{print $11}'
+ T=0
+ '[' -n 0 ]
+ '[' x0 '!=' x0 ]
+ echo '
+XLEC: 0,4,4,4,4,2,BAND_LTE_1,0,0,0,0

+XMCI: 4,260,03,"0xCF78","0x03893216","0x0146","0x0000004B","0x0000469B","0xFFFFFFFF",52,24,50,"0x00000014","0x00000000"

+XMCI: 5,000,000,"0xFFFE","0xFFFFFFFF","0x0146","0x00000BD1","0xFFFFFFFF","0xFFFFFFFF",36,26,255,"0x7FFFFFFF","0x00000000"

+XMCI: 5,000,000,"0xFFFE","0xFFFFFFFF","0x0146","0x000006BD","0xFFFFFFFF","0xFFFFFFFF",50,25,255,"0x7FFFFFFF","0x00000000"

+XMCI: 5,000,000,"0xFFFE","0xFFFFFFFF","0x0146","0x00000EB4","0xFFFFFFFF","0xFFFFFFFF",61,22,255,"0x7FFFFFFF","0x00000000"

+XCCINFO: 1,260,03,"03893216",3,101,"FFFF",1,"FF","CF78",0,0,0,0,0,0,0,0

'
+ xargs
+ awk '-F[,:]' '/^\+XMCI: 4/{print $7}'
+ T=0x0146
+ '[' -n 0x0146 ]
+ printf '%d' 0x0146
+ addon 33 PCI 326
+ '[' -n '{"idx":10,"key":"Temperature","value":"55 °C"},{"idx":23,"key":"TAC","value":"53112 (CF78)"},{"idx":30,"key":"Primary band","value":"B1 (2100 MHz) @15 MHz"}' ]
+ ADDON='{"idx":10,"key":"Temperature","value":"55 °C"},{"idx":23,"key":"TAC","value":"53112 (CF78)"},{"idx":30,"key":"Primary band","value":"B1 (2100 MHz) @15 MHz"},'
+ ADDON='{"idx":10,"key":"Temperature","value":"55 °C"},{"idx":23,"key":"TAC","value":"53112 (CF78)"},{"idx":30,"key":"Primary band","value":"B1 (2100 MHz) @15 MHz"},{"idx":33,"key":"PCI","value":"326"}'
+ echo '
+XLEC: 0,4,4,4,4,2,BAND_LTE_1,0,0,0,0

+XMCI: 4,260,03,"0xCF78","0x03893216","0x0146","0x0000004B","0x0000469B","0xFFFFFFFF",52,24,50,"0x00000014","0x00000000"

+XMCI: 5,000,000,"0xFFFE","0xFFFFFFFF","0x0146","0x00000BD1","0xFFFFFFFF","0xFFFFFFFF",36,26,255,"0x7FFFFFFF","0x00000000"

+XMCI: 5,000,000,"0xFFFE","0xFFFFFFFF","0x0146","0x000006BD","0xFFFFFFFF","0xFFFFFFFF",50,25,255,"0x7FFFFFFF","0x00000000"

+XMCI: 5,000,000,"0xFFFE","0xFFFFFFFF","0x0146","0x00000EB4","0xFFFFFFFF","0xFFFFFFFF",61,22,255,"0x7FFFFFFF","0x00000000"

+XCCINFO: 1,260,03,"03893216",3,101,"FFFF",1,"FF","CF78",0,0,0,0,0,0,0,0

'
+ xargs
+ awk '-F[,:]' '/^\+XMCI: 4/{print $8}'
+ T=0x0000004B
+ '[' 0x0000004B '!=' 0xFFFFFFFF ]
+ printf '%d' 0x0000004B
+ addon 34 'EARFCN DL' 75
+ '[' -n '{"idx":10,"key":"Temperature","value":"55 °C"},{"idx":23,"key":"TAC","value":"53112 (CF78)"},{"idx":30,"key":"Primary band","value":"B1 (2100 MHz) @15 MHz"},{"idx":33,"key":"PCI","value":"326"}' ]
+ ADDON='{"idx":10,"key":"Temperature","value":"55 °C"},{"idx":23,"key":"TAC","value":"53112 (CF78)"},{"idx":30,"key":"Primary band","value":"B1 (2100 MHz) @15 MHz"},{"idx":33,"key":"PCI","value":"326"},'
+ ADDON='{"idx":10,"key":"Temperature","value":"55 °C"},{"idx":23,"key":"TAC","value":"53112 (CF78)"},{"idx":30,"key":"Primary band","value":"B1 (2100 MHz) @15 MHz"},{"idx":33,"key":"PCI","value":"326"},{"idx":34,"key":"EARFCN DL","value":"75"}'
+ '[' -z 'B1 (2100 MHz)' ]
+ echo '
+XLEC: 0,4,4,4,4,2,BAND_LTE_1,0,0,0,0

+XMCI: 4,260,03,"0xCF78","0x03893216","0x0146","0x0000004B","0x0000469B","0xFFFFFFFF",52,24,50,"0x00000014","0x00000000"

+XMCI: 5,000,000,"0xFFFE","0xFFFFFFFF","0x0146","0x00000BD1","0xFFFFFFFF","0xFFFFFFFF",36,26,255,"0x7FFFFFFF","0x00000000"

+XMCI: 5,000,000,"0xFFFE","0xFFFFFFFF","0x0146","0x000006BD","0xFFFFFFFF","0xFFFFFFFF",50,25,255,"0x7FFFFFFF","0x00000000"

+XMCI: 5,000,000,"0xFFFE","0xFFFFFFFF","0x0146","0x00000EB4","0xFFFFFFFF","0xFFFFFFFF",61,22,255,"0x7FFFFFFF","0x00000000"

+XCCINFO: 1,260,03,"03893216",3,101,"FFFF",1,"FF","CF78",0,0,0,0,0,0,0,0

'
+ xargs
+ awk '-F[,:]' '/^\+XMCI: 4/{print $9}'
+ T=0x0000469B
+ '[' 0x0000469B '!=' 0xFFFFFFFF ]
+ printf '%d' 0x0000469B
+ addon 34 'EARFCN UL' 18075
+ '[' -n '{"idx":10,"key":"Temperature","value":"55 °C"},{"idx":23,"key":"TAC","value":"53112 (CF78)"},{"idx":30,"key":"Primary band","value":"B1 (2100 MHz) @15 MHz"},{"idx":33,"key":"PCI","value":"326"},{"idx":34,"key":"EARFCN DL","value":"75"}' ]
+ ADDON='{"idx":10,"key":"Temperature","value":"55 °C"},{"idx":23,"key":"TAC","value":"53112 (CF78)"},{"idx":30,"key":"Primary band","value":"B1 (2100 MHz) @15 MHz"},{"idx":33,"key":"PCI","value":"326"},{"idx":34,"key":"EARFCN DL","value":"75"},'
+ ADDON='{"idx":10,"key":"Temperature","value":"55 °C"},{"idx":23,"key":"TAC","value":"53112 (CF78)"},{"idx":30,"key":"Primary band","value":"B1 (2100 MHz) @15 MHz"},{"idx":33,"key":"PCI","value":"326"},{"idx":34,"key":"EARFCN DL","value":"75"},{"idx":34,"key":"EARFCN UL","value":"18075"}'
+ echo '
+XLEC: 0,4,4,4,4,2,BAND_LTE_1,0,0,0,0

+XMCI: 4,260,03,"0xCF78","0x03893216","0x0146","0x0000004B","0x0000469B","0xFFFFFFFF",52,24,50,"0x00000014","0x00000000"

+XMCI: 5,000,000,"0xFFFE","0xFFFFFFFF","0x0146","0x00000BD1","0xFFFFFFFF","0xFFFFFFFF",36,26,255,"0x7FFFFFFF","0x00000000"

+XMCI: 5,000,000,"0xFFFE","0xFFFFFFFF","0x0146","0x000006BD","0xFFFFFFFF","0xFFFFFFFF",50,25,255,"0x7FFFFFFF","0x00000000"

+XMCI: 5,000,000,"0xFFFE","0xFFFFFFFF","0x0146","0x00000EB4","0xFFFFFFFF","0xFFFFFFFF",61,22,255,"0x7FFFFFFF","0x00000000"

+XCCINFO: 1,260,03,"03893216",3,101,"FFFF",1,"FF","CF78",0,0,0,0,0,0,0,0

'
+ awk '-F[,:]' '/^\+XMCI: 4/{print $11}'
+ T=52
+ '[' 52 '!=' 255 ]
+ addon 36 RSRP '-89 dBm'
+ '[' -n '{"idx":10,"key":"Temperature","value":"55 °C"},{"idx":23,"key":"TAC","value":"53112 (CF78)"},{"idx":30,"key":"Primary band","value":"B1 (2100 MHz) @15 MHz"},{"idx":33,"key":"PCI","value":"326"},{"idx":34,"key":"EARFCN DL","value":"75"},{"idx":34,"key":"EARFCN UL","value":"18075"}' ]
+ ADDON='{"idx":10,"key":"Temperature","value":"55 °C"},{"idx":23,"key":"TAC","value":"53112 (CF78)"},{"idx":30,"key":"Primary band","value":"B1 (2100 MHz) @15 MHz"},{"idx":33,"key":"PCI","value":"326"},{"idx":34,"key":"EARFCN DL","value":"75"},{"idx":34,"key":"EARFCN UL","value":"18075"},'
+ ADDON='{"idx":10,"key":"Temperature","value":"55 °C"},{"idx":23,"key":"TAC","value":"53112 (CF78)"},{"idx":30,"key":"Primary band","value":"B1 (2100 MHz) @15 MHz"},{"idx":33,"key":"PCI","value":"326"},{"idx":34,"key":"EARFCN DL","value":"75"},{"idx":34,"key":"EARFCN UL","value":"18075"},{"idx":36,"key":"RSRP","value":"-89 dBm"}'
+ N=
+ N=75
+ '[' -n 75 ]
+ echo '-89 75'
+ awk '{printf "%d\n", $1 + 10*log(12*$2)/log(10)}'
+ RSSI=-59
+ '[' -n -59 ]
+ '[' -59 -lt -113 ]
+ '[' -59 -gt -51 ]
+ addon 35 RSSI '-59 dBm'
+ '[' -n '{"idx":10,"key":"Temperature","value":"55 °C"},{"idx":23,"key":"TAC","value":"53112 (CF78)"},{"idx":30,"key":"Primary band","value":"B1 (2100 MHz) @15 MHz"},{"idx":33,"key":"PCI","value":"326"},{"idx":34,"key":"EARFCN DL","value":"75"},{"idx":34,"key":"EARFCN UL","value":"18075"},{"idx":36,"key":"RSRP","value":"-89 dBm"}' ]
+ ADDON='{"idx":10,"key":"Temperature","value":"55 °C"},{"idx":23,"key":"TAC","value":"53112 (CF78)"},{"idx":30,"key":"Primary band","value":"B1 (2100 MHz) @15 MHz"},{"idx":33,"key":"PCI","value":"326"},{"idx":34,"key":"EARFCN DL","value":"75"},{"idx":34,"key":"EARFCN UL","value":"18075"},{"idx":36,"key":"RSRP","value":"-89 dBm"},'
+ ADDON='{"idx":10,"key":"Temperature","value":"55 °C"},{"idx":23,"key":"TAC","value":"53112 (CF78)"},{"idx":30,"key":"Primary band","value":"B1 (2100 MHz) @15 MHz"},{"idx":33,"key":"PCI","value":"326"},{"idx":34,"key":"EARFCN DL","value":"75"},{"idx":34,"key":"EARFCN UL","value":"18075"},{"idx":36,"key":"RSRP","value":"-89 dBm"},{"idx":35,"key":"RSSI","value":"-59 dBm"}'
+ CSQ_PER=87
+ echo '
+XLEC: 0,4,4,4,4,2,BAND_LTE_1,0,0,0,0

+XMCI: 4,260,03,"0xCF78","0x03893216","0x0146","0x0000004B","0x0000469B","0xFFFFFFFF",52,24,50,"0x00000014","0x00000000"

+XMCI: 5,000,000,"0xFFFE","0xFFFFFFFF","0x0146","0x00000BD1","0xFFFFFFFF","0xFFFFFFFF",36,26,255,"0x7FFFFFFF","0x00000000"

+XMCI: 5,000,000,"0xFFFE","0xFFFFFFFF","0x0146","0x000006BD","0xFFFFFFFF","0xFFFFFFFF",50,25,255,"0x7FFFFFFF","0x00000000"

+XMCI: 5,000,000,"0xFFFE","0xFFFFFFFF","0x0146","0x00000EB4","0xFFFFFFFF","0xFFFFFFFF",61,22,255,"0x7FFFFFFF","0x00000000"

+XCCINFO: 1,260,03,"03893216",3,101,"FFFF",1,"FF","CF78",0,0,0,0,0,0,0,0

'
+ awk '-F[,:]' '/^\+XMCI: 4/{print $12}'
+ T=24
+ '[' 24 '!=' 255 ]
+ addon 37 RSRQ '-8 dB'
+ '[' -n '{"idx":10,"key":"Temperature","value":"55 °C"},{"idx":23,"key":"TAC","value":"53112 (CF78)"},{"idx":30,"key":"Primary band","value":"B1 (2100 MHz) @15 MHz"},{"idx":33,"key":"PCI","value":"326"},{"idx":34,"key":"EARFCN DL","value":"75"},{"idx":34,"key":"EARFCN UL","value":"18075"},{"idx":36,"key":"RSRP","value":"-89 dBm"},{"idx":35,"key":"RSSI","value":"-59 dBm"}' ]
+ ADDON='{"idx":10,"key":"Temperature","value":"55 °C"},{"idx":23,"key":"TAC","value":"53112 (CF78)"},{"idx":30,"key":"Primary band","value":"B1 (2100 MHz) @15 MHz"},{"idx":33,"key":"PCI","value":"326"},{"idx":34,"key":"EARFCN DL","value":"75"},{"idx":34,"key":"EARFCN UL","value":"18075"},{"idx":36,"key":"RSRP","value":"-89 dBm"},{"idx":35,"key":"RSSI","value":"-59 dBm"},'
+ ADDON='{"idx":10,"key":"Temperature","value":"55 °C"},{"idx":23,"key":"TAC","value":"53112 (CF78)"},{"idx":30,"key":"Primary band","value":"B1 (2100 MHz) @15 MHz"},{"idx":33,"key":"PCI","value":"326"},{"idx":34,"key":"EARFCN DL","value":"75"},{"idx":34,"key":"EARFCN UL","value":"18075"},{"idx":36,"key":"RSRP","value":"-89 dBm"},{"idx":35,"key":"RSSI","value":"-59 dBm"},{"idx":37,"key":"RSRQ","value":"-8 dB"}'
+ IFS='
'
+ IDX=1
+ POS=50
+ echo '
+XLEC: 0,4,4,4,4,2,BAND_LTE_1,0,0,0,0

+XMCI: 4,260,03,"0xCF78","0x03893216","0x0146","0x0000004B","0x0000469B","0xFFFFFFFF",52,24,50,"0x00000014","0x00000000"

+XMCI: 5,000,000,"0xFFFE","0xFFFFFFFF","0x0146","0x00000BD1","0xFFFFFFFF","0xFFFFFFFF",36,26,255,"0x7FFFFFFF","0x00000000"

+XMCI: 5,000,000,"0xFFFE","0xFFFFFFFF","0x0146","0x000006BD","0xFFFFFFFF","0xFFFFFFFF",50,25,255,"0x7FFFFFFF","0x00000000"

+XMCI: 5,000,000,"0xFFFE","0xFFFFFFFF","0x0146","0x00000EB4","0xFFFFFFFF","0xFFFFFFFF",61,22,255,"0x7FFFFFFF","0x00000000"

+XCCINFO: 1,260,03,"03893216",3,101,"FFFF",1,"FF","CF78",0,0,0,0,0,0,0,0

'
+ grep '+XMCI: 5'
+ LINES='+XMCI: 5,000,000,"0xFFFE","0xFFFFFFFF","0x0146","0x00000BD1","0xFFFFFFFF","0xFFFFFFFF",36,26,255,"0x7FFFFFFF","0x00000000"
+XMCI: 5,000,000,"0xFFFE","0xFFFFFFFF","0x0146","0x000006BD","0xFFFFFFFF","0xFFFFFFFF",50,25,255,"0x7FFFFFFF","0x00000000"
+XMCI: 5,000,000,"0xFFFE","0xFFFFFFFF","0x0146","0x00000EB4","0xFFFFFFFF","0xFFFFFFFF",61,22,255,"0x7FFFFFFF","0x00000000"
'
+ echo '+XMCI: 5,000,000,"0xFFFE","0xFFFFFFFF","0x0146","0x00000BD1","0xFFFFFFFF","0xFFFFFFFF",36,26,255,"0x7FFFFFFF","0x00000000"
'
+ + xargsawk
 '-F[,:]' '/^\+XMCI: 5/{print $7}'
+ T=0x0146
+ '[' -n 0x0146 ]
+ printf '%d' 0x0146
+ addon 53 '(S1) PCI' 326
+ '[' -n '{"idx":10,"key":"Temperature","value":"55 °C"},{"idx":23,"key":"TAC","value":"53112 (CF78)"},{"idx":30,"key":"Primary band","value":"B1 (2100 MHz) @15 MHz"},{"idx":33,"key":"PCI","value":"326"},{"idx":34,"key":"EARFCN DL","value":"75"},{"idx":34,"key":"EARFCN UL","value":"18075"},{"idx":36,"key":"RSRP","value":"-89 dBm"},{"idx":35,"key":"RSSI","value":"-59 dBm"},{"idx":37,"key":"RSRQ","value":"-8 dB"}' ]
+ ADDON='{"idx":10,"key":"Temperature","value":"55 °C"},{"idx":23,"key":"TAC","value":"53112 (CF78)"},{"idx":30,"key":"Primary band","value":"B1 (2100 MHz) @15 MHz"},{"idx":33,"key":"PCI","value":"326"},{"idx":34,"key":"EARFCN DL","value":"75"},{"idx":34,"key":"EARFCN UL","value":"18075"},{"idx":36,"key":"RSRP","value":"-89 dBm"},{"idx":35,"key":"RSSI","value":"-59 dBm"},{"idx":37,"key":"RSRQ","value":"-8 dB"},'
+ ADDON='{"idx":10,"key":"Temperature","value":"55 °C"},{"idx":23,"key":"TAC","value":"53112 (CF78)"},{"idx":30,"key":"Primary band","value":"B1 (2100 MHz) @15 MHz"},{"idx":33,"key":"PCI","value":"326"},{"idx":34,"key":"EARFCN DL","value":"75"},{"idx":34,"key":"EARFCN UL","value":"18075"},{"idx":36,"key":"RSRP","value":"-89 dBm"},{"idx":35,"key":"RSSI","value":"-59 dBm"},{"idx":37,"key":"RSRQ","value":"-8 dB"},{"idx":53,"key":"(S1) PCI","value":"326"}'
+ echo '+XMCI: 5,000,000,"0xFFFE","0xFFFFFFFF","0x0146","0x00000BD1","0xFFFFFFFF","0xFFFFFFFF",36,26,255,"0x7FFFFFFF","0x00000000"
'
+ xargs
+ awk '-F[,:]' '/^\+XMCI: 5/{print $8}'
+ T=0x00000BD1
+ '[' 0x00000BD1 '!=' 0xFFFFFFFF ]
+ printf '%d' 0x00000BD1
+ addon 54 '(S1) EARFCN DL' 3025
+ '[' -n '{"idx":10,"key":"Temperature","value":"55 °C"},{"idx":23,"key":"TAC","value":"53112 (CF78)"},{"idx":30,"key":"Primary band","value":"B1 (2100 MHz) @15 MHz"},{"idx":33,"key":"PCI","value":"326"},{"idx":34,"key":"EARFCN DL","value":"75"},{"idx":34,"key":"EARFCN UL","value":"18075"},{"idx":36,"key":"RSRP","value":"-89 dBm"},{"idx":35,"key":"RSSI","value":"-59 dBm"},{"idx":37,"key":"RSRQ","value":"-8 dB"},{"idx":53,"key":"(S1) PCI","value":"326"}' ]
+ ADDON='{"idx":10,"key":"Temperature","value":"55 °C"},{"idx":23,"key":"TAC","value":"53112 (CF78)"},{"idx":30,"key":"Primary band","value":"B1 (2100 MHz) @15 MHz"},{"idx":33,"key":"PCI","value":"326"},{"idx":34,"key":"EARFCN DL","value":"75"},{"idx":34,"key":"EARFCN UL","value":"18075"},{"idx":36,"key":"RSRP","value":"-89 dBm"},{"idx":35,"key":"RSSI","value":"-59 dBm"},{"idx":37,"key":"RSRQ","value":"-8 dB"},{"idx":53,"key":"(S1) PCI","value":"326"},'
+ ADDON='{"idx":10,"key":"Temperature","value":"55 °C"},{"idx":23,"key":"TAC","value":"53112 (CF78)"},{"idx":30,"key":"Primary band","value":"B1 (2100 MHz) @15 MHz"},{"idx":33,"key":"PCI","value":"326"},{"idx":34,"key":"EARFCN DL","value":"75"},{"idx":34,"key":"EARFCN UL","value":"18075"},{"idx":36,"key":"RSRP","value":"-89 dBm"},{"idx":35,"key":"RSSI","value":"-59 dBm"},{"idx":37,"key":"RSRQ","value":"-8 dB"},{"idx":53,"key":"(S1) PCI","value":"326"},{"idx":54,"key":"(S1) EARFCN DL","value":"3025"}'
+ '[' -z  ]
+ printf '%d' 0x00000BD1
+ channeltoband 3025
+ '[' 3025 -ge 0 ]
+ '[' 3025 -le 599 ]
+ '[' 3025 -ge 1200 ]
+ '[' 3025 -le 1949 ]
+ '[' 3025 -ge 2750 ]
+ '[' 3025 -le 3449 ]
+ echo 7
+ T1=7
+ band4g 7
+ echo -n B7
+ echo ' (2600 MHz)'
+ S1B='B7 (2600 MHz)'
+ '[' -z 15 ]
+ addon 50 '(S1) band' 'B7 (2600 MHz) @15 MHz'
+ '[' -n '{"idx":10,"key":"Temperature","value":"55 °C"},{"idx":23,"key":"TAC","value":"53112 (CF78)"},{"idx":30,"key":"Primary band","value":"B1 (2100 MHz) @15 MHz"},{"idx":33,"key":"PCI","value":"326"},{"idx":34,"key":"EARFCN DL","value":"75"},{"idx":34,"key":"EARFCN UL","value":"18075"},{"idx":36,"key":"RSRP","value":"-89 dBm"},{"idx":35,"key":"RSSI","value":"-59 dBm"},{"idx":37,"key":"RSRQ","value":"-8 dB"},{"idx":53,"key":"(S1) PCI","value":"326"},{"idx":54,"key":"(S1) EARFCN DL","value":"3025"}' ]
+ ADDON='{"idx":10,"key":"Temperature","value":"55 °C"},{"idx":23,"key":"TAC","value":"53112 (CF78)"},{"idx":30,"key":"Primary band","value":"B1 (2100 MHz) @15 MHz"},{"idx":33,"key":"PCI","value":"326"},{"idx":34,"key":"EARFCN DL","value":"75"},{"idx":34,"key":"EARFCN UL","value":"18075"},{"idx":36,"key":"RSRP","value":"-89 dBm"},{"idx":35,"key":"RSSI","value":"-59 dBm"},{"idx":37,"key":"RSRQ","value":"-8 dB"},{"idx":53,"key":"(S1) PCI","value":"326"},{"idx":54,"key":"(S1) EARFCN DL","value":"3025"},'
+ ADDON='{"idx":10,"key":"Temperature","value":"55 °C"},{"idx":23,"key":"TAC","value":"53112 (CF78)"},{"idx":30,"key":"Primary band","value":"B1 (2100 MHz) @15 MHz"},{"idx":33,"key":"PCI","value":"326"},{"idx":34,"key":"EARFCN DL","value":"75"},{"idx":34,"key":"EARFCN UL","value":"18075"},{"idx":36,"key":"RSRP","value":"-89 dBm"},{"idx":35,"key":"RSSI","value":"-59 dBm"},{"idx":37,"key":"RSRQ","value":"-8 dB"},{"idx":53,"key":"(S1) PCI","value":"326"},{"idx":54,"key":"(S1) EARFCN DL","value":"3025"},{"idx":50,"key":"(S1) band","value":"B7 (2600 MHz) @15 MHz"}'
+ MODE='LTE-A B1 (2100 MHz) / B7 (2600 MHz)'
+ echo '+XMCI: 5,000,000,"0xFFFE","0xFFFFFFFF","0x0146","0x00000BD1","0xFFFFFFFF","0xFFFFFFFF",36,26,255,"0x7FFFFFFF","0x00000000"
'
+ + xargsawk
 '-F[,:]' '/^\+XMCI: 5/{print $9}'
+ T=0xFFFFFFFF
+ '[' 0xFFFFFFFF '!=' 0xFFFFFFFF ]
+ echo '+XMCI: 5,000,000,"0xFFFE","0xFFFFFFFF","0x0146","0x00000BD1","0xFFFFFFFF","0xFFFFFFFF",36,26,255,"0x7FFFFFFF","0x00000000"
'
+ awk '-F[,:]' '/^\+XMCI: 5/{print $11}'
+ T=36
+ '[' 36 '!=' 255 ]
+ addon 56 '(S1) RSRP' '-105 dBm'
+ '[' -n '{"idx":10,"key":"Temperature","value":"55 °C"},{"idx":23,"key":"TAC","value":"53112 (CF78)"},{"idx":30,"key":"Primary band","value":"B1 (2100 MHz) @15 MHz"},{"idx":33,"key":"PCI","value":"326"},{"idx":34,"key":"EARFCN DL","value":"75"},{"idx":34,"key":"EARFCN UL","value":"18075"},{"idx":36,"key":"RSRP","value":"-89 dBm"},{"idx":35,"key":"RSSI","value":"-59 dBm"},{"idx":37,"key":"RSRQ","value":"-8 dB"},{"idx":53,"key":"(S1) PCI","value":"326"},{"idx":54,"key":"(S1) EARFCN DL","value":"3025"},{"idx":50,"key":"(S1) band","value":"B7 (2600 MHz) @15 MHz"}' ]
+ ADDON='{"idx":10,"key":"Temperature","value":"55 °C"},{"idx":23,"key":"TAC","value":"53112 (CF78)"},{"idx":30,"key":"Primary band","value":"B1 (2100 MHz) @15 MHz"},{"idx":33,"key":"PCI","value":"326"},{"idx":34,"key":"EARFCN DL","value":"75"},{"idx":34,"key":"EARFCN UL","value":"18075"},{"idx":36,"key":"RSRP","value":"-89 dBm"},{"idx":35,"key":"RSSI","value":"-59 dBm"},{"idx":37,"key":"RSRQ","value":"-8 dB"},{"idx":53,"key":"(S1) PCI","value":"326"},{"idx":54,"key":"(S1) EARFCN DL","value":"3025"},{"idx":50,"key":"(S1) band","value":"B7 (2600 MHz) @15 MHz"},'
+ ADDON='{"idx":10,"key":"Temperature","value":"55 °C"},{"idx":23,"key":"TAC","value":"53112 (CF78)"},{"idx":30,"key":"Primary band","value":"B1 (2100 MHz) @15 MHz"},{"idx":33,"key":"PCI","value":"326"},{"idx":34,"key":"EARFCN DL","value":"75"},{"idx":34,"key":"EARFCN UL","value":"18075"},{"idx":36,"key":"RSRP","value":"-89 dBm"},{"idx":35,"key":"RSSI","value":"-59 dBm"},{"idx":37,"key":"RSRQ","value":"-8 dB"},{"idx":53,"key":"(S1) PCI","value":"326"},{"idx":54,"key":"(S1) EARFCN DL","value":"3025"},{"idx":50,"key":"(S1) band","value":"B7 (2600 MHz) @15 MHz"},{"idx":56,"key":"(S1) RSRP","value":"-105 dBm"}'
+ echo '+XMCI: 5,000,000,"0xFFFE","0xFFFFFFFF","0x0146","0x00000BD1","0xFFFFFFFF","0xFFFFFFFF",36,26,255,"0x7FFFFFFF","0x00000000"
'
+ awk '-F[,:]' '/^\+XMCI: 5/{print $12}'
+ T=26
+ '[' 26 '!=' 255 ]
+ addon 57 '(S1) RSRQ' '-7 dB'
+ '[' -n '{"idx":10,"key":"Temperature","value":"55 °C"},{"idx":23,"key":"TAC","value":"53112 (CF78)"},{"idx":30,"key":"Primary band","value":"B1 (2100 MHz) @15 MHz"},{"idx":33,"key":"PCI","value":"326"},{"idx":34,"key":"EARFCN DL","value":"75"},{"idx":34,"key":"EARFCN UL","value":"18075"},{"idx":36,"key":"RSRP","value":"-89 dBm"},{"idx":35,"key":"RSSI","value":"-59 dBm"},{"idx":37,"key":"RSRQ","value":"-8 dB"},{"idx":53,"key":"(S1) PCI","value":"326"},{"idx":54,"key":"(S1) EARFCN DL","value":"3025"},{"idx":50,"key":"(S1) band","value":"B7 (2600 MHz) @15 MHz"},{"idx":56,"key":"(S1) RSRP","value":"-105 dBm"}' ]
+ ADDON='{"idx":10,"key":"Temperature","value":"55 °C"},{"idx":23,"key":"TAC","value":"53112 (CF78)"},{"idx":30,"key":"Primary band","value":"B1 (2100 MHz) @15 MHz"},{"idx":33,"key":"PCI","value":"326"},{"idx":34,"key":"EARFCN DL","value":"75"},{"idx":34,"key":"EARFCN UL","value":"18075"},{"idx":36,"key":"RSRP","value":"-89 dBm"},{"idx":35,"key":"RSSI","value":"-59 dBm"},{"idx":37,"key":"RSRQ","value":"-8 dB"},{"idx":53,"key":"(S1) PCI","value":"326"},{"idx":54,"key":"(S1) EARFCN DL","value":"3025"},{"idx":50,"key":"(S1) band","value":"B7 (2600 MHz) @15 MHz"},{"idx":56,"key":"(S1) RSRP","value":"-105 dBm"},'
+ ADDON='{"idx":10,"key":"Temperature","value":"55 °C"},{"idx":23,"key":"TAC","value":"53112 (CF78)"},{"idx":30,"key":"Primary band","value":"B1 (2100 MHz) @15 MHz"},{"idx":33,"key":"PCI","value":"326"},{"idx":34,"key":"EARFCN DL","value":"75"},{"idx":34,"key":"EARFCN UL","value":"18075"},{"idx":36,"key":"RSRP","value":"-89 dBm"},{"idx":35,"key":"RSSI","value":"-59 dBm"},{"idx":37,"key":"RSRQ","value":"-8 dB"},{"idx":53,"key":"(S1) PCI","value":"326"},{"idx":54,"key":"(S1) EARFCN DL","value":"3025"},{"idx":50,"key":"(S1) band","value":"B7 (2600 MHz) @15 MHz"},{"idx":56,"key":"(S1) RSRP","value":"-105 dBm"},{"idx":57,"key":"(S1) RSRQ","value":"-7 dB"}'
+ IDX=2
+ '[' 2 -ge 4 ]
+ POS=60
+ echo '+XMCI: 5,000,000,"0xFFFE","0xFFFFFFFF","0x0146","0x000006BD","0xFFFFFFFF","0xFFFFFFFF",50,25,255,"0x7FFFFFFF","0x00000000"
'
+ + awkxargs '-F[,:]'
 '/^\+XMCI: 5/{print $7}'
+ T=0x0146
+ '[' -n 0x0146 ]
+ printf '%d' 0x0146
+ addon 63 '(S2) PCI' 326
+ '[' -n '{"idx":10,"key":"Temperature","value":"55 °C"},{"idx":23,"key":"TAC","value":"53112 (CF78)"},{"idx":30,"key":"Primary band","value":"B1 (2100 MHz) @15 MHz"},{"idx":33,"key":"PCI","value":"326"},{"idx":34,"key":"EARFCN DL","value":"75"},{"idx":34,"key":"EARFCN UL","value":"18075"},{"idx":36,"key":"RSRP","value":"-89 dBm"},{"idx":35,"key":"RSSI","value":"-59 dBm"},{"idx":37,"key":"RSRQ","value":"-8 dB"},{"idx":53,"key":"(S1) PCI","value":"326"},{"idx":54,"key":"(S1) EARFCN DL","value":"3025"},{"idx":50,"key":"(S1) band","value":"B7 (2600 MHz) @15 MHz"},{"idx":56,"key":"(S1) RSRP","value":"-105 dBm"},{"idx":57,"key":"(S1) RSRQ","value":"-7 dB"}' ]
+ ADDON='{"idx":10,"key":"Temperature","value":"55 °C"},{"idx":23,"key":"TAC","value":"53112 (CF78)"},{"idx":30,"key":"Primary band","value":"B1 (2100 MHz) @15 MHz"},{"idx":33,"key":"PCI","value":"326"},{"idx":34,"key":"EARFCN DL","value":"75"},{"idx":34,"key":"EARFCN UL","value":"18075"},{"idx":36,"key":"RSRP","value":"-89 dBm"},{"idx":35,"key":"RSSI","value":"-59 dBm"},{"idx":37,"key":"RSRQ","value":"-8 dB"},{"idx":53,"key":"(S1) PCI","value":"326"},{"idx":54,"key":"(S1) EARFCN DL","value":"3025"},{"idx":50,"key":"(S1) band","value":"B7 (2600 MHz) @15 MHz"},{"idx":56,"key":"(S1) RSRP","value":"-105 dBm"},{"idx":57,"key":"(S1) RSRQ","value":"-7 dB"},'
+ ADDON='{"idx":10,"key":"Temperature","value":"55 °C"},{"idx":23,"key":"TAC","value":"53112 (CF78)"},{"idx":30,"key":"Primary band","value":"B1 (2100 MHz) @15 MHz"},{"idx":33,"key":"PCI","value":"326"},{"idx":34,"key":"EARFCN DL","value":"75"},{"idx":34,"key":"EARFCN UL","value":"18075"},{"idx":36,"key":"RSRP","value":"-89 dBm"},{"idx":35,"key":"RSSI","value":"-59 dBm"},{"idx":37,"key":"RSRQ","value":"-8 dB"},{"idx":53,"key":"(S1) PCI","value":"326"},{"idx":54,"key":"(S1) EARFCN DL","value":"3025"},{"idx":50,"key":"(S1) band","value":"B7 (2600 MHz) @15 MHz"},{"idx":56,"key":"(S1) RSRP","value":"-105 dBm"},{"idx":57,"key":"(S1) RSRQ","value":"-7 dB"},{"idx":63,"key":"(S2) PCI","value":"326"}'
+ echo '+XMCI: 5,000,000,"0xFFFE","0xFFFFFFFF","0x0146","0x000006BD","0xFFFFFFFF","0xFFFFFFFF",50,25,255,"0x7FFFFFFF","0x00000000"
'
+ + awkxargs '-F[,:]'
 '/^\+XMCI: 5/{print $8}'
+ T=0x000006BD
+ '[' 0x000006BD '!=' 0xFFFFFFFF ]
+ printf '%d' 0x000006BD
+ addon 64 '(S2) EARFCN DL' 1725
+ '[' -n '{"idx":10,"key":"Temperature","value":"55 °C"},{"idx":23,"key":"TAC","value":"53112 (CF78)"},{"idx":30,"key":"Primary band","value":"B1 (2100 MHz) @15 MHz"},{"idx":33,"key":"PCI","value":"326"},{"idx":34,"key":"EARFCN DL","value":"75"},{"idx":34,"key":"EARFCN UL","value":"18075"},{"idx":36,"key":"RSRP","value":"-89 dBm"},{"idx":35,"key":"RSSI","value":"-59 dBm"},{"idx":37,"key":"RSRQ","value":"-8 dB"},{"idx":53,"key":"(S1) PCI","value":"326"},{"idx":54,"key":"(S1) EARFCN DL","value":"3025"},{"idx":50,"key":"(S1) band","value":"B7 (2600 MHz) @15 MHz"},{"idx":56,"key":"(S1) RSRP","value":"-105 dBm"},{"idx":57,"key":"(S1) RSRQ","value":"-7 dB"},{"idx":63,"key":"(S2) PCI","value":"326"}' ]
+ ADDON='{"idx":10,"key":"Temperature","value":"55 °C"},{"idx":23,"key":"TAC","value":"53112 (CF78)"},{"idx":30,"key":"Primary band","value":"B1 (2100 MHz) @15 MHz"},{"idx":33,"key":"PCI","value":"326"},{"idx":34,"key":"EARFCN DL","value":"75"},{"idx":34,"key":"EARFCN UL","value":"18075"},{"idx":36,"key":"RSRP","value":"-89 dBm"},{"idx":35,"key":"RSSI","value":"-59 dBm"},{"idx":37,"key":"RSRQ","value":"-8 dB"},{"idx":53,"key":"(S1) PCI","value":"326"},{"idx":54,"key":"(S1) EARFCN DL","value":"3025"},{"idx":50,"key":"(S1) band","value":"B7 (2600 MHz) @15 MHz"},{"idx":56,"key":"(S1) RSRP","value":"-105 dBm"},{"idx":57,"key":"(S1) RSRQ","value":"-7 dB"},{"idx":63,"key":"(S2) PCI","value":"326"},'
+ ADDON='{"idx":10,"key":"Temperature","value":"55 °C"},{"idx":23,"key":"TAC","value":"53112 (CF78)"},{"idx":30,"key":"Primary band","value":"B1 (2100 MHz) @15 MHz"},{"idx":33,"key":"PCI","value":"326"},{"idx":34,"key":"EARFCN DL","value":"75"},{"idx":34,"key":"EARFCN UL","value":"18075"},{"idx":36,"key":"RSRP","value":"-89 dBm"},{"idx":35,"key":"RSSI","value":"-59 dBm"},{"idx":37,"key":"RSRQ","value":"-8 dB"},{"idx":53,"key":"(S1) PCI","value":"326"},{"idx":54,"key":"(S1) EARFCN DL","value":"3025"},{"idx":50,"key":"(S1) band","value":"B7 (2600 MHz) @15 MHz"},{"idx":56,"key":"(S1) RSRP","value":"-105 dBm"},{"idx":57,"key":"(S1) RSRQ","value":"-7 dB"},{"idx":63,"key":"(S2) PCI","value":"326"},{"idx":64,"key":"(S2) EARFCN DL","value":"1725"}'
+ '[' -z  ]
+ printf '%d' 0x000006BD
+ channeltoband 1725
+ '[' 1725 -ge 0 ]
+ '[' 1725 -le 599 ]
+ '[' 1725 -ge 1200 ]
+ '[' 1725 -le 1949 ]
+ echo 3
+ T1=3
+ band4g 3
+ echo -n B3
+ echo ' (1800 MHz)'
+ S2B='B3 (1800 MHz)'
+ '[' -z 15 ]
+ addon 60 '(S2) band' 'B3 (1800 MHz) @15 MHz'
+ '[' -n '{"idx":10,"key":"Temperature","value":"55 °C"},{"idx":23,"key":"TAC","value":"53112 (CF78)"},{"idx":30,"key":"Primary band","value":"B1 (2100 MHz) @15 MHz"},{"idx":33,"key":"PCI","value":"326"},{"idx":34,"key":"EARFCN DL","value":"75"},{"idx":34,"key":"EARFCN UL","value":"18075"},{"idx":36,"key":"RSRP","value":"-89 dBm"},{"idx":35,"key":"RSSI","value":"-59 dBm"},{"idx":37,"key":"RSRQ","value":"-8 dB"},{"idx":53,"key":"(S1) PCI","value":"326"},{"idx":54,"key":"(S1) EARFCN DL","value":"3025"},{"idx":50,"key":"(S1) band","value":"B7 (2600 MHz) @15 MHz"},{"idx":56,"key":"(S1) RSRP","value":"-105 dBm"},{"idx":57,"key":"(S1) RSRQ","value":"-7 dB"},{"idx":63,"key":"(S2) PCI","value":"326"},{"idx":64,"key":"(S2) EARFCN DL","value":"1725"}' ]
+ ADDON='{"idx":10,"key":"Temperature","value":"55 °C"},{"idx":23,"key":"TAC","value":"53112 (CF78)"},{"idx":30,"key":"Primary band","value":"B1 (2100 MHz) @15 MHz"},{"idx":33,"key":"PCI","value":"326"},{"idx":34,"key":"EARFCN DL","value":"75"},{"idx":34,"key":"EARFCN UL","value":"18075"},{"idx":36,"key":"RSRP","value":"-89 dBm"},{"idx":35,"key":"RSSI","value":"-59 dBm"},{"idx":37,"key":"RSRQ","value":"-8 dB"},{"idx":53,"key":"(S1) PCI","value":"326"},{"idx":54,"key":"(S1) EARFCN DL","value":"3025"},{"idx":50,"key":"(S1) band","value":"B7 (2600 MHz) @15 MHz"},{"idx":56,"key":"(S1) RSRP","value":"-105 dBm"},{"idx":57,"key":"(S1) RSRQ","value":"-7 dB"},{"idx":63,"key":"(S2) PCI","value":"326"},{"idx":64,"key":"(S2) EARFCN DL","value":"1725"},'
+ ADDON='{"idx":10,"key":"Temperature","value":"55 °C"},{"idx":23,"key":"TAC","value":"53112 (CF78)"},{"idx":30,"key":"Primary band","value":"B1 (2100 MHz) @15 MHz"},{"idx":33,"key":"PCI","value":"326"},{"idx":34,"key":"EARFCN DL","value":"75"},{"idx":34,"key":"EARFCN UL","value":"18075"},{"idx":36,"key":"RSRP","value":"-89 dBm"},{"idx":35,"key":"RSSI","value":"-59 dBm"},{"idx":37,"key":"RSRQ","value":"-8 dB"},{"idx":53,"key":"(S1) PCI","value":"326"},{"idx":54,"key":"(S1) EARFCN DL","value":"3025"},{"idx":50,"key":"(S1) band","value":"B7 (2600 MHz) @15 MHz"},{"idx":56,"key":"(S1) RSRP","value":"-105 dBm"},{"idx":57,"key":"(S1) RSRQ","value":"-7 dB"},{"idx":63,"key":"(S2) PCI","value":"326"},{"idx":64,"key":"(S2) EARFCN DL","value":"1725"},{"idx":60,"key":"(S2) band","value":"B3 (1800 MHz) @15 MHz"}'
+ MODE='LTE-A B1 (2100 MHz) / B7 (2600 MHz) / B3 (1800 MHz)'
+ echo '+XMCI: 5,000,000,"0xFFFE","0xFFFFFFFF","0x0146","0x000006BD","0xFFFFFFFF","0xFFFFFFFF",50,25,255,"0x7FFFFFFF","0x00000000"
'
+ awk '-F[,:]' '/^\+XMCI: 5/{print $9}'
+ xargs
+ T=0xFFFFFFFF
+ '[' 0xFFFFFFFF '!=' 0xFFFFFFFF ]
+ echo '+XMCI: 5,000,000,"0xFFFE","0xFFFFFFFF","0x0146","0x000006BD","0xFFFFFFFF","0xFFFFFFFF",50,25,255,"0x7FFFFFFF","0x00000000"
'
+ awk '-F[,:]' '/^\+XMCI: 5/{print $11}'
+ T=50
+ '[' 50 '!=' 255 ]
+ addon 66 '(S2) RSRP' '-91 dBm'
+ '[' -n '{"idx":10,"key":"Temperature","value":"55 °C"},{"idx":23,"key":"TAC","value":"53112 (CF78)"},{"idx":30,"key":"Primary band","value":"B1 (2100 MHz) @15 MHz"},{"idx":33,"key":"PCI","value":"326"},{"idx":34,"key":"EARFCN DL","value":"75"},{"idx":34,"key":"EARFCN UL","value":"18075"},{"idx":36,"key":"RSRP","value":"-89 dBm"},{"idx":35,"key":"RSSI","value":"-59 dBm"},{"idx":37,"key":"RSRQ","value":"-8 dB"},{"idx":53,"key":"(S1) PCI","value":"326"},{"idx":54,"key":"(S1) EARFCN DL","value":"3025"},{"idx":50,"key":"(S1) band","value":"B7 (2600 MHz) @15 MHz"},{"idx":56,"key":"(S1) RSRP","value":"-105 dBm"},{"idx":57,"key":"(S1) RSRQ","value":"-7 dB"},{"idx":63,"key":"(S2) PCI","value":"326"},{"idx":64,"key":"(S2) EARFCN DL","value":"1725"},{"idx":60,"key":"(S2) band","value":"B3 (1800 MHz) @15 MHz"}' ]
+ ADDON='{"idx":10,"key":"Temperature","value":"55 °C"},{"idx":23,"key":"TAC","value":"53112 (CF78)"},{"idx":30,"key":"Primary band","value":"B1 (2100 MHz) @15 MHz"},{"idx":33,"key":"PCI","value":"326"},{"idx":34,"key":"EARFCN DL","value":"75"},{"idx":34,"key":"EARFCN UL","value":"18075"},{"idx":36,"key":"RSRP","value":"-89 dBm"},{"idx":35,"key":"RSSI","value":"-59 dBm"},{"idx":37,"key":"RSRQ","value":"-8 dB"},{"idx":53,"key":"(S1) PCI","value":"326"},{"idx":54,"key":"(S1) EARFCN DL","value":"3025"},{"idx":50,"key":"(S1) band","value":"B7 (2600 MHz) @15 MHz"},{"idx":56,"key":"(S1) RSRP","value":"-105 dBm"},{"idx":57,"key":"(S1) RSRQ","value":"-7 dB"},{"idx":63,"key":"(S2) PCI","value":"326"},{"idx":64,"key":"(S2) EARFCN DL","value":"1725"},{"idx":60,"key":"(S2) band","value":"B3 (1800 MHz) @15 MHz"},'
+ ADDON='{"idx":10,"key":"Temperature","value":"55 °C"},{"idx":23,"key":"TAC","value":"53112 (CF78)"},{"idx":30,"key":"Primary band","value":"B1 (2100 MHz) @15 MHz"},{"idx":33,"key":"PCI","value":"326"},{"idx":34,"key":"EARFCN DL","value":"75"},{"idx":34,"key":"EARFCN UL","value":"18075"},{"idx":36,"key":"RSRP","value":"-89 dBm"},{"idx":35,"key":"RSSI","value":"-59 dBm"},{"idx":37,"key":"RSRQ","value":"-8 dB"},{"idx":53,"key":"(S1) PCI","value":"326"},{"idx":54,"key":"(S1) EARFCN DL","value":"3025"},{"idx":50,"key":"(S1) band","value":"B7 (2600 MHz) @15 MHz"},{"idx":56,"key":"(S1) RSRP","value":"-105 dBm"},{"idx":57,"key":"(S1) RSRQ","value":"-7 dB"},{"idx":63,"key":"(S2) PCI","value":"326"},{"idx":64,"key":"(S2) EARFCN DL","value":"1725"},{"idx":60,"key":"(S2) band","value":"B3 (1800 MHz) @15 MHz"},{"idx":66,"key":"(S2) RSRP","value":"-91 dBm"}'
+ echo '+XMCI: 5,000,000,"0xFFFE","0xFFFFFFFF","0x0146","0x000006BD","0xFFFFFFFF","0xFFFFFFFF",50,25,255,"0x7FFFFFFF","0x00000000"
'
+ awk '-F[,:]' '/^\+XMCI: 5/{print $12}'
+ T=25
+ '[' 25 '!=' 255 ]
+ addon 67 '(S2) RSRQ' '-8 dB'
+ '[' -n '{"idx":10,"key":"Temperature","value":"55 °C"},{"idx":23,"key":"TAC","value":"53112 (CF78)"},{"idx":30,"key":"Primary band","value":"B1 (2100 MHz) @15 MHz"},{"idx":33,"key":"PCI","value":"326"},{"idx":34,"key":"EARFCN DL","value":"75"},{"idx":34,"key":"EARFCN UL","value":"18075"},{"idx":36,"key":"RSRP","value":"-89 dBm"},{"idx":35,"key":"RSSI","value":"-59 dBm"},{"idx":37,"key":"RSRQ","value":"-8 dB"},{"idx":53,"key":"(S1) PCI","value":"326"},{"idx":54,"key":"(S1) EARFCN DL","value":"3025"},{"idx":50,"key":"(S1) band","value":"B7 (2600 MHz) @15 MHz"},{"idx":56,"key":"(S1) RSRP","value":"-105 dBm"},{"idx":57,"key":"(S1) RSRQ","value":"-7 dB"},{"idx":63,"key":"(S2) PCI","value":"326"},{"idx":64,"key":"(S2) EARFCN DL","value":"1725"},{"idx":60,"key":"(S2) band","value":"B3 (1800 MHz) @15 MHz"},{"idx":66,"key":"(S2) RSRP","value":"-91 dBm"}' ]
+ ADDON='{"idx":10,"key":"Temperature","value":"55 °C"},{"idx":23,"key":"TAC","value":"53112 (CF78)"},{"idx":30,"key":"Primary band","value":"B1 (2100 MHz) @15 MHz"},{"idx":33,"key":"PCI","value":"326"},{"idx":34,"key":"EARFCN DL","value":"75"},{"idx":34,"key":"EARFCN UL","value":"18075"},{"idx":36,"key":"RSRP","value":"-89 dBm"},{"idx":35,"key":"RSSI","value":"-59 dBm"},{"idx":37,"key":"RSRQ","value":"-8 dB"},{"idx":53,"key":"(S1) PCI","value":"326"},{"idx":54,"key":"(S1) EARFCN DL","value":"3025"},{"idx":50,"key":"(S1) band","value":"B7 (2600 MHz) @15 MHz"},{"idx":56,"key":"(S1) RSRP","value":"-105 dBm"},{"idx":57,"key":"(S1) RSRQ","value":"-7 dB"},{"idx":63,"key":"(S2) PCI","value":"326"},{"idx":64,"key":"(S2) EARFCN DL","value":"1725"},{"idx":60,"key":"(S2) band","value":"B3 (1800 MHz) @15 MHz"},{"idx":66,"key":"(S2) RSRP","value":"-91 dBm"},'
+ ADDON='{"idx":10,"key":"Temperature","value":"55 °C"},{"idx":23,"key":"TAC","value":"53112 (CF78)"},{"idx":30,"key":"Primary band","value":"B1 (2100 MHz) @15 MHz"},{"idx":33,"key":"PCI","value":"326"},{"idx":34,"key":"EARFCN DL","value":"75"},{"idx":34,"key":"EARFCN UL","value":"18075"},{"idx":36,"key":"RSRP","value":"-89 dBm"},{"idx":35,"key":"RSSI","value":"-59 dBm"},{"idx":37,"key":"RSRQ","value":"-8 dB"},{"idx":53,"key":"(S1) PCI","value":"326"},{"idx":54,"key":"(S1) EARFCN DL","value":"3025"},{"idx":50,"key":"(S1) band","value":"B7 (2600 MHz) @15 MHz"},{"idx":56,"key":"(S1) RSRP","value":"-105 dBm"},{"idx":57,"key":"(S1) RSRQ","value":"-7 dB"},{"idx":63,"key":"(S2) PCI","value":"326"},{"idx":64,"key":"(S2) EARFCN DL","value":"1725"},{"idx":60,"key":"(S2) band","value":"B3 (1800 MHz) @15 MHz"},{"idx":66,"key":"(S2) RSRP","value":"-91 dBm"},{"idx":67,"key":"(S2) RSRQ","value":"-8 dB"}'
+ IDX=3
+ '[' 3 -ge 4 ]
+ POS=70
+ echo '+XMCI: 5,000,000,"0xFFFE","0xFFFFFFFF","0x0146","0x00000EB4","0xFFFFFFFF","0xFFFFFFFF",61,22,255,"0x7FFFFFFF","0x00000000"
'
+ xargs
+ awk '-F[,:]' '/^\+XMCI: 5/{print $7}'
+ T=0x0146
+ '[' -n 0x0146 ]
+ printf '%d' 0x0146
+ addon 73 '(S3) PCI' 326
+ '[' -n '{"idx":10,"key":"Temperature","value":"55 °C"},{"idx":23,"key":"TAC","value":"53112 (CF78)"},{"idx":30,"key":"Primary band","value":"B1 (2100 MHz) @15 MHz"},{"idx":33,"key":"PCI","value":"326"},{"idx":34,"key":"EARFCN DL","value":"75"},{"idx":34,"key":"EARFCN UL","value":"18075"},{"idx":36,"key":"RSRP","value":"-89 dBm"},{"idx":35,"key":"RSSI","value":"-59 dBm"},{"idx":37,"key":"RSRQ","value":"-8 dB"},{"idx":53,"key":"(S1) PCI","value":"326"},{"idx":54,"key":"(S1) EARFCN DL","value":"3025"},{"idx":50,"key":"(S1) band","value":"B7 (2600 MHz) @15 MHz"},{"idx":56,"key":"(S1) RSRP","value":"-105 dBm"},{"idx":57,"key":"(S1) RSRQ","value":"-7 dB"},{"idx":63,"key":"(S2) PCI","value":"326"},{"idx":64,"key":"(S2) EARFCN DL","value":"1725"},{"idx":60,"key":"(S2) band","value":"B3 (1800 MHz) @15 MHz"},{"idx":66,"key":"(S2) RSRP","value":"-91 dBm"},{"idx":67,"key":"(S2) RSRQ","value":"-8 dB"}' ]
+ ADDON='{"idx":10,"key":"Temperature","value":"55 °C"},{"idx":23,"key":"TAC","value":"53112 (CF78)"},{"idx":30,"key":"Primary band","value":"B1 (2100 MHz) @15 MHz"},{"idx":33,"key":"PCI","value":"326"},{"idx":34,"key":"EARFCN DL","value":"75"},{"idx":34,"key":"EARFCN UL","value":"18075"},{"idx":36,"key":"RSRP","value":"-89 dBm"},{"idx":35,"key":"RSSI","value":"-59 dBm"},{"idx":37,"key":"RSRQ","value":"-8 dB"},{"idx":53,"key":"(S1) PCI","value":"326"},{"idx":54,"key":"(S1) EARFCN DL","value":"3025"},{"idx":50,"key":"(S1) band","value":"B7 (2600 MHz) @15 MHz"},{"idx":56,"key":"(S1) RSRP","value":"-105 dBm"},{"idx":57,"key":"(S1) RSRQ","value":"-7 dB"},{"idx":63,"key":"(S2) PCI","value":"326"},{"idx":64,"key":"(S2) EARFCN DL","value":"1725"},{"idx":60,"key":"(S2) band","value":"B3 (1800 MHz) @15 MHz"},{"idx":66,"key":"(S2) RSRP","value":"-91 dBm"},{"idx":67,"key":"(S2) RSRQ","value":"-8 dB"},'
+ ADDON='{"idx":10,"key":"Temperature","value":"55 °C"},{"idx":23,"key":"TAC","value":"53112 (CF78)"},{"idx":30,"key":"Primary band","value":"B1 (2100 MHz) @15 MHz"},{"idx":33,"key":"PCI","value":"326"},{"idx":34,"key":"EARFCN DL","value":"75"},{"idx":34,"key":"EARFCN UL","value":"18075"},{"idx":36,"key":"RSRP","value":"-89 dBm"},{"idx":35,"key":"RSSI","value":"-59 dBm"},{"idx":37,"key":"RSRQ","value":"-8 dB"},{"idx":53,"key":"(S1) PCI","value":"326"},{"idx":54,"key":"(S1) EARFCN DL","value":"3025"},{"idx":50,"key":"(S1) band","value":"B7 (2600 MHz) @15 MHz"},{"idx":56,"key":"(S1) RSRP","value":"-105 dBm"},{"idx":57,"key":"(S1) RSRQ","value":"-7 dB"},{"idx":63,"key":"(S2) PCI","value":"326"},{"idx":64,"key":"(S2) EARFCN DL","value":"1725"},{"idx":60,"key":"(S2) band","value":"B3 (1800 MHz) @15 MHz"},{"idx":66,"key":"(S2) RSRP","value":"-91 dBm"},{"idx":67,"key":"(S2) RSRQ","value":"-8 dB"},{"idx":73,"key":"(S3) PCI","value":"326"}'
+ echo '+XMCI: 5,000,000,"0xFFFE","0xFFFFFFFF","0x0146","0x00000EB4","0xFFFFFFFF","0xFFFFFFFF",61,22,255,"0x7FFFFFFF","0x00000000"
'
+ + xargsawk
 '-F[,:]' '/^\+XMCI: 5/{print $8}'
+ T=0x00000EB4
+ '[' 0x00000EB4 '!=' 0xFFFFFFFF ]
+ printf '%d' 0x00000EB4
+ addon 74 '(S3) EARFCN DL' 3764
+ '[' -n '{"idx":10,"key":"Temperature","value":"55 °C"},{"idx":23,"key":"TAC","value":"53112 (CF78)"},{"idx":30,"key":"Primary band","value":"B1 (2100 MHz) @15 MHz"},{"idx":33,"key":"PCI","value":"326"},{"idx":34,"key":"EARFCN DL","value":"75"},{"idx":34,"key":"EARFCN UL","value":"18075"},{"idx":36,"key":"RSRP","value":"-89 dBm"},{"idx":35,"key":"RSSI","value":"-59 dBm"},{"idx":37,"key":"RSRQ","value":"-8 dB"},{"idx":53,"key":"(S1) PCI","value":"326"},{"idx":54,"key":"(S1) EARFCN DL","value":"3025"},{"idx":50,"key":"(S1) band","value":"B7 (2600 MHz) @15 MHz"},{"idx":56,"key":"(S1) RSRP","value":"-105 dBm"},{"idx":57,"key":"(S1) RSRQ","value":"-7 dB"},{"idx":63,"key":"(S2) PCI","value":"326"},{"idx":64,"key":"(S2) EARFCN DL","value":"1725"},{"idx":60,"key":"(S2) band","value":"B3 (1800 MHz) @15 MHz"},{"idx":66,"key":"(S2) RSRP","value":"-91 dBm"},{"idx":67,"key":"(S2) RSRQ","value":"-8 dB"},{"idx":73,"key":"(S3) PCI","value":"326"}' ]
+ ADDON='{"idx":10,"key":"Temperature","value":"55 °C"},{"idx":23,"key":"TAC","value":"53112 (CF78)"},{"idx":30,"key":"Primary band","value":"B1 (2100 MHz) @15 MHz"},{"idx":33,"key":"PCI","value":"326"},{"idx":34,"key":"EARFCN DL","value":"75"},{"idx":34,"key":"EARFCN UL","value":"18075"},{"idx":36,"key":"RSRP","value":"-89 dBm"},{"idx":35,"key":"RSSI","value":"-59 dBm"},{"idx":37,"key":"RSRQ","value":"-8 dB"},{"idx":53,"key":"(S1) PCI","value":"326"},{"idx":54,"key":"(S1) EARFCN DL","value":"3025"},{"idx":50,"key":"(S1) band","value":"B7 (2600 MHz) @15 MHz"},{"idx":56,"key":"(S1) RSRP","value":"-105 dBm"},{"idx":57,"key":"(S1) RSRQ","value":"-7 dB"},{"idx":63,"key":"(S2) PCI","value":"326"},{"idx":64,"key":"(S2) EARFCN DL","value":"1725"},{"idx":60,"key":"(S2) band","value":"B3 (1800 MHz) @15 MHz"},{"idx":66,"key":"(S2) RSRP","value":"-91 dBm"},{"idx":67,"key":"(S2) RSRQ","value":"-8 dB"},{"idx":73,"key":"(S3) PCI","value":"326"},'
+ ADDON='{"idx":10,"key":"Temperature","value":"55 °C"},{"idx":23,"key":"TAC","value":"53112 (CF78)"},{"idx":30,"key":"Primary band","value":"B1 (2100 MHz) @15 MHz"},{"idx":33,"key":"PCI","value":"326"},{"idx":34,"key":"EARFCN DL","value":"75"},{"idx":34,"key":"EARFCN UL","value":"18075"},{"idx":36,"key":"RSRP","value":"-89 dBm"},{"idx":35,"key":"RSSI","value":"-59 dBm"},{"idx":37,"key":"RSRQ","value":"-8 dB"},{"idx":53,"key":"(S1) PCI","value":"326"},{"idx":54,"key":"(S1) EARFCN DL","value":"3025"},{"idx":50,"key":"(S1) band","value":"B7 (2600 MHz) @15 MHz"},{"idx":56,"key":"(S1) RSRP","value":"-105 dBm"},{"idx":57,"key":"(S1) RSRQ","value":"-7 dB"},{"idx":63,"key":"(S2) PCI","value":"326"},{"idx":64,"key":"(S2) EARFCN DL","value":"1725"},{"idx":60,"key":"(S2) band","value":"B3 (1800 MHz) @15 MHz"},{"idx":66,"key":"(S2) RSRP","value":"-91 dBm"},{"idx":67,"key":"(S2) RSRQ","value":"-8 dB"},{"idx":73,"key":"(S3) PCI","value":"326"},{"idx":74,"key":"(S3) EARFCN DL","value":"3764"}'
+ '[' -z  ]
+ printf '%d' 0x00000EB4
+ channeltoband 3764
+ '[' 3764 -ge 0 ]
+ '[' 3764 -le 599 ]
+ '[' 3764 -ge 1200 ]
+ '[' 3764 -le 1949 ]
+ '[' 3764 -ge 2750 ]
+ '[' 3764 -le 3449 ]
+ '[' 3764 -ge 3450 ]
+ '[' 3764 -le 3799 ]
+ echo 8
+ T1=8
+ band4g 8
+ echo -n B8
+ echo ' (900 MHz)'
+ S3B='B8 (900 MHz)'
+ '[' -z 5 ]
+ addon 70 '(S3) band' 'B8 (900 MHz) @5 MHz'
+ '[' -n '{"idx":10,"key":"Temperature","value":"55 °C"},{"idx":23,"key":"TAC","value":"53112 (CF78)"},{"idx":30,"key":"Primary band","value":"B1 (2100 MHz) @15 MHz"},{"idx":33,"key":"PCI","value":"326"},{"idx":34,"key":"EARFCN DL","value":"75"},{"idx":34,"key":"EARFCN UL","value":"18075"},{"idx":36,"key":"RSRP","value":"-89 dBm"},{"idx":35,"key":"RSSI","value":"-59 dBm"},{"idx":37,"key":"RSRQ","value":"-8 dB"},{"idx":53,"key":"(S1) PCI","value":"326"},{"idx":54,"key":"(S1) EARFCN DL","value":"3025"},{"idx":50,"key":"(S1) band","value":"B7 (2600 MHz) @15 MHz"},{"idx":56,"key":"(S1) RSRP","value":"-105 dBm"},{"idx":57,"key":"(S1) RSRQ","value":"-7 dB"},{"idx":63,"key":"(S2) PCI","value":"326"},{"idx":64,"key":"(S2) EARFCN DL","value":"1725"},{"idx":60,"key":"(S2) band","value":"B3 (1800 MHz) @15 MHz"},{"idx":66,"key":"(S2) RSRP","value":"-91 dBm"},{"idx":67,"key":"(S2) RSRQ","value":"-8 dB"},{"idx":73,"key":"(S3) PCI","value":"326"},{"idx":74,"key":"(S3) EARFCN DL","value":"3764"}' ]
+ ADDON='{"idx":10,"key":"Temperature","value":"55 °C"},{"idx":23,"key":"TAC","value":"53112 (CF78)"},{"idx":30,"key":"Primary band","value":"B1 (2100 MHz) @15 MHz"},{"idx":33,"key":"PCI","value":"326"},{"idx":34,"key":"EARFCN DL","value":"75"},{"idx":34,"key":"EARFCN UL","value":"18075"},{"idx":36,"key":"RSRP","value":"-89 dBm"},{"idx":35,"key":"RSSI","value":"-59 dBm"},{"idx":37,"key":"RSRQ","value":"-8 dB"},{"idx":53,"key":"(S1) PCI","value":"326"},{"idx":54,"key":"(S1) EARFCN DL","value":"3025"},{"idx":50,"key":"(S1) band","value":"B7 (2600 MHz) @15 MHz"},{"idx":56,"key":"(S1) RSRP","value":"-105 dBm"},{"idx":57,"key":"(S1) RSRQ","value":"-7 dB"},{"idx":63,"key":"(S2) PCI","value":"326"},{"idx":64,"key":"(S2) EARFCN DL","value":"1725"},{"idx":60,"key":"(S2) band","value":"B3 (1800 MHz) @15 MHz"},{"idx":66,"key":"(S2) RSRP","value":"-91 dBm"},{"idx":67,"key":"(S2) RSRQ","value":"-8 dB"},{"idx":73,"key":"(S3) PCI","value":"326"},{"idx":74,"key":"(S3) EARFCN DL","value":"3764"},'
+ ADDON='{"idx":10,"key":"Temperature","value":"55 °C"},{"idx":23,"key":"TAC","value":"53112 (CF78)"},{"idx":30,"key":"Primary band","value":"B1 (2100 MHz) @15 MHz"},{"idx":33,"key":"PCI","value":"326"},{"idx":34,"key":"EARFCN DL","value":"75"},{"idx":34,"key":"EARFCN UL","value":"18075"},{"idx":36,"key":"RSRP","value":"-89 dBm"},{"idx":35,"key":"RSSI","value":"-59 dBm"},{"idx":37,"key":"RSRQ","value":"-8 dB"},{"idx":53,"key":"(S1) PCI","value":"326"},{"idx":54,"key":"(S1) EARFCN DL","value":"3025"},{"idx":50,"key":"(S1) band","value":"B7 (2600 MHz) @15 MHz"},{"idx":56,"key":"(S1) RSRP","value":"-105 dBm"},{"idx":57,"key":"(S1) RSRQ","value":"-7 dB"},{"idx":63,"key":"(S2) PCI","value":"326"},{"idx":64,"key":"(S2) EARFCN DL","value":"1725"},{"idx":60,"key":"(S2) band","value":"B3 (1800 MHz) @15 MHz"},{"idx":66,"key":"(S2) RSRP","value":"-91 dBm"},{"idx":67,"key":"(S2) RSRQ","value":"-8 dB"},{"idx":73,"key":"(S3) PCI","value":"326"},{"idx":74,"key":"(S3) EARFCN DL","value":"3764"},{"idx":70,"key":"(S3) band","value":"B8 (900 MHz) @5 MHz"}'
+ MODE='LTE-A B1 (2100 MHz) / B7 (2600 MHz) / B3 (1800 MHz) / B8 (900 MHz)'
+ echo '+XMCI: 5,000,000,"0xFFFE","0xFFFFFFFF","0x0146","0x00000EB4","0xFFFFFFFF","0xFFFFFFFF",61,22,255,"0x7FFFFFFF","0x00000000"
'
+ xargs
+ awk '-F[,:]' '/^\+XMCI: 5/{print $9}'
+ T=0xFFFFFFFF
+ '[' 0xFFFFFFFF '!=' 0xFFFFFFFF ]
+ echo '+XMCI: 5,000,000,"0xFFFE","0xFFFFFFFF","0x0146","0x00000EB4","0xFFFFFFFF","0xFFFFFFFF",61,22,255,"0x7FFFFFFF","0x00000000"
'
+ awk '-F[,:]' '/^\+XMCI: 5/{print $11}'
+ T=61
+ '[' 61 '!=' 255 ]
+ addon 76 '(S3) RSRP' '-80 dBm'
+ '[' -n '{"idx":10,"key":"Temperature","value":"55 °C"},{"idx":23,"key":"TAC","value":"53112 (CF78)"},{"idx":30,"key":"Primary band","value":"B1 (2100 MHz) @15 MHz"},{"idx":33,"key":"PCI","value":"326"},{"idx":34,"key":"EARFCN DL","value":"75"},{"idx":34,"key":"EARFCN UL","value":"18075"},{"idx":36,"key":"RSRP","value":"-89 dBm"},{"idx":35,"key":"RSSI","value":"-59 dBm"},{"idx":37,"key":"RSRQ","value":"-8 dB"},{"idx":53,"key":"(S1) PCI","value":"326"},{"idx":54,"key":"(S1) EARFCN DL","value":"3025"},{"idx":50,"key":"(S1) band","value":"B7 (2600 MHz) @15 MHz"},{"idx":56,"key":"(S1) RSRP","value":"-105 dBm"},{"idx":57,"key":"(S1) RSRQ","value":"-7 dB"},{"idx":63,"key":"(S2) PCI","value":"326"},{"idx":64,"key":"(S2) EARFCN DL","value":"1725"},{"idx":60,"key":"(S2) band","value":"B3 (1800 MHz) @15 MHz"},{"idx":66,"key":"(S2) RSRP","value":"-91 dBm"},{"idx":67,"key":"(S2) RSRQ","value":"-8 dB"},{"idx":73,"key":"(S3) PCI","value":"326"},{"idx":74,"key":"(S3) EARFCN DL","value":"3764"},{"idx":70,"key":"(S3) band","value":"B8 (900 MHz) @5 MHz"}' ]
+ ADDON='{"idx":10,"key":"Temperature","value":"55 °C"},{"idx":23,"key":"TAC","value":"53112 (CF78)"},{"idx":30,"key":"Primary band","value":"B1 (2100 MHz) @15 MHz"},{"idx":33,"key":"PCI","value":"326"},{"idx":34,"key":"EARFCN DL","value":"75"},{"idx":34,"key":"EARFCN UL","value":"18075"},{"idx":36,"key":"RSRP","value":"-89 dBm"},{"idx":35,"key":"RSSI","value":"-59 dBm"},{"idx":37,"key":"RSRQ","value":"-8 dB"},{"idx":53,"key":"(S1) PCI","value":"326"},{"idx":54,"key":"(S1) EARFCN DL","value":"3025"},{"idx":50,"key":"(S1) band","value":"B7 (2600 MHz) @15 MHz"},{"idx":56,"key":"(S1) RSRP","value":"-105 dBm"},{"idx":57,"key":"(S1) RSRQ","value":"-7 dB"},{"idx":63,"key":"(S2) PCI","value":"326"},{"idx":64,"key":"(S2) EARFCN DL","value":"1725"},{"idx":60,"key":"(S2) band","value":"B3 (1800 MHz) @15 MHz"},{"idx":66,"key":"(S2) RSRP","value":"-91 dBm"},{"idx":67,"key":"(S2) RSRQ","value":"-8 dB"},{"idx":73,"key":"(S3) PCI","value":"326"},{"idx":74,"key":"(S3) EARFCN DL","value":"3764"},{"idx":70,"key":"(S3) band","value":"B8 (900 MHz) @5 MHz"},'
+ ADDON='{"idx":10,"key":"Temperature","value":"55 °C"},{"idx":23,"key":"TAC","value":"53112 (CF78)"},{"idx":30,"key":"Primary band","value":"B1 (2100 MHz) @15 MHz"},{"idx":33,"key":"PCI","value":"326"},{"idx":34,"key":"EARFCN DL","value":"75"},{"idx":34,"key":"EARFCN UL","value":"18075"},{"idx":36,"key":"RSRP","value":"-89 dBm"},{"idx":35,"key":"RSSI","value":"-59 dBm"},{"idx":37,"key":"RSRQ","value":"-8 dB"},{"idx":53,"key":"(S1) PCI","value":"326"},{"idx":54,"key":"(S1) EARFCN DL","value":"3025"},{"idx":50,"key":"(S1) band","value":"B7 (2600 MHz) @15 MHz"},{"idx":56,"key":"(S1) RSRP","value":"-105 dBm"},{"idx":57,"key":"(S1) RSRQ","value":"-7 dB"},{"idx":63,"key":"(S2) PCI","value":"326"},{"idx":64,"key":"(S2) EARFCN DL","value":"1725"},{"idx":60,"key":"(S2) band","value":"B3 (1800 MHz) @15 MHz"},{"idx":66,"key":"(S2) RSRP","value":"-91 dBm"},{"idx":67,"key":"(S2) RSRQ","value":"-8 dB"},{"idx":73,"key":"(S3) PCI","value":"326"},{"idx":74,"key":"(S3) EARFCN DL","value":"3764"},{"idx":70,"key":"(S3) band","value":"B8 (900 MHz) @5 MHz"},{"idx":76,"key":"(S3) RSRP","value":"-80 dBm"}'
+ echo '+XMCI: 5,000,000,"0xFFFE","0xFFFFFFFF","0x0146","0x00000EB4","0xFFFFFFFF","0xFFFFFFFF",61,22,255,"0x7FFFFFFF","0x00000000"
'
+ awk '-F[,:]' '/^\+XMCI: 5/{print $12}'
+ T=22
+ '[' 22 '!=' 255 ]
+ addon 77 '(S3) RSRQ' '-9 dB'
+ '[' -n '{"idx":10,"key":"Temperature","value":"55 °C"},{"idx":23,"key":"TAC","value":"53112 (CF78)"},{"idx":30,"key":"Primary band","value":"B1 (2100 MHz) @15 MHz"},{"idx":33,"key":"PCI","value":"326"},{"idx":34,"key":"EARFCN DL","value":"75"},{"idx":34,"key":"EARFCN UL","value":"18075"},{"idx":36,"key":"RSRP","value":"-89 dBm"},{"idx":35,"key":"RSSI","value":"-59 dBm"},{"idx":37,"key":"RSRQ","value":"-8 dB"},{"idx":53,"key":"(S1) PCI","value":"326"},{"idx":54,"key":"(S1) EARFCN DL","value":"3025"},{"idx":50,"key":"(S1) band","value":"B7 (2600 MHz) @15 MHz"},{"idx":56,"key":"(S1) RSRP","value":"-105 dBm"},{"idx":57,"key":"(S1) RSRQ","value":"-7 dB"},{"idx":63,"key":"(S2) PCI","value":"326"},{"idx":64,"key":"(S2) EARFCN DL","value":"1725"},{"idx":60,"key":"(S2) band","value":"B3 (1800 MHz) @15 MHz"},{"idx":66,"key":"(S2) RSRP","value":"-91 dBm"},{"idx":67,"key":"(S2) RSRQ","value":"-8 dB"},{"idx":73,"key":"(S3) PCI","value":"326"},{"idx":74,"key":"(S3) EARFCN DL","value":"3764"},{"idx":70,"key":"(S3) band","value":"B8 (900 MHz) @5 MHz"},{"idx":76,"key":"(S3) RSRP","value":"-80 dBm"}' ]
+ ADDON='{"idx":10,"key":"Temperature","value":"55 °C"},{"idx":23,"key":"TAC","value":"53112 (CF78)"},{"idx":30,"key":"Primary band","value":"B1 (2100 MHz) @15 MHz"},{"idx":33,"key":"PCI","value":"326"},{"idx":34,"key":"EARFCN DL","value":"75"},{"idx":34,"key":"EARFCN UL","value":"18075"},{"idx":36,"key":"RSRP","value":"-89 dBm"},{"idx":35,"key":"RSSI","value":"-59 dBm"},{"idx":37,"key":"RSRQ","value":"-8 dB"},{"idx":53,"key":"(S1) PCI","value":"326"},{"idx":54,"key":"(S1) EARFCN DL","value":"3025"},{"idx":50,"key":"(S1) band","value":"B7 (2600 MHz) @15 MHz"},{"idx":56,"key":"(S1) RSRP","value":"-105 dBm"},{"idx":57,"key":"(S1) RSRQ","value":"-7 dB"},{"idx":63,"key":"(S2) PCI","value":"326"},{"idx":64,"key":"(S2) EARFCN DL","value":"1725"},{"idx":60,"key":"(S2) band","value":"B3 (1800 MHz) @15 MHz"},{"idx":66,"key":"(S2) RSRP","value":"-91 dBm"},{"idx":67,"key":"(S2) RSRQ","value":"-8 dB"},{"idx":73,"key":"(S3) PCI","value":"326"},{"idx":74,"key":"(S3) EARFCN DL","value":"3764"},{"idx":70,"key":"(S3) band","value":"B8 (900 MHz) @5 MHz"},{"idx":76,"key":"(S3) RSRP","value":"-80 dBm"},'
+ ADDON='{"idx":10,"key":"Temperature","value":"55 °C"},{"idx":23,"key":"TAC","value":"53112 (CF78)"},{"idx":30,"key":"Primary band","value":"B1 (2100 MHz) @15 MHz"},{"idx":33,"key":"PCI","value":"326"},{"idx":34,"key":"EARFCN DL","value":"75"},{"idx":34,"key":"EARFCN UL","value":"18075"},{"idx":36,"key":"RSRP","value":"-89 dBm"},{"idx":35,"key":"RSSI","value":"-59 dBm"},{"idx":37,"key":"RSRQ","value":"-8 dB"},{"idx":53,"key":"(S1) PCI","value":"326"},{"idx":54,"key":"(S1) EARFCN DL","value":"3025"},{"idx":50,"key":"(S1) band","value":"B7 (2600 MHz) @15 MHz"},{"idx":56,"key":"(S1) RSRP","value":"-105 dBm"},{"idx":57,"key":"(S1) RSRQ","value":"-7 dB"},{"idx":63,"key":"(S2) PCI","value":"326"},{"idx":64,"key":"(S2) EARFCN DL","value":"1725"},{"idx":60,"key":"(S2) band","value":"B3 (1800 MHz) @15 MHz"},{"idx":66,"key":"(S2) RSRP","value":"-91 dBm"},{"idx":67,"key":"(S2) RSRQ","value":"-8 dB"},{"idx":73,"key":"(S3) PCI","value":"326"},{"idx":74,"key":"(S3) EARFCN DL","value":"3764"},{"idx":70,"key":"(S3) band","value":"B8 (900 MHz) @5 MHz"},{"idx":76,"key":"(S3) RSRP","value":"-80 dBm"},{"idx":77,"key":"(S3) RSRQ","value":"-9 dB"}'
+ IDX=4
+ '[' 4 -ge 4 ]
+ break
+ cat
+ exit 0
Banana Pi BPI-R3 + SFP GPON ONT Nokia G-010S-A + LTE FIBOCOM L860-GL-16 (OpenWrt 25.12-SNAPSHOT, kernel 6.12.71)
Xiaomi AX3600 (OpenWrt 25.12-SNAPSHOT, kernel 6.12.71)
Xiaomi AX3000T (OpenWrt 25.12-SNAPSHOT, kernel 6.12.71)
All OpenWRT compilations from ASU by @Cezary

252

Odp: Pakiet luci-app-modemdata i co dalej..

Modemdata nie czyta sinr z tego modemu. I nigdy nie czytał. Mam w kodzie tylko zakomentany snr

Masz niepotrzebny router, uszkodzony czy nie - chętnie przygarnę go.

253

Odp: Pakiet luci-app-modemdata i co dalej..

Aha, czyli wszystko jasne. Gdzie znaleźć i odkomentować pokazywanie SNR?

Banana Pi BPI-R3 + SFP GPON ONT Nokia G-010S-A + LTE FIBOCOM L860-GL-16 (OpenWrt 25.12-SNAPSHOT, kernel 6.12.71)
Xiaomi AX3600 (OpenWrt 25.12-SNAPSHOT, kernel 6.12.71)
Xiaomi AX3000T (OpenWrt 25.12-SNAPSHOT, kernel 6.12.71)
All OpenWRT compilations from ASU by @Cezary

254

Odp: Pakiet luci-app-modemdata i co dalej..

Tu https://github.com/obsy/modemdata/blob/ … 7095a#L298 oraz tu: https://github.com/obsy/modemdata/blob/ … 7095a#L372

plik /usr/share/modemdata/addon/usb/8087095

Tylko to nie zostało zakomentowane bez powodu. Pewnie była niepewność jak i czy to przeliczać.

Masz niepotrzebny router, uszkodzony czy nie - chętnie przygarnę go.

255 (edytowany przez Payti 2026-03-13 18:18:32)

Odp: Pakiet luci-app-modemdata i co dalej..

Ok, odkomentowałem te linijki i pokazuje SNR dla pasma PCC ...

Thx
Pozdr,

Banana Pi BPI-R3 + SFP GPON ONT Nokia G-010S-A + LTE FIBOCOM L860-GL-16 (OpenWrt 25.12-SNAPSHOT, kernel 6.12.71)
Xiaomi AX3600 (OpenWrt 25.12-SNAPSHOT, kernel 6.12.71)
Xiaomi AX3000T (OpenWrt 25.12-SNAPSHOT, kernel 6.12.71)
All OpenWRT compilations from ASU by @Cezary

256 (edytowany przez Payti 2026-03-14 13:34:15)

Odp: Pakiet luci-app-modemdata i co dalej..

Wygrzebałem gdzieś jak policzyć SINR'a dla tego modemu Fibocom L860-GL-16, dopisałem j/n w /usr/share/modemdata/addon/usb/8087095a
i działa obliczanie SINR'a dla pasma PCC ...

...
        T=$(echo "$O" | awk -F[,:] '/^\+XMCI: 4/{print $12}')
        [ "$T" != "255" ] && addon 37 "RSRQ" "$((-20 + T/2)) dB"
#        T=$(echo "$O" | awk -F[,:] '/^\+XMCI: 4/{print $13}')
#        [ "$T" != "255" ] && addon 38 "SNR" "$T dB"
        T=$(echo "$O" | awk -F[,:] '/^\+XMCI: 4/{print $13}')
        [ "$T" != "255" ] && [ -n "$T" ] && {
            VAL=$(awk -v t="$T" 'BEGIN {printf "%.0f", t/4+5}')
            addon 38 "SINR" "${VAL} dB"
        }
    fi
...
...
            T=$(echo "$LINE" | awk -F[,:] '/^\+XMCI: 5/{print $12}')
            [ "$T" != "255" ] && addon $((POS + 7)) "(S${IDX}) RSRQ" "$((-20 + T/2)) dB"
#            T=$(echo "$LINE" | awk -F[,:] '/^\+XMCI: 4/{print $13}')
#            [ "$T" != "255" ] && addon $((POS + 8)) "(S${IDX}) SNR" "$T dB"
            T=$(echo "$LINE" | awk -F[,:] '/^\+XMCI: 5/{print $13}')
            [ "$T" != "255" ] && [ -n "$T" ] && {
                VAL=$(awk -v t="$T" 'BEGIN {printf "%.0f", t/4+5}')
                addon $((POS + 8)) "(S${IDX}) SINR" "${VAL} dB"
            }
            IDX=$((IDX + 1))
Banana Pi BPI-R3 + SFP GPON ONT Nokia G-010S-A + LTE FIBOCOM L860-GL-16 (OpenWrt 25.12-SNAPSHOT, kernel 6.12.71)
Xiaomi AX3600 (OpenWrt 25.12-SNAPSHOT, kernel 6.12.71)
Xiaomi AX3000T (OpenWrt 25.12-SNAPSHOT, kernel 6.12.71)
All OpenWRT compilations from ASU by @Cezary

257

Odp: Pakiet luci-app-modemdata i co dalej..

Tylko że ten parametr jest w pdf'ach opisany jako <RSSNR>; SNR nijak się ma do SINR, nie ma też jak tego przeliczyć bez znajomości interferencja. Więc nawet o ile wzorek na przeliczenie jest prawidłowy (a tego nie wiem bo nie opisali w pdf'ach to na pewnie nie jest to SINR.

Masz niepotrzebny router, uszkodzony czy nie - chętnie przygarnę go.

258 (edytowany przez Payti 2026-03-14 21:14:01)

Odp: Pakiet luci-app-modemdata i co dalej..

W dokumentacji do softu co używa tego modemu znalazłem taką deklarację dla SINR z jednego urządzenia co w nim pracuje taki modem:

SINR=$(at_modem "AT+XMCI=1" | awk -F [:,] '/\+XMCI: 4/{gsub(/"/,""); printf "%.0f\n", $13/4+5}')

więc na tym zabazowałem. Pokazuje to przeliczenie SINR w miarę wiarygodne dane z pomiarem koło modemu 'wypaśnym' miernikiem.

Modem dla komendy AT+XMCI=1 zwraca:

+XMCI: 4,260,03,"0xCF78","0x03893216","0x0146","0x0000004B","0x0000469B","0xFFFFFFFF",52,25,33,"0x00000014","0x00000000"
+XMCI: 5,000,000,"0xFFFE","0xFFFFFFFF","0x0146","0x00000EB4","0xFFFFFFFF","0xFFFFFFFF",61,21,255,"0x7FFFFFFF","0x00000000"
+XMCI: 5,000,000,"0xFFFE","0xFFFFFFFF","0x0146","0x000006BD","0xFFFFFFFF","0xFFFFFFFF",49,24,255,"0x7FFFFFFF","0x00000000"
+XMCI: 5,000,000,"0xFFFE","0xFFFFFFFF","0x0146","0x00000BD1","0xFFFFFFFF","0xFFFFFFFF",38,26,255,"0x7FFFFFFF","0x00000000"
OK

Postudiowałem trochę dokumentacje dla tego Fibocom L860-GL-16 i chipsetu Intela i wychodzi na to, że dane SINR można jedynie przeliczyć j/w i modem zwraca tylko co trzeba dla pasma PCC (i da się z przybliżeniem SINR policzyć), także dla SCC nie będzie obliczanego SINR'a. Posiedziałem też trochę nad modyfikacją 8087095a aby dla wszystkich SCCx pokazywał modemdata także RSSI i wysiedziałem coś takiego:

cat /usr/share/modemdata/addon/usb/8087095a

# Fibocom L860 - Full Script (Optimized with Fixes)

bandwidth() {
        case $1 in
                0) echo "1.4";; 1) echo "3";; 2) echo "5";; 3) echo "10";; 4) echo "15";; 5) echo "20";;
                *) echo "";;
        esac
}

channeltoband() {
        if [ $1 -ge 0 ] && [ $1 -le 599 ]; then echo "1"
        elif [ $1 -ge 1200 ] && [ $1 -le 1949 ]; then echo "3"
        elif [ $1 -ge 2750 ] && [ $1 -le 3449 ]; then echo "7"
        elif [ $1 -ge 3450 ] && [ $1 -le 3799 ]; then echo "8"
        elif [ $1 -ge 6150 ] && [ $1 -le 6449 ]; then echo "20"
        else echo "?"; fi
}

O=$(sms_tool -d $DEVICE at "AT+MTSM=1")
T=$(echo "$O" | awk -F: '/^\+MTSM:/ {print $2}' | xargs)
[ -n "$T" ] && addon 10 "Temperature" "$T &deg;C"

if [ "$REGOK" = "1" ]; then
O=$(sms_tool -d $DEVICE at "AT+XLEC?;+XMCI=1;+XCCINFO=1;+XCCINFO?")

if [ "x$MODE_NUM" = "x7" ]; then
        T=$(echo "$O" | awk -F[,:] '/^\+XCCINFO:/{print $11}' | xargs)
        if [ -n "$T" ]; then
                T_DEC=$(printf "%d" "0x$T")
                addon 23 "TAC" "${T_DEC} ($T)"
        fi

        PB=""; S1B=""; S2B=""; S3B=""; S4B=""
        BWP=""; BWS1=""; BWS2=""; BWS3=""; BWS4=""
        PCC_PCI=""; PCC_EARFCN=""

        CELLS=$(echo "$O" | awk -F[,:] '/^\+XLEC:/{print $3}')
        [ -z "$CELLS" ] && CELLS=0
        
        # Pobieranie szerokości pasm
        BWP=$(bandwidth $(echo "$O" | awk -F[,:] '/^\+XLEC:/{print $4}'))
        BWS1=$(bandwidth $(echo "$O" | awk -F[,:] '/^\+XLEC:/{print $5}'))
        BWS2=$(bandwidth $(echo "$O" | awk -F[,:] '/^\+XLEC:/{print $6}'))
        BWS3=$(bandwidth $(echo "$O" | awk -F[,:] '/^\+XLEC:/{print $7}'))
        BWS4=$(bandwidth $(echo "$O" | awk -F[,:] '/^\+XLEC:/{print $8}'))

        # SEKCJA PASMA GŁÓWNEGO (PCC)
        T=$(echo "$O" | awk -F[,:] '/^\+XMCI: 4/{print $7}' | xargs)
        if [ -n "$T" ]; then
                PCC_PCI=$(printf "%d" "$T")
                addon 33 "PCI" "$PCC_PCI"
                
                T=$(echo "$O" | awk -F[,:] '/^\+XMCI: 4/{print $8}' | xargs)
                if [ "$T" != "0xFFFFFFFF" ]; then
                        PCC_EARFCN=$(printf "%d" "$T")
                        addon 34 "EARFCN DL" "$PCC_EARFCN"
                        PB=$(band4g $(channeltoband $PCC_EARFCN))
                        [ -z "$BWP" ] && addon 30 "Primary band" "$PB" || addon 30 "Primary band" "$PB @${BWP} MHz"
                        MODE="$MODE $PB"
                fi

                # EARFCN UL (indeks 32)
                T=$(echo "$O" | awk -F[,:] '/^\+XMCI: 4/{print $9}' | xargs)
                [ "$T" != "0xFFFFFFFF" ] && [ -n "$T" ] && addon 32 "EARFCN UL" "$(printf "%d" "$T")"
                
                T=$(echo "$O" | awk -F[,:] '/^\+XMCI: 4/{print $11}')
                if [ "$T" != "255" ] && [ -n "$T" ]; then
                        addon 36 "RSRP" "$((-141 + T)) dBm"
                        N=""; case $BWP in "1.4") N=6;; "3") N=15;; "5") N=25;; "10") N=50;; "15") N=75;; "20") N=100;; esac
                        if [ -n "$N" ]; then
                                RSSI=$(echo "$((-141 + T)) $N" | awk '{printf "%d\n", $1 + 10*log(12*$2)/log(10)}')
                                if [ -n "$RSSI" ]; then
                                        [ $RSSI -lt -113 ] && RSSI="-113"
                                        [ $RSSI -gt -51 ] && RSSI="-51"
                                        addon 35 "RSSI" "$RSSI dBm"
                                        CSQ_PER=$(((RSSI + 113) * 100 / 62))
                                fi
                        fi
                fi
                
                T=$(echo "$O" | awk -F[,:] '/^\+XMCI: 4/{print $12}')
                [ "$T" != "255" ] && addon 37 "RSRQ" "$((-20 + T/2)) dB"

                T=$(echo "$O" | awk -F[,:] '/^\+XMCI: 4/{print $13}' | xargs)
                if [ "$T" != "255" ] && [ -n "$T" ]; then
                        addon 38 "SNR" "$T dB"
                        VAL=$(printf "%.1f" "$(echo "$T" | awk '{print $1/4+5}')")
                        addon 39 "SINR" "${VAL} dB"
                fi
        fi

IFS="
"
        IDX=1
        POS=50
        LINES=$(echo "$O" | grep "+XMCI: 5")
        for LINE in $LINES; do
                CUR_PCI_RAW=$(echo "$LINE" | awk -F[,:] '{print $7}' | xargs)
                CUR_EARFCN_RAW=$(echo "$LINE" | awk -F[,:] '{print $8}' | xargs)
                [ -z "$CUR_PCI_RAW" ] && continue
                
                C_PCI=$(printf "%d" "$CUR_PCI_RAW")
                C_EARFCN=$(printf "%d" "$CUR_EARFCN_RAW")

                # FILTR DUPLIKATÓW (PCC vs SCC)
                [ "$C_PCI" = "$PCC_PCI" ] && [ "$C_EARFCN" = "$PCC_EARFCN" ] && continue

                addon $((POS + 3)) "(S${IDX}) PCI" "$C_PCI"
                addon $((POS + 4)) "(S${IDX}) EARFCN DL" "$C_EARFCN"
                
                S_BAND=$(band4g $(channeltoband $C_EARFCN))
                case $IDX in
                        1) CBW=$BWS1; addon $POS "(S1) band" "$S_BAND${CBW:+ @$CBW MHz}" ;;
                        2) CBW=$BWS2; addon $POS "(S2) band" "$S_BAND${CBW:+ @$CBW MHz}" ;;
                        3) CBW=$BWS3; addon $POS "(S3) band" "$S_BAND${CBW:+ @$CBW MHz}" ;;
                        4) CBW=$BWS4; addon $POS "(S4) band" "$S_BAND${CBW:+ @$CBW MHz}" ;;
                esac

                # POPRAWKA LTE-A (tylko jedna zmiana)
                case $MODE in
                        *LTE-A*) MODE="$MODE / $S_BAND" ;;
                        *) MODE="${MODE/LTE/LTE-A} / $S_BAND" ;;
                esac

                T=$(echo "$LINE" | awk -F[,:] '{print $11}')
                if [ "$T" != "255" ] && [ -n "$T" ]; then
                        addon $((POS + 6)) "(S${IDX}) RSRP" "$((-141 + T)) dBm"
                        SN=""; case $CBW in "1.4") SN=6;; "3") SN=15;; "5") SN=25;; "10") SN=50;; "15") SN=75;; "20") SN=100;; esac
                        if [ -n "$SN" ]; then
                                SRSSI=$(echo "$((-141 + T)) $SN" | awk '{printf "%d\n", $1 + 10*log(12*$2)/log(10)}')
                                addon $((POS + 5)) "(S${IDX}) RSSI" "$SRSSI dBm"
                        fi
                fi
                
                T=$(echo "$LINE" | awk -F[,:] '{print $12}')
                [ "$T" != "255" ] && addon $((POS + 7)) "(S${IDX}) RSRQ" "$((-20 + T/2)) dB"

                T=$(echo "$LINE" | awk -F[,:] '{print $13}' | xargs)
                if [ "$T" != "255" ] && [ -n "$T" ]; then
                        addon $((POS + 8)) "(S${IDX}) SNR" "$T dB"
                        S_VAL=$(printf "%.1f" "$(echo "$T" | awk '{print $1/4+5}')")
                        addon $((POS + 9)) "(S${IDX}) SINR" "${S_VAL} dB"
                fi

                IDX=$((IDX + 1))
                POS=$((POS + 10))
                [ $IDX -gt 4 ] && break
        done
fi
fi

Działa:
- pokazywanie wszystkich RSSI dla PCC i SCCx
- pokazywanie i odświeżanie SINR dla PCC (przybliżonego obliczanego, nie z danych zwracanych z modemu bo ten ich nie podaje)

https://i.imgur.com/9Egcste.png

Jak uznasz, że nic nie warte poprostu wywal posta ...


Pozdr,

Banana Pi BPI-R3 + SFP GPON ONT Nokia G-010S-A + LTE FIBOCOM L860-GL-16 (OpenWrt 25.12-SNAPSHOT, kernel 6.12.71)
Xiaomi AX3600 (OpenWrt 25.12-SNAPSHOT, kernel 6.12.71)
Xiaomi AX3000T (OpenWrt 25.12-SNAPSHOT, kernel 6.12.71)
All OpenWRT compilations from ASU by @Cezary

259

Odp: Pakiet luci-app-modemdata i co dalej..

Pokaż mi z której dokumentacji korzystałeś, gdzie jest napisane że jest to SINR.

Masz niepotrzebny router, uszkodzony czy nie - chętnie przygarnę go.

260

Odp: Pakiet luci-app-modemdata i co dalej..

Dokumentacja jest 'strzeżona' nie mogę udostępnić, ale chyba nie zrozumieliśmy się.
Modem wprost nie udostępnia SINR'a w zwracanych danych, ale można go tak z przybliżeniem liczyć jak podałem wyżej ...
I obliczone dane są dość precyzyjnie wiarygodne (ok. +- 10%)

Pozdr,

Banana Pi BPI-R3 + SFP GPON ONT Nokia G-010S-A + LTE FIBOCOM L860-GL-16 (OpenWrt 25.12-SNAPSHOT, kernel 6.12.71)
Xiaomi AX3600 (OpenWrt 25.12-SNAPSHOT, kernel 6.12.71)
Xiaomi AX3000T (OpenWrt 25.12-SNAPSHOT, kernel 6.12.71)
All OpenWRT compilations from ASU by @Cezary

261

Odp: Pakiet luci-app-modemdata i co dalej..

Więc pozwolisz że zostawię to jednak zakomentowane tak jak jest teraz, jak nie wiadomo czym to jest. Jeżeli ktoś potrzebuje to sobie może odkomentować.

Masz niepotrzebny router, uszkodzony czy nie - chętnie przygarnę go.

262 (edytowany przez Payti 2026-03-14 20:09:13)

Odp: Pakiet luci-app-modemdata i co dalej..

Oczywiście, ja zrobiłem takiego moda skryptu dla siebie dla pewnych wizualizacji ...
Dla oszacowania jakości łącza nie trzeba mieć super precyzyjnego SINR.
Ogólnie w zupełności wystarcza info i oszacowanie przedziału j/n, w którym plasuje się link LTE ...

Dla potomnych :

SINR (Signal to Interference + Noise Ratio) jeden z najważniejszy wskaźników jakości w technologii LTE.

Wartość SINR   | Jakość połączenia    | Co to oznacza w praktyce?
----------------- |-----------------------|------------------------------------------------------------------------------------------------
Powyżej 20 dB  | Doskonała              | Maksymalne prędkości, stabilne 4CA, modulacja 256QAM powinna działać bez błędów.
------------------|-----------------------|------------------------------------------------------------------------------------------------
13 dB do 20 dB | Bardzo dobra          | Szybkie i stabilne połączenie. Bardzo mała ilość retransmisji pakietów.
------------------|-----------------------|------------------------------------------------------------------------------------------------
5 dB do 12 dB   | Dobra / Przeciętna  | Typowe warunki miejskie. Prędkości mogą być zmienne, ale łącze jest stabilne.
------------------|-----------------------|------------------------------------------------------------------------------------------------
0 dB do 4 dB     | Słaba                     | Możliwe zerwania agregacji (powrót do jednego pasma), odczuwalne spowolnienia.
------------------|-----------------------|------------------------------------------------------------------------------------------------
Poniżej 0 dB      | Bardzo słaba           | Duże zakłócenia. Modem walczy o utrzymanie synchronizacji.
------------------|-----------------------|------------------------------------------------------------------------------------------------

Banana Pi BPI-R3 + SFP GPON ONT Nokia G-010S-A + LTE FIBOCOM L860-GL-16 (OpenWrt 25.12-SNAPSHOT, kernel 6.12.71)
Xiaomi AX3600 (OpenWrt 25.12-SNAPSHOT, kernel 6.12.71)
Xiaomi AX3000T (OpenWrt 25.12-SNAPSHOT, kernel 6.12.71)
All OpenWRT compilations from ASU by @Cezary

263 (edytowany przez Payti 2026-03-14 19:03:13)

Odp: Pakiet luci-app-modemdata i co dalej..

Taka ciekawostka z tej samej dokumentacji -> szacowanie odległości terminala od anteny (sektora):

DISTANCE=$(at_modem "AT+XMCI=1" | awk -F [:,] '/\+XMCI: 4/{gsub(/"/,""); printf "%.2f\n", ($14*78)/1000}')

Dla mojej lokalizacji pomiar wg GPS daje: 1.63km (terminal-maszt) a oszacowana j/w odległość z parametrów daje wynik: 1.56 km
Także widać całkiem nieźle ...
W sumie to można by dodać też takie info do 'modemdata' i zakładki 'Modemdata status' ...

Pozdr,

Banana Pi BPI-R3 + SFP GPON ONT Nokia G-010S-A + LTE FIBOCOM L860-GL-16 (OpenWrt 25.12-SNAPSHOT, kernel 6.12.71)
Xiaomi AX3600 (OpenWrt 25.12-SNAPSHOT, kernel 6.12.71)
Xiaomi AX3000T (OpenWrt 25.12-SNAPSHOT, kernel 6.12.71)
All OpenWRT compilations from ASU by @Cezary

264

Odp: Pakiet luci-app-modemdata i co dalej..

Payti napisał/a:

Taka ciekawostka z tej samej dokumentacji -> szacowanie odległości terminala od anteny (sektora):

DISTANCE=$(at_modem "AT+XMCI=1" | awk -F [:,] '/\+XMCI: 4/{gsub(/"/,""); printf "%.2f\n", ($14*78)/1000}')

Dla mojej lokalizacji pomiar wg GPS daje: 1.63km (terminal-maszt) a oszacowana j/w odległość z parametrów daje wynik: 1.56 km
Także widać całkiem nieźle ...
W sumie to można by dodać też takie info do 'modemdata' i zakładki 'Modemdata status' ...

Pozdr,

Nowsze Quectele mają coś podobnego, czy jest to do dodania pewnie by się dało, nie wiem co na to Cezary. Na ten moment nie planuję aktualizacji pakietu dla Lucyny. Nie wnikałem jeszcze w kwestię zmian na BTSearch, więc nie wiem czy wymusi to aktualizację czy nie.

Używasz moich pakietów/obrazów z github?
Chcesz abym dalej je rozwijał i tworzył nowe?
Postaw kawę