TP-Link TL-WN727N์œผ๋กœ RaspberryPi์™€ ์นœ๊ตฌ ๋งŒ๋“ค๊ธฐ

ํ—ค์ด ํ•˜๋ธŒ๋ฅด!

์ €๋Š” ํ•œ๋•Œ Raspberry Pi๋ฅผ ๋ฌด์„ ์œผ๋กœ ์ธํ„ฐ๋„ท์— ์—ฐ๊ฒฐํ•˜๊ธฐ๋กœ ๊ฒฐ์ •ํ–ˆ์Šต๋‹ˆ๋‹ค.

๊ฒฐ๊ตญ, ์ด ๋ชฉ์ ์„ ์œ„ํ•ด ์œ ๋ช…ํ•œ ํšŒ์‚ฌ์ธ TP-Link์˜ USB Wi-Fi ํœ˜์Šฌ์„ ๊ฐ€๊นŒ์šด ๋งค์žฅ์—์„œ ๊ตฌ์ž…ํ–ˆ์Šต๋‹ˆ๋‹ค. ์ œ๊ฐ€ ๋ฐ”๋กœ ๋ง์”€๋“œ๋ฆฌ์ž๋ฉด, ์ด๊ฒƒ์€ ์ผ์ข…์˜ ๋‚˜๋…ธ USB ๋ชจ๋“ˆ์ด ์•„๋‹ˆ๋ผ ์ƒ๋‹นํžˆ ํฐ ์žฅ์น˜๋กœ, ์ผ๋ฐ˜ ํ”Œ๋ž˜์‹œ ๋“œ๋ผ์ด๋ธŒ ํฌ๊ธฐ ์ •๋„์ž…๋‹ˆ๋‹ค(ํ˜น์€ ์„ฑ์ธ ๋‚จ์ž์˜ ๊ฒ€์ง€์†๊ฐ€๋ฝ ํฌ๊ธฐ ์ •๋„๋ผ๊ณ  ํ•˜์‹œ๋Š” ๊ฒŒ ์ข‹๊ฒ ์Šต๋‹ˆ๋‹ค). ๊ตฌ๋งคํ•˜๊ธฐ ์ „์— RPI์™€ TP-Link์—์„œ ์ง€์›ํ•˜๋Š” ํœ˜์Šฌ ์ œ์กฐ์—…์ฒด ๋ชฉ๋ก์„ ์กฐ๊ธˆ ์‚ดํŽด๋ดค์Šต๋‹ˆ๋‹ค(ํ•˜์ง€๋งŒ ๋‚˜์ค‘์— ์•Œ๊ณ  ๋ณด๋‹ˆ ์„ธ๋ถ€ ์‚ฌํ•ญ์€ ๊ณ ๋ คํ•˜์ง€ ์•Š์•˜์Šต๋‹ˆ๋‹ค. ์•„์‹œ๋‹ค์‹œํ”ผ ์ค‘์š”ํ•œ ๊ฒƒ์€ ์„ธ๋ถ€ ์‚ฌํ•ญ์ž…๋‹ˆ๋‹ค). ๊ทธ๋ž˜์„œ, ๋‚ด ๋ถˆํ–‰ํ•œ ๋ชจํ—˜์— ๋Œ€ํ•œ ์ฐจ๊ฐ€์šด ์ด์•ผ๊ธฐ๊ฐ€ ์‹œ์ž‘๋ฉ๋‹ˆ๋‹ค. 3๋ถ€์ž‘ ํƒ์ • ์†Œ์„ค์ด ์—ฌ๋Ÿฌ๋ถ„์˜ ๊ด€์‹ฌ์„ ์‚ฌ๋กœ์žก์Šต๋‹ˆ๋‹ค. ๊ด€์‹ฌ ์žˆ๋Š” ๋ถ„๋“ค์€ ์•„๋ž˜ ๋‚ด์šฉ์„ ์ฝ์–ด๋ณด์„ธ์š”.

