I have a rooted Xperia Neo V (running quite old Android - 2.3.4). Im trying to run AT commands on /dev/smd0. Most of the things work fine except I'm able to send DTMF tone only once, after that VTS command does not have any effect, even the simple AT command or other commands cease to work i.e. do not give any response after that unless I reboot the phone.
Sequence of events: 1. Test AT command is working:
echo -e "AT\r" > /dev/smd0;cat /dev/smd0
AT OK
- Make/receive a call either through UI or ATD/ATA.
- Test AT Command is working:
echo -e "AT\r" > /dev/smd0;cat /dev/smd0
AT OK
Send DTMF: (I can hear the tone on the other end)
echo -e "AT_VTS=3\r" > /dev/smd0;cat /dev/smd0
At this point all commands (AT+VTS=4, AT, ATI, etc etc) stop working till I reboot the phone. Im not able to hear any further DTMF tones with VTS command.
Observations: 1. I even tried doing a terminal Mitm using mulliner's code (http://mulliner.org/security/sms/feed/android_injector_v1.tgz) to understand how Android is sending DTMF tones correctly. However, the mitm does not work (no output in injector.log). Please note that it works when I send AT commands manually through the shell i.e. logs everything perfectly.
- Even if /dev/smd0 is renamed, the ril/Android works fine. My assumption is that it is using some other Qualcomm dev file in case /dev/smd0 fails.
Info: 1. Phone: Sony Ericson Xperia Neo V [ro.build.description]: [MT11i-user 2.3.4 4.0.2.A.0.62 2. dev file: $ adb shell getprop | grep -i rild.libargs [rild.libargs]: [-d /dev/smd0]
- Baseband:
echo -e "ATI\r" > /dev/smd0;cat /dev/smd0
ATI Manufacturer: QUALCOMM INCORPORATED Model: 196 Revision: M7630A-ABBQMAZM-2.0.3028DT 1 [Sep 14 2011 11:00:00] IMEI: XXXXXXXXXXXXXXXXXX +GCAP: +CGSM,+FCLASS,+DS