RaspberryPi በ TP-Link TL-WN727N ጓደኛ እንፍጠር

ሃይ ሀብር!

በአንድ ወቅት የራስበሪዬን በአየር ላይ ከበይነመረቡ ጋር ለማገናኘት ወሰንኩኝ።

ብዙም ሳይቆይ፣ ለዚህ ​​አላማ የዩኤስቢ ዋይ ፋይ ፊሽካ ከታዋቂው ኩባንያ TP-Link በአቅራቢያው ካለ ሱቅ ገዛሁ። ወዲያውኑ እናገራለሁ ፣ ይህ የናኖ ዩኤስቢ ሞዱል ዓይነት አይደለም ፣ ግን በጣም ትልቅ መሣሪያ ፣ ስለ መደበኛው ፍላሽ አንፃፊ (ወይም ከፈለጉ ፣ የአዋቂ ሰው አመልካች ጣት መጠን)። ከመግዛቴ በፊት ለ RPI በሚደገፉ የፉጨት አምራቾች ዝርዝር ላይ ትንሽ ጥናት አድርጌያለሁ እና ቲፒ-ሊንክ በዝርዝሩ ውስጥ ነበር (ነገር ግን በኋላ ላይ እንደታየው ፣ እኔ እንደምናውቀው ዲያቢሎስ ፣ ​​ስውር ነገሮችን ከግምት ውስጥ አላስገባም) , በዝርዝሮች ውስጥ ነው). ስለዚህ የእኔ መጥፎ አጋጣሚዎች የቀዝቃዛ ታሪክ ይጀምራል፤ የመርማሪ ታሪክን በ3 ክፍል እናቀርባለን። ፍላጎት ላላቸው፣ እባክዎን ድመትን ይመልከቱ።

አንቀጽ የWN727N WiFi አስማሚን ከኡቡንቱ/ሚንት ጋር በማገናኘት ላይ በከፊል ረድቶኛል፣ ግን መጀመሪያ ነገሮችን መጀመሪያ።

የችግሩ ሁኔታዎች

የተሰጠው፡-

  1. ነጠላ ቦርድ ኮምፒውተር Raspberry Pi 2 B v1.1 - 1 ቁራጭ
  2. usb wi-fi ያፏጫል WN727N - 1 ቁራጭ
  3. በጣም ያልተጣመሙ እጆች ጥንድ - 2 ቁርጥራጮች
  4. አዲሱ Raspbian እንደ OS ተጭኗል (በዴቢያን 10 Buster ላይ የተመሠረተ)
  5. የከርነል ስሪት 4.19.73-v7+

አግኝ፡ ከበይነመረቡ ጋር ይገናኙ (Wi-Fi የሚሰራጨው ከቤትዎ ራውተር ነው)

አስማሚውን ከፈታሁ በኋላ በውስጡ ያሉትን መመሪያዎች አነበብኩ፡-

የስርዓት ተኳሃኝነት፡ ዊንዶውስ 10/8/7/XP (ሰማይ እንኳን፣ ኤክስፒም ቢሆን) እና ማክኦኤስ 10.9-10.13

እምም እንደተለመደው ስለ ሊኑክስ አንድም ቃል አይደለም። 2k19 ነበር፣ እና አሽከርካሪዎቹ አሁንም በእጅ መሰብሰብ ያስፈልጋቸው ነበር...

ከእኛ ጋር 2 አቀናባሪዎች ፣ 75 ሺህ ቤተ መጻሕፍት ፣ አምስት ሁለትዮሽ ብሎቦች ፣ ግማሽ እርቃናቸውን ሴቶች አርማ ያላቸው እና የሁሉም ቋንቋዎች እና ምልክቶች ራስጌዎች ነበሩን ። ይህ ለሥራው አስፈላጊው ስብስብ አይደለም. ግን አንድ ጊዜ ለራስዎ ስርዓት መሰብሰብ ከጀመሩ ለማቆም አስቸጋሪ ይሆናል. እኔን ያሳሰበኝ ብቸኛው ነገር የ wi-fi አሽከርካሪዎች ናቸው። ሹፌሮችን ከምንጩ ከመገንባት የበለጠ ረዳት አልባ፣ ኃላፊነት የጎደለው እና ሙስና የለም። ግን ይዋል ይደር እንጂ ወደዚህ ቆሻሻ እንደምንቀየር አውቃለሁ።

