2014年01月28日

Wifi とLANで同じIPアドレスに

Raspberry Pi にWifi ドングルをつけたら、DHCPでIPアドレスがつくようになったが、LANの方はスタティックIPアドレスをつけていて、結局2つのIPアドレスを持つことになってしまう。WifiでもスタティックなIPアドレスをつけることも考えたが、ボンディングをつかって2つのネットワークインターフェイスに同じIPアドレスをつけてどちらかが使えるようにすることにする。
これにはbonding の mode 0 (balance-rr) の設定をする。このmode 0 では ラウンドロビンで最初の有効なネットワークインターフェイスから始まって、次に有効なものにパケットが転送されるので、LAN, Wifi の順で有効なものが先に使われるようになる。
で、設定だが、 Raspberry Pi の Rabedian の /etc/network/interfaces を以下のように設定。
auto lo

iface lo inet loopback

iface eth0 inet manual
bond-master bond0

allow-hotplug wlan0
iface wlan0 inet manual
wpa-roam /etc/wpa_supplicant/wpa_supplicant.conf
bond-master bond0
bond-give-a-chance 10

auto bond0
iface bond0 inet static
address 192.168.0.6
gateway 192.168.0.1
netmask 255.255.255.0
dns-nameservers 8.8.8.8 192.168.0.1
bond-mode 0
bond-miimon 100

---
この設定で、ターミナルから
$ ls -lR /
などで ls の結果を垂れ流しながら、 LAN のケーブルを抜くと表示が止まり、数秒で Wifi に切り替わって表示が継続される。また、さらに LANケーブルを差すとまた数秒で Wifi から LAN に切り替わるのが分かる(これは Wifi ドングルのLEDが消えるのでわかる)


posted by tshibata at 22:17| Comment(0) | TrackBack(0) | Raspberry Pi

2014年01月25日

Wifi ドングル GW-USEoo300 を Raspberry Pi で使う

Raspberry Pi に Wifi ドングルをつなげることにしたが、手持ちの Planex の GW-USEoo300 がデフォルトでは使えなかったので以下にメモ。
このUSBドングルを別のLinux マシンに指して調べてみたらカーネルモジュールは 8192cu をロードすればよいことがわかっている。

まずRaspberry Pi の認識状況をチェック

pi@raspberrypi ~ $ lsusb
Bus 001 Device 002: ID 0424:9512 Standard Microsystems Corp.
Bus 001 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub
Bus 001 Device 003: ID 0424:ec00 Standard Microsystems Corp.
Bus 001 Device 004: ID 2019:ab2b PLANEX

Bus1 のデバイス4として認識されている。

pi@raspberrypi ~ $ lsmod
Module                  Size  Used by
snd_bcm2835            16165  0
snd_soc_bcm2708_i2s     5474  0
regmap_mmio             2806  1 snd_soc_bcm2708_i2s
snd_soc_core          131268  1 snd_soc_bcm2708_i2s
regmap_spi              1897  1 snd_soc_core
snd_pcm                81593  2 snd_bcm2835,snd_soc_core
snd_page_alloc          5156  1 snd_pcm
regmap_i2c              1645  1 snd_soc_core
snd_compress            8076  1 snd_soc_core
8192cu                550816  0

8192cu がロードされているのを確認。
ちなみにこのOSは wheezy 2014-01-07 を使っている

iwconfig でも一応認識。 /etc/network/interface はデフォルト

pi@raspberrypi ~ $ iwconfig
wlan0     unassociated  Nickname:"<WIFI@REALTEK>"
          Mode:Managed  Frequency=2.427 GHz  Access Point: Not-Associated  
          Sensitivity:0/0 
          Retry:off   RTS thr:off   Fragment thr:off
          Power Management:off
          Link Quality:0  Signal level:0  Noise level:0
          Rx invalid nwid:0  Rx invalid crypt:0  Rx invalid frag:0
          Tx excessive retries:0  Invalid misc:0   Missed beacon:0

lo        no wireless extensions.

eth0      no wireless extensions.

wlan0 はこれだと自動的に立ち上がるはずだが.. といろいろ調べたみたら、
パワーマネージメントについて調整すると動いたとのことで
8192cu のパラメータを追加する。ドライバのコンフィグレーションに
2つのパラメータを追加する。

