WN-AC433UKを買ってみた。
http://www.iodata.jp/product/network/adp/wn-ac433u/
どうもドコモ光のルーターのWiFiの受信がPCだけ弱かったので。
しかしUbuntu15.04のPCに挿してもうごかね
ドライバーの追加をやっても検出しない。
ここであきらめようかとも思ったが
しつこく考えてみた。
まず分かったのはドライバーはmt7610u_wifi_sta_v3002_dpo_20130916で
http://www.mediatek.com/en/downloads1/downloads/mt7610u-usb/
にあるということ。もし切れてたら
http://www.mediatek.com/en/downloads1/downloads/
でMT-7610UのLINUX向けをヒントに探してくれ
要するにIODATAは自前でチップを作ってなくてMEDIATEKのMT-7610Uというチップセット
をWN-AC433UKに使っているってこと。
でこれを解凍して使おうとしたが、コンパイルに失敗する。
で更に調査
ここからの書き換えは
http://qnighy.hatenablog.com/entry/2015/02/05/155016
のとおりでOKだが更に
-Wno-error=date-time
のフラグをGCCに追加してできた。
列記する
\common\rtusb_dev_id.cの45行目
USB_DEVICE_ID rtusb_dev_id[] = {
#ifdef MT76x0
+{USB_DEVICE(0x2019,0xAB31)}, /* GW-450D */
+{USB_DEVICE(0x04BB,0x0951)}, /* WN-AC433UK */
{USB_DEVICE(0x148F,0x7610)}, /* MT7610U */
{USB_DEVICE(0x0E8D,0x7610)}, /* MT7610U */
{USB_DEVICE_AND_INTERFACE_INFO(0x0E8D, 0x7630, 0xff, 0x2, 0xff)}, /* MT7630U */
{USB_DEVICE_AND_INTERFACE_INFO(0x0E8D, 0x7650, 0xff, 0x2, 0xff)}, /* MT7650U */
#endif
{ }/* Terminating entry */
};
\conf\RT2870STA.datの7行目
ChannelGeography=1
-SSID=11n-AP
+SSID=
NetworkType=Infra
WirelessMode=5
EfuseBufferMode=0
\conf\RT2870STA.datの22行目
WmmCapable=1
AckPolicy=0;0;0;0
-AuthMode=OPEN
+AuthMode=WPA2PSK
-EncrypType=NONE
+EncrypType=AES
WPAPSK=
DefaultKeyID=1
\include\os\rt_linux.hの280行目
typedef struct _OS_FS_INFO_
{
-int fsuid;
+kuid_t fsuid;
-int fsgid;
+kgid_t fsgid;
mm_segment_t fs;
} OS_FS_INFO;
\os\linux\config.mkの26行目
# Support Wpa_Supplicant
# i.e. wpa_supplicant -Dralink
-HAS_WPA_SUPPLICANT=n
+HAS_WPA_SUPPLICANT=y
# Support Native WpaSupplicant for Network Maganger
# i.e. wpa_supplicant -Dwext
-HAS_NATIVE_WPA_SUPPLICANT_SUPPORT=n
+HAS_NATIVE_WPA_SUPPLICANT_SUPPORT=y
\os\linux\config.mkの216行目
CC := $(CROSS_COMPILE)gcc
LD := $(CROSS_COMPILE)ld
-WFLAGS := -g -DAGGREGATION_SUPPORT -DPIGGYBACK_SUPPORT -DWMM_SUPPORT -DLINUX -Wall -Wstrict-prototypes -Wno-trigraphs
+WFLAGS := -g -DAGGREGATION_SUPPORT -DPIGGYBACK_SUPPORT -DWMM_SUPPORT -DLINUX -Wall -Wstrict-prototypes -Wno-trigraphs -Wno-error=date-time
WFLAGS += -DSYSTEM_LOG_SUPPORT -DRT28xx_MODE=$(RT28xx_MODE) -DCHIPSET=$(MODULE) -DRESOURCE_PRE_ALLOC -DENHANCED_STAT_DISPLAY
#WFLAGS += -DFPGA_MODE
WFLAGS += -I$(RT28xx_DIR)/include
\os\linux\config.mkの663行目
ifeq ($(HAS_CSO_SUPPORT), y)
WFLAGS += -DCONFIG_CSO_SUPPORT -DCONFIG_TSO_SUPPORT
endif
CHIPSET_DAT = 2860
CHIPSET_DAT = 2870
endif
ここまでやってなんとか認識した。ドライバーのインストールは通常の
makeでOKを確認したあとで
sudo make install
でできた。
一応このファイルを
https://github.com/kokawa2003/WN-AC433UK-ubuntu-driver
に置いておく。
興味のある人はみて改造してください。
DKMS対応は気が向いたらやります。
なお5Gの方の電波は拾えてない。
理由は不明 場所が悪いのか?
2016年4月3日日曜日
PowerShellまとめ
久々WINDOWSネタだ。
ここでPowerShellについてまとめておきたい。
※まず最初にすべきこととしてスクリプトが動くようにするってのがある。
それにはこれ
Set-ExecutionPolicy RemoteSigned
管理者権限で実行すること
※次の作業としてフォントを変更する。
全角文字を入れた時おかしくなるため
このようにPOWERSHELLの左上アイコンクリックー>プロパティで出来る
MS ゴシックを選択
※次にすべきことしてバージョンを確認する
それにはこれ
$PSVersionTable
もしくは
$Host.version
$PSVersionTableだと出力は
Name Value
---- -----
PSVersion 5.0.10586.117
PSCompatibleVersions {1.0, 2.0, 3.0, 4.0...}
BuildVersion 10.0.10586.117
CLRVersion 4.0.30319.42000
WSManStackVersion 3.0
PSRemotingProtocolVersion 2.3
SerializationVersion 1.1.0.1
このPSVersion がそれ
$Host.version
だと
Major Minor Build Revision
----- ----- ----- --------
5 0 10586 117
みたいに出る
これがそのOSの最新であるのを確認
windows7 以降だと今現在5になる
というかぜひ5にすべきだ。便利なので。
https://www.microsoft.com/en-us/download/details.aspx?id=50395
(英語のみ)
※次の作業としてchocolatey(https://chocolatey.org/)をインストールする。
パッケージ管理だ。以下は要管理者権限
POWERSHELL5 だと 旧来の
iex ((new-object net.webclient).DownloadString('https://chocolatey.org/install.ps1'))
の他に
Get-PackageProvider Chocolatey -ForceBootstrap
で使えるようにして
Get-PackageSource
で確認する方法もある。これをonegetというらしい。
ただchocolateyだとパッケージのアップデート可能だがonegetだとできないみたいだ。
※次の作業として コマンド履歴をpowershell終了しても残るように変更する。
終了しあとまた次使うときいちいち打ち込むのはやだろう。
それにはモジュールpsreadlineを入れればいい
cinst psget
install-module psreadline
でOK
Powershell4だといろいろ小細工する必要があったが 5 でなくなった。ちょっとうれしい。
※次にドライブを確認する
Get-PSDrive
でOK
Name Used (GB) Free (GB) Provider Root
---- --------- --------- -------- ----
Alias Alias
C 187.86 8.71 FileSystem C:\
Cert Certificate \
D 25.57 3.42 FileSystem D:\
Env Environment
F FileSystem F:\
Function Function
G 0.04 0.16 FileSystem G:\
HKCU Registry HKEY_CURRENT_USER
HKLM Registry HKEY_LOCAL_MACHINE
I 195.11 26.19 FileSystem I:\
Variable Variable
WSMan WSMan
みたいにでる。
ここで 物理 ドライブ(C:\、D:\...)以外のものがあることに注意
すべてのドライブにcd で行けてlsで確認できるのでしてほしい。
ここで覚えておくべきなのは
envで環境変数にアクセスでき
Variableで変数にアクセス出来ることだ。
例えば echo $variable:profile でプロファイルのパスが出る
これは 省略して echo $profile でも OK
ちなみに 値は
C:\Users\kouji\Documents\WindowsPowerShell\Microsoft.PowerShell_profile.ps1
※次にプロファイルを編集
このプロファイルだがbashとかと同じく起動時に読み込まれるスクリプト
なんでも書けるのでalias とかfunction を切っておく
まずファイルを作る
New-item –type file –force $profile
編集
notepad $profile
中身はこんな感じ
Set-Alias grep Select-String
Set-Alias firefox "C:\Program Files\Mozilla Firefox\firefox.exe"
#再起動
function reboot(){
shutdown -r -t 0
}
#管理者権限で起動
function su
{
Start-Process powershell.exe -Verb runas
}
※次にSSHする方法
powershellでSSHするには
Win32-OpenSSH
で可能
名前に反して64bitに対応している
インストールは
cinst Win32-OpenSSH
でOK
ssh ....
が使える。
ただし事前に文字コードを変える必要がある(LINUXはほとんどUTF8なので)
[Console]::OutputEncoding = [Text.Encoding]::UTF8;
でOK
※次に画面の色
あと色に関するものは
※モジュールについて
モジュールの追加で機能拡張可能
そのパスは
※最後に
己自身が勉強する必要がある。
ここでPowerShellについてまとめておきたい。
※まず最初にすべきこととしてスクリプトが動くようにするってのがある。
それにはこれ
Set-ExecutionPolicy RemoteSigned
管理者権限で実行すること
※次の作業としてフォントを変更する。
全角文字を入れた時おかしくなるため
このようにPOWERSHELLの左上アイコンクリックー>プロパティで出来る
MS ゴシックを選択
※次にすべきことしてバージョンを確認する
それにはこれ
$PSVersionTable
もしくは
$Host.version
$PSVersionTableだと出力は
Name Value
---- -----
PSVersion 5.0.10586.117
PSCompatibleVersions {1.0, 2.0, 3.0, 4.0...}
BuildVersion 10.0.10586.117
CLRVersion 4.0.30319.42000
WSManStackVersion 3.0
PSRemotingProtocolVersion 2.3
SerializationVersion 1.1.0.1
このPSVersion がそれ
$Host.version
だと
Major Minor Build Revision
----- ----- ----- --------
5 0 10586 117
みたいに出る
これがそのOSの最新であるのを確認
windows7 以降だと今現在5になる
というかぜひ5にすべきだ。便利なので。
https://www.microsoft.com/en-us/download/details.aspx?id=50395
(英語のみ)
※次の作業としてchocolatey(https://chocolatey.org/)をインストールする。
パッケージ管理だ。以下は要管理者権限
POWERSHELL5 だと 旧来の
iex ((new-object net.webclient).DownloadString('https://chocolatey.org/install.ps1'))
の他に
Get-PackageProvider Chocolatey -ForceBootstrap
で使えるようにして
Get-PackageSource
で確認する方法もある。これをonegetというらしい。
ただchocolateyだとパッケージのアップデート可能だがonegetだとできないみたいだ。
※次の作業として コマンド履歴をpowershell終了しても残るように変更する。
終了しあとまた次使うときいちいち打ち込むのはやだろう。
それにはモジュールpsreadlineを入れればいい
cinst psget
install-module psreadline
でOK
Powershell4だといろいろ小細工する必要があったが 5 でなくなった。ちょっとうれしい。
※次にドライブを確認する
Get-PSDrive
でOK
Name Used (GB) Free (GB) Provider Root
---- --------- --------- -------- ----
Alias Alias
C 187.86 8.71 FileSystem C:\
Cert Certificate \
D 25.57 3.42 FileSystem D:\
Env Environment
F FileSystem F:\
Function Function
G 0.04 0.16 FileSystem G:\
HKCU Registry HKEY_CURRENT_USER
HKLM Registry HKEY_LOCAL_MACHINE
I 195.11 26.19 FileSystem I:\
Variable Variable
WSMan WSMan
みたいにでる。
ここで 物理 ドライブ(C:\、D:\...)以外のものがあることに注意
すべてのドライブにcd で行けてlsで確認できるのでしてほしい。
ここで覚えておくべきなのは
envで環境変数にアクセスでき
Variableで変数にアクセス出来ることだ。
例えば echo $variable:profile でプロファイルのパスが出る
これは 省略して echo $profile でも OK
ちなみに 値は
C:\Users\kouji\Documents\WindowsPowerShell\Microsoft.PowerShell_profile.ps1
※次にプロファイルを編集
このプロファイルだがbashとかと同じく起動時に読み込まれるスクリプト
なんでも書けるのでalias とかfunction を切っておく
まずファイルを作る
New-item –type file –force $profile
編集
notepad $profile
中身はこんな感じ
Set-Alias grep Select-String
Set-Alias firefox "C:\Program Files\Mozilla Firefox\firefox.exe"
#再起動
function reboot(){
shutdown -r -t 0
}
#管理者権限で起動
function su
{
Start-Process powershell.exe -Verb runas
}
※次にSSHする方法
powershellでSSHするには
Win32-OpenSSH
で可能
名前に反して64bitに対応している
インストールは
cinst Win32-OpenSSH
でOK
ssh ....
が使える。
ただし事前に文字コードを変える必要がある(LINUXはほとんどUTF8なので)
[Console]::OutputEncoding = [Text.Encoding]::UTF8;
でOK
※次に画面の色
あと色に関するものは
$Host.UI.RawUI.BackgroundColor
$Host.UI.RawUI.ForegroundColor
$Host.PrivateData.ErrorForegroundColor
$Host.PrivateData.ErrorBackgroundColor
$Host.PrivateData.WarningForegroundColor
$Host.PrivateData.WarningBackgroundColor
$Host.PrivateData.DebugForegroundColor
$Host.PrivateData.DebugBackgroundColor
$Host.PrivateData.VerboseForegroundColor
$Host.PrivateData.VerboseBackgroundColor
$Host.PrivateData.ProgressForegroundColor
$Host.PrivateData.ProgressBackgroundColor
[console]::ForegroundColor
[console]::BackgroundColor
[System.Console]::ForegroundColor
[System.Console]::BackgroundColor
G
et-PSReadlineOption
Set-PSReadlineOption -TokenKind Command -ForegroundColor Magenta
Set-PSReadlineOption -TokenKind Comment -ForegroundColor Black -BackgroundColor White
※モジュールについて
モジュールの追加で機能拡張可能
そのパスは
$env:PSModulePath
インストール可能なモジュールのリスト
find-module
検索
find-module XXXX
インストールされたモジュールのリスト
Get-Module -ListAvailable
モジュールインストール
install-module XXXXX
モジュールのコマンドリストアップ
get-command -module XXXX
※最後に
己自身が勉強する必要がある。
2016年4月2日土曜日
家のUBUNTUのDNSが失敗する件
最近ドコモ光にした話をしたと思うが、それ以来問題になっているのが実は1件ある。
それはPCを立ち上げた直後DNS変換に失敗すること。
正確にいうと起動後数十秒で
ping google.com
に失敗する。
これ最初WEBが落ちるのかとおもったが、よくよく調べて見ると
ping 8.8.8.8
には成功するので要するに ドメイン名ー>IP の変換に失敗しているってことが分かった。
だが一旦NETWORK MANAGERから接続断にして繋ぎ直すとOKなのであまり問題視してなかった。
しかしながら最近リモートデスクトップとかするようになり、そのときリモートでPCは見れるが
その時PCからWEBができないので物足りなさを感じてはいた。当然ながらこのとき接続断にして繋直すことはできない。切るとリモートできなくなるからだ。
この件なのだが今日解決した。
sudo vi /etc/NetworkManager/NetworkManager.conf
で
dns=dnsmasq
の行があるのでこの行をコメントアウト
#dns=dnsmasq
でOK
それはPCを立ち上げた直後DNS変換に失敗すること。
正確にいうと起動後数十秒で
ping google.com
に失敗する。
これ最初WEBが落ちるのかとおもったが、よくよく調べて見ると
ping 8.8.8.8
には成功するので要するに ドメイン名ー>IP の変換に失敗しているってことが分かった。
だが一旦NETWORK MANAGERから接続断にして繋ぎ直すとOKなのであまり問題視してなかった。
しかしながら最近リモートデスクトップとかするようになり、そのときリモートでPCは見れるが
その時PCからWEBができないので物足りなさを感じてはいた。当然ながらこのとき接続断にして繋直すことはできない。切るとリモートできなくなるからだ。
この件なのだが今日解決した。
sudo vi /etc/NetworkManager/NetworkManager.conf
で
dns=dnsmasq
の行があるのでこの行をコメントアウト
#dns=dnsmasq
でOK
登録:
投稿 (Atom)