๊ธฐ์‚ฌ WN727N WiFi ์–ด๋Œ‘ํ„ฐ๋ฅผ Ubuntu/Mint์— ์—ฐ๊ฒฐํ•˜๊ธฐ ์–ด๋А ์ •๋„ ๋„์›€์ด ๋˜์—ˆ์ง€๋งŒ, ๊ฐ€์žฅ ์ค‘์š”ํ•œ ๊ฒƒ์€ ์ด๊ฒƒ์ž…๋‹ˆ๋‹ค.

๋ฌธ์ œ ์ง„์ˆ 

๊ฐ์•ˆํ•  ๋•Œ :

  1. ์‹ฑ๊ธ€๋ณด๋“œ ์ปดํ“จํ„ฐ ๋ผ์ฆˆ๋ฒ ๋ฆฌํŒŒ์ด 2 B v1.1 - 1๊ฐœ
  2. USB Wi-Fi ํœ˜์Šฌ WN727N - 1๊ฐœ
  3. ์™„์ „ํžˆ ๊ตฌ๋ถ€๋Ÿฌ์ง€์ง€ ์•Š์€ ์† ํ•œ ์Œ - 2๊ฐœ
  4. ์ตœ์‹  Raspbian(Debian 10 Buster ๊ธฐ๋ฐ˜)์ด OS๋กœ ์„ค์น˜๋ฉ๋‹ˆ๋‹ค.
  5. ์ปค๋„ ๋ฒ„์ „ 4.19.73-v7+

์ฐพ๊ธฐ: ์ธํ„ฐ๋„ท์— ์—ฐ๊ฒฐํ•˜๊ธฐ(Wi-Fi๋Š” ํ™ˆ ๋ผ์šฐํ„ฐ์—์„œ ๋ฐฐํฌ๋จ)

์–ด๋Œ‘ํ„ฐ๋ฅผ ๊บผ๋‚ธ ํ›„ ์•ˆ์— ์žˆ๋Š” ์„ค๋ช…์„œ๋ฅผ ์ฝ์—ˆ์Šต๋‹ˆ๋‹ค.

์‹œ์Šคํ…œ ํ˜ธํ™˜์„ฑ: Windows 10/8/7/XP(Sky, XP ํฌํ•จ) ๋ฐ MacOS 10.9-10.13

๊ธ€์Ž„์š”, ํ‰์†Œ์ฒ˜๋Ÿผ ๋ฆฌ๋ˆ…์Šค์— ๋Œ€ํ•œ ์ด์•ผ๊ธฐ๋Š” ํ•œ ๋งˆ๋””๋„ ์—†์—ˆ์Šต๋‹ˆ๋‹ค. 2k19์˜€์ง€๋งŒ ๋“œ๋ผ์ด๋ฒ„๋ฅผ ์ˆ˜๋™์œผ๋กœ ์ปดํŒŒ์ผํ•ด์•ผ ํ–ˆ์Šต๋‹ˆ๋‹ค...

