![如何使移动数据正常工作(三数据 SIM 卡、华为 ME906s、Xenial)](https://linux22.com/image/883313/%E5%A6%82%E4%BD%95%E4%BD%BF%E7%A7%BB%E5%8A%A8%E6%95%B0%E6%8D%AE%E6%AD%A3%E5%B8%B8%E5%B7%A5%E4%BD%9C%EF%BC%88%E4%B8%89%E6%95%B0%E6%8D%AE%20SIM%20%E5%8D%A1%E3%80%81%E5%8D%8E%E4%B8%BA%20ME906s%E3%80%81Xenial%EF%BC%89.png)
我最近买了一台安装了华为 ME906s LTE 调制解调器卡的 Thinkpad T460p。我从 Three UK 购买了一张 PAYG SIM 卡来与它一起使用。我无法让这个组合工作。我使用的是 Ubuntu Mate 16.04。
LTE 调制解调器可以与我手机的 SIM 卡配合使用,也可以与 3G 平板电脑的 SIM 卡配合使用,只是不能与我购买的特定 SIM 卡配合使用。
Three SIM 卡可以在 3G 平板电脑上使用,也可以在配有 Option 3G 调制解调器卡的旧 Acer 上网本(运行 Ubuntu 14.04)上使用。但它无法在我购买的笔记本电脑上使用。
当我使用 mmcli 检查调制解调器状态时,我看到一条消息“sim missing”。
我运行了调制解调器管理器,并开启了调试选项。问题似乎出在 mm 检查是否需要提示用户输入 SIM PIN 的时候。
ModemManager[2821]: <debug> [1465982274.460019] [mm-broadband-modem.c:1290] modem_load_unlock_required(): checking if unlock required...
ModemManager[2821]: <debug> [1465982274.460049] [mm-port-serial.c:1237] mm_port_serial_open(): (ttyUSB0) device open count is 3 (open)
ModemManager[2821]: <debug> [1465982274.460086] [mm-port-serial.c:1294] _close_internal(): (ttyUSB0) device open count is 2 (close)
ModemManager[2821]: <debug> [1465982274.460121] [mm-port-serial-at.c:440] debug_log(): (ttyUSB0): --> 'AT+CPIN?<CR>'
ModemManager[2821]: <debug> [1465982274.471229] [mm-port-serial-at.c:440] debug_log(): (ttyUSB0): <-- '<CR><LF>+CME ERROR: 10<CR><LF>'
ModemManager[2821]: <debug> [1465982274.471373] [mm-serial-parsers.c:364] mm_serial_parser_v1_parse(): Got failure code 10: SIM not inserted
ModemManager[2821]: <debug> [1465982274.471425] [mm-iface-modem.c:266] load_unlock_required_ready(): Couldn't check if unlock required: 'SIM not inserted'
(这些行是在调制解调器管理器初始化并打开调试时输出的,我没有运行任何其他命令来尝试使用调制解调器)
当我使用可以识别的手机 SIM 卡生成相同的调试输出时,我得到:
ModemManager[2591]: <debug> [1465986560.133951] [mm-broadband-modem.c:1290] modem_load_unlock_required(): checking if unlock required...
ModemManager[2591]: <debug> [1465986560.133981] [mm-port-serial.c:1237] mm_port_serial_open(): (ttyUSB0) device open count is 3 (open)
ModemManager[2591]: <debug> [1465986560.134018] [mm-port-serial.c:1294] _close_internal(): (ttyUSB0) device open count is 2 (close)
ModemManager[2591]: <debug> [1465986560.134058] [mm-port-serial-at.c:440] debug_log(): (ttyUSB0): --> 'AT+CPIN?<CR>'
ModemManager[2591]: <debug> [1465986560.145234] [mm-port-serial-at.c:440] debug_log(): (ttyUSB0): <-- '<CR><LF>+CPIN: READY<CR><LF><CR><LF>OK<CR><LF>'
ModemManager[2591]: <debug> [1465986560.145370] [mm-port-serial.c:1294] _close_internal(): (ttyUSB0) device open count is 1 (close)
ModemManager[2591]: <debug> [1465986560.145422] [huawei/mm-broadband-modem-huawei.c:676] load_unlock_retries(): loading unlock retries (huawei)...
ModemManager[2591]: <debug> [1465986560.145475] [mm-port-serial.c:1237] mm_port_serial_open(): (ttyUSB0) device open count is 2 (open)
ModemManager[2591]: <debug> [1465986560.145523] [mm-port-serial-at.c:440] debug_log(): (ttyUSB0): --> 'AT^CPIN?<CR>'
ModemManager[2591]: <debug> [1465986560.156692] [mm-port-serial-at.c:440] debug_log(): (ttyUSB0): <-- '<CR><LF>^CPIN: READY,,10,3,10,3<CR><LF><CR><LF>OK<CR><LF>'
ModemManager[2591]: <debug> [1465986560.157040] [mm-iface-modem.c:3062] update_lock_info_context_step(): SIM is ready, running after SIM unlock step...
在我看来,这表明在 AT+CPIN? 命令期间调制解调器和 SIM 卡之间发生的低级通信中,卡正在生成一些华为卡驱动程序未预料到的响应,但只有在使用 Three 的卡时才会发生。我不知道如何窃听这些通信以了解实际发生了什么。
请注意,我的旧上网本中的 Option 调制解调器卡可以很好地处理此对话框,因此问题出在 Xenial 中的华为调制解调器驱动程序中,而不是 Trusty 中的 Option 调制解调器驱动程序中。
我还能做什么吗,还是必须等待更新的驱动程序?