በአጠቃላይ፣ እርስዎ እንደሚያውቁት፣ በሊኑክስ ላይ ከዩኤስቢ ዋይፋይ ጋር መገናኘት ነው። ህመም እና ትንሽ ጣዕም የሌለው (እንደ ሩሲያ ሱሺ)።

ሳጥኑ አሽከርካሪዎች ያሉት ሲዲም ይዟል። ብዙ ተስፋ ሳላደርግ በእሱ ላይ ያለውን ነገር እመለከታለሁ - በእርግጠኝነት አልተንከባከቡትም። የበይነመረብ ፍለጋ ወደ አምራቹ ድር ጣቢያ አመጣኝ, ነገር ግን ለመሳሪያ ክለሳ ብቻ የሊኑክስ ሾፌር አለ v4, እና በእጆቼ ውስጥ ነበር v5.21. እና በተጨማሪ፣ በጣም ያረጁ የከርነል ስሪቶች 2.6-3.16። መጀመሪያ ላይ ባለው ውድቀት ተስፋ ቆርጬ፣ TL-WN727N ን መውሰድ እንዳለብኝ አስቀድሜ አስቤ ነበር (ትንሽ የበለጠ ውድ ነው እና 300Mbps በ 150 ለእኔ ማስተናገድ ይችላል ፣ ግን እንደ ተለወጠ ፣ ይህ ምንም ችግር የለውም) ለ Raspberry, ይህ በኋላ ላይ ይጻፋል). ግን በጣም አስፈላጊው ነገር ለእሱ ነጂዎች ቀድሞውኑ መኖራቸው እና በቀላሉ እንደ ጥቅል ተጭነዋል firmware-ralink. ብዙውን ጊዜ የመሳሪያውን ክለሳ በመሳሪያው አካል ላይ ከመለያ ቁጥሩ ቀጥሎ ባለው ተለጣፊ ላይ ማየት ይችላሉ።

ተጨማሪ ጉጉት እና የተለያዩ መድረኮችን መጎብኘት ብዙም ጥሩ ነገር አላመጣም። በግልጽ ለማየት እንደሚቻለው ከእኔ በፊት ማንም ሰው እንዲህ ዓይነቱን አስማሚ ከሊኑክስ ጋር ለማገናኘት አልሞከረም። ሆ እኔ እንደ ሰመጠ ሰው እድለኛ ነኝ።

ምንም እንኳን፣ አይሆንም፣ እየዋሸሁ ነው፣ መድረኮችን መጎብኘት (በአብዛኛው የእንግሊዝኛ ቋንቋዎች) ፍሬ አፍርቷል፤ በአንዳንድ ርዕሰ ጉዳዮች ላይ በርካታ ሾፌሮችን ለዋይ ፋይ አስማሚ በመጻፍ የሚታወቁትን አንድ ሚስተር lwfinger ተጠቅሷል። . የእሱ git ማከማቻ በአገናኞች ውስጥ ባለው መጣጥፍ መጨረሻ ላይ ነው። እና የተማርኩት ሁለተኛው ትምህርት የትኛው አሽከርካሪ ለእሱ ተስማሚ እንደሆነ ለመረዳት መሳሪያዎን መለየት ያስፈልግዎታል.

ክፍል 1፡ የቦርን ማንነት

መሣሪያው ወደብ ላይ ሲሰካ, በእርግጥ ምንም LED አልበራም. እና በአጠቃላይ አንድ ነገር እንደሚሰራ ወይም እንዳልሆነ በማንኛውም መንገድ ግልጽ አይደለም.

በመጀመሪያ ፣ ከርነል መሣሪያችንን ይመለከት እንደሆነ ለማወቅ ፣ በ dmesg ውስጥ እመለከታለሁ-

[  965.606998] usb 1-1.3: new high-speed USB device number 9 using dwc_otg
[  965.738195] usb 1-1.3: New USB device found, idVendor=2357, idProduct=0111, bcdDevice= 0.00
[  965.738219] usb 1-1.3: New USB device strings: Mfr=1, Product=2, SerialNumber=3
[  965.738231] usb 1-1.3: Product: 802.11n NIC
[  965.738243] usb 1-1.3: Manufacturer: Realtek
[  965.738255] usb 1-1.3: SerialNumber: 00E04C0001

የሚያየው ሆኖ ተገኝቷል፣ እና እንዲያውም በዩኤስቢ አውቶቡስ ላይ የሪልቴክ ቺፕ እና የመሳሪያው VID/PID እንዳለ ግልፅ ነው።

