在线观看www成人影院-在线观看www日本免费网站-在线观看www视频-在线观看操-欧美18在线-欧美1级

0
  • 聊天消息
  • 系統消息
  • 評論與回復
登錄后你可以
  • 下載海量資料
  • 學習在線課程
  • 觀看技術視頻
  • 寫文章/發帖/加入社區
會員中心
創作中心

完善資料讓更多小伙伴認識你,還能領取20積分哦,立即完善>

3天內不再提示

來了,親測有效!RNDIS網卡實現USB上網的方法

青山老竹農 ? 來源:jf_82863998 ? 作者:jf_82863998 ? 2024-12-26 11:49 ? 次閱讀

本文將帶你使用RNDIS的方式,搭配Linux主控終端,快速實現USB上網。

RNDIS是指Remote NDIS,基于USB實現RNDIS實際上就是TCP/IP over USB,就是在USB設備上跑TCP/IP,讓USB設備看上去像一塊網卡,從而使Linux可以通過USB設備連接網絡

一、Linux驅動配置

1. 虛擬串口

通過串口發送AT指令,Air780ER使用CDC-ACM驅動,大部分Linux系統默認就支持,插入就可以使用。

wKgZPGdpFqWAZlwkAABbsAP2O1I404.png


測試AT指令可以用minicom等工具,運行命令:

sudo minicom -D /dev/ttyACM0

測試結果如下:

wKgZO2dpFrOAd134AADB53IopC0000.png


如果所用系統不支持CDC-ACM驅動,則可使用如下配置:

▼ 虛擬串口驅動配置 ▼

1)配置內核:

wKgZO2dpFsSAb259AAWTsCAWAz8215.png


2)確定端口

交叉編譯后,板上運行,demesg打印如下。

wKgZO2dpFtOAWlNmAAEVTel9W8g020.png


說明ACM驅動Air780ER成功,其中節點:

1-1.3:1.2為AT口

對應的操作文件/dev/ttyACM0,進行通訊。如果沒有合適的命令行工具,用如下的源代碼編譯個簡單小程序在linux下發AT的小工具;

1-1.3:1.4為日志口

對應的操作文件/dev/ttyACM1,進行抓日志,具體抓日志方法見uart_capture.c;

1-1.3:1.6為modem口

對應的操作文件/dev/ttyACM2,客戶可以進行PPP撥號。

注意事項:

有些Linux設備存在模組重啟后,操作文件會發生移位,比如本來是/dev/ttyACM0是可以進行AT通訊的,后來又不行。

最靠譜的方法是通過驅動節點,來找到操作文件usb_find.c;

可以用:

FindUsbDevice(AIRM2M_USB_DEVICE_AT_INTERFACE_ID),來尋找真正的需要的端口。

某些最簡系統需要根據設備描述來識別,可以參考如下Linux上展示的細節進行適配,lsusb_618;

相關最新資料詳見:

https://docs.openluat.com/air780er/at/quick_start/usb/

2. RNDIS驅動

Air780ER是標準的RNDIS,目前Linux大部分發行版本都已經默認支持RNDIS驅動了,只要通過USB連接Air780ER模組就可以直接用,模組開機后就會在Linux設備端看到新的網卡。

如下圖所示:

wKgZPGdpFuKAXLGAAANt3juEjJY561.png


注意:

每個設備的ethx可能不一樣,上圖插入Air780ER模組后增加的網卡即為RNDIS網卡,地址為192.168.10.2。

如果沒有RNDIS驅動的,可按照下圖配置:

▼ RNDIS驅動配置 ▼

wKgZPGdpFvaARcsxAAcwC_LHGJU105.png


二、RNDIS功能測試

STEP 1:禁用本地網卡sudo ifconfig eth0 down

STEP 2:使能模組網卡sudo ifconfig eth10 up

使能之后,最好再通過ifconfig再次確認一下。

STEP 3:聯網測試