์šฐ๋ฆฌ๋Š” ์ปดํŒŒ์ผ๋Ÿฌ 2๊ฐœ, ๋ผ์ด๋ธŒ๋Ÿฌ๋ฆฌ 75๋งŒ XNUMX์ฒœ ๊ฐœ, ๋ฐ”์ด๋„ˆ๋ฆฌ ๋ธ”๋กญ XNUMX๊ฐœ, ๋กœ๊ณ ๊ฐ€ ์žˆ๋Š” ์•Œ๋ชธ ์—ฌ์„ฑ์˜ ์ ˆ๋ฐ˜ ๋ฐฐ์—ด, ๊ทธ๋ฆฌ๊ณ  ๋ชจ๋“  ์–ธ์–ด์™€ ๋งˆํฌ์—…์˜ ํ—ค๋” ๋ฐ”๋‹ค๋ฅผ ๊ฐ€์ง€๊ณ  ์žˆ์—ˆ์Šต๋‹ˆ๋‹ค. ๊ทธ๊ฒƒ์ด ๊ทธ ์ง์—…์— ๊ผญ ํ•„์š”ํ•œ ๊ฒƒ์€ ์•„๋‹ˆ์—ˆ์Šต๋‹ˆ๋‹ค. ํ•˜์ง€๋งŒ ์ผ๋‹จ ์ž์‹ ๋งŒ์˜ ์‹œ์Šคํ…œ์„ ๊ตฌ์ถ•ํ•˜๊ธฐ ์‹œ์ž‘ํ•˜๋ฉด ๋ฉˆ์ถ”๊ธฐ๊ฐ€ ์–ด๋ ค์›Œ์ง‘๋‹ˆ๋‹ค. ์ œ๊ฐ€ ๊ฑฑ์ •ํ–ˆ๋˜ ์œ ์ผํ•œ ์ ์€ Wi-Fi ๋“œ๋ผ์ด๋ฒ„์˜€์Šต๋‹ˆ๋‹ค. ์†Œ์Šค์—์„œ ๋“œ๋ผ์ด๋ฒ„๋ฅผ ๊ตฌ์ถ•ํ•˜๋Š” ๊ฒƒ๋ณด๋‹ค ๋” ๋ฌด๋ ฅํ•˜๊ณ  ๋ฌด์ฑ…์ž„ํ•˜๋ฉฐ ๋ถ€ํŒจํ•œ ๊ฒƒ์€ ์—†์Šต๋‹ˆ๋‹ค. ํ•˜์ง€๋งŒ ์ €๋Š” ์กฐ๋งŒ๊ฐ„ ์šฐ๋ฆฌ๊ฐ€ ์ด ์“ฐ๋ ˆ๊ธฐ ๊ฐ™์€ ์ง“์„ ํ•˜๊ฒŒ ๋  ๊ฑฐ๋ผ๋Š” ๊ฑธ ์•Œ์•˜์Šต๋‹ˆ๋‹ค.

์ผ๋ฐ˜์ ์œผ๋กœ ์•Œ๋ ค์ง„ ๋ฐ”์™€ ๊ฐ™์ด Linux์—์„œ USB Wi-Fi๋ฅผ ์กฐ์ž‘ํ•˜๋Š” ๊ฒƒ์€ ๊ณ ํ†ต์Šค๋Ÿฝ๊ณ  ์•ฝ๊ฐ„ ๋ง›์ด ์—†๋‹ค (๋Ÿฌ์‹œ์•„์˜ ์ดˆ๋ฐฅ๊ณผ ๊ฐ™์Œ).