ወደ ፊት እንሂድ እና እንይ lsusb, እና እዚህ ሌላ ውድቀት ይጠብቀናል

Bus 001 Device 008: ID 2357:0111 
Bus 001 Device 003: ID 0424:ec00 Standard Microsystems Corp. SMSC9512/9514 Fast Ethernet Adapter
Bus 001 Device 002: ID 0424:9514 Standard Microsystems Corp. SMC9514 Hub
Bus 001 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub

ስርዓቱ ምን አይነት መሳሪያ እንደሆነ አያውቅም እና በስሙ ምትክ ባዶ ቦታን በአሳፋሪ ሁኔታ ያሳያል (ምንም እንኳን ሻጭ=2357 በእርግጠኝነት TP-Link ቢሆንም)።

በዚህ ደረጃ ፣ ጠያቂው አንባቢ ምናልባት አንድ አስደሳች ነገር አስተውሏል ፣ ግን እስከ ጊዜያችን ድረስ እንተወዋለን።

በባዶ ስሞች ላይ ያለውን ችግር ማጥናቴ በሚታወቅ VID/PID ላይ መረጃ ወደ ሚገባበት ለዪዎች ወዳለው ጣቢያ መራኝ። የእኛ 2357፡0111 አልነበረም። በኋላ ላይ እንደታየው መገልገያው lsusb ፋይል ይጠቀማል /usr/share/misc/usb.ids, እሱም ከዚህ ጣቢያ ተመሳሳይ የመታወቂያዎች ዝርዝር ነው. ለእይታ ውበት፣ በቀላሉ በስርዓቴ ውስጥ ለአቅራቢው TP-Link መስመሮችን ጨምሬያለሁ።

2357  TP-Link
        0111  TL-WN727N v5.21

ደህና, ማሳያውን በመሳሪያዎች ዝርዝር ውስጥ አስተካክለናል, ነገር ግን ሾፌርን ለመምረጥ አንድ እርምጃ አያመጣንም. ሹፌር ለመምረጥ፣ የእርስዎ ፊሽካ በየትኛው ቺፕ ላይ እንደተሰራ ማወቅ ያስፈልግዎታል። ይህንን በኢንተርኔት ለማወቅ የሚቀጥለው ያልተሳኩ ሙከራዎች ወደ መልካም ነገር አላመሩም። በቀጭን ስኪን ሾፌር ታጥቄ፣ አስማሚውን ቆብ በጥንቃቄ ገለበጥኩት እና የአጎት ሊያኦ ክፉ የአእምሮ ልጅ በሁሉም ንጹህ እርቃናዎቹ ውስጥ ይታያል። በማጉያ መነጽር ስር የቺፑን ስም ማየት ይችላሉ - RTL8188EUS. ይህ አስቀድሞ ጥሩ ነው። በአንዳንድ መድረኮች የዚያው ጨዋ ሰው lwfinger ሹፌር ለዚህ ቺፕ በጣም ተስማሚ እንደሆነ (ምንም እንኳን እሱ ስለ RTL8188EU ብቻ ቢጽፍም) የሚል ጽሁፎችን አይቻለሁ።

ክፍል 2፡ የቦርኔ የበላይነት

የነጂውን ምንጮች ከጂት አውርዳለሁ።

ዊንዶውስ እንደገና ለመጫን ጊዜው አሁን ነው እና የሊኑክስ ተጠቃሚዎች ብዙውን ጊዜ የሚገናኙትን - ከአንዳንድ ዓይነቶች አንድ ነገር መሰብሰብ። ሾፌሮችን መሰብሰብ ፣ እንደ ተለወጠ ፣ ፕሮግራሞችን ከማጠናቀር ትንሽ የተለየ ነው-

make
sudo make install

ነገር ግን የከርነል ሞጁሎችን ለመሰብሰብ የከርነል ራስጌ ፋይሎች ለየእኛ ልዩ ስሪት እንፈልጋለን።

በክምችት ማከማቻ ውስጥ ጥቅል አለ። raspberrypi-kernel-headersነገር ግን የፋይሎቹን የከርነል ሥሪት ይዟል 4.19.66-v7l+, እና ያ አይመቸንም. ነገር ግን አስፈላጊውን ስሪት ራስጌዎችን ለማግኘት, እንደ ተለወጠ, ምቹ መሳሪያ አለ rpi-ምንጭ (በ Github ላይ መጨረሻ ላይ ያለው አገናኝ)፣ ከእሱ ጋር አስፈላጊዎቹን ራስጌዎች ማውረድ ይችላሉ። ማከማቻውን እንዘጋለን፣ ስክሪፕቱን እንዲተገበር እናሰራዋለን። የመጀመሪያው ጅምር በስህተት አይሳካም - ምንም መገልገያ የለም bc. እንደ እድል ሆኖ, በማከማቻው ውስጥ ነው እና በቀላሉ እንጭነዋለን.

