当前位置: 首页>C++>正文

Ubuntu安裝無線網卡驅動,5G模塊RM500U-CN在ubuntu20.04上的驅動安裝

Ubuntu安裝無線網卡驅動,5G模塊RM500U-CN在ubuntu20.04上的驅動安裝

5GRM500U-CN在ubuntu20.04上的驅動安裝

  • 簡述
    • 問題發現
    • 問題的解決
  • 續集

簡述

記錄在ubuntu20.04上安裝RM500U-CN驅動的過程

問題發現

將5g模塊接入USB接口后無法自動撥號上網,使用命令查看串口信息:

ls /dev/tty*

Ubuntu安裝無線網卡驅動。發現沒有usb串口信息,再使用命令

lsusb

發現已經識別到了5g模塊的接入,因此推斷可能是已經識別到了串口的連接,但是沒有相應的驅動

問題的解決

查看linux內核版本并找到對應的驅動安裝包,使用此命令查看內核版本:

uname -r

找到對應的安裝包后,使用命令查看5g模塊對應的ID號:
倒數第二行看到ID號為2C7C:0900
看到倒數第二行的ID號為2C7C:0900,在./drivers/usb/serial文件夾下的option.c文件中找到如下代碼并加入相應的ID:

static const struct usb_device_id option_ids[] = {
#if 1 //Added by Quectel{ USB_DEVICE(0x05C6, 0x9090) }, /* Quectel UC15 */{ USB_DEVICE(0x05C6, 0x9003) }, /* Quectel UC20 */{ USB_DEVICE(0x05C6, 0x9215) }, /* Quectel EC20(MDM9215) */{ USB_DEVICE(0x2C7C, 0x0125) }, /* Quectel EC20(MDM9x07)/EC25/EG25 */{ USB_DEVICE(0x2C7C, 0x0121) }, /* Quectel EC21 */{ USB_DEVICE(0x2C7C, 0x0191) }, /* Quectel EG91 */{ USB_DEVICE(0x2C7C, 0x0195) }, /* Quectel EG95 */{ USB_DEVICE(0x2C7C, 0x0306) }, /* Quectel EG06/EP06/EM06 */{ USB_DEVICE(0x2C7C, 0x030B) }, /* Quectel EG065K/EG060K */{ USB_DEVICE(0x2C7C, 0x0514) }, /* Quectel BL EG060K RNDIS Only */{ USB_DEVICE(0x2C7C, 0x0512) }, /* Quectel EG12/EP12/EM12/EG16/EG18 */{ USB_DEVICE(0x2C7C, 0x0296) }, /* Quectel BG96 */{ USB_DEVICE(0x2C7C, 0x0700) }, /* Quectel BG95/BG77/BG600L-M3/BC69 */{ USB_DEVICE(0x2C7C, 0x0435) }, /* Quectel AG35 */{ USB_DEVICE(0x2C7C, 0x0415) }, /* Quectel AG15 */{ USB_DEVICE(0x2C7C, 0x0452) }, /* Quectel AG520 */{ USB_DEVICE(0x2C7C, 0x0455) }, /* Quectel AG550 */{ USB_DEVICE(0x2C7C, 0x0620) }, /* Quectel EG20 */{ USB_DEVICE(0x2C7C, 0x0800) }, /* Quectel RG500/RM500/RG510/RM510 */{ USB_DEVICE(0x2C7C, 0x0801) }, /* Quectel RG520/RM520/SG520 */{ USB_DEVICE(0x2C7C, 0x6026) }, /* Quectel EC200 */{ USB_DEVICE(0x2C7C, 0x6120) }, /* Quectel UC200 */{ USB_DEVICE(0x2C7C, 0x6000) }, /* Quectel EC200/UC200 */##此處加入RM500U-CN相應的ID{ USB_DEVICE(0x2C7C, 0x0900) }, /* Quectel RM500U-CN */{ .match_flags = USB_DEVICE_ID_MATCH_VENDOR, .idVendor = 0x2C7C }, /* Match All Quectel Modules */
#endif

Ubuntu 網卡驅動?保存后在Makefile文件的目錄下進行編譯:

sudo make install

在Makefile文件中可以看到,將驅動模塊.ko文件放在了./drivers/usb/serial文件夾下,在對應文件夾下找到三個驅動文件:
1、option.ko
2、usb_wwan.ko
3、qcserial.ko
之后將三個驅動文件移植到內核即可。有兩種方法:
(1)方法一 :進入test.ko驅動模塊文件所在的目錄,然后直接 insmod test.ko (在我的筆記本上始終行不通)
(2)方法二 :將test.ko文件拷貝到/lib/module/#uname-r#/目錄下,這里,#uname -r#意思是,在終端中輸入“uname -r“后顯示的內核版本及名稱。(只能在終端里sudo cp 命令來復制)

然后 sudo depmod(會在/lib/modules/#uname -r#/目錄下生成modules.dep和modules.dep.bb文件,表明模塊的依賴關系)
最后 sudo modprobe test(注意這里無需輸入.ko后綴) 即可(一定要加sudo,不然不成功)

注:兩種方法的區別:modprobe和insmod類似,都是用來動態加載驅動模塊的,區別在于modprobe可以解決load module時的依賴關系,它是通過/lib/modules/#uname -r/modules.dep(.bb)文件來查找依賴關系的;而insmod不能解決依賴問題。也就是說,如果你確定你要加載的驅動模塊不依賴其他驅動模塊的話,既可以insmod也可以modprobe,當然insmod可以在任何目錄下執行,更方便一些。而如果你要加載的驅動模塊還依賴其他ko驅動模塊的話,就只能將模塊拷貝到上述的特定目錄,depmod后再modprobe。

最后再次使用命令:

ubuntu安裝網卡驅動,ls /dev/tty*

看到如圖所示的usb串口信息:
在這里插入圖片描述
斷開wifi和網線,發現仍有以太網接入,證明5g模塊已經可以正常使用,到此為止,驅動安裝結束。

續集

在我的另一臺筆記本上總是insmod出錯,忍無可忍,重裝系統,直接超度了它,最后問題解決!

https://www.zydui.com/afe89Um8CAwVRClUH.html
>

相关文章:

  • ubuntu安裝無線網卡驅動
  • Ubuntu 網卡驅動
  • ubuntu安裝網卡驅動
  • ubuntu安裝wifi網卡驅動
  • ubuntu2004安裝無線網卡驅動
  • ubuntu安裝wifi驅動
  • ubuntu安裝網卡驅動教程
  • ubuntu安裝有線網卡驅動
  • 網關和路由器的區別,詳解MAC地址,網橋,路由器_計算機網絡筆記
  • 隱馬爾可夫模型例題解釋,matlab中的隱馬爾可夫模型(HMM)實現
  • vmware安裝ubuntu,基于VMware+Ubuntu 14.04 搭建ESP32 開發環境
  • c++builder6.0安裝教程,Detectron2小白教程之安裝試用篇
  • 深度學習分類類別不平衡_如何應對深度學習中的數據分布不平衡問題
  • 培訓ppt課件怎么做,怎樣使用PPT制作出員工培訓流程圖?詳見教程
  • Visual Studio2013下Magick++配置方法
  • ubuntu編寫c++程序,【c++開發】C++ Linux Ubuntu imagemagick以及magick++安裝;c++調用magick++庫;找不到
  • cmd批處理命令,使用cmd批處理配合image magick批量轉換圖片格式
  • android 12 beta5,更進一步 | Android 12 Beta 2 發布
  • 蘋果發布 iOS14.3 準正式版,是否升級的建議
  • ios13和ios14對比,iOS13 公測版,iOS12.4 雙系統發布,是否升級的建議
  • ios14有哪些新功能,蘋果iOS 14正式發布!一大波新功能集體上線,必升!
  • 終止代碼SYSTEM_SERVICE_EXCEPTION,SystemServer
  • 2015華為實習生招聘機試題長沙站
  • 2017華為實習生招聘面試經歷(IT應用軟件 c++)
  • 當內存儲器的容量為4kb時,若用256K×8bit的存儲器芯片,構成地址40000000H到400FFFFFH且按字節編址的內存區域,則需(5)片芯片。...
  • 【軟考】在內存按字節編址。若用存儲容量為32K*8bit的存儲器芯片構成地址從A0000H倒DFFFFH的內存,則至少需要多少片芯片?
  • 存儲器字數的擴展可以利用,存儲器芯片的擴展例題解釋
  • 游戲道具設計,游戲任務系統
  • 任務和計劃的區別,計劃任務使用介紹
  • spss繪制對比條形圖,超火動態可視化條形圖,繪制起來這么簡單!
  • echarts 環形圖,GPT生成精美Echarts圖表
  • c語言中short型的取值范圍,為什么c語言中short的表示范圍是-32768~32767
  • 在c語言類型說明中,c語言中int的表示范圍是-32768~32767!
  • 創建的視圖在數據庫三層結構中屬于,Sql Server數據庫中創建視圖
  • Android不支持藍牙功能,Android打開藍牙的兩種方法
  • 微信添加方式怎么關閉,Android Bluetooth打開和關閉的三種方式(很詳細)
  • 涉密信息系統集成資質年審,涉密信息系統集成甲級資質認證通過條件
  • 后朋克音樂特點,什么是朋克