์ƒ์ž ์•ˆ์—๋Š” ๋“œ๋ผ์ด๋ฒ„๊ฐ€ ๋‹ด๊ธด CD๋„ ๋“ค์–ด์žˆ์Šต๋‹ˆ๋‹ค. ๋‚˜๋Š” ๋ณ„ ๊ธฐ๋Œ€ ์—†์ด ๊ทธ ์œ„์— ๋ฌด์—‡์ด ์žˆ๋Š”์ง€ ์‚ดํŽด๋ณด์•˜๋‹ค. ๊ทธ๋“ค์€ ํ™•์‹คํžˆ ๊ทธ๊ฒƒ์„ ๋Œ๋ณด์ง€ ์•Š์•˜๋‹ค. ์ธํ„ฐ๋„ท ๊ฒ€์ƒ‰์„ ํ†ตํ•ด ์ œ์กฐ์—…์ฒด ์›น์‚ฌ์ดํŠธ๋ฅผ ์ฐพ์•˜์ง€๋งŒ, ์žฅ์น˜ ๊ฐœ์ •์„ ์œ„ํ•œ Linux ๋“œ๋ผ์ด๋ฒ„๋งŒ ์žˆ๋‹ค๊ณ  ํ•ฉ๋‹ˆ๋‹ค. v4๊ทธ๋ฆฌ๊ณ  ๋‚˜๋Š” ๊ทธ๊ฒƒ์„ ๋‚ด ์†์— ์ฅ๊ณ  ์žˆ์—ˆ์Šต๋‹ˆ๋‹ค v5.21. ๋˜ํ•œ ๋งค์šฐ ์˜ค๋ž˜๋œ ์ปค๋„ ๋ฒ„์ „ 2.6-3.16๋„ ์žˆ์Šต๋‹ˆ๋‹ค. ์ฒ˜์Œ์— ์‹คํŒจํ•ด์„œ ๋‚™๋‹ดํ•œ ์ €๋Š” ์ด๋ฏธ TL-WN727N์„ ๊ฐ€์ ธ๊ฐ”์–ด์•ผ ํ–ˆ๋‹ค๊ณ  ์ƒ๊ฐํ–ˆ์Šต๋‹ˆ๋‹ค(์ด ์ œํ’ˆ์€ ์กฐ๊ธˆ ๋” ๋น„์‹ธ๊ณ  ์ œ ์ œํ’ˆ์€ 300Mbps์ธ๋ฐ ๋ฐ˜ํ•ด 150Mbps๋ฅผ ๋‚ผ ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ํ•˜์ง€๋งŒ ์•Œ๊ณ  ๋ณด๋‹ˆ Raspberry Pi์—์„œ๋Š” ์ „ํ˜€ ๋ฌธ์ œ๊ฐ€ ๋˜์ง€ ์•Š์•˜์Šต๋‹ˆ๋‹ค. ์ด ๋ฌธ์ œ์— ๋Œ€ํ•ด์„œ๋Š” ๋‚˜์ค‘์— ์“ฐ๊ฒ ์Šต๋‹ˆ๋‹ค). ํ•˜์ง€๋งŒ ๊ฐ€์žฅ ์ค‘์š”ํ•œ ๊ฒƒ์€ ํ•ด๋‹น ๋“œ๋ผ์ด๋ฒ„๊ฐ€ ์ด๋ฏธ ์กด์žฌํ•˜๊ณ  ํŒจํ‚ค์ง€๋กœ ๊ฐ„๋‹จํžˆ ์„ค์น˜๋œ๋‹ค๋Š” ๊ฒƒ์ž…๋‹ˆ๋‹ค. ํŽŒ์›จ์–ด-ralink. ์ผ๋ฐ˜์ ์œผ๋กœ ์žฅ์น˜ ๋ณธ์ฒด์˜ ์ผ๋ จ ๋ฒˆํ˜ธ ์˜†์— ์žˆ๋Š” ์Šคํ‹ฐ์ปค๋ฅผ ํ†ตํ•ด ์žฅ์น˜ ๊ฐœ์ • ์ •๋ณด๋ฅผ ํ™•์ธํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

๋” ๊ตฌ๊ธ€๋งํ•˜๊ณ  ๋‹ค์–‘ํ•œ ํฌ๋Ÿผ์„ ๋ฐฉ๋ฌธํ–ˆ์ง€๋งŒ ํŠน๋ณ„ํžˆ ์ข‹์€ ์ •๋ณด๋Š” ๋‚˜์˜ค์ง€ ์•Š์•˜์Šต๋‹ˆ๋‹ค. ๋ถ„๋ช… ์ €๋ณด๋‹ค ๋จผ์ € ์ด ํŠน์ • ์–ด๋Œ‘ํ„ฐ๋ฅผ Linux์— ์—ฐ๊ฒฐํ•˜๋ ค๊ณ  ์‹œ๋„ํ•œ ์‚ฌ๋žŒ์€ ์•„๋ฌด๋„ ์—†์—ˆ์Šต๋‹ˆ๋‹ค. ๊ธ€์Ž„, ๋‚˜๋Š” ์ต์‚ฌํ•œ ์‚ฌ๋žŒ๋งŒํผ ์šด์ด ์ข‹์€ ํŽธ์ด์•ผ.