sudo apt-get install bc

ከዚህ በኋላ ራስጌዎችን እንደገና ማስጀመር እና ማውረድ (እና አንድ ነገር ማዋቀር, አሁን አላስታውስም) የተወሰነ ጊዜ ይወስዳል እና ወንበርዎ ላይ መቀመጥ ይችላሉ, ዊንዶውስ በሁሉም መገለጫዎች ውስጥ የተሻለ ሆኗል.

ሁሉም ራስጌዎች ከወረዱ በኋላ ማውጫው እንደታየ ያረጋግጡ /lib/ሞዱሎች/4.19.73-v7+ እና በውስጡ ሲምሊንኩ የወረዱት ፋይሎች ወደሚገኙበት ቦታ ይጠቁማል (ለእኔ /home/pi/linux)፡-

pi@raspberrypi:/home/pi/rtl8188eu# ls -l /lib/modules/4.19.73-v7+/
lrwxrwxrwx  1 root root     14 Sep 24 22:44 build -> /home/pi/linux

የዝግጅት ደረጃው ተጠናቅቋል, መሰብሰብ መጀመር ይችላሉ. ሞጁሎቹን እንደገና ማሰባሰብ የተወሰነ ጊዜ ይወስዳል፣ Raspberry ፈጣን አውሬ አይደለም (32bit 900Mhz Cortex ARM v7 አለው)።
ስለዚህ ሁሉም ነገር ተሰብስቧል. ሾፌሩን በ 2 ኛ ደረጃ እንጭነዋለን (መጫን) ፣ እንዲሁም ለአሽከርካሪው ሥራ አስፈላጊ የሆኑ ተጨማሪ የጽኑዌር ፋይሎችን እየገለበጥን

install:
        install -p -m 644 8188eu.ko  $(MODDESTDIR)
        @if [ -a /lib/modules/$(KVER)/kernel/drivers/staging/rtl8188eu/r8188eu.ko ] ; then modprobe -r r8188eu; fi;
        @echo "blacklist r8188eu" > /etc/modprobe.d/50-8188eu.conf
        cp rtl8188eufw.bin /lib/firmware/.
        /sbin/depmod -a ${KVER}
        mkdir -p /lib/firmware/rtlwifi
        cp rtl8188eufw.bin /lib/firmware/rtlwifi/.

ክፍል 3. የ Bourne ኡልቲማተም

ፊሽካውን ወደ ወደቡ አስገባሁ እና... ምንም ነገር አይከሰትም። ይህ ሁሉ በከንቱ ነበር?

በፕሮጀክቱ ውስጥ ያሉትን ፋይሎች ማጥናት እጀምራለሁ እና በአንደኛው ውስጥ ችግሩ ምን እንደሆነ አገኛለሁ፡ ነጂው ሊያገለግል የሚችለውን ሙሉ የ VID/PID መለያዎችን ይገልጻል። እና መሳሪያችን ከዚህ ሾፌር ጋር እንዲሰራ በቀላሉ መታወቂያዬን ወደ ፋይሉ ጨምሬያለሁ rtl8188eu/os_dep/usb_intf.c

static struct usb_device_id rtw_usb_id_tbl[] = {
        /*=== Realtek demoboard ===*/
        {USB_DEVICE(USB_VENDER_ID_REALTEK, 0x8179)}, /* 8188EUS */
        {USB_DEVICE(USB_VENDER_ID_REALTEK, 0x0179)}, /* 8188ETV */
        /*=== Customer ID ===*/
        /****** 8188EUS ********/
        {USB_DEVICE(0x07B8, 0x8179)}, /* Abocom - Abocom */
        {USB_DEVICE(0x0DF6, 0x0076)}, /* Sitecom N150 v2 */
        {USB_DEVICE(0x2001, 0x330F)}, /* DLink DWA-125 REV D1 */
        {USB_DEVICE(0x2001, 0x3310)}, /* Dlink DWA-123 REV D1 */
        {USB_DEVICE(0x2001, 0x3311)}, /* DLink GO-USB-N150 REV B1 */
        {USB_DEVICE(0x2001, 0x331B)}, /* D-Link DWA-121 rev B1 */
        {USB_DEVICE(0x056E, 0x4008)}, /* Elecom WDC-150SU2M */
        {USB_DEVICE(0x2357, 0x010c)}, /* TP-Link TL-WN722N v2 */
        {USB_DEVICE(0x2357, 0x0111)}, /* TP-Link TL-WN727N v5.21 */
        {}      /* Terminating entry */
};