pi@raspberrypi /etc/modprobe.d $ cat 8192cu.conf
#disable power solving
options 8192cu rtw_power_mgmt=0 rtw_ips_mode=1

あとは sudo reboot で確認する。

再起動後に

dmesg で確認すると、
[    3.229623] usb 1-1.3: new high-speed USB device number 4 using dwc_otg
[    3.361895] usb 1-1.3: New USB device found, idVendor=2019, idProduct=ab2b
[    3.370667] usb 1-1.3: New USB device strings: Mfr=1, Product=2, SerialNumber=3
[    3.379682] usb 1-1.3: Product: GW-USEco300
[    3.385446] usb 1-1.3: Manufacturer: Planex Communications Inc.
[    3.393007] usb 1-1.3: SerialNumber: .....

となった。
また ifconfig で IPアドレスが確認できる。

実際には、 USEoo300 の LEDも点滅して動作していることも分かる。

これで LAN と wifi の両方がつながるようになった。




posted by tshibata at 08:26| Comment(332) | TrackBack(0) | Linux

2013年07月31日

Miniterm.py

miniterm.py を使ったのでメモ。

miniterm.py はサフィックスでもわかるように python で記述されており、pySerial というモジュールを開発するプロジェクトの中で提示されているターミナルプログラム。
シリアルラインのプログラムでは minicom が定番だが、miniterm でもだいたい使えるので。

起動例
 $ miniterm.py -b 38400 /dev/ttyUSB0

ただし、-b の次のパラメータはボーレイト、ここでは 38400。 /dev/ttyUSB0 が一般ユーザでアクセスできない場合には sudo を最初に。
また接続先のボーレイトは合わせる。


Pyserial については以下を参照
http://pyserial.sourceforge.net/

posted by tshibata at 11:20| Comment(0) | TrackBack(0) | Linux

2012年01月22日

Voyage MPD Starter Kit

Voyage MPD Starter Kit をオーダし到着した購入元は http://store.voyage.hk/
すでにたくさんの人が発注のことについて公開しているので詳細はパス。
自分の場合には wifi カードをつけて$151のものを購入したが、結局円高で 1,3530円だった
このボードは 500MHz の AMD Gecode LX800 というCPUに256MB のDDR DRAM をつけた
ファンレスのボードでACアダプタで動作させる。
Bogomips値は 996.11 だったから普通のCeleron 500MHz とほぼ同じ性能だろう。

OSはVoyage-mpd-0.8.0
Linux で CFカードからブートする、Debian を元に linux3.0 + RT preempt パッチが
入っているとのこと
root@voyage:/proc# uname -a                                                                                          
Linux voyage 3.0.0-voyage #1 SMP PREEMPT Mon Oct 24 01:49:56 HKT 2011 i586 GNU/Linux      

USBポートからUSBDAC に接続してもちろんオーディオを鳴らすために購入
本格的なオーディオシステムにするためには、音源をNAS にするべきだろうけど、まだ
NASが準備できないので、とりあえずUSBハードディスクを直接指している

音楽を選択してUSBDAC に渡すのは mpd (music player daemon) の役目。
これをコントロールするには web や iPhone , android のアプリからできる

だいぶこれから楽しめそうな感じ



posted by tshibata at 14:54| Comment(0) | TrackBack(0) | VoyageMPD

2012年01月03日

Windows7 の1個目のパーティションを壊した

SDカードのフォーマットをしようとして致命的なミスをした。

$ sudo mkdosfs /dev/sdb1 [リターン]

としてハッとした。
web 上の例題を見て、思わずそのまま売ってしまったのだった。
/dev/sdb は Windows7 をインストールしてあるドライブだった!
しまった!
と思ったが、コマンドが即座に終わってしまった。あれ?
たしか、windows7 のシステムはかなりでかかったはず...

調べてみたら、どうやら /dev/sdb1 は100MB 程度の隠しパーティションなのだそうだ。
Linux ばかりいじっている私は Windows7 のパーティションの構成など興味が無いから
最初からそんなことは知らなかったのだ。
結局は手持ちのWindows7 のインストールディスクとweb 上のリソースからリカバリ
できたので参考までにメモっておく。

