1. 程式人生 > >中興ME3720無線4G模組移植及ppp方式撥號

中興ME3720無線4G模組移植及ppp方式撥號

本文主要介紹在Linux平臺下進行中興ME3720無線4G模組的驅動移植,並採用PPP的撥號方式進行撥號接通上網路。

該驅動主要包括本身系統的usb轉串列埠驅動,和中興提供的ndis口驅動,以及系統支援ndis口驅動需要載入的usbnet驅動。以下將按照從核心編譯到應用層實現撥號連網的順序來介紹:

1核心編譯

1.1新增USB轉串列埠驅動

在核心的編譯配置支援USB轉串列埠驅動之前,由於需要新增該無線模組產品的VID和PID,需要先找到核心原始碼檔案option.c(一般路徑在..\drivers\usb\serial\optopn.c),比較舊的linux版本,則是usb-serial.c中,路徑相同。
在原始碼中新增中興產品的VID(0x19d2)以及ME3720型號的PID(0x1529),如下:          新增PID和VID後,就可以在核心編譯配置中新增編譯該usb轉串列埠驅動了,配置如下: 在核心資料夾下輸入命令make menuconfig device drivers-->usb support-->usb serial converter support 選中如下元件: USB driver for GSM and CDMA  modems 編譯核心,即支援該驅動了。

1.2ppp撥號方式需要支援的核心配置

由於之後應用層上採用的撥號方式為ppp撥號方式,需要系統先支援該撥號方式,配置如下:
在核心資料夾下輸入命令make menuconfig device drivers--> [*]Network device support --> 以上全部選上;編譯核心即可。

2載入驅動

2.1 支援ndis口驅動需要的usbnet驅動

該驅動實際上也是系統核心中本身有的,這裡需要將其編譯成.ko的形式,如下: 在核心資料夾下輸入命令make menuconfig device drivers --> Network device support --> usb Network Adapters 選中如下元件: <M> Mutil-purpose USB Networking Framework
編譯得到usbnet.ko

2.2 中興提供的ndis口驅動

一般中興會提供ndis口驅動的原始碼包,如下: 直接make編譯即可得到cdc_encap.ko和cdc_ether.ko

2.2載入驅動

得到以上三個.ko檔案後,需要在系統啟動項中進行載入這三個.ko檔案,不過注意載入的順序必須按照如下的載入順序: insmod usbnet.ko insmod cdc_encap.ko insmod cdc_ether.ko 至此,驅動便載入完成。

2.3驅動載入成功驗證

開機後若載入成功完成,會看到如下資訊: 插入無線模組後,會打印出如下資訊: 輸入以下命令可看到如下資訊: 輸入ifconfig -a 可看到如下資訊: 有以上現象,則說明驅動載入成功完成。

3ppp方式撥號上網

3.1 系統需要有支援ppp的相關驅動

這一點在1.2中已經闡述如何配置支援。 如果配置支援成功,則可以看到以下現象: /proc/devices下有: /dev 下有:

3.2 安裝ppp相關工具和指令碼

(1)、下載ppp的原始碼包ppp-2.4.7.zip,然後執行以下命令:
tar zxvf ppp-2.4.7.zip
cd ppp-master

./configure

make CC=arm-none-linux-gnueabi-gcc
這裡的CC後的交叉編譯工具根據晶片的不同而採用不同的工具。編譯後有四個是我們所需要的,分別是chat/下的“chat”,pppd/下的“pppd”,pppdump/下的“pppdump”,pppstats/下的“pppstats”。需要將這四個檔案都放到檔案系統的/usr/sbin/目錄下。 (2)、建立三個資料夾: mkdir /etc/ppp; mkdir /etc/ppp/peers; mkdir /etc/ppp/chat; (3)、指令碼準備:
一般ppp撥號需要4個重要的指令碼規則檔案、引數檔案和兩個認證檔案pap-secret、chap-secret。 I、認證檔案pap-secret、chap-secret 一般兩個認證檔案的內容是一樣的,只是檔名不同以支援PAP方式和CHAP方式 這兩個檔案放在/etc/ppp下; 認證檔案內容有四項: 呼叫者名稱   伺服器名稱  呼叫者口令  與呼叫者關聯的IP地址 其中,伺服器名稱和與呼叫者關聯的IP地址可以為*,表示沒有限制,可以是任何伺服器和任何IP;電信卡的使用者名稱和口令一般為[email protected],vnet.mobi; 如下: pap-secret:
#/etc/ppp/pap-secrets
# Secrets for authentication using PAP
# client server secret IP addresses
####### redhat-config-network will overwrite this part!!! (begin) ##########
####### redhat-config-network will overwrite this part!!! (end) ############
[email protected] * "vnet.mobi" *
chap-secret:
#/etc/ppp/pap-secrets
# Secrets for authentication using CHAP
# client server secret IP addresses
####### redhat-config-network will overwrite this part!!! (begin) ##########
####### redhat-config-network will overwrite this part!!! (end) ############
[email protected] * "123456" *
II、規則檔案
規則檔案對於各種無線模組以及不同的運營商,內容會有所不同,針對中興ME3720,需要參考其AT命令指南,進行AT命令呼叫。且我使用的是電信卡,如下:
TIMEOUT 10 
ABORT 'NO CARRIER' 
ABORT 'ERROR' 
ABORT 'NODIALTONE' 
ABORT 'BUSY' 
ABORT 'NO ANSWER' 
''  \rAT 
OK  \rATZ 
OK-AT-OK ATDT*99# 
CONNECT \d\c 
規則檔案的名字可以自定義,這裡定義為chat-ppp0-connect。放在/etc/ppp下。 III、引數檔案
引數檔案影響和控制ppp連線,包括哪個串列埠,串列埠波特率,使用的規則檔名,認證的使用者名稱等,如下:
debug 
nodetach 
lock 
#使用的串列埠
/dev/ttyUSB1
#串列埠波特率
115200 
#認證的使用者名稱
user [email protected]
show-password 
usepeerdns 
nocrtscts 
noauth 
noipdefault 
novj 
novjccomp 
noccp 
#表示把伺服器指定的伺服器IP地址作為預設路由
defaultroute 
#表示接受伺服器分配的本機IP地址 
ipcp-accept-local 
#表示接受伺服器指定的伺服器IP地址
ipcp-accept-remote 
mtu 1492 
mru 1492 
0.0.0.0:0.0.0.0
#使用的規則檔案
connect '/usr/sbin/chat -s -v -f /etc/ppp/peers/chat-ppp0-connect'
引數檔案的名字可以自定義,這裡定義為ppp0,放在/etc/ppp/peers下。