PING百度網站聯網成功,如下圖所示。

wKgZPGdpFwiADQqEAAQANY8SY24110.png


三、如何禁用RNDIS功能

1. 使用設備管理器禁用RNDIS功能

在設備管理器,網絡適配器下找到Remote NDIS選項后,點擊鼠標右鍵選擇禁用設備即可。

wKgZPGdpFxaAQsw0AAKADrq_btY930.png


2. 使用代碼禁用RNDIS功能

發送AT+RNDISCALL=0關閉RNDIS網卡,重啟生效。

四、常見問題及解決辦法

1. 如何排查Linux使用RNDIS無法上網的問題?

一般情況下,不是特別精簡的Linux已經支持RNDIS 功能,如果插上合宙的4G 模組,但是不能上網的話,需要注意以下幾點:

1)能否檢測到RNDIS設備?

在命令行中輸入dmesg,如此出現rndis_host 1-1:1.0 eth1這樣的打印,則證明已經識別到了。如果沒有,可能是硬件問題,也可能是所用Linux真的不支持rndis,需參考上文驅動配置,配置一下驅動。

此時查看ifconfig,如果沒有出現rndis_host 1-1:1.0 eth1中的eth1,則發送ifconfig -a;此時發現有eth1但是沒有IP地址,發送udhcpc -i eth1出現地址后,即可使用此網卡進行上網。

2)出現設備網卡,但是無法上網?

這可能是由于模組沒有注冊上網絡,可以通過模組串口發送AT指令查詢。

常用AT指令:

AT+CPIN? 查看卡是否在位;

AT+CEREG? 查看是否注冊上網絡;

AT+CESQ 查看信號值;

ATI 查看版本號。

2. RNDIS上網,獲取實時流量、上行下行數據是哪個指令?

可以通過ifconfig獲取。

3. Linux其它常見問題的解決方法:

01)無法識別VID與PID

一般模組對接的Linux協議是USB協議,設備插入后,系統會檢測出設備的標識:PID VID;

其中VID是廠商識別碼,PID是產品識別碼。此處不需要裝驅動也可以識別,所以,我們排除插入無法識別的時候,先通過命令行命令lsusb。

Air780ER模組的VID與PID,分別是19d1和0001。

wKgZO2dpFyyAWPzLAAFB5LMD-pA431.png


如上圖所示 ,就是代表已經識別到Air780ER模組了。

查看模組是否已經識別,如果這里沒有識別到模組,應該先排除硬件問題。

常見硬件問題:

USB是否走線過長;

USB是否VBUS沒有連接;

模組是否沒開機。

02)確認是否識別到網卡

如果按照驅動配置加入驅動,Linux發送dmesg出現以下的顯示說明正常識別到網卡:

wKgZPGdpFzuALue5AARoRg5AhEU265.png


第8行:

1-2.1設備代表掛在usb bus1上2.1節點為EigenComm的USB 設備;

第13行:

1-2.1:1.0代表usb interface 0,被當做RNDIS使用(其實interface 1也是被RNDIS使用);

第16、17、19行:

1-2.1:1.2 、1-2.1:1.4 、1-2.1:1.6代表usb interface 2,4,6,分別枚舉ttyACM0,ttyACM1,ttyACM2(這個不固定)。

第18行:

代表RNDIS被設置成eth10網卡,如下所示:

wKgZPGdpF0mAElMbAAMgc38PSOI664.png


03)在Linux下發AT的小工具

一些Linux開發板本身不帶串口工具,出問題的時候沒法通過AT指令來找出原因,這里提供一個小工具sendat.c,編譯后運行即可。

最新工具下載詳見:

https://docs.openluat.com/air780er/at/quick_start/usb/

wKgZO2dpF1aANMcXAADGjflQrW4444.png


今天的內容就分享到這里了~

審核編輯 黃宇

