Saturday, September 08, 2012

Nexus 7をUbuntuにADB接続

Nexus 7を個人輸入いたしましたので、早速開発機のUbuntu12.04にADB接続して、開発したアプリなどをデバッグできるように設定したいと思います。

【やること】
1.Ubuntu12.04側の設定

1.1まずは念の為にSDKを最新バージョンにアップデートします。
1.2次に、下記公式ページに有ります通り、Nexus 7をudevに認識させる設定をします。
 具体的には/etc/udev/rules.dの中に、nexus 7用の設定ファイルを用意して、
 「ベンダー名」などを記載します。

android@ubuntu:~$ cd /etc/udev/rules.d/

android@ubuntu:/etc/udev/rules.d$ sudo vi 52-android.rules


 ここで、52-android.rulesに下記を記載します。
SUBSYSTEM=="usb", ATTR{idVendor}=="0b05", MODE="0666", GROUP="plugdev"
[2012/9/26修正]
SUBSYSTEM=="usb", ATTR{idVendor}=="18d1", ATTR{idProduct}="4e42", MODE="0666", GROUP="plugdev", OWNER="自分のユーザー名"
ここのidVendorの値はmtp-detectを実行すると表示されます。

そしたら、設定ファイルのアクセス権限を変更します。

android@ubuntu:/etc/udev/rules.d$ sudo chmod a+r 52-android.rules

 最後に、udevを再起動して、nexus 7が接続できる状態にします。

android@ubuntu:/etc/udev/rules.d$ sudo /etc/init.d/udev restart

Rather than invoking init scripts through /etc/init.d, use the service(8)

utility, e.g. service udev restart



Since the script you are attempting to invoke has been converted to an

Upstart job, you may also use the stop(8) and then start(8) utilities,

e.g. stop udev ; start udev. The restart(8) utility is also available.

udev stop/waiting

udev start/running, process 7954


 念の為にADBも再起動しておいてもいいです。

   sudo android-sdk-linux/platform-tools/adb kill-server
   sudo android-sdk-linux/platform-tools/adb start-server



2.Nexus 7側の設定
 簡単です。設定→開発者用オプション→USBデバッギングのチェックボックスをOnにします。

3.Nexus 7をUbuntu12.04にUSBで接続します。


結果→


以上

Sunday, September 02, 2012

Ubuntuでbrotherプリンタのネットワーク接続

brotherでは、デフォルトでWindowsとMac用のドライバを公開しています。
それだけでなく、一部プリンタについてはLPRドライバ+CUPS設定ツールを提供しています。
太っ腹です。

我が家ではbrotherのDCP-J925Nを購入し無線ネットワーク接続して利用しています。
ちょうどいいことにbrotherはDCP-J925N用のドライバ(deb/rpmパッケージ)を公開しています。


今回はこれをインストールすることにしてみます。


1.下記公式ページで、自分の機種がLinux対応であることを確認します。

ここからのやり方はA,B,Cの3つです。
2A.LPRドライバインストール(deb/rpm)
 Ubuntu12.04でdebファイルをダウンロードしてダブルクリックすると、
Ubuntuソフトウェアセンターが現れて「インストール」が選択できますが、
これだと「品質が悪いです」とアラートが出た挙句、最後はインストールが失敗します。

2B.CUPSドライバインストール
試してません。

2C.インストール簡易ツールを使用する
→成功しました。以下に詳細説明します。

2.Linuxドライバインストールツールをダウンロードします。
下記のページの「ダウンロード」をクリックします。


ページの説明通りにsu、gunzipします。
#sudo su(もしくはsu)
#gunzip linux-****.gz<ダウンロードしたファイル名>
#./linux-****<展開されたファイル名>

ツールが起動し、ドライバインストールしますか?など質問に基本的にYで答えます。
最後にDevices URIを指定しますか?と聞かれるので、Yを押します。
ここから環境に依存する選択肢になっています。

私の環境では、予め無線LANに接続したDCP-J925Nが複数に見えました。
  • A.dnssd://Brother%20DCP-J925N._ipp._tcp.local/
  • B.dnssd://Brother**<その他>
  • C.lpr://<プリンタのホスト名>/****
結論から言うとA.が正しいようです。
私は最初C.を選択し設定が完了したのですが、テストプリントをしました、といったあとプリンタがなんの反応もありません。

しょうが無いので、最初のページに書いてあるCUPSの設定手順を実行しました。
ブラウザにてhttp://localhost:631/adminにアクセスします。

(CUPSというプリンタ管理ツールのweb画面が見られます。
もともとCUPSが動いている環境なら問題なく見れます。
また、CUPSなんか使ったことがない環境でも、じつは先程実行した./linux-***コマンドの中で
CUPSサービスを再起動する、必要なパッケージがなければインストールする、というところまでやってくれています)


画面の「プリンターの追加」を選択します。
ネットワークプリンタとしてBrother***が見えていれば、その3つめを選択します。

次の画面で正解がわかるわけです。「接続」の欄に

dnssd://Brother%20DCP-J925N._ipp._tcp.local/

と書いて有ります。最初からこいつを選択すればよかったわけです。
まあ今となってはCUPSで設定をやりきっちゃったほうが早いので「続ける」を選択します。
プリンタのデフォルト印刷設定などを終えると、プリンタ登録完了です。
管理画面に戻って「プリンタの管理」の一覧にプリンタが表示されていれば、そこから
テストプリントなども実行できます。