์•„๋‹ˆ, ๊ฑฐ์ง“๋ง์ด๊ธด ํ•˜์ง€๋งŒ, ํฌ๋Ÿผ(๋Œ€๋ถ€๋ถ„ ์˜์–ด๋กœ ๋œ ํฌ๋Ÿผ)์„ ๋ฐฉ๋ฌธํ•œ ๊ฒƒ๋„ ์„ฑ๊ณผ๊ฐ€ ์žˆ์—ˆ์Šต๋‹ˆ๋‹ค. ์–ด๋–ค ์ฃผ์ œ์—์„œ๋Š” Wi-Fi ์–ด๋Œ‘ํ„ฐ์šฉ ๋“œ๋ผ์ด๋ฒ„๋ฅผ ์—ฌ๋Ÿฌ ๊ฐœ ์ž‘์„ฑํ•œ ๊ฒƒ์œผ๋กœ ์œ ๋ช…ํ•œ 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

๊ฒฐ๊ตญ, ๊ทธ๊ฒƒ์„ ๋ณผ ์ˆ˜ ์žˆ์—ˆ๊ณ , Realtek ์นฉ๊ณผ USB ๋ฒ„์Šค์— ์žฅ์น˜์˜ 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

์‹œ์Šคํ…œ์€ ํ•ด๋‹น ์žฅ์น˜๊ฐ€ ์–ด๋–ค ์ข…๋ฅ˜์ธ์ง€ ์•Œ์ง€ ๋ชปํ•˜๊ณ , ์ด๋ฆ„ ๋Œ€์‹  ๋นˆ ๊ณต๋ฐฑ์„ ๋ถ€๋„๋Ÿฌ์›Œํ•˜๋ฉฐ ํ‘œ์‹œํ•ฉ๋‹ˆ๋‹ค(vendor=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๋ถ€. ๋ณธ ์Šˆํ”„๋ฆฌ๋จธ์‹œ

git์—์„œ ๋“œ๋ผ์ด๋ฒ„ ์†Œ์Šค๋ฅผ ๋‹ค์šด๋กœ๋“œํ•ฉ๋‹ˆ๋‹ค.

์ด์ œ Windows๋ฅผ ๋‹ค์‹œ ์„ค์น˜ํ•˜๊ณ  Linux ์‚ฌ์šฉ์ž๊ฐ€ ์ผ๋ฐ˜์ ์œผ๋กœ ํ•˜๋Š” ์ž‘์—…, ์ฆ‰ ์†Œ์Šค์—์„œ ๋ฌด์–ธ๊ฐ€๋ฅผ ์กฐ๋ฆฝํ•  ๋•Œ์ž…๋‹ˆ๋‹ค. ๋“œ๋ผ์ด๋ฒ„๋ฅผ ๋นŒ๋“œํ•˜๋Š” ๊ฒƒ์€ ํ”„๋กœ๊ทธ๋žจ์„ ์ปดํŒŒ์ผํ•˜๋Š” ๊ฒƒ๊ณผ ํฌ๊ฒŒ ๋‹ค๋ฅด์ง€ ์•Š์Šต๋‹ˆ๋‹ค.

make
sudo make install

ํ•˜์ง€๋งŒ ์ปค๋„ ๋ชจ๋“ˆ์„ ์ปดํŒŒ์ผํ•˜๋ ค๋ฉด ํŠน์ • ๋ฒ„์ „์— ๋งž๋Š” ์ปค๋„ ํ—ค๋” ํŒŒ์ผ์ด ํ•„์š”ํ•ฉ๋‹ˆ๋‹ค.

์žฌ๊ณ  ์ €์žฅ์†Œ์— ํŒจํ‚ค์ง€๊ฐ€ ์žˆ์Šต๋‹ˆ๋‹ค ๋ผ์ฆˆ๋ฒ ๋ฆฌํŒŒ์ด ์ปค๋„ ํ—ค๋”, ๊ทธ๋Ÿฌ๋‚˜ ์—ฌ๊ธฐ์—๋Š” ํŒŒ์ผ์˜ ์ปค๋„ ๋ฒ„์ „์ด ํฌํ•จ๋˜์–ด ์žˆ์Šต๋‹ˆ๋‹ค. 4.19.66-v7l+, ์ด๊ฑด ์šฐ๋ฆฌ์—๊ฒŒ ๋งž์ง€ ์•Š์•„์š”. ํ•˜์ง€๋งŒ ํ•„์š”ํ•œ ๋ฒ„์ „์˜ ํ—ค๋”๋ฅผ ์–ป์œผ๋ ค๋ฉด ํŽธ๋ฆฌํ•œ ๋„๊ตฌ๊ฐ€ ์žˆ์Šต๋‹ˆ๋‹ค. rpi-์†Œ์Šค (github์˜ ๋งˆ์ง€๋ง‰์— ์žˆ๋Š” ๋งํฌ)๋ฅผ ํ†ตํ•ด ํ•„์š”ํ•œ ํ—ค๋”๋ฅผ ๋‹ค์šด๋กœ๋“œํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ์ €์žฅ์†Œ๋ฅผ ๋ณต์ œํ•˜๊ณ , ์Šคํฌ๋ฆฝํŠธ๋ฅผ ์‹คํ–‰ ๊ฐ€๋Šฅํ•˜๊ฒŒ ๋งŒ๋“ค๊ณ  ์‹คํ–‰ํ•ฉ๋‹ˆ๋‹ค. ์ฒซ ๋ฒˆ์งธ ์‹คํ–‰์€ ์˜ค๋ฅ˜๋กœ ์‹คํŒจํ•ฉ๋‹ˆ๋‹ค. ์œ ํ‹ธ๋ฆฌํ‹ฐ๊ฐ€ ์—†์Šต๋‹ˆ๋‹ค. bc. ๋‹คํ–‰ํžˆ ์ €์žฅ์†Œ์— ์žˆ์–ด์„œ ์„ค์น˜๋งŒ ํ•˜๋ฉด ๋ฉ๋‹ˆ๋‹ค.

sudo apt-get install bc

๊ทธ ํ›„, ํ—ค๋”๋ฅผ ๋‹ค์‹œ ์‹œ์ž‘ํ•˜๊ณ  ๋‹ค์šด๋กœ๋“œํ•˜๊ณ (๊ทธ๋Ÿฐ ๋‹ค์Œ ๋ฌด์–ธ๊ฐ€๋ฅผ ์„ค์ •ํ–ˆ๋Š”๋ฐ, ์ง€๊ธˆ์€ ๊ธฐ์–ต๋‚˜์ง€ ์•Š์Šต๋‹ˆ๋‹ค) ์‹œ๊ฐ„์ด ์ข€ ๊ฑธ๋ฆฌ๊ณ , ์˜์ž์— ์•‰์•„ ํŽธ์•ˆํ•˜๊ฒŒ ์ง€๋‚ผ ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. Windows๋Š” ๋ชจ๋“  ๋ฉด์—์„œ ๋” ์ข‹์•„์กŒ์Šต๋‹ˆ๋‹ค.

๋ชจ๋“  ํ—ค๋”๊ฐ€ ๋‹ค์šด๋กœ๋“œ๋œ ํ›„ ๋””๋ ‰ํ† ๋ฆฌ๊ฐ€ ๋‚˜ํƒ€๋‚ฌ๋Š”์ง€ ํ™•์ธํ•˜์‹ญ์‹œ์˜ค. /lib/modules/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 Pi๋Š” ๋น ๋ฅธ ํŽธ์ด ์•„๋‹™๋‹ˆ๋‹ค(32๋น„ํŠธ 900Mhz Cortex ARM v7 ํ”„๋กœ์„ธ์„œ๋ฅผ ํƒ‘์žฌ).
๊ทธ๋ž˜์„œ ๋ชจ๋“  ๊ฒƒ์„ ํŽธ์ง‘ํ–ˆ์Šต๋‹ˆ๋‹ค. 2๋‹จ๊ณ„(make install)์—์„œ ๋“œ๋ผ์ด๋ฒ„๋ฅผ ์„ค์น˜ํ•˜๊ณ  ๋™์‹œ์— ๋“œ๋ผ์ด๋ฒ„๊ฐ€ ์ž‘๋™ํ•˜๋Š” ๋ฐ ํ•„์š”ํ•œ ํŽŒ์›จ์–ด ํŒŒ์ผ์„ ๋ณต์‚ฌํ•ฉ๋‹ˆ๋‹ค.

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๋ถ€. ๋ณธ ์–ผํ‹ฐ๋ฉ”์ดํ…€

๋‚˜๋Š” ํ˜ธ๊ฐ์„ ํ•ญ๊ตฌ์— ๊ฝ‚์•˜์ง€๋งŒ... ์•„๋ฌด ์ผ๋„ ์ผ์–ด๋‚˜์ง€ ์•Š์•˜๋‹ค. ๋ชจ๋“  ๊ฒƒ์ด ํ—›๋œ ์ผ์ด์—ˆ๋Š”๊ฐ€?

ํ”„๋กœ์ ํŠธ ๋‚ด๋ถ€์˜ ํŒŒ์ผ์„ ์—ฐ๊ตฌํ•˜๊ธฐ ์‹œ์ž‘ํ–ˆ๊ณ , ๊ทธ ์ค‘ ํ•˜๋‚˜์—์„œ ๋ฌธ์ œ๊ฐ€ ๋ฌด์—‡์ธ์ง€ ์•Œ์•„๋ƒˆ์Šต๋‹ˆ๋‹ค. ๋“œ๋ผ์ด๋ฒ„๊ฐ€ ์„œ๋น„์Šคํ•  ์ˆ˜ ์žˆ๋Š” VID/PID ์‹๋ณ„์ž์˜ ์ „์ฒด ๋ชฉ๋ก์„ ์ง€์ •ํ•˜๊ณ  ์žˆ์—ˆ์Šต๋‹ˆ๋‹ค. ๊ทธ๋ฆฌ๊ณ  ์šฐ๋ฆฌ ์žฅ์น˜๊ฐ€ ์ด ๋“œ๋ผ์ด๋ฒ„์™€ ์ž‘๋™ํ•˜๋„๋ก ํ•˜๊ธฐ ์œ„ํ•ด ๋‚˜๋Š” ๋‹จ์ˆœํžˆ ๋‚ด ID๋ฅผ ํŒŒ์ผ์— ์ถ”๊ฐ€ํ–ˆ์Šต๋‹ˆ๋‹ค. 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

๋๊นŒ์ง€ ์ฝ์–ด์ฃผ์‹  ๋ถ„๋“ค๊ป˜๋Š” ๋ณด๋„ˆ์Šค๊ฐ€ ์žˆ์Šต๋‹ˆ๋‹ค

์–ด๋Œ‘ํ„ฐ์— ํ‘œ์‹œ๋œ ์ตœ๋Œ€ ์†๋„๋Š” ์ค‘์š”ํ•˜์ง€ ์•Š๋‹ค๊ณ  ๋ง์”€๋“œ๋ฆฐ ๊ฑธ ๊ธฐ์–ตํ•˜์‹œ๋‚˜์š”?
๋”ฐ๋ผ์„œ Raspberry Pi(๋ชจ๋ธ 4 ์ถœ์‹œ ์ด์ „)์—์„œ๋Š” ๋ชจ๋“  ์žฅ์น˜(์ด๋”๋„ท ์–ด๋Œ‘ํ„ฐ ํฌํ•จ)๊ฐ€ ํ•˜๋‚˜์˜ USB ๋ฒ„์Šค์— ์œ„์น˜ํ•ฉ๋‹ˆ๋‹ค. ๊ฝค ๋ฉ‹์ง€์ฃ ? ๋”ฐ๋ผ์„œ USB ๋ฒ„์Šค์˜ ๋Œ€์—ญํญ์€ ํ•ด๋‹น ๋ฒ„์Šค์— ์—ฐ๊ฒฐ๋œ ๋ชจ๋“  ์žฅ์น˜๋กœ ๋‚˜๋‰ฉ๋‹ˆ๋‹ค. ์ด๋”๋„ท๊ณผ USB Wi-Fi(๋ผ์šฐํ„ฐ 1๊ฐœ์— ์—ฐ๊ฒฐ)๋ฅผ ํ†ตํ•ด ์†๋„๋ฅผ ์ธก์ •ํ•˜๊ณ , ๋ฌด์„ ๊ณผ ์œ ์„ ์„ ํ†ตํ•ด ์†๋„๋ฅผ ์ธก์ •ํ•œ ๊ฒฐ๊ณผ ์•ฝ 20Mbit/s๊ฐ€ ๋‚˜์™”์Šต๋‹ˆ๋‹ค.

์ถ”์‹  ์ผ๋ฐ˜์ ์œผ๋กœ ์ด ํŠน์ • ์–ด๋Œ‘ํ„ฐ์— ๋Œ€ํ•œ ๋“œ๋ผ์ด๋ฒ„๋ฅผ ์ปดํŒŒ์ผํ•˜๋Š” ๋ฐฉ๋ฒ•์— ๋Œ€ํ•œ ๊ฐ€์ด๋“œ๋Š” RPI์—๋งŒ ์œ ํšจํ•œ ๊ฒƒ์€ ์•„๋‹™๋‹ˆ๋‹ค. ๊ทธ๋Ÿฐ ๋‹ค์Œ Linux Mint๋ฅผ ์‚ฌ์šฉํ•˜์—ฌ ๋ฐ์Šคํฌํ†ฑ์—์„œ ๋™์ผํ•œ ์ž‘์—…์„ ๋ฐ˜๋ณตํ–ˆ์Šต๋‹ˆ๋‹ค. ๋ชจ๋“  ๊ฒƒ์ด ๊ฑฐ๊ธฐ์„œ๋„ ์ž˜ ์ž‘๋™ํ–ˆ์Šต๋‹ˆ๋‹ค. ๊ฐ™์€ ๋ฐฉ๋ฒ•์œผ๋กœ ์‚ฌ์šฉํ•˜๋Š” ์ปค๋„ ๋ฒ„์ „์— ํ•„์š”ํ•œ ํ—ค๋” ํŒŒ์ผ์„ ๋‹ค์šด๋กœ๋“œํ•˜๋ฉด ๋ฉ๋‹ˆ๋‹ค.

์—…๋ฐ์ดํŠธ. ์ง€์‹์ด ํ’๋ถ€ํ•œ ์‚ฌ๋žŒ๋“ค์€ ์ปค๋„ ๋ฒ„์ „์— ์˜์กดํ•˜์ง€ ์•Š์œผ๋ ค๋ฉด dkms๋ฅผ ์‚ฌ์šฉํ•˜์—ฌ ๋“œ๋ผ์ด๋ฒ„๋ฅผ ์ปดํŒŒ์ผํ•˜๊ณ  ์„ค์น˜ํ•ด์•ผ ํ•œ๋‹ค๊ณ  ์ œ์•ˆํ–ˆ์Šต๋‹ˆ๋‹ค. ์ด ์˜ต์…˜์€ ๋“œ๋ผ์ด๋ฒ„์˜ readme์—๋„ ์žˆ์Šต๋‹ˆ๋‹ค.

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

์—…๋ฐ์ดํŠธ2. ์ œ์•ˆ๋œ ํŒจ์น˜ ์žฅ์น˜ ID๊ฐ€ lwfinger/rtl8188eu ์ €์žฅ์†Œ์˜ ์ฃผ๋ฅ˜ ๋ธŒ๋žœ์น˜์— ์ˆ˜์šฉ๋˜์—ˆ์Šต๋‹ˆ๋‹ค.

์ฐธ์กฐ
- RPi USB Wi-Fi ์–ด๋Œ‘ํ„ฐ
- Gitbub lwfinger/rtl8188eu
- usb.ids
- rpi-์†Œ์Šค

์ถœ์ฒ˜ : habr.com