聲明:本文內容及配圖由入駐作者撰寫或者入駐合作網站授權轉載。文章觀點僅代表作者本人,不代表電子發燒友網立場。文章及其配圖僅供工程師學習之用,如有內容侵權或者其他違規問題,請聯系本站處理。 舉報投訴
  • usb
    usb
    +關注

    關注

    60

    文章

    7945

    瀏覽量

    264632
  • 網卡
    +關注

    關注

    4

    文章

    311

    瀏覽量

    27384
收藏 人收藏

    評論

    相關推薦

    快速入門!RNDIS網卡實現USB上網~

    本文將帶你使用RNDIS的方式,搭配Linux主控終端,快速實現USB上網。 ? RNDIS是指Remote NDIS,基于
    的頭像 發表于 12-24 17:02 ?339次閱讀
    快速入門!<b class='flag-5'>RNDIS</b><b class='flag-5'>網卡</b><b class='flag-5'>實現</b><b class='flag-5'>USB</b><b class='flag-5'>上網</b>~

    如何提高信噪比的有效方法

    信噪比(SNR)是指信號與噪聲的比例,是評價一個系統或設備性能的重要指標。提高信噪比可以通過多種方法實現,以下是一些有效方法: 一、增加信號強度 提高發射功率 :在信號發射端,通過增
    的頭像 發表于 12-10 14:30 ?616次閱讀

    網卡的演進和應用

    隨著云計算和虛擬化技術的發展,網卡在功能和硬件結構方面也經歷了四個階段,即網卡、智能網卡、基于FPGA的DPU和DPU SoC網卡。本文將重點介紹這些不同類型的網絡適配器和處理器,在硬
    的頭像 發表于 10-24 16:45 ?335次閱讀
    <b class='flag-5'>網卡</b>的演進和應用

    中國移動發布廣域高吞吐100Gbps網卡

    100Gbps的物理帶寬下,實現5000公里距離上70Gbps的有效數據吞吐,相比傳統協議,其有效吞吐能力提升了5倍。
    的頭像 發表于 10-12 15:11 ?445次閱讀

    服務器網卡和普通網卡區別

    服務器網卡和普通網卡的區別主要體現在以下幾個方面: 1. 性能差異 1.1 帶寬 服務器網卡通常具有更高的帶寬,以滿足大量數據傳輸的需求。普通網卡的帶寬通常較低,適用于家庭或小型辦公室
    的頭像 發表于 10-10 16:37 ?443次閱讀

    RNDIS網卡應用看這篇!合宙Air780EP低功耗4G模組AT開發示例

    ?Air780EP是合宙的低功耗4G模組之一,支持全系列的AT指令以及LuatOS腳本二次開發。 本文應各位大佬邀請,特別講解Air780EP模組AT開發RNDIS網卡應用示例。 本文同樣適用于以下
    的頭像 發表于 09-30 06:59 ?579次閱讀
    <b class='flag-5'>RNDIS</b><b class='flag-5'>網卡</b>應用看這篇!合宙Air780EP低功耗4G模組AT開發示例

    千兆網卡的概述與應用

    在當今信息技術飛速發展的時代,網絡基礎設施的建設日益成為各行各業數字化轉型的核心。互聯網的迅猛發展和大數據時代的到來,促使對數據傳輸速率的需求不斷提高。千兆網卡,作為實現高速網絡連接的關鍵硬件設備
    的頭像 發表于 08-27 10:57 ?430次閱讀
    千兆<b class='flag-5'>網卡</b>的概述與應用

    Air724/Air780E/Air780EP模塊Linux系統使用RNDIS-常見問題

    1.不能上網一般情況下,不是特別精簡的linux已經支持rndis功能,如果插上合宙的4G模塊,但是不能上網的話,需要注意以下幾點。1、能否檢測到rndis設備:A:在命令行中輸入dm
    的頭像 發表于 07-24 13:56 ?1119次閱讀
    Air724/Air780E/Air780EP模塊Linux系統使用<b class='flag-5'>RNDIS</b>-常見問題

    rt-thread如何解決添加虛擬網卡

    rt-thread在初始化一個(物理網卡只有一個)網卡之后,還想要再次添加一張虛擬網卡,調用netif_add沒有效果,應該如何解決添加虛擬網卡
    發表于 07-10 08:18

    在RK3568核心板上實現USBNET模式網絡共享

    本文將借助飛凌嵌入式OK3568-C開發板為大家介紹實現USBNET模式的方法,在這之前需要先知道什么是USB Gadget——USB Gadget是指所開發的電子設備以
    發表于 05-22 16:32

    家用無線路由器實現多設備同時上網的技巧

    互聯網的普及和家庭網絡設備的增多,如何實現多設備同時上網成為了一個熱門話題。無線路由器作為家庭網絡的核心設備,其性能和設置方式直接影響著多設備同時上網的效果。本文將為大家詳細介紹家用無線路由器如何
    的頭像 發表于 04-22 17:24 ?2354次閱讀

    門禁物聯網卡的使用與管理

    門禁物聯網卡,作為現代門禁系統的重要組件,它使得門禁系統能夠與網絡相連,從而實現遠程監控、數據記錄、智能控制等多種功能。那么,門禁物聯網卡究竟如何使用呢?本文將詳細解析門禁物聯網卡的使
    的頭像 發表于 04-11 16:51 ?593次閱讀
    門禁物聯<b class='flag-5'>網卡</b>的使用與管理

    stm32l4如何下載到usb host的固件庫?

    各位大神,請教下stm32l4如何下載到usb host的固件庫,還想請教下stm32有沒有開源的rndis和ecm代碼
    發表于 04-11 07:19

    網卡揭秘:如何選擇適合您需求的網卡

    網卡(Network Interface Card,NIC),也稱網絡適配器,是連接計算機與網絡的硬件設備。在光通信系統中,網卡特指光纖網卡,它通過光纖接口與外部網絡通信,傳輸數據。早期的網卡
    的頭像 發表于 04-10 10:04 ?725次閱讀
    光<b class='flag-5'>網卡</b>揭秘:如何選擇適合您需求的<b class='flag-5'>網卡</b>

    linux怎么查看網卡的收光功率?

    linux怎么查看網卡的收光功率? 在Linux系統中,可以使用一些命令和工具來查看網卡的收光功率。本文將介紹如何使用這些命令和工具來查看和監測網卡的收光功率。 1. 使用ifconfig命令查看
    的頭像 發表于 01-31 14:24 ?3671次閱讀
    主站蜘蛛池模板: 四月婷婷七月婷婷综合| 日本免费色| 免费网站你懂得| 最新地址四虎www4hutv| 色婷婷六月丁香七月婷婷| 国产成人精品免费视频大全可播放的 | 日韩色爱| 一级特黄特色的免费大片视频| 国产精品久久久久久久牛牛 | 黄色在线播放网站| 午夜爱爱免费视频| 四虎精品成在线播放| 国产美女一区| 2021久久精品国产99国产| 亚洲 自拍 欧美 综合| 国产1区二区| 51视频在线观看免费国产| 小说老卫陈红张敏陈法蓉| 大尺度视频网站久久久久久久久| 爱操视频在线观看| 四虎永久网址| 午夜一级影院| 久久久久久午夜精品| 久久久免费视频观看| 久草五月| 男女做性无遮挡免费视频| 男人的天堂免费视频| 久久天天躁狠狠躁夜夜躁| 优优优色| www.91在线播放| 黄网免费看| 性xxxxfreexxxxx国产| 99精品久久久久久久婷婷| 福利在线观看| 色噜噜狠狠色综合欧洲selulu | 亚洲日本在线观看| 婷婷影院在线综合免费视频| a天堂中文在线官网| 亚洲欧美视频在线播放| 黄网站免费大全| 看视频免费网址|