3.3 開始撥號並驗證

上述四個指令碼檔案準備好了後,可以在Linux終端上輸入pppd  call  /etc/ppp/ppp0 &進行撥號; 我這裡是將該命令寫到了4gCall-cd這個指令碼中,然後執行該指令碼;假如正常成功,應有如下資訊: 最後拿到了ip地址和DNS地址,就是成功了。但是要能連線到網路上,還需要執行如下命令,新增ppp0路由:
route add default dev ppp0

這樣機可以連通外網了。可以通過ping百度的ip地址來檢測是否正常連上外網:

PS可以在終端上直接傳送AT命令給無線模組,查詢一下資訊狀態等,比如:

cat /dev/ttyUSB1 &
echo “AT+CGMI” > /dev/ttyUSB1

第一條指令可將無線模組回覆得內容打印出來,

第二條指令將命令“AT+CGMI”傳送給無線模組

如上的命令“AT+CGMI”是查詢廠家的意思,回覆了是中興。 若您覺得對您有幫助,隨意給個打賞唄偷笑

相關推薦

中興ME3720無線4G模組移植ppp方式撥號

本文主要介紹在Linux平臺下進行中興ME3720無線4G模組的驅動移植,並採用PPP的撥號方式進行撥號接通上網路。 該驅動主要包括本身系統的usb轉串列埠驅動,和中興提供的ndis口驅動,以及系統支

DM368開發 -- 華為3G/4G模組移植

一、模組介紹用的是華為 ME909s-821 Mini PCIe。 ME909s-821 Mini PCIe是ME909s-821的變形版本,標準Mini PCIe封裝;支援下行150Mbps,上行50Mbps的傳輸速率;提供高質量的語音、簡訊功能;豐富的擴充套件功能:FOT

rt3070 無線wifi模組移植到linux,並連線無線路由上網

Linux發行版:ubuntu 10.4 無線網絡卡晶片:rt3070 路由器加密方式;WPA-PSK/AES 驅動:2011_0719_RT3070_RT3370_RT5370_RT5372_Linux_STA_V2.5.0.3_DPO.bz2 一 安裝驅動 (1) 驅動

Linux 開發板4G轉WiFi熱點 手機連線熱點上網(三 WiFi模組移植AP的建立)

這裡對WiFi模組的驅動就不做詳細介紹,本篇文章可能會涉及兩款WiFi模組,一個是USB介面的WiFi模組,一個是SDIO介面的wifi模組,即AP6212,平臺可能涉及愛特梅爾和三星的4418兩個平臺。 本篇的記錄主要內容是:建立WiFi模組的AP熱點,並且客戶端裝置通過

FS210(cortex-A8)移植MT7601無線WIFI模組

準備:ubuntu 12.04    板子核心:3.0.2    交叉編譯器:arm-cortex_a8-linux-gnueabi-gcc 參考:https://blog.csdn.net/u013267687/article/details/45559739      1、建立WIFI目錄 2

嵌入式Linux利用ppp實現4G模組聯網

之前做專案時需要用到SIM7100模組,便快速瞭解下ppp撥號,實現了功能,但是功能雖然實現了,卻依然有許多疑問,這段時間有點時間,打算更加詳細的研究下。 編譯ppp2.4.5 下載:官方地址 編譯:#1.解壓ppp程式包 tar -xzvf ppp-2.4.