まず、/dev/sdb1 (ハードディスクの最初のパーティション) に本来入るべきもので重要な
ものは、bootmgr というプログラムと Boot ディレクトリのしたの多数のファイル類。
これらはhttp://support.microsoft.com/kb/927392 によれば、インストールディスクで
リカバリを選択しても直らなかった場合にやることになっている
とりあえず、インストールディスクのリカバリ(GUIでリカバリをしてくれるプロセス
がある)をやってみると何かやってくれたようだが、どうも完璧では無さそうだった

そこで上の説明にある Bootrec プログラムをインストールディスクで立ち上げた先で
コマンドプロンプトから実行してリカバリした。

まず、
Bootrec.exe /fixmbr
    これは MBR を書き換えるのであろうと思う。今回の場合には関係ないがおまじない
 として実行。
その後、
Bootrec.exe /FixBoot
    これはPBRパーティションを更新する
 PBRは Partition Boot Record のことで、今回壊した1個目のパーティションの最初の
 レコードにあるそうだ。これを直すのだろう。
この後、再起動し、今度はDVD でなく、リカバリできたはずのHDDからブートさせた
しかし、ダメ。
もう一度インストールディスクから立ち上げて、再度リカバリの手順を画面から選択。
すると、今度は Chkdsk が動作し、その後リブートせよ、とのことだった。
多分、Bootrec.exe には他にコマンドのパラメータとして
/ScanOS と /RebuildBcd というのがあるけれど、多分GUIからこのコマンドが起動されて 
リカバリを完結させてくれたのであろう。

その後、HDDからブートしてみると Windows7 が起動された。
私の場合には、Linux とWindows7 の Dual Boot をしているのだけれど、このような場合
にはもちろん、Linux 側のHDD の電源は抜いておいて、ハード的にLinux が存在しない
ようにするのが最も簡単だと思う。

さらに、Windows7 がリカバリできたので、Linux側のGrub も書き直しが必要になった。
まあ、こんな作業に半日費やすことにならないように、ディスクのフォーマットは慎重に
やることにしましょう..




posted by tshibata at 18:14| Comment(0) | TrackBack(0) | パーティション

2011年11月04日

I’m going to destroy Android

Steve Jobs がインタビューに答えて言ったそうな。

"I’m going to destroy Android, because it’s a stolen product. I’m willing to go thermonuclear war on this."
私は Android を破壊する、なぜならあれは、盗んだものだから。このためならば核戦争をやってもよい。

“I will spend my last dying breath if I need to, and I will spend every penny of Apple’s $40 billion in the bank, to right this wrong,” 
この不正を正すためならば、自分の息を引き取る最後のときまで、銀行にある40B$のすべてのペニーを使うだろう。

遺言になってしまったのでは、Apple もやらねばならぬ、みたいになるのかな、と思う。

posted by tshibata at 21:49| Comment(0) | TrackBack(0) | Android

2011年09月11日

Pandaboard の家

Pandaboard はいろいろ遊ぶには楽しいボードだ。
ただ、プラグやSDカードの抜き差しをするのにボードを持ってすると傷がついたり、手の油がつくことなどが気になるのでケースを自作した。すでにBeagleboard でも自作した人がたくさん居るのでそれを見たりしながら製作。

ケースは100円ショップをはしごしてちょっと大きめだが、加工が楽そうなものを選択。「キャンドゥ」という店で見つけた"With531"  と呼ばれる整理箱 (約155mmX115mmX56mm)。底面には足がついていて、ボードを抑えるネジの頭の分の高さがある。サイドには丸い穴が空いていて、加工が楽だった。

ボードの固定には4X10mm のスペーサで高さを出し、M2.6X25mm のネジで固定。M2.6 はちょっと細かったかもしれないが、手持ちのドリルが3mm なので、ちょうど良かった。ボードについているゴム足は接着剤でついているので、ひねると軽くはずせる。

PandaBoard は3面にそれぞれ、SDスロット、RS232+miniUSB, Audio+DC5V+USB/LAN+HDMI の穴が必要だが、地道にそれぞれの加工をした。ハンドドリルで少しずつ穴をあけ、ケースの丸穴を利用してスペースを広げた。

次の写真は上面からみたもの。

topview640.JPG

続いて背面からの写真、ネジ穴が見える。

back640.JPG


USB2段+LANの部分は上部を残そうと思ったが、加工に失敗して上部が折れたのでそのままカット。

left640.JPG

下の写真はSDカードスロットの穴。抜き差しするために大きめにカットしている。ケースに固定後は、ケース全体を抑えてSDの抜き差しができるようになったので、とても楽になった。

