2011年9月30日金曜日

iRig互換デバイスを作ってみた

研究室の友人に頼まれてiRig互換デバイスを作ってみた。
しかしうちの研究室はiPhone率たけーな

iRigとはiPhoneやiPod touchやiPadにエレキギターやベースをつないでエフェクターとして使ったり録音したりできるデバイスらしい。
これを使えばヘッドホンアンプ代わりにもなるみたいだ。

というわけででググってみると普通に回路を公開してくださってる人がいるのでそのままつくってみた。

まずはiPhone側に指す端子なんだけれども4極端子でステレオ出力と、マイク入力が一体になったものである。
小さめの端子がなかったので自作することにした。
ebayで買った適当なケーブルを分解して端子を取り出し、梅澤で買ってきた3芯のシールドケーブルにハンダした。シールドをGNDにしたので3芯でおkw
通電することを確認して、ホットボンドで固めた後に余分な部分を削って熱縮チューブで固めた。
なかなかいい感じの大きさに収まった。

基板のほうはググって出てきた2石のものを利用させてもらった。ついでにFETを変えられるようにソケット式にしてみたw
ケースはダイソーのアルミ灰皿を利用。
研究室で加工したのですげー楽だったな…
機材揃ってると便利ー

というわけでいきなり完成です。

というかハンダづけを本人にやらせたので教えるので手いっぱいで写真撮るの忘れてたwww

4極の端子が一番大変だったかも?

2011年9月24日土曜日

LS-CHLでtelnetを使えるようにしてみた

LS-CH500Lの純正ファームウェアでtelnetを使えるようにしてみた。最終的にSSH使いたいw

旧バージョンのファームウェアだとacp_commander.jarで簡単にできたんだけどファームウェアを最新の1.54にしてしまっているので少々面倒だった。

なんか新しいファームウェアになってから共通ファームウェアになったみたいで共通ファーム1.54のLinkStationにならこの方法がそのまま使えてしまうかもw

ちなみにこの方法はLS-XHL用の方法だしね。

というわけでまずは
xhl-110-telnet-ssh-clearaddon.tar.gz
をダウンロードしてくる。
そして展開する。

するとxhlフォルダが出てくるのでこれをLinkStationのshareの中に放り込む

次に
acp_commander.jar
をダウンロードしてくる
これはJavaでできているのでJavaを入れてない人は入れておいてください。

コマンドプロンプトを開いてacp_commander.jarを入れたディレクトリにCDで移動する。

そしたら
java -jar acp_commander.jar -t LS-CHLのIPアドレス -ip LS-CHLのIPアドレス -pw adminのパスワード -s

と入力してエンター
ここではLinkstationのIPアドレスを192.168.1.10とし、adminのパスワードをpasswordとします。
すると
java -jar acp_commander.jar -t 192.168.1.10 -ip 192.168.1.10 -pw password -s
となります。

これを実行して正常にLinkStationにつながると

/root>
となるはずです
この状態でコマンドを打てるようになっています。

しかしこのバージョンのLinkstationでは一回接続ごとに一つのコマンドしか打てないので
一行コマンドを打つごとに一度acp_commander.jarの接続を切ってもう一度つなぐ必要があります。

ちなみにコマンドを打ってうまくいくと

OK (ACP_STATE_OK)

>

と出ます。
ここでexitと入力してエンターを押すとacp_commanderを終了することができます

つまりacp_commanderで接続→コマンド一行→exitの繰り返しになります。
多少面倒ですが次のコマンドをこうやって実行していきます

cp /mnt/disk1/share/xhl/usr/local/sbin/telnetd /usr/local/sbin/
ln -s /usr/local/sbin/telnetd /usr/sbin/telnetd
cp /mnt/disk1/share/xhl/usr/local/sbin/sshd /usr/local/sbin
chmod 4555 /bin/su
echo "telnet stream tcp nowait root /usr/sbin/telnetd /usr/sbin/telnetd" >> /etc/inetd.conf
chmod 644 /etc/profile
reboot

