スポンサーサイト

上記の広告は1ヶ月以上更新のないブログに表示されています。
新しい記事を書く事で広告が消せます。

組み込みAndroid #6

組み込みAndroid 2章 プログラム開発環境導入のメモです。
今回は、大きく引っかかった所はなかったので、ポイントだけ ダーっと流します。


Android_Development.jpg


JDKインストール
インストール時、約款の同意はマウスクリックではできない。
「TAB」と「Enter」キーにて対応する


Eclipseインストール
ダウンロードに時間がかかって、ちゃんとダウンロードできなかった。
日を改めてやってみたら大丈夫だった。
tarで展開するときは、前の中途半端なダウンロードのファイルは消してから行うこと
ちゃんとダウンロードしたファイルの名前に_1などがついている場合は消して行うこと


Android SDKインストール
本ではr7となっているが、2011/3/19現在r10になっているので、それをダウンロードした
アップデートプログラムを終了したらADBをリスタートするか?というダイアログが出てきたので Yesを選択した


EclipseにADTインストール
基本的に本書の通りでOK。
途中、ダイアログが出てくるがOKにして進めればよい

本書の2のAdd siteを入力し終わった後は、「Work with:」というところから
プルダウンボックスの「Android SDK -...」というところを選択すれば良い。


Androidエミュレータの設定
本書の通りでOK


環境PATHを通す
ホームディレクトリの「.hashrc」は隠しファイルなので表示する必要ある
GUIの場合、ファイルブラウザでhomeディレクトリにて「表示」→「隠しファイルを表示する」を選び、該当ファイルをダブルクリックしてエディタを起動して追記する

CUIの場合は、「ls -a」で表示される
「gedit ./.bashrc」でエディタが起動するので追記する

userのhomeにandroid SDKを置いている場合、追記するパスは
× export PATH=$PATH:home/user_login_name/android-sdk-linux/tools
○ export PATH=$PATH:/home/user_login_name/android-sdk-linux_x86/tools


adbコマンド実行
Android SDK r10では、adbは「platform-tools」というフォルダに移動している
必要に応じて環境PATHを追加する


ddmsコマンド実行
アラートでエラーが出るが、画面は起動する。


BeagleBoard-xMとPCの接続
BeagleBoard-xMにて、Androidを立ち上げ、USB OnTheGoポートとPC(Ubuntu)を接続して
adb devicesコマンドを打ち込むが以下のように出てしまう
-----------------------------------------------------------------------
$ adb devices
List of devices attached
???????????? no permissions
-----------------------------------------------------------------------
対策は以下の通り。

(1)ruleファイルの内容を確認
/etc/udev/rules.d/51-android.rule というファイルを新規作成するが、
そのとき記述する内容は
× SUBSYSTEM="usb", SYSFS{idVendor}="18d1", MODE="0666"
○ SUBSYSTEM=="usb", SYSFS{idVendor}=="18d1", MODE="0666"

http://developer.android.com/guide/developing/device.html#setting-up
ちなみに、BeagleBoard-xMのベンダーIDは"18d1"

(2)Android側のデバグ設定を有効にしておく
[Application]→[Develop]→[USB Debug]にチェックしておく

(3)adbをroot権限で行う
$ adb kill-server
$ sudo adb start-server
$ adb devices


以上で、開発環境設定終了
お疲れさん!
スポンサーサイト

地デジが「コピー禁止」で視聴できない

東日本大震災、被災された皆様へ心からお見舞い申し上げます。

地震情報や計画停電、原発など、何かとテレビを見る機会が急激に増えました。
PCに地デジチューナーが付いているのですが、ちょっと前から見ることができなくなってしまったため、最近は仕方なくブラウン管のアナログテレビを見ていました。
しかし先ほど、PCで地デジが見られなくなってしまった原因と対策が見つかりましたので、展開したいと思います。

症状
Windows7のWindows Media Centerにて、テレビを見ようとすると以下のように「コピー禁止 放送局によって、このコンテンツのコピーは禁じられています。このコンテンツは録画されたコンピューターでのみ再生できます。」と画面に出て、テレビが視聴できない。
(11_03_16) コピー禁止
ライブの放送を視聴しているのに、上記のようなメッセージが出てしまう。
同様にHDDに録画されているコンテンツも見られない。

検討
Google先生に聞いて、下記の項目などを色々試してみましたがダメ。

・PlayReadyの更新インストール
http://www.fmworld.net/cs/azbyclub/qanavi/jsp/qacontents.jsp?rid=3&PID=0708-7695