Linux移植EC20 4G模組驅動簡易教程

關於4G模組常見的品牌與型號: 品牌 型號 市場價格 晶片組 狀態 HUAWEI ME909s-821 210

低功耗無線433MHz晶片模組特點組網應用型別

如今,433M模組(Sub-1GHz)應用範圍非常廣,相對於藍芽,WIFI等2.4G技術,其有著自身獨特的優勢,如距離遠,穿透力強,繞射能力出眾等,適用於小資料量應用,如感測器資料採集,各種自動化控制等等。   圖1:2.4G與433M應用對比圖 433MHz(Sub-1

中興4g模組me3760撥號

撥號指令碼列印的資訊 AT> AT+ZEACT=2//LTE 接入技術 LTE-TDD Pref AT< +CREG: 2 AT< +CGREG: 2 AT< +CEREG: 2 AT< +ZMSRI AT< OK AT> AT

《Linux作業系統-系統移植》第8章 USB-4G/LTE移植 -第2節 USB-4G移植中興ME3760移植

ME3760 是一款Mini PCI-E介面的LTE 模組,支援LTE TDD band38(2.6GHz),band39(1.9GHz),band40(2.3GHz); LTE FDD band7(2.6GHz),向下相容TD-SCDMA A頻段(2.1GHz

嵌入式Linux系統---ppp撥號4G模組上網

4G模組PPP撥號上網 方法1 所需檔案: xxx-chat-connect,xxx-chat-disconnect ,xxx-ppp 複製以上三個檔案到/etc/ppp/peers目錄下 在 xxx-ppp 檔案 修改你的串

Linux 開發板4G轉WiFi熱點 手機連線熱點上網(二 4G模組移植

接著前一篇,本篇博文記錄4G模組的移植。 我使用的模組是中興ME3630模組,前面說了使用供應商或者官方的資料進行移植即可。一般來說4G模組的驅動,Linux核心也基本都有了,只需要設定一下option.c檔案中模組的ID資訊即可,如果Linux核心太老,沒有驅動,那麼就要

在ARM-linux上實現4G模組PPP撥號上網

轉自 http://blog.sina.com.cn/s/blog_7880d3350102wb92.html 在ARM平臺上實現4G模組的PPP撥號上網,參考網上的資料和自己的理解,從一無所知到開發完成花了一週多。最後看到ARM板ping通www.baidu.com時甚

《Linux作業系統-系統移植》第8章 USB-4G/LTE移植 -第3節 USB-4G移植(移遠AG35開發-GPS解析程式設計)

檢視參考手冊,移遠帶有GPS的晶片的USB Serial如下。 2.1應用簡介 1、若不使用 AT+QGPSCFG 指令對AG35進行配置,則會以預設引數開啟GPS引數,NMEA埠開始上報,"gpsnmeatype"預設值為31,上報間隔為1s,每次上報所有種

2.4G無線通訊模組NRF24L01在Cortex M上的使用

NRF24L01模組是一個用2.4GHz通訊的模組,輸出功率頻道選擇和協議的設定可以通過SPI 介面進行設定。幾乎可以連線到各種微控制器晶片,並完成無線資料傳送工作。 NRF24L01的一個特點是極低的電流消耗:當工作在發射模式下發射功率為0dBm 時電流消耗

LWIP network interface 網卡 初始化 以 STM32 為例子 後面會有 用 2G 或者4G 模塊 用 PPP撥號的 形式 虛擬出網卡 所以先以 這個為 前提

lan 函數 網卡 描述 ane details 我們 err img LWIP network interface 網卡 初始化 以 STM32 為例子 後面會有 用 2G 或者4G 模塊 用 PPP撥號的 形式 虛擬出網卡 所以先以 這個為

linux下can總線移植測試總結

哪裏 ips sub 開關 switch 發現 開發 主機 編譯工具 Can移植及測試總結 Adding Flexcan driver support on Kernel 一.On kernel menuconfig, add the following items: [*

UAP-AC-LITE吸頂式無線AP的配置使用

UBNT無線AP UAP--AC-LITE 軟AC控制器 本文以優倍快(UBNT)一種吸頂式無線AP(UAP-AC-LITE)為例,講述如何用軟AC控制器對其進行操作。接入環境: 1. 首先,我們去官網認識一下該AP設備。此處,我們以UAP-AC-LITE型號的AP為例進行講解

laravel-admin自動生成模組相關基礎配置

一、模型建立、資料遷移、以及關聯模型控制器 $ php artisan make:model Brand -m  //建立模型並生成遷移檔案 $ php artisan migrate  //執行遷移 $ php artisan admin:make BrandController --

Ansible常用模組介紹使用(二)--技術流ken

  Ansible模組 在上一篇部落格《Ansible基礎認識及安裝使用詳解(一)--技術流ken》中以及簡單的介紹了一下ansible的模組。ansible是基於模組工作的,所以我們必須掌握幾個常用的模組以便能夠從容應對日常的工作。 相信大家在看完上一篇部落格之後應該也已經知道可以使用ans