全部やると再起動されます。

再起動後にTelnetで接続すると接続できるようになってるはずです。
adminでログオンできますが、この状態ではアクセス権がないのでほとんど何もできません。
なのでsu-を入れます。

またさっきのacp_commanderを使って

cp /mnt/disk1/share/xhl/bin/su /bin/
chmod 4555 /bin/su

とやってTelnetでつないでsuコマンドを打ってみる
するとlibshadow.so.0がないと怒られるwww

というわけでググってみるとLS-XHLとかLS-CHLに使えるlibshadow.soがあった
こいつをダウンロードして解答するとlibshadow.so.0が出てくるのでこれをLS-CHLのshareの中に突っ込む。
そしてまたacp_commanderから
cp /mnt/disk1/share/lib/libshadow.so.0 /usr/lib/

とコマンドを打つ。

そしてもう一度telnetでつないでsuしてみると…
動いたー!

パスワードはadminのやつそのまま使えるみたいですね。

これでTelnetでいろいろできる。

ただしファームウェアをアップデートするとすべて消えてしまうようで、この手順をやり直さなければいけなくなるので注意。

最初のほうのコマンドでsshdも転送してるので試しにsuをしてから
cd /usr/local/sbin
./sshd
ってやってみたけどSSHでつないでも蹴られるなぁ

sshdの設定しないとダメかなぁ

もう一台あるからそっちにはDebian入れてもいいかな

2011年9月22日木曜日

DD-WRTを入れたFonera+のGPIOをいじってみた。

Fonera+にDD-WRTを入れると本来使われていたはずのLEDが二つほど使われなくなることに気付いた。

FON2201のPowerとWirelessのLEDはどちらもオレンジと緑の二色に光るのだけれども、DD-WRTを入れてしまうとPowerはオレンジ、Wirelessは緑に固定されてしまう。

今回はそれがもったいないので使用してみることにした。

FONのLEDはGPIOで制御されているので(WANとLAN以外)DD-WRTに用意されているgpioこまんどでいじることができる

GPIO 1 Wirelessのオレンジ
GPIO 4 Powerの緑
GPIO 7 Powerのオレンジ

となっている。Wirelessの緑は標準で通信時に点滅するようになってるのでいじらないことにした。

DD-WRTを入れたFONにSSHなどで接続し
gpio enable 1
とやるとWirelessのオレンジが点灯し、
gpio disable 1
とやるとWirelessのオレンジが消灯する。

今回はこれを利用してスクリプトを組んでみた




#!/bin/sh
i=`nvram get wl0_ifname`

gpio enable 4
gpio disable 7

while sleep 1; do
  if [ -z `wl_atheros -i $i assoclist`]; then
  gpio enable 1
else
  gpio disable 1
fi

done




このスクリプトはFONの電源を入れてファームウェアが読み込まれて使用できる状態になったときにPowerがオレンジから緑に変化する。

そしてWirelessのLEDはクライアントの接続がないときはオレンジ色に、クライアントが接続しているときは緑色になるようになる。

これをDD-WRTの設定画面を開き、管理のコマンド実行のところに張り付けて
起動スクリプトとして保存ボタンを押せば登録される。
あとはFONを再起動するだけで実行されるはず。

どうしても必要という機能ではないけれどあると便利かも?


あと基本設定のところでHost名をdd-wrt.setupと設定しておくと設定画面を開くのにいちいちIPアドレスではなくてブラウザにdd-wrt.setupと入れるだけでアクセスできるようになる。
これはDNSMasqを有効にしててPC側のDNSがFONになってるときしか効かないかも。
つまりルーターとして使ってるときしか使えない方法かな。

というわけで少しFONを便利にするTipsでしたー




2011年9月21日水曜日

LaFonera+に簡単にDD-WRTを入れてみる。

