How can I communicate with a 3G modem via pySerial while it is connected?

房东的猫 提交于 2020-01-01 14:25:02

问题


I'm running Ubuntu 11.04 and a ZTE 3G modem.

The modem is dialed with WvDial

When the modem is not in use by WvDial I can send AT commands to the modem, and get information like signal strength:

AT+ZCSQ
+ZCSQ: 1,  -87 

OK

But when WvDial is using the modem, /dev/ttyUSB0 is locked and I can't query it. Am I missing something obvious? Is there any way I can configure the modem, WvDial, or pyserial so I can send AT commands to the modem while it's connected?


回答1:


Ah. Apparently this modem exposes a couple of ttys to work with. I was able to use /dev/ttyUSB1 to sent AT commands while WvDial was connected on /dev/ttyUSB0:

import serial

ser = serial.Serial('/dev/ttyUSB1', 9600, timeout=2)

at_command = 'AT+ZCSQ\r\n'
ser.write(at_command)
ser.sendBreak()

line = ser.read(ser.inWaiting())
ser.close

print line


来源:https://stackoverflow.com/questions/7986450/how-can-i-communicate-with-a-3g-modem-via-pyserial-while-it-is-connected

标签
易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!