Dear all,
I am porting android ICS 4.0.3 on beagleboard XM rev B. I enabled telephony function via UART2. My problem:
In reference-ril.c[void requestSignalStrength],to get signal strength, RIL used AT command "AT+CSQ", and get 2 integer number in response[2], so size of reponse is 8 (bytes). And then, in ril.cpp[int responseRilSignalStrength], wrote as below:
if (responselen >= sizeof (RIL_SignalStrength_v5)), but responselen is 8 bytes and sizeof (RIL_SignalStrength_v5) is 28 bytes So, the function printed "invalid response length" to LOGI, cannot initialize success.
I tried edit code in reference-ril.c[void requestSignalStrength] to size of response = 28 bytes as below:
int response[7]={0,0,0,0,75,125,8};
And result log is:
D/AT ( 1017): AT> AT+CSQ
D/AT ( 1017): AT< +CSQ: 27,99 D/AT ( 1017): AT< OK
D/RILJ ( 1225): [0211]< SIGNAL_STRENGTH {27, 99, 0, 0, 75, 125, 8}
D/RILB ( 1225): getLteOnCdmaMode=0 curVal=-1 product_type=''lteOnCdmaProductType=''
D/RILB ( 1225): getLteOnCdmaMode=0 curVal=-1 product_type=''lteOnCdmaProductType=''
RIL framework send AT+CSQ as soon as power off beagleboard XM.
Please help me fix this problem to can call/sms via beagleboard.
Reagard,
Thanks,
Thanh Truong