FreeWLANを入れたのはいいのだけれどもセキュリティーがオンの状態で無線につながらなくなってしまったので今度はDD-WRTを入れてみた。

FON2201はソフトウェア的にLANとWANを分けているので前はDD-WRTを入れてもルーター機能が使えなくなってしまっていたのに最近は普通に使えるみたいなのでDD-WRTを入れてみることにした

そしていちいちTelnetでRedbootに接続するのも面倒なのでFon Flashという簡単なツールを使用してDD-WRT化してみたいと思う。
このツールは電源を切ったFONとPCを直結し、Flash Router Now!ボタンを押した後にFONに電源を入れるだけで自動でファームウェアを書き換えてくれるというすぐれものである。

まず用意するもの
FON2201対応のDD-WRT
DD-WRTのRouter DatabaseにFONと入れるだけでFonera+対応のファームウェアをダウンロードすることができる。
linux.binだけをダウンロードすればよい。

次にFon Flash

そしてFon Flashを動かすためにWinPCAPが必要である。

まずWinPCAPをインストールしたら、Fon Flashを起動する。
この時エラーが出る場合は管理者モードで起動してみるといいかも。

そしたらSelect Firmware TypeでDD-WRTを選び
Select Network InterfaceではFONとつないでいるLANデバイスを選ぶ。
最後にSelect Firmware Fileで先ほどダウンロードしたlinux.binを指定するだけ。

Flash Router Now!をクリックした後にFONの電源を入れて待つだけ。
30~40分ぐらい待つと完了と出てFONが再起動する。

これで簡単にFONを書き換えることができた。

設定で日本語を使うこともできるし、WANポートを使いたい場合はWAN Connection TypeをDisable以外にすればよい。

2011年9月20日火曜日

La Fonera+にFreeWLANを入れてみた

FreeWLANはFONのプラグインでFONにいろいろな機能を追加することができる。普通のLa Foneraでは結構簡単に入れられるけどLa Fonera+(FON2201)に入れるのはなかなか面倒だった。

普通のFONとの違いはWANポートのほかにLANポートが付いてるということぐらいだと思っていたがファームウェアも全く違うものだった。

とりあえずSSHを使えるようにするために初期のファームウェアに戻した。FONはネットにつないでいると自動的にファーウェアを更新する機能があるのでネットにつないでいたFONにFreeWLANを入れるにはまず初期のファームに戻す必要が出てくる。

今回は前にDD-WRTを入れたあとに純正ファームに戻した時の方法を使用した。この方法では強制的に1.1.1r1に書き換えることができるのでバージョンを下げたいときにも使えるし、起動しなくなったときにも使える。(Redbootが動くけどファームウェアが読み込めない状態限定だけど)

Fonera+を純正ファームに戻してみた

そしてファームウェアをダウングレードしたらFONのWANに何もつながない状態でLANをPCにつないでhttp://192.168.10.1にアクセスしてバージョンが1.1.1r1になってるか確認する。

今度はSSHを使えるようにしなければいけない。

SSHを使えるようにするためのimage.binをダウンロードしてきてPoorTFTPなどでTFTPサーバーを立てる。
puttyで192.168.1.1のポート9000にTelnetでつなぐ準備をしたら
PCと電源を切った状態のFONを直結し、PCのIPを192.168.1.254に固定する。

コマンドプロンプトを出して
ping 192.168.1.1 -t
をしたままFONの電源を入れてPingが通った瞬間にさっき用意しておいたputtyの接続ボタンを押す。

Redboot>と出たら次へ。
でなければ電源を入れるところからやり直す。

TFTPサーバーが立っていて設定したディレクトリにimage.binが入ってることを確認したら

load -r -b 0x80100000 image.bin
fis write -b 0x80320000 -f 0xa8260000 -l 0x003f0000

を実行する。結構時間がかかるので待つ。
おわったら

