ubuntu18.04でWI-U2-433DHPを有効にする。

ubuntuのバージョンを16.04から18.04にアップデートするとUSB無線LAN(WI-U2-433DHP)が認識されなくなってしまった。
16.04のときにインストールしたドライバをmakeするとエラーが出るようになってしまった。

[1]https://qiita.com/diescake/items/2370dc67a0ed40b089ba
を参考に
[2]https://github.com/gnab/rtl8812au/
からドライバをダウンロードする。

$ git clone https://github.com/msharov/rtl8812au.git

名前が8812になっているが8821も対応している模様。
ダウンロードしてrtl8812auの中に入り、ビルドする。

$ make

そして、インストール

$ sudo insmod 8812au.ko

エラーは出なかったが、ドライバは依然認識されない。
gitから落としたドライバがWI-U2-433DHPに対応していなかった模様。

先ず、WI-U2-433DHPのデバイスIDを調べる。WI-U2-433DHPをUSBポートに挿した状態で、

$ lsusb

・・・
Bus 001 Device 002: ID 0411:029b BUFFALO INC. (formerly MelCo., Inc.)
・・・

と表示されたので

/os_dep/linux/usb_intf.c を開き、
#ifdef CONFIG_RTL8821Aの箇所を見ると、確かに該当するデバイスIDが含まれていない。
そこに

{USB_DEVICE(0x0411, 0x029B),.driver_info = RTL8821},

を追加。
もう一度、

$ make
$ sudo insmod 8812au.ko

とすると、デバイスが認識された。

    • -

ついでにREADME.mdに従い、DKMSをインストールし組み込んでおく。
以前はアップデートの旅にドライバを再度ビルド、インストールする必要があったが
おそらく、DKMSが自動でやってくれるはず。