・Windowsのシステムの復元
http://pasofaq.jp/windows/accessories/7rstrui.htm

・DRMのレジストリ及びそれに関連するフォルダを削除
http://hibari.2ch.net/test/read.cgi/avi/1283149186/503

結局、ネット上にはOSのクリーンインストールしか無いという情報ばかり。
しかし、しばらく日数が経ってから再検討して、遂に原因がわかった。

原因
McAfee(セキュリティ対策ソフト)のファイアウォール設定

対策
インジケーターに居るMcAfeeのアイコンを右クリック⇒「設定の変更」⇒「ファイアウォール」
「Windows Media Center Receiver Service」のアクセス設定が「ブロック」になっている場合は「許可」に変更する
(11_03_16) 地デジMcafee
その後、PCを再起動するとOK!

意外と簡単な対応で復帰することができました。
同じ症状に陥っている人は、OSのクリーンインストールの前にセキュリティ対策ソフトのファイヤーウォール設定を確認してみてください。

組み込みAndroid #5

Ubuntuにプログラム開発環境をインストールする前に、Beaglebord-xMでAndroidを動かしました。
そのときのメモです

起動microSDカードの作成
まず2GB以上のmicroSDカードを準備。OSはUbuntuを選択。
pre-built Imageをダウンロードして、解凍して、シェルスクリプト(拡張子.sh)を実行してmicroSDカードに起動ファイルを作成(詳細は本書P48~52参照)
2011年3月5日現在では、最新Ver2.2が出ている。それでもOK。

その際、以下の事をミスってエラーになってちょっとハマったので書いておきます。
・コマンドに"LANG=C"を付け忘れないこと
・SDのファイルシステムが例えば"/dev/sdc1"の場合は、デバイス名は"/dev/sdc"と最後の数字が不要であること

これでmicroSDカードにAndroid 2.2(FroYo)の起動ファイルが完成。


Android起動失敗?
BeagleBoard-xMに挿入して、モニターとHDMIで繋がっていることを確認、PCとRS-232Cで繋がっていることを確認して電源をON。

PCのTeraTermに通信ログが次々と表示される。
そしてモニターに"android"のロゴが出る・・・と思いきや 真っ暗!
PCのTeraTermを見ると、以下の所で止まっている
(11_03_05) android起動せず
「warning: 'zygote' uses 32-bit capabilities (legacy support in use)」のワーニングや「target dead」などの文字。
何度やっても、SDカードの作り方を色々変えても、上記のワーニングの所で止まってしまう!
グーグル先生に聞いてもヒントが得られない。
1週間以上 悩みました。


原因と対策
答えは意外な結果でした。
実は正常に起動していたのです。
原因はHDMI。
BeagleBoard-xMのHDMIはフルHDMIにサポートしていないっぽい。
DVI変換しなさいとマニュアルに書いてありました。



The BeagleBoard is equipped with a DVI-D interface that uses an HDMI connector that was selected for its small size. It does not support the full HDMI interface and is used to provide the DVI-D interface portion only. The user must use a HDMI to DVI-D cable or adapter to connect to a LCD monitor. This cable or adapter is not provided with the BeagleBoard. A standard HDMI cable can be used when connecting to a monitor with an HDMI connector.

※BeagleBoard-xM Rev A3 System Reference Manualより引用



解決方法は、HDMI→DVI変換コネクタを使ってDVIでモニターに繋ぐことです。
早速、変換コネクタを買いました。
(11_03_05) android起動せず2

そして、電源ON!

(11_03_05) android起動せず3

(11_03_05) android起動せず4

見事にAndroidが立ち上りました!
小さくガッツポーズ。


今回の教訓:たまにはマニュアルをしっかり読みましょう。
02 | 2011/03 | 04
Su Mo Tu We Th Fr Sa
- - 1 2 3 4 5
6 7 8 9 10 11 12
13 14 15 16 17 18 19
20 21 22 23 24 25 26
27 28 29 30 31 - -
プロフィール

エレクトリックバカ

Author:エレクトリックバカ

ポケコンでプログラミングに目覚め、PICマイコンで電子工作に希望を抱き、来たるべきUGDの時代を夢見て眠る。
そんな うだつが上がらないサラリーメン。
先生、電子工作はおやつに入りますか?




Electric Baka

最新記事
カテゴリ
月別アーカイブ
最新コメント
最新トラックバック
検索フォーム
RSSリンクの表示
リンク
ブロとも申請フォーム

この人とブロともになる

QRコード
QRコード
上記広告は1ヶ月以上更新のないブログに表示されています。新しい記事を書くことで広告を消せます。