ሾፌሩን እንደገና ሰብስቤ በሲስተሙ ላይ ጫንኩት።

እና በዚህ ጊዜ ሁሉም ነገር ተጀመረ. በአስማሚው ላይ ያለው ብርሃን አብርቶ አዲስ መሳሪያ በኔትወርክ በይነገጾች ዝርዝር ውስጥ ታየ።

የገመድ አልባ መገናኛዎችን መመልከት የሚከተሉትን ያሳያል፡-

pi@raspberrypi:/home/pi/rtl8188eu# iwconfig
eth0      no wireless extensions.

lo        no wireless extensions.

wlan0     unassociated  ESSID:""  Nickname:"<WIFI@REALTEK>"
          Mode:Auto  Frequency=2.412 GHz  Access Point: Not-Associated   
          Sensitivity:0/0  
          Retry:off   RTS thr:off   Fragment thr:off
          Encryption key:off
          Power Management:off
          Link Quality=0/100  Signal level=0 dBm  Noise level=0 dBm
          Rx invalid nwid:0  Rx invalid crypt:0  Rx invalid frag:0
          Tx excessive retries:0  Invalid misc:0   Missed beacon:0

እስከ መጨረሻው ለሚያነቡ ሰዎች ጉርሻ

በእርስዎ አስማሚ ላይ የተገለጸው ከፍተኛ ፍጥነት ምንም ለውጥ አያመጣም ብዬ እንዴት እንዳልኩ አስታውስ?
ስለዚህ በማሊንካ (ሞዴል 4 ከመውጣቱ በፊት) ሁሉም መሳሪያዎች (የኤተርኔት አስማሚን ጨምሮ) በተመሳሳይ የዩኤስቢ አውቶቡስ ላይ ይቀመጣሉ. በጣም ጥሩ, ትክክል? እና ስለዚህ የዩኤስቢ አውቶቡስ የመተላለፊያ ይዘት በእሱ ላይ ባሉት ሁሉም መሳሪያዎች መካከል ተከፋፍሏል. ፍጥነቱን በሁለቱም በኤተርኔት እና በዩኤስቢ ዋይፋይ (ከ1 ራውተር ጋር የተገናኘ) በአየር እና በሽቦ ሲለካ 20Mbit/s አካባቢ ነበር።

PS በአጠቃላይ፣ ለዚህ ​​የተለየ አስማሚ ሾፌር የማጠናቀር መመሪያ የሚሰራው ለ RPI ብቻ አይደለም። ከዚያ በሊኑክስ ሚንት በዴስክቶፕዬ ላይ ደግመዋለሁ - ሁሉም ነገር እዚያም ሰርቷል። ለከርነል ሥሪትዎ አስፈላጊ የሆኑትን የራስጌ ፋይሎች በተመሳሳይ መንገድ ማውረድ ብቻ ያስፈልግዎታል።

UPD እውቀት ያላቸው ሰዎች ጠቁመዋል፡ በከርነል ሥሪት ላይ ላለመመካት፣ ዲኪሜዎችን በመጠቀም ሾፌሮችን መሰብሰብ እና መጫን ያስፈልግዎታል። የአሽከርካሪው ንባብም ይህን አማራጭ ይዟል።

pi@raspberrypi:/home/pi# sudo dkms add ./rtl8188eu
pi@raspberrypi:/home/pi# sudo dkms build 8188eu/1.0
pi@raspberrypi:/home/pi# sudo dkms install 8188eu/1.0

UPD2. የቀረበ ልጣፍ ለመሣሪያ መታወቂያ ወደ lwfinger/rtl8188eu ማከማቻ ዋና ቅርንጫፍ ተቀባይነት አግኝቷል።

ማጣቀሻዎች
- RPI ዩኤስቢ Wi-Fi አስማሚዎች
- Gitbub lwfinger/rtl8188eu
- usb.ids
- rpi-ምንጭ

ምንጭ: hab.com