reset
で再起動する。

そしてFONをネットにつながない状態でPCからSSHで192.168.10.1につないでみる。この時さっきPC側で固定したIPをDHCPに戻すのを忘れずに。

SSHでつなぐのが成功したらWinSCPなどを使ってSCPで192.168.10.1につないで/tempにfwlan094-2201.tgzを転送する。
そしたらSSHでつないで

killall fonstate fonsmcd watch_chilli chilli httpd
cd /tmp
tar -xzv -f fwlan094-2201.tgz -C /

とコマンドを打つだけ。この時最後のコマンドを打つとファイルを解答し始めるのだが、これが以外と時間がかかるので根気よく待つ。
そして終わったら

reboot

と入力しエンターを押すと再起動する。

これでFONにFreeWLANが入ってるはずである。

なかなか手順を踏まなければいけないけどこれでFonera+にもFreeWLANを入れることができた。

もしどこかでミスって起動しなくなってしまった場合は

Fonera+を純正ファームに戻してみた

の方法で簡単に元に戻すことができる。

2011年9月6日火曜日

i7になった!

モニタまで壊れやがった!

というわけでモニタが突然つかなくなるという悲劇だったのでモニタまで交換しました。

i7-870は友人が超激安で譲ってくれたのでありがたく使わせていただくことに
マザーとCPUクーラー付き!

というわけでメモリを買わないといけないんだけど超安くなっていたのでついDDR3-1600の8GBセットを二個かってしまった。
16GBも使わないだろうけどクアッドチャンネルに備えて安いうちに買っておこうということでw
Teamの二枚入りセット。永久保証付き

そしてモニタのほうはLEDがいいなーと思っているとLEDバックライトの液晶ってなぜか5ms多いような気がする。2msでLEDバックライト搭載のやつを探したらこれになった。
iiyamaのProLite E2473HDS
HDMIケーブルまで付属してくるし、HDMI端子が二つある。
今まで19インチワイドだったので24インチがさらにでかく感じるー
しかもかなり明るいのでエコモードにして使ってる。それでも明るいけどw

OSはヤフオクで7のUltimateが安く落とせたのでそれを使用w
Proより安かったw

というわけで現状のスペックは
Core i7-870
DDR3-1600 16GB
GeForce 8800GTS
ASrock H55DE3
Hitachi 750GB
Pioneer DVR-111L
Creative X-Fi Titanium
Antec NINEHUNDRED TWO

あとCPUクーラーは忍者参w
サイドパネルのファン固定部品とぎりぎり干渉するけど問題ないレベルだった。

BF3来るまでにグラボ交換しないとなぁ

2011年9月3日土曜日

EMOBILEのGP02買ってみた

モバイルの回線を探していて最初にTry WiMaxをしてみたんだけど結構範囲が狭かったりぎりぎりつながるところでは全然速度が出なかったりしてたので周りの人に相談してみたら意外とEMOBILE使ってる人が多かったのでEMOBILEにしてみた。

しまい髪を切りに行ったときに店長さんがEMOBILEためさせてくれてスピードテストとかしてみたらかなりよかったので契約してみた。そん時のモデムはGP01だったかな。

楽天の88モバイルっていうところで買ったので
月3880円で機種代が1円だった。
一年後に13000円ほどキャッシュバックされるらしい。
ほかにも特典がいろいろついてきた

とりあえず特典の一部であるモバイルバッテリー

GP02は意外とでかい。付属品は充電器とUSBケーブル二本。

iPod touch 4Gと比べるとこの大きさがわかりやすいかも?

こいつはEMOBILE 4GとEMOBILEのエリア両方で使えるので結構広いエリアで使えそう。

とりあえずEMOBILE 4GぎりぎりつながるところにいるのだけどiPod touchで測定したら5Mbps出ました。PCだともうちょっと早いかも?
最大42Mbpsでどこまで出るか楽しみですな