TL-WN823N V2
Elküldve: 2018.07.28. 16:45
Mielőtt bele kezdek, annyit elöljáróban, hogy vért izzadtam mire rá jöttem, "a hiba nem az ön készülékében van", hanem a készülék birtoklójában avagy bennem.... a hiba a figyelmetlenség megkétszerezve volt.
Tehát adott a témaindító hardware, letöltöttük a képeken mellékelt
link alapján a megfelelő linuxos driver csomagot. Majd a kapott (tömörített) állományt átmásoljuk a /tmp/ könyvtárunkba, vagy ha natív linuxos fájlrendszert vagy mentésfájlt használunk de kevés a memória, akkor a /root/ könyvtárba. Én tmp könyvtárban dolgoztam, ott létre hoztam külön erre a projektre egy /tmp/Tipli/ könyvtárat, amibe másoltam a (tömörített) driver állományt. LX7-es Puppy linux, 3.2.32-es kernel, devx, kernel forrás sfs fájlokat betáraztam (betöltöttem), PCmanFM fájlkezelővel jobb klikk a driver zip fájlra >> Kibontás ide. Kitömörítettem a zip-et. Az így kapott /Driver/ Könyvtárat és Installation for linux driver_RTL.pdf fájlt a zip fájl nevével létrejött könyvtáron belül kaptuk, ami így fest:
tehát ezen a mappán belül van az említett mappa és pdf. Minek után tanulságos mese is egyben leírom az első buktatót:
A /tmp/Tipli/TL-WN823N(US)_V2_160315_Linux/Driver/ mappán belül nyitunk egy terminált PCmanFM fájlkezelővel, és kiadjuk a már csatolt devx és kernel forrás sfs-ek fényében a make parancsot, ami el is indulna de rögvest kivág minket a konzolba, mondván Unknown vagy Invalid Token near "(" a 0. sorban. Oké, már meggyőződtem arról, hogy a TP-Link képtelen Drivert írni, de ha routerekre ír működő firmware-ket akkor csak nem.
Első buktató megoldása:
Ugye jól figyeltetek, és észre vettétek, hogy a near "(" az nem a Makefile hibája hanem a mappa nevében rejlő zárójeleké, ugyanis:
ezen belül adtuk ki a make parancsot fordításra és a zárójel bekavar. Ergo, helyezzük ki ROX fájlkezelővel Mindent (Rejtetteket) mutató állapotukban a Driver könyvtárat simán egy mappaszinttel feljebb a
könyvtárba.
Buktató 2:
Hát mondom mekkora felfedezést tettem, azon nyomban kiadtam újra az új helyen is a make parancsot, és pár sor után ismét recursive error-ral találtam magam szemben... Miért?
Második buktató megoldása:
Írja a pdf:
Hogy ugyan ellenőrizzük már le, hogyha nem képes a kernel a 80211 -re, akkor írjuk át a Makefile-t a képen látható módon:
kb.: 7. sorban ezt:
CONFIG_IOCTL_CFG80211=y
erre:
majd mentsük el, és így adjuk ki a make parancsot, (addig semmiféleképpen ne!).
Legyárt jelzem sikerrel kismillió .o meg egyéb fájlokat a C fordító, majd megkapjuk a sikeres fordítást követően a .ko fájlt is. Ekkor kiadjuk terminálba a már megszokott módon a
parancsot, végigzongorázzuk, majd a végén egy tetszőleges karakter megadással elindítjuk a dir2pet szkriptet is, és készítünk belőle telepítő PET csomagot is. Az így kapott telepítő fájl mellé jön egy .files fájl is, abban pedig ezek találhatóak... bár készül kismillió fájl is de csak ezek kerülnek valamiért be... lehet hibás a new2dir szkript?
Na mindegy, az így kapott pet fájlomat feltelepítettem úgy, hogy csatlakoztattam a Stick.et a géphez, lévén adott a .ko fájl neve 8192eu.ko néven, így utána
majd az így kapott WLAN 1 -gyel létrehoztam az internet kapcsolatot.
Ami érdekesség még, az az US elnevezés, márpedigy magyar honban lett a Stick vásárolva. De a gyári driver CD-n is alapból több minden kell neki, mint a windows-nál a V1-eshez a .sys a .cat és a .inf fájlok. A LED ugyanúgy nem világít, de a netet erről használom már, tehát működik.
Tehát adott a témaindító hardware, letöltöttük a képeken mellékelt
link alapján a megfelelő linuxos driver csomagot. Majd a kapott (tömörített) állományt átmásoljuk a /tmp/ könyvtárunkba, vagy ha natív linuxos fájlrendszert vagy mentésfájlt használunk de kevés a memória, akkor a /root/ könyvtárba. Én tmp könyvtárban dolgoztam, ott létre hoztam külön erre a projektre egy /tmp/Tipli/ könyvtárat, amibe másoltam a (tömörített) driver állományt. LX7-es Puppy linux, 3.2.32-es kernel, devx, kernel forrás sfs fájlokat betáraztam (betöltöttem), PCmanFM fájlkezelővel jobb klikk a driver zip fájlra >> Kibontás ide. Kitömörítettem a zip-et. Az így kapott /Driver/ Könyvtárat és Installation for linux driver_RTL.pdf fájlt a zip fájl nevével létrejött könyvtáron belül kaptuk, ami így fest:
Kód: Egész kijelölése
/tmp/Tipli/TL-WN823N(US)_V2_160315_Linux
A /tmp/Tipli/TL-WN823N(US)_V2_160315_Linux/Driver/ mappán belül nyitunk egy terminált PCmanFM fájlkezelővel, és kiadjuk a már csatolt devx és kernel forrás sfs-ek fényében a make parancsot, ami el is indulna de rögvest kivág minket a konzolba, mondván Unknown vagy Invalid Token near "(" a 0. sorban. Oké, már meggyőződtem arról, hogy a TP-Link képtelen Drivert írni, de ha routerekre ír működő firmware-ket akkor csak nem.
Első buktató megoldása:
Ugye jól figyeltetek, és észre vettétek, hogy a near "(" az nem a Makefile hibája hanem a mappa nevében rejlő zárójeleké, ugyanis:
Kód: Egész kijelölése
/tmp/Tipli/TL-WN823N(US)_V2_160315_Linux/Driver
Kód: Egész kijelölése
/tmp/Tipli
Buktató 2:
Hát mondom mekkora felfedezést tettem, azon nyomban kiadtam újra az új helyen is a make parancsot, és pár sor után ismét recursive error-ral találtam magam szemben... Miért?
Második buktató megoldása:
Írja a pdf:
Hogy ugyan ellenőrizzük már le, hogyha nem képes a kernel a 80211 -re, akkor írjuk át a Makefile-t a képen látható módon:
kb.: 7. sorban ezt:
CONFIG_IOCTL_CFG80211=y
erre:
Kód: Egész kijelölése
CONFIG_IOCTL_CFG80211=n
Legyárt jelzem sikerrel kismillió .o meg egyéb fájlokat a C fordító, majd megkapjuk a sikeres fordítást követően a .ko fájlt is. Ekkor kiadjuk terminálba a már megszokott módon a
Kód: Egész kijelölése
new2dir make install
Kód: Egész kijelölése
/lib/modules/3.2.32/kernel/drivers/net/wireless/8192eu.ko
/lib/modules/3.2.32/modules.dep
/lib/modules/3.2.32/modules.dep.bin
/lib/modules/3.2.32/modules.pcimap
/lib/modules/3.2.32/modules.usbmap
/lib/modules/3.2.32/modules.ccwmap
/lib/modules/3.2.32/modules.ieee1394map
/lib/modules/3.2.32/modules.isapnpmap
/lib/modules/3.2.32/modules.inputmap
/lib/modules/3.2.32/modules.ofmap
/lib/modules/3.2.32/modules.seriomap
/lib/modules/3.2.32/modules.alias
/lib/modules/3.2.32/modules.alias.bin
/lib/modules/3.2.32/modules.softdep
/lib/modules/3.2.32/modules.symbols
/lib/modules/3.2.32/modules.symbols.bin
/lib/modules/3.2.32/modules.devname
Kód: Egész kijelölése
modprobe 8192eu
Ami érdekesség még, az az US elnevezés, márpedigy magyar honban lett a Stick vásárolva. De a gyári driver CD-n is alapból több minden kell neki, mint a windows-nál a V1-eshez a .sys a .cat és a .inf fájlok. A LED ugyanúgy nem világít, de a netet erről használom már, tehát működik.