I have rooted my mobile. I wanted to use modem of Android phone without connecting to PC. How to give AT commands without connecting to PC, because in http://atinout.sourceforge.net/, it is suggesting to use '/dev/ttyACM0' file which is not present in Android device. I am not sure, but it seems ttyACM0 is related with USB, how to use same command in Android mobile, if I have rooted my mobile successfully.

  • Have you checked if kernel's Android USB gadget support does include ACM serial support, generic serial function driver and finally modem support in generic serial function driver?
    – t0mm13b
    Aug 13 '13 at 12:22
  • @t0mm13b Can you please suggest how to check this? I am new to Linux world. Aug 13 '13 at 12:37
  • Did anybody ever "stepped by stepped" detailed how you could solve this issue ? ... I'm tryna do the same thing (or possibly embed it in my Java apk...)
    – Jason Krs
    Mar 20 '18 at 16:02

Some devices would have the kernel compiled with ACM serial support (this is dependent on manufacturer/board/kernel) so that it could be used as a dial-up modem from a PC via USB cable, that is the functionality behind /dev/ttyACM n where n is a digit as allocated by the kernel.

To check for that, look in /proc/config.gz which is the kernel configuration file used, this is a gzipped file detailing the configuration of how the kernel was built, the ones you are looking for is, need to search for it:


again, its dependent, some elect to not include it, others will omit it

So basing my comment above, I think you're using the wrong device file name, the real modem device file is /dev/smd0 which is used in conjunction with /dev/socket/rild (See my answer on StackOverflow explaining about that). /dev/smd0 sits in front of /dev/socket/rild, rild daemon reads from that device and relays it to /dev/socket/rild which is then handled by the android layer in both directions.

Try using either of the device filenames, with atinout program referenced on sourceforge, to see what outcome you will get.

Disclaimer: I am not responsible for messing up your telephony stuff if you carry it out as per on the sourceforge site, if it gets messed, reboot!


As I said in my answer to your first question:

Be warned that the device file you need to use is different for each model of phone, so you'll have to examine /dev on each device to find out which file to use.

If you can't find a report from someone else who has got it working on the same phone, you'll need to use a little trial and error to find the right device file.

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.