right640.JPG

RS232C とマイクロSDの穴。このケースは全体に丸穴が空いているので、それを利用した。加工は楽だが、ちょっとイビツなところもあるかな..

centor640.JPG
posted by tshibata at 08:37| Comment(0) | TrackBack(0) | Linux

2011年08月06日

PandaBoard 始めました

PandaBoard を購入した
目的はいろいろ ARM のOSを動かすため。
とりあえず
http://www.omappedia.com/wiki/OMAP_Ubuntu_Mainを参考にして Ubuntu を動かす。
上のサイトには step by step のやり方が説明されていて好ましい。
Ubuntu 10.10 をダウンロードし、SDカードにインストールした。
PandaBoard は SDカードからブートするが、だいぶ遅いとの噂を聞いていたので
SDは Class10 の 8GB を調達。
しかし、それでも実際の動作はかなり遅かった。

この遅さに耐えるのは我慢の限界がすぐ来るので、以下の回避策を検討。
1. SDからはブートするだけで、ルートファイルシステム他は USB経由で接続するHDDに持ち込む方法
 この方法はネットでサーチしてもやっている人が多く居る模様。
http://www.omappedia.com/wiki/PandaBoard_FAQ#Can_I_change_the_boot_device_order_to_use_Uart_instead_of_USB.3F
2. 遅い原因は多分SDカードであろうから、SDカードの問題を解決する ただし、自分のSDカード(SDHC)は一応CLASS10だったので、いろいろと調べてみたらCLASS10の定義は最低保証レートが10MB/SECということでこんなレートでは最近のOSを動かすにはまだまだと実感。PCのSーATAは150MB/Sec, ATAでも 66MB/secだったから。(その前にSDカードをそんな用途に使わないでくれ、と言われそうだけど)
HDHCよりも高速になると言われる UHS-I などもすでにメディアが存在するが、Pandaボードでは使えない。

posted by tshibata at 23:14| Comment(312) | TrackBack(0) | Linux

2011年05月04日

Novell売却の完了

2011/4/27 に Attachmate による Novellの買収が完了した。約2.2B$ とのことだから、22億ドルだから 1$=80円として1760億円というところ。これによってNovell は Attachmate の子会社になったとのこと、さらにNovell のこれまでの製品のプロプラ部分は Novellが、Linux の部分は SUSE がというように2つの分割された会社としてビジネスを継続するのだと。
たしか、SCO問題の解決となったUNIXの著作権は SUSEが継続して保有するのだろう。

また、この売却の際に議論されていた、CPTN Holdings LLC (Microsoft がApple, EMC, Orace の支援を受けていたという) によって882件の特許を450$ で売却する件については結局のところ実現しなかった。CPTN はその特許をAttachmate にUSDoJ らの指導をうけて再度売却したとのこと。その代わり、CPTN はそれらの特許の利用権を得ることになったという。
結局のところ、これらの Linux に関連する(かしないか知らないが、それでも関連した企業の)特許が MS やその他の会社の手に渡ってしまうということにはならず、Novell の特許は GPLv2 やOIN ライセンスのままで置かれることになった。それは結局は MS から見たらそれらの特許を使って Linux や オープンソースに対してアクションを取ることはできなくなったということだろう。

参考記事:
http://www.zdnet.com/blog/open-source/novell-deals-done/8755?tag=mantle_skin;content


posted by tshibata at 08:47| Comment(0) | TrackBack(0) | Linux

2011年04月29日

nook color

nook color を手に入れた

早速nookdevs からダウンロードしたrooting 済みのファイルを入れてテスト。
なんとも簡単!

要は、だいたいこんな感じ。
  1. ファイルとして提供されているイメージをダウンロードして、dd で uSDカードに書く
  2. そうすると、uSD の中に /boot や /system のようなディレクトリが出来、そこに必要なファイルが入る
  3. この uSD を nook color にマウントして電源を入れれば、uSD からブートされ、uSD に仕込んだものが動く
購入した時には Android としてではなく、ブックリーダとしてしか使えないので、root化した。
その結果、Andorid は 2.0 eclair だった。
だけど、nookdevs には froyo や HoneyComb のファイルもあるのでこれからやってみよう

posted by tshibata at 07:57| Comment(0) | TrackBack(0) | Android