最近勢いで、中華グッドサイトの www.banggood.com から買い物を始めました。
まあ有名サイトなので大丈夫とは思っているのですが、現在進行形の情報を共有/記録します。
まず、サイトに書かれている時間が配達までに本当にかかるということです。米国や日本の通販業者と比べると遅いです。まあ、安いし配達無料ですので文句は言えないのですが。実際は少額の商品は直接航空便で送られてきます。所謂日本のSAL便なんですかね。発注から9日かかってます。
まあ今日来たものはハンダゴテの今風の銅線モジャモジャクリーナーなんですが、そう変なものではありませんでした。4ドルだし悪くありません。
まあ、同じ時に頼んだ、時計のキット$12と携帯オシロ$57がどうなるかです。
時計のキットもすぐ発送されたので、まあ2/3日すれば付くかな。これとハンダゴテクリーナーはやすいのでトッラキングされませんでしたが、すぐ発送されました。
一方、オシロはなかなかSHIPされませんでした。1週間経った昨日連絡が入って発送とのことです。トラッキング番号が来るのですが、シンガポールで発送されている用だという情報以外は24時間経っても出て来ず大丈夫か不安になります。
まあ、中華ディスカウントサイトですので、この辺は御愛嬌なのでしょう。
まあ、包装は簡単で紙箱はベコベコです。白いスタイロフォームでくるんだだけの黒いビニール袋入りでした。
まあ、こんなもんでしょう。
青木
Thursday, July 16, 2015
Saturday, September 13, 2014
ATmega328Pファームウエアー書き込み
私はMakefileを作って、ARDUINO対応の16MHzファーム書き込みに対応しています。
このMakefileファイルは https://github.com/osamuaoki/avrdude-friend にあります。
$ make set
などとシェルから入力して使ってください。(avrdudeやarduinoパッケージはインストールする必要ががあります)
ここで理解するべき基本は:
MCUがこれで消去して初期化できなくなるケースとして、何かの間違いで外部クロック使用に設定してしまうことがあるそうです。その際はクロックピンに何らかのクロックをいれればなんとか対応できます。
これよりややこしい壊し方をした際には、RESETに12Vをかけてプログラムする高圧パラレルプログラミング(ATINY等では高圧シリアルプログラミング)なのですが、滅多に無いので新しいチップを買う方が安いですね。
Linuxの基本が分かっていればMakefileの意図するところはわかりますよね。分からないときは
などを読んでください。
このMakefileファイルは https://github.com/osamuaoki/avrdude-friend にあります。
$ make set
などとシェルから入力して使ってください。(avrdudeやarduinoパッケージはインストールする必要ががあります)
ここで理解するべき基本は:
- チップの初期状態は、8MHzの内部発振器をプリスケーラーで1/8に分周したのをMCUのクロックで使っている。
- ARDUINO用の状態は、16MHzの外付クリスタル発振器をそのままMCUのクロックで使っている。
- ARDUINO用のファームウエアーをフラッシュに書いたあと読み出せないようにLOCKしている。
- 読み出せないようロックされたのを外すには全消去(erase)しかない。
MCUがこれで消去して初期化できなくなるケースとして、何かの間違いで外部クロック使用に設定してしまうことがあるそうです。その際はクロックピンに何らかのクロックをいれればなんとか対応できます。
これよりややこしい壊し方をした際には、RESETに12Vをかけてプログラムする高圧パラレルプログラミング(ATINY等では高圧シリアルプログラミング)なのですが、滅多に無いので新しいチップを買う方が安いですね。
Linuxの基本が分かっていればMakefileの意図するところはわかりますよね。分からないときは
- https://www.debian.org/doc/manuals/debian-reference/index.ja.html
- https://www.debian.org/doc/manuals/debian-reference/ch12.ja.html#_the_shell_script
- https://www.debian.org/doc/manuals/debian-reference/ch12.ja.html#_make
などを読んでください。
Avrdude 6.1-2 がFT232Rには必要
FT232Rベースのプログラマーを使おうとして最近動かなくなったと言う事ございませんか?
少なくともLinux系ではそのようです。
avrdude中のこのコード部分は「すzのAVR研究」にある「FT245R/FT232R で avrdude (2)」と同じようです。 http://suz-avr.sblo.jp/category/780472-1.html 「すzのAVR研究」からコードがマージされたのがバージョン6以降です。でもどうも最近動かないようでした。
結論としては、どうも使用するスレッドライブラリーでバージョンアップがあり、「すzのAVR研究」も含めてタイミングがルーズなところでアップデートしたライブラリーを使うとレグレッションでコケるようです。これはUPSTREAMで問題になってい、パッチもありました。このパッチを私のところで当てると一発で問題解決しました。
DEBIANにパッチ付きでレポートしたところ、すでに修正されました。Debian/Ubuntuなら6.1-2以降のバージョンなら修正済みです。あと一週間もすればDEBIANのTESTING環境やUBUNTUで使えるようになるでしょう。
https://bugs.debian.org/760764
アップストリームもこのパッチを適用したようなので、まもなくすべて修正されるので安心してください。
https://savannah.nongnu.org/bugs/?40086
実の所、まずTTL-232R-5Vをプログラマー用に買いましたが、それを確認する前に安さに引かれてプログラマー機能内蔵のUncompatinoも買ってしまいました。さてUncompatino用の部品セットに入っているATMega328PにはARDUINOのファームが入っていないので自分で書き込む必要がありAVRDUDEを起動して動かなかったときには焦りました。
ちなみに、FT232R用のコードはft245r.cとft245r.hです。avrftdi.cなどでは無いようです。
少なくともLinux系ではそのようです。
avrdude中のこのコード部分は「すzのAVR研究」にある「FT245R/FT232R で avrdude (2)」と同じようです。 http://suz-avr.sblo.jp/category/780472-1.html 「すzのAVR研究」からコードがマージされたのがバージョン6以降です。でもどうも最近動かないようでした。
結論としては、どうも使用するスレッドライブラリーでバージョンアップがあり、「すzのAVR研究」も含めてタイミングがルーズなところでアップデートしたライブラリーを使うとレグレッションでコケるようです。これはUPSTREAMで問題になってい、パッチもありました。このパッチを私のところで当てると一発で問題解決しました。
DEBIANにパッチ付きでレポートしたところ、すでに修正されました。Debian/Ubuntuなら6.1-2以降のバージョンなら修正済みです。あと一週間もすればDEBIANのTESTING環境やUBUNTUで使えるようになるでしょう。
https://bugs.debian.org/760764
アップストリームもこのパッチを適用したようなので、まもなくすべて修正されるので安心してください。
https://savannah.nongnu.org/bugs/?40086
実の所、まずTTL-232R-5Vをプログラマー用に買いましたが、それを確認する前に安さに引かれてプログラマー機能内蔵のUncompatinoも買ってしまいました。さてUncompatino用の部品セットに入っているATMega328PにはARDUINOのファームが入っていないので自分で書き込む必要がありAVRDUDEを起動して動かなかったときには焦りました。
ちなみに、FT232R用のコードはft245r.cとft245r.hです。avrftdi.cなどでは無いようです。
FT-232Rベースのプログラマー作成方法集
ATmega/ATtinyなどのファームウエアーを最初に書き込む際には、専用のプログラマーが必要です。
もちろんARDUINOを一つ持っていれば、教科書通り新品のATMega328Pにブートローダーを書き込むことができます。http://arduino.cc/en/Tutorial/ArduinoISP
何かの拍子でARDUINO上のATMega328Pを壊すと回復不能のようで不安ですよね。ARDUINOに頼らずにプログラマーを確保する一番簡単な方法はFT-232Rを使うプログラマーです。この際ホストPC側のプログラムにはAVRDUDEというプログラム(6.1-2以降)が必要です。(この話は後で書きます)
ここで重要なのは、FT232Rというのは単なる非同期シリアルへの変換だけでなくかなり高機能な同期シリアル変換機能を持っているということです。この機能を使うと「遅い」といわれたシリアルポートを使ったbitbang(ビット叩き)とは異次元の高速書き込みができることです。
FTDI製のFT-232Rという石はUNOになる前のUSBのARDUINO duemilenoveには乗っていて、この場合うまくジャンパー飛ばしてつなげばプログラマーとして使えるとのことです。
http://www.geocities.jp/arduino_diecimila/bootloader/index_en.html
この特性に注目した設計をされているUncompatinoというARDUINO (UNOの前の)Duemilenove (半)互換ボードは、通常のICSPコネクターはないもののボード上のFT232Rチップを使ってブートローダーを書き込めるようにできたショートピン2*4本が立っています。(たしか基板+部品で1300円程度とお買い得ですが、表面実装のFT-232Rの半田づけがあるので中上級者用)
http://akizukidenshi.com/catalog/g/gP-07487/
http://akizukidenshi.com/download/ds/akizuki/k6096_manual_20130816.pdf
またTTL-232R-5Vという、既製のUSBからTTLレベル非同期シリアル変換ケーブルもプログラマーとして使えるはずです。
http://www.ftdichip.com/Products/Cables/USBTTLSerial.htm
http://www.ftdichip.com/Support/Documents/DataSheets/Cables/DS_TTL-232R_CABLES.pdf
具体的には上記ケーブル(私は秋月で1,580円で購入)とICSP用の6PINメスが両方についたケーブル(私はマルツで【LFCBL06-01】6ピンフラットケーブルを154円で購入)を購入します。6PINにコネクターのみを探してもまず見つからないし高いので注意しましょう。そして2列のピンヘッダーを3+1+9=13本の幅で切り出しこれの後ろ側を半田付で結線するだけでアダプターになります。(コネクター間に1本分余裕が要ります)
# TTL-232R GND 1 Black -> ICPS GND (6 pin)
# TTL-232R CTS 2 Brown -> ICPS MOSI (4 pin)
# TTL-232R VCC 3 Red -> ICPS VCC (2 pin)
# TTL-232R TXD 4 Orange -> ICPS RESET (5 pin)
# TTL-232R RXD 5 Yellow -> ICPS SCK (3 pin)
# TTL-232R RTS 6 Green -> ICPS MISO (1 pin)
実写真へのリンク: 配線直後 と 安定化後(ホットメルトの接着剤で固めて配線が切れたりするのを防止。半田付け/接着剤の両工程はピンヘッダーをブレッドボードなどに刺し固定して行うこと。途中で動かすとピンが動いてしまいます。)
GNDとVCC以外はAVRDUDEの設定でなんとでもなるので、配線しやすいようにしてください。(以下の表のD0-D7の数字をavrdude.confや~/.arduino/.avrduderc内のprogramer設定で使用します。ICの脚番号、ソケットの番号とうややこしいので要注意。)
もちろんARDUINOを一つ持っていれば、教科書通り新品のATMega328Pにブートローダーを書き込むことができます。http://arduino.cc/en/Tutorial/ArduinoISP
何かの拍子でARDUINO上のATMega328Pを壊すと回復不能のようで不安ですよね。ARDUINOに頼らずにプログラマーを確保する一番簡単な方法はFT-232Rを使うプログラマーです。この際ホストPC側のプログラムにはAVRDUDEというプログラム(6.1-2以降)が必要です。(この話は後で書きます)
ここで重要なのは、FT232Rというのは単なる非同期シリアルへの変換だけでなくかなり高機能な同期シリアル変換機能を持っているということです。この機能を使うと「遅い」といわれたシリアルポートを使ったbitbang(ビット叩き)とは異次元の高速書き込みができることです。
FTDI製のFT-232Rという石はUNOになる前のUSBのARDUINO duemilenoveには乗っていて、この場合うまくジャンパー飛ばしてつなげばプログラマーとして使えるとのことです。
http://www.geocities.jp/arduino_diecimila/bootloader/index_en.html
この特性に注目した設計をされているUncompatinoというARDUINO (UNOの前の)Duemilenove (半)互換ボードは、通常のICSPコネクターはないもののボード上のFT232Rチップを使ってブートローダーを書き込めるようにできたショートピン2*4本が立っています。(たしか基板+部品で1300円程度とお買い得ですが、表面実装のFT-232Rの半田づけがあるので中上級者用)
http://akizukidenshi.com/catalog/g/gP-07487/
http://akizukidenshi.com/download/ds/akizuki/k6096_manual_20130816.pdf
またTTL-232R-5Vという、既製のUSBからTTLレベル非同期シリアル変換ケーブルもプログラマーとして使えるはずです。
http://www.ftdichip.com/Products/Cables/USBTTLSerial.htm
http://www.ftdichip.com/Support/Documents/DataSheets/Cables/DS_TTL-232R_CABLES.pdf
具体的には上記ケーブル(私は秋月で1,580円で購入)とICSP用の6PINメスが両方についたケーブル(私はマルツで【LFCBL06-01】6ピンフラットケーブルを154円で購入)を購入します。6PINにコネクターのみを探してもまず見つからないし高いので注意しましょう。そして2列のピンヘッダーを3+1+9=13本の幅で切り出しこれの後ろ側を半田付で結線するだけでアダプターになります。(コネクター間に1本分余裕が要ります)
# TTL-232R GND 1 Black -> ICPS GND (6 pin)
# TTL-232R CTS 2 Brown -> ICPS MOSI (4 pin)
# TTL-232R VCC 3 Red -> ICPS VCC (2 pin)
# TTL-232R TXD 4 Orange -> ICPS RESET (5 pin)
# TTL-232R RXD 5 Yellow -> ICPS SCK (3 pin)
# TTL-232R RTS 6 Green -> ICPS MISO (1 pin)
実写真へのリンク: 配線直後 と 安定化後(ホットメルトの接着剤で固めて配線が切れたりするのを防止。半田付け/接着剤の両工程はピンヘッダーをブレッドボードなどに刺し固定して行うこと。途中で動かすとピンが動いてしまいます。)
FT232RL
|
|||||
FT232RL
|
Bit-banging
data
|
Diecimila/Duemilnove
|
TTL-232R
|
ttl232r Adapter
|
Uncompatino
|
TXD
(1)
|
D0
|
4
ORANGE
|
5
(RESET)
|
→
2 ATmega
|
|
RXD
(5)
|
D1
|
5
YELLOW
|
3
(SCK)
|
→
3 ATmega
|
|
RTS#
(3)
|
D2
|
6
GREEN
|
1
(MISO)
|
||
CTS#
(11)
|
D3
|
X3-1
|
2
BROWN
|
4
(MOSI)
|
o
o→ MISO
|
DTR#
(2)
|
D4
|
||||
DSR#
(9)
|
D5
|
X3-2
|
o
o→ SCK
|
||
DCD#
(10)
|
D6
|
X3-3
|
o
o→ MOSI
|
||
RI#
(6)
|
D7
|
X3-4
|
o
o→ RESET
|
||
VCC
|
3
RED
|
2
(VCC)
|
|||
GND
|
1
BLACK
|
6
(GND)
|
|||
Arduino
main MCU side
|
||
ATMega328
|
ICPS
|
Arduino
|
MOSI (17)
|
4
|
J3-4 (D11)
|
MISO (18)
|
1
|
J3-5 (D12)
|
SCK (19)
|
3
|
J3-6 (D13)
|
RESET (1)
|
5
|
Switch
|
VCC
|
2
|
|
GND
|
6
|
|
AVRDUDE: -c ttl232r と指定してください。本結線に合わせた設定になります。
(-c ft232r では「Device is not responding to program enable. Check connection.」といわれて動きません。ご注意ください)
(-c ft232r では「Device is not responding to program enable. Check connection.」といわれて動きません。ご注意ください)
Friday, August 29, 2014
Arduino Uno Rev. 3 + Akizuki modules: LIS3DH (accelerometer) L3GD20 (Gyroscope)
秋葉原の秋月でArduinoを買いました。
合せてSTのチップを使ったセンサーモジュールのLIS3DH (accelerometer) L3GD20 (Gyroscope)もゲットしました。
秋月のLIS3DH同封説明書には、12ビットデーターとあるが、STのデーターシートにはデーター出力は16ビットとあることからして少々不安。確かに感度とレンジを見ると符号込みで12ビットの有効数字のようで、読み出しが16ビットに収まるということのようですね。
ArduinoのC++では「int」が16 bit signed integer と気付くのに時間がかかるなど、少々手間取りましたが、データーシートとApplication notesを読みながら何とかこれらセンサーをSPI 経由で同時接続して何とかデーターを取り込むことができたので、ここに置いておきます。
以下のコード部分で文字化けしました。またFET内蔵保護ダイオードの向きが逆でした。うまく編集できないので、ここにコメントしておきます。
1: VDD
2: SPC <= SCK (D13) (P19)
3: SDI <= MOSI(D11) (P17)
4: SDO => MISO(D12) (P18)
5: CS <= (D9) (P15)
ST L3GD20 3-axis gyroscope pins: (larger 14 pins)
1: VDD
2,10,14: GND
3: SPC <= SCK (D13) (P19)
4: SDI <= MOSI(D11) (P17)
5: SDO => MISO(D12) (P18)
6: CS <= (D10) (P16)
このおもちゃ、飽きるまで当分遊べそうです。
プログラムここにはって置いたのでは使いにくいので、GITHUBに置きました。
https://github.com/osamuaoki/avrdude-friend
本設定はAVRDUDEに組み込まれました。「-c uncompatino」で呼び出してください。
5V-3,3Vのレベルシフト回路ですが、Gを3.3Vのみに接続と修正済としたアスキーアートを残します。
Both sensors runs under 3.3V. These are connected to Arduino via FET gate follower V-converter circuits. Bidirectional level shift was done with the following for all I/O with Arduino/Sensors.
合せてSTのチップを使ったセンサーモジュールのLIS3DH (accelerometer) L3GD20 (Gyroscope)もゲットしました。
秋月のLIS3DH同封説明書には、12ビットデーターとあるが、STのデーターシートにはデーター出力は16ビットとあることからして少々不安。確かに感度とレンジを見ると符号込みで12ビットの有効数字のようで、読み出しが16ビットに収まるということのようですね。
ArduinoのC++では「int」が16 bit signed integer と気付くのに時間がかかるなど、少々手間取りましたが、データーシートとApplication notesを読みながら何とかこれらセンサーをSPI 経由で同時接続して何とかデーターを取り込むことができたので、ここに置いておきます。
以下のコード部分で文字化けしました。またFET内蔵保護ダイオードの向きが逆でした。うまく編集できないので、ここにコメントしておきます。
1: VDD
2: SPC <= SCK (D13) (P19)
3: SDI <= MOSI(D11) (P17)
4: SDO => MISO(D12) (P18)
5: CS <= (D9) (P15)
ST L3GD20 3-axis gyroscope pins: (larger 14 pins)
1: VDD
2,10,14: GND
3: SPC <= SCK (D13) (P19)
4: SDI <= MOSI(D11) (P17)
5: SDO => MISO(D12) (P18)
6: CS <= (D10) (P16)
このおもちゃ、飽きるまで当分遊べそうです。
プログラムここにはって置いたのでは使いにくいので、GITHUBに置きました。
https://github.com/osamuaoki/avrdude-friend
本設定はAVRDUDEに組み込まれました。「-c uncompatino」で呼び出してください。
5V-3,3Vのレベルシフト回路ですが、Gを3.3Vのみに接続と修正済としたアスキーアートを残します。
Both sensors runs under 3.3V. These are connected to Arduino via FET gate follower V-converter circuits. Bidirectional level shift was done with the following for all I/O with Arduino/Sensors.
2N7002K
3.3V o------+-----------+ +-------o 5V
| | |
10 Kohm Z ===== Z 10 Kohm
Z S | ^ | D Z
| | | | |
Sig 3.3V o------+------+--+-+ +--+-----+-------o Sig 5V
| |
+---|<|---+
(Internal diode of 2N7002K)
Tuesday, April 22, 2014
Android 開発環境(Debian)
別に本当に開発をするわけでもないけど、Debian unstable/sid環境下でのAndroid開発を作ってみました。
$
$
そこで、METAキー(Windowsキー)を押し、eclipseと打ち、出たアイコンを叩きeclipseを起動します。Workspace launcher は素直にデフォルトの「/home/osamu/workspace」としました。
ADT Pluginの導入ですが、https://developer.android.com/tools/sdk/eclipse-adt.html から読み出し、https://developer.android.com/sdk/installing/installing-adt.html にある手順を踏み、Help−>Install new softwareと進み、work withにADT のサイトの「https://dl-ssl.google.com/android/eclipse/」を入れます。(androidと命名しました)そしてすべてインストールします。
「SDK Manager is missing ...」とかのメッセージがでるので、素直に「Open SDK Manager」のボタンを押す。(たしか最初どこかの段階でSDKの場所を聞かれ、「/home/osamu/android/sdk」と入力した)
~/.bashrcに「PATH=${PATH}:~/android/sdk/tools」を加えます。ターミナルを再起動しshellを更新します。
android sdkとしてインストールを完了。(Toolsだけは全部選びません。最新バージョンだけ選びました)
だいぶ改善するようですが一部うまくいっていません。今日は悩まず、ここでeclipseを再起動します。
当分、チュートリアルをフォローして遊びます。今日はここまで。
PS: STPでの接続でFilerのDevicesにNexus 5が見えなくなってます。パッケージアップグレードで起こったバグかな?とりあえず困らないので放置です。
開発環境整備は情報が多すぎ何処からとりかかるか迷うが、Debian sid/testing (2014)環境ベースだと、http://developer.android.com/sdk/installing/index.html に従うこととなる。
とりあえずSDKとNDKをHOMEのandroidディレクトリにアーカイブで落とす。
- SDK => 展開し、ディレクトリ名をすっきりした~/android/sdk へ変更
- NDK => 展開し、ディレクトリ名をすっきりした~/android/ndk へ変更
- http://developer.android.com/tools/sdk/ndk/index.html
- wget http://dl.google.com/android/ndk/android-ndk-r9d-linux-x86_64.tar.bz2
$
sudo apt-get install openjdk-7-jdk openjdk-7-jre$
sudo apt-get install eclipse eclipse-egit そこで、METAキー(Windowsキー)を押し、eclipseと打ち、出たアイコンを叩きeclipseを起動します。Workspace launcher は素直にデフォルトの「/home/osamu/workspace」としました。
ADT Pluginの導入ですが、https://developer.android.com/tools/sdk/eclipse-adt.html から読み出し、https://developer.android.com/sdk/installing/installing-adt.html にある手順を踏み、Help−>Install new softwareと進み、work withにADT のサイトの「https://dl-ssl.google.com/android/eclipse/」を入れます。(androidと命名しました)そしてすべてインストールします。
「SDK Manager is missing ...」とかのメッセージがでるので、素直に「Open SDK Manager」のボタンを押す。(たしか最初どこかの段階でSDKの場所を聞かれ、「/home/osamu/android/sdk」と入力した)
とにかく自動選択されるものを、毎回ライセンスを受け入れることにチェックしてインストールする事を繰り返します。(うんざり)なんか中途半端にインストールされている気がします。
~/.bashrcに「PATH=${PATH}:~/android/sdk/tools」を加えます。ターミナルを再起動しshellを更新します。
android sdkとしてインストールを完了。(Toolsだけは全部選びません。最新バージョンだけ選びました)
だいぶ改善するようですが一部うまくいっていません。今日は悩まず、ここでeclipseを再起動します。
当分、チュートリアルをフォローして遊びます。今日はここまで。
PS: STPでの接続でFilerのDevicesにNexus 5が見えなくなってます。パッケージアップグレードで起こったバグかな?とりあえず困らないので放置です。
Sunday, April 20, 2014
Nexus 5 購入、即 Debian を用いてroot化
久しぶりに新電子機器購入。 Nexus 5 / 32 MB (Google Play版) (シンガポールから送られてきます)
SIMは別途IIJmioのSMS option付きベーシックプラン(音声なし)を Bic Cameraで購入。
早速Debian GNU/Linux Jessie/Sid with Gnome 3システムUSBでつなぐと、Gnome Filerで何かファイルが見えるではありませんか。mountされたファイルシステムに対応するものがないので、何故かなと思っていると、どうも最近はメディア転送プロトコル(MTP)とか言うしゃれたことでファイルにアクセスするようだ。
携帯電話躯体の蓋を開けハードの中を覗きたい衝動を抑え、兎に角ソフトの中を見ることで我慢することにする。
XDA Developer http://forum.xda-developers.com/google-nexus-5 に従うことにした。root の取り方は、http://forum.xda-developers.com/google-nexus-5/#root にある(少々古い環境前提)情報が基本。現在のDebian sid/jessieのマルチアーチ対応済みの64 bit環境でルート化のために32bitアプリを走らすのは、上記に書かれているようにlib32z1 lib32ncurses5 lib32bz2-1.0 lib32stdc++6等をインストールする代わりに対応するlibz1:i386 (実際はこれはバーチャルパッケージなのでzlib1g:i386 をインストール)等をインストールするのが準備となります。以下その手順のおさらい:
上記ページにあるWEBビデオを見ればGUIベースでどうするかが英語でわかりやすく説明されています。
ここでPC(Debian)のシェルからadbコマンドが動きNexus 5 にアクセスでき、Nexus 5にシェルでアクセスでき、さらにrootまでとれました。
$ adb shell
* daemon not running. starting it now on port 5037 *
* daemon started successfully *
shell@hammerhead:/ $ su
root@hammerhead:/ # mount
rootfs / rootfs ro,relatime 0 0
tmpfs /dev tmpfs rw,seclabel,nosuid,relatime,mode=755 0 0
devpts /dev/pts devpts rw,seclabel,relatime,mode=600 0 0
none /dev/cpuctl cgroup rw,relatime,cpu 0 0
proc /proc proc rw,relatime 0 0
sysfs /sys sysfs rw,seclabel,relatime 0 0
selinuxfs /sys/fs/selinux selinuxfs rw,relatime 0 0
debugfs /sys/kernel/debug debugfs rw,relatime 0 0
none /sys/fs/cgroup tmpfs rw,seclabel,relatime,mode=750,gid=1000 0 0
none /acct cgroup rw,relatime,cpuacct 0 0
tmpfs /mnt/asec tmpfs rw,seclabel,relatime,mode=755,gid=1000 0 0
tmpfs /mnt/obb tmpfs rw,seclabel,relatime,mode=755,gid=1000 0 0
/dev/block/platform/msm_sdcc.1/by-name/system /system ext4 ro,seclabel,relatime,data=ordered 0 0
/dev/block/platform/msm_sdcc.1/by-name/userdata /data ext4 rw,seclabel,nosuid,nodev,noatime,nomblk_io_submit,noauto_da_alloc,errors=panic,data=ordered 0 0
/dev/block/platform/msm_sdcc.1/by-name/cache /cache ext4 rw,seclabel,nosuid,nodev,noatime,nomblk_io_submit,noauto_da_alloc,errors=panic,data=ordered 0 0
/dev/block/platform/msm_sdcc.1/by-name/persist /persist ext4 rw,seclabel,nosuid,nodev,relatime,nomblk_io_submit,nodelalloc,errors=panic,data=ordered 0 0
/dev/block/platform/msm_sdcc.1/by-name/modem /firmware vfat ro,relatime,uid=1000,gid=1000,fmask=0337,dmask=0227,codepage=cp437,iocharset=iso8859-1,shortname=lower,errors=remount-ro 0 0
/dev/fuse /mnt/shell/emulated fuse rw,nosuid,nodev,relatime,user_id=1023,group_id=1023,default_permissions,allow_other 0 0
tmpfs /storage/emulated tmpfs rw,seclabel,nosuid,nodev,relatime,mode=050,gid=1028 0 0
/dev/fuse /storage/emulated/0 fuse rw,nosuid,nodev,relatime,user_id=1023,group_id=1023,default_permissions,allow_other 0 0
/dev/fuse /storage/emulated/0/Android/obb fuse rw,nosuid,nodev,relatime,user_id=1023,group_id=1023,default_permissions,allow_other 0 0
/dev/fuse /storage/emulated/legacy fuse rw,nosuid,nodev,relatime,user_id=1023,group_id=1023,default_permissions,allow_other 0 0
/dev/fuse /storage/emulated/legacy/Android/obb fuse rw,nosuid,nodev,relatime,user_id=1023,group_id=1023,default_permissions,allow_other 0 0
127|root@hammerhead:/ # set
ANDROID_ASSETS=/system/app
ANDROID_BOOTLOGO=1
ANDROID_DATA=/data
ANDROID_PROPERTY_WORKSPACE=9,0
ANDROID_ROOT=/system
ANDROID_SOCKET_adbd=10
ANDROID_STORAGE=/storage
ASEC_MOUNTPOINT=/mnt/asec
BASHPID=5692
BOOTCLASSPATH=/system/framework/core.jar:/system/framework/conscrypt.jar:/system/framework/okhttp.jar:/system/framework/core-junit.jar:/system/framework/bouncycastle.jar:/system/framework/ext.jar:/system/framework/framework.jar:/system/framework/framework2.jar:/system/framework/telephony-common.jar:/system/framework/voip-common.jar:/system/framework/mms-common.jar:/system/framework/android.policy.jar:/system/framework/services.jar:/system/framework/apache-xml.jar:/system/framework/webviewchromium.jar
COLUMNS
EMULATED_STORAGE_SOURCE=/mnt/shell/emulated
EMULATED_STORAGE_TARGET=/storage/emulated
EPOCHREALTIME=1397982119.027531
EXTERNAL_STORAGE=/storage/emulated/legacy
HOME=/
HOSTNAME=hammerhead
IFS=$' \t\n'
KSHEGID=0
KSHGID=0
KSHUID=0
KSH_VERSION='@(#)MIRBSD KSH R43 2013/02/19'
LD_LIBRARY_PATH=/vendor/lib:/system/lib
LINES
LOGNAME=root
LOOP_MOUNTPOINT=/mnt/obb
MKSH=/system/bin/sh
OPTIND=1
PATH=/sbin:/vendor/bin:/system/sbin:/system/bin:/system/xbin
PGRP=5692
PIPESTATUS[0]=127
PPID=5690
PS1='$(precmd)$USER@$HOSTNAME:${PWD:-?} # '
PS2='> '
PS3='#? '
PS4='+ '
PWD=/
RANDOM=7260
SECONDS=357
SHELL=/tmp-mksh/tmp-mksh
TERM=vt100
TMOUT=0
USER=root
USER_ID=0
_=set
root@hammerhead:/ #
SIMは別途IIJmioのSMS option付きベーシックプラン(音声なし)を Bic Cameraで購入。
早速Debian GNU/Linux Jessie/Sid with Gnome 3システムUSBでつなぐと、Gnome Filerで何かファイルが見えるではありませんか。mountされたファイルシステムに対応するものがないので、何故かなと思っていると、どうも最近はメディア転送プロトコル(MTP)とか言うしゃれたことでファイルにアクセスするようだ。
携帯電話躯体の蓋を開けハードの中を覗きたい衝動を抑え、兎に角ソフトの中を見ることで我慢することにする。
XDA Developer http://forum.xda-developers.com/google-nexus-5 に従うことにした。root の取り方は、http://forum.xda-developers.com/google-nexus-5/#root にある(少々古い環境前提)情報が基本。現在のDebian sid/jessieのマルチアーチ対応済みの64 bit環境でルート化のために32bitアプリを走らすのは、上記に書かれているようにlib32z1 lib32ncurses5 lib32bz2-1.0 lib32stdc++6等をインストールする代わりに対応するlibz1:i386 (実際はこれはバーチャルパッケージなのでzlib1g:i386 をインストール)等をインストールするのが準備となります。以下その手順のおさらい:
- Nexus 5はOSでのホスト名が「hammerhead」ですので、これが別名です。
- Wifi環境を確保する。
- http://autoroot.chainfire.eu/ にいき、nexus 5を探す。Nexus 5 はFastboot flashable devicesです。
- http://download.chainfire.eu/363/CF-Root/CF-Auto-Root/CF-Auto-Root-hammerhead-hammerhead-nexus5.zipをPC (Debian)にダウンロード。
- zip fileの解凍して、できたディレクトリーの中に入る。
- "chmod +x root-linux.sh" を実行し、このスクリプトを実行可能にする。
- 必要パッケージのAPTからの導入(SDK自体の導入や、PATH設定はしなくてOK)
- android-tools-adb - Android Debug Bridge CLI tool
- android-tools-fastboot - Android Fastboot protocol CLI tool
- android-tools-fsutils - Android ext4 utilities with sparse support
- Nexus 5 を起動、Developer modeにします。(設定->端末情報を7回連続タップ)
- 開発者モードが見えるようになったら、中のUSB Debugにチェックをいれます。
- Nexus 5の電源スイッチを押し、完全に「電源を切」ります。
- USBでNexus 5 をPCに継ぎます
- 再びNexus 5の「電源ボタン」と「ボリュームダウンボタン」の同時押しでfastboot再起動します。
- このfastboot のキーはデバイスごとに違います:Booting into fastboot mode 参照
- "./root-linux.sh"と実行
- スクリーン表示に従いすすむ。
- データーを消すので、もし何か大事なデーターを入れている際には事前バックアップが必要です。私は何も無かったので、全く気にしませんでした。
上記ページにあるWEBビデオを見ればGUIベースでどうするかが英語でわかりやすく説明されています。
ここでPC(Debian)のシェルからadbコマンドが動きNexus 5 にアクセスでき、Nexus 5にシェルでアクセスでき、さらにrootまでとれました。
$ adb shell
* daemon not running. starting it now on port 5037 *
* daemon started successfully *
shell@hammerhead:/ $ su
root@hammerhead:/ # mount
rootfs / rootfs ro,relatime 0 0
tmpfs /dev tmpfs rw,seclabel,nosuid,relatime,mode=755 0 0
devpts /dev/pts devpts rw,seclabel,relatime,mode=600 0 0
none /dev/cpuctl cgroup rw,relatime,cpu 0 0
proc /proc proc rw,relatime 0 0
sysfs /sys sysfs rw,seclabel,relatime 0 0
selinuxfs /sys/fs/selinux selinuxfs rw,relatime 0 0
debugfs /sys/kernel/debug debugfs rw,relatime 0 0
none /sys/fs/cgroup tmpfs rw,seclabel,relatime,mode=750,gid=1000 0 0
none /acct cgroup rw,relatime,cpuacct 0 0
tmpfs /mnt/asec tmpfs rw,seclabel,relatime,mode=755,gid=1000 0 0
tmpfs /mnt/obb tmpfs rw,seclabel,relatime,mode=755,gid=1000 0 0
/dev/block/platform/msm_sdcc.1/by-name/system /system ext4 ro,seclabel,relatime,data=ordered 0 0
/dev/block/platform/msm_sdcc.1/by-name/userdata /data ext4 rw,seclabel,nosuid,nodev,noatime,nomblk_io_submit,noauto_da_alloc,errors=panic,data=ordered 0 0
/dev/block/platform/msm_sdcc.1/by-name/cache /cache ext4 rw,seclabel,nosuid,nodev,noatime,nomblk_io_submit,noauto_da_alloc,errors=panic,data=ordered 0 0
/dev/block/platform/msm_sdcc.1/by-name/persist /persist ext4 rw,seclabel,nosuid,nodev,relatime,nomblk_io_submit,nodelalloc,errors=panic,data=ordered 0 0
/dev/block/platform/msm_sdcc.1/by-name/modem /firmware vfat ro,relatime,uid=1000,gid=1000,fmask=0337,dmask=0227,codepage=cp437,iocharset=iso8859-1,shortname=lower,errors=remount-ro 0 0
/dev/fuse /mnt/shell/emulated fuse rw,nosuid,nodev,relatime,user_id=1023,group_id=1023,default_permissions,allow_other 0 0
tmpfs /storage/emulated tmpfs rw,seclabel,nosuid,nodev,relatime,mode=050,gid=1028 0 0
/dev/fuse /storage/emulated/0 fuse rw,nosuid,nodev,relatime,user_id=1023,group_id=1023,default_permissions,allow_other 0 0
/dev/fuse /storage/emulated/0/Android/obb fuse rw,nosuid,nodev,relatime,user_id=1023,group_id=1023,default_permissions,allow_other 0 0
/dev/fuse /storage/emulated/legacy fuse rw,nosuid,nodev,relatime,user_id=1023,group_id=1023,default_permissions,allow_other 0 0
/dev/fuse /storage/emulated/legacy/Android/obb fuse rw,nosuid,nodev,relatime,user_id=1023,group_id=1023,default_permissions,allow_other 0 0
127|root@hammerhead:/ # set
ANDROID_ASSETS=/system/app
ANDROID_BOOTLOGO=1
ANDROID_DATA=/data
ANDROID_PROPERTY_WORKSPACE=9,0
ANDROID_ROOT=/system
ANDROID_SOCKET_adbd=10
ANDROID_STORAGE=/storage
ASEC_MOUNTPOINT=/mnt/asec
BASHPID=5692
BOOTCLASSPATH=/system/framework/core.jar:/system/framework/conscrypt.jar:/system/framework/okhttp.jar:/system/framework/core-junit.jar:/system/framework/bouncycastle.jar:/system/framework/ext.jar:/system/framework/framework.jar:/system/framework/framework2.jar:/system/framework/telephony-common.jar:/system/framework/voip-common.jar:/system/framework/mms-common.jar:/system/framework/android.policy.jar:/system/framework/services.jar:/system/framework/apache-xml.jar:/system/framework/webviewchromium.jar
COLUMNS
EMULATED_STORAGE_SOURCE=/mnt/shell/emulated
EMULATED_STORAGE_TARGET=/storage/emulated
EPOCHREALTIME=1397982119.027531
EXTERNAL_STORAGE=/storage/emulated/legacy
HOME=/
HOSTNAME=hammerhead
IFS=$' \t\n'
KSHEGID=0
KSHGID=0
KSHUID=0
KSH_VERSION='@(#)MIRBSD KSH R43 2013/02/19'
LD_LIBRARY_PATH=/vendor/lib:/system/lib
LINES
LOGNAME=root
LOOP_MOUNTPOINT=/mnt/obb
MKSH=/system/bin/sh
OPTIND=1
PATH=/sbin:/vendor/bin:/system/sbin:/system/bin:/system/xbin
PGRP=5692
PIPESTATUS[0]=127
PPID=5690
PS1='$(precmd)$USER@$HOSTNAME:${PWD:-?} # '
PS2='> '
PS3='#? '
PS4='+ '
PWD=/
RANDOM=7260
SECONDS=357
SHELL=/tmp-mksh/tmp-mksh
TERM=vt100
TMOUT=0
USER=root
USER_ID=0
_=set
root@hammerhead:/ #
root@hammerhead:/ # cd /system/bin
root@hammerhead:/system/bin # ls -la
drwxrwxrwx root root 1970-01-26 22:38 .ext
-rwxr-xr-x root shell 109008 2013-12-05 08:53 adb
-rwxr-xr-x root shell 210 2013-12-05 08:53 am
-rwxr-xr-x root shell 9560 2013-12-05 08:53 app_process
-rwxr-xr-x root shell 53660 2013-12-05 08:53 applypatch
-rwxr-xr-x root shell 17952 2013-12-05 08:53 atrace
-rwxr-xr-x root shell 9456 2013-12-05 08:53 bdAddrLoader
-rwxr-xr-x root shell 9568 2013-12-05 08:53 blkid
-rwxr-xr-x root shell 199 2013-12-05 08:53 bmgr
-rwxr-xr-x root shell 21852 2013-12-05 08:53 bootanimation
-rwxr-xr-x root shell 34448 2013-12-05 08:53 bridgemgrd
-rwxr-xr-x root shell 156 2013-12-05 08:53 bu
-rwxr-xr-x root shell 5408 2013-12-05 08:53 bugreport
lrwxr-xr-x root shell 2013-12-05 09:39 cat -> toolbox
lrwxr-xr-x root shell 2013-12-05 09:39 chcon -> toolbox
lrwxr-xr-x root shell 2013-12-05 09:39 chmod -> toolbox
lrwxr-xr-x root shell 2013-12-05 09:39 chown -> toolbox
-rwxr-xr-x root shell 21840 2013-12-05 08:53 clatd
lrwxr-xr-x root shell 2013-12-05 09:39 clear -> toolbox
lrwxr-xr-x root shell 2013-12-05 09:39 cmp -> toolbox
-rwxr-xr-x root shell 207 2013-12-05 08:53 content
lrwxr-xr-x root shell 2013-12-05 09:39 cp -> toolbox
-rwxr-xr-x root shell 9504 2013-12-05 08:53 dalvikvm
lrwxr-xr-x root shell 2013-12-05 09:39 date -> toolbox
lrwxr-xr-x root shell 2013-12-05 09:39 dd -> toolbox
-rwxr-xr-x root shell 21792 2013-12-05 08:53 debuggerd
-rwxr-xr-x root shell 62804 2013-12-05 08:53 dex2oat
-rwxr-xr-x root shell 9452 2013-12-05 08:53 dexopt
lrwxr-xr-x root shell 2013-12-05 09:39 df -> toolbox
-rwxr-xr-x root shell 67032 2013-12-05 08:53 dhcpcd
-rwxr-xr-x root shell 5464 2013-12-05 08:53 diag_klog
-rwxr-xr-x root shell 14264 2013-12-05 08:53 diag_mdlog
lrwxr-xr-x root shell 2013-12-05 09:39 dmesg -> toolbox
-rwxr-xr-x root shell 105864 2013-12-05 08:53 dnsmasq
-rwxr-xr-x root shell 50520 2013-12-05 08:53 drmserver
-rwxr-xr-x root shell 58848 2013-12-05 08:53 ds_fmc_appd
lrwxr-xr-x root shell 2013-12-05 09:39 du -> toolbox
-rwxr-xr-x root shell 42336 2013-12-05 08:53 dumpstate
-rwxr-xr-x root shell 9500 2013-12-05 08:53 dumpsys
-rwxr-xr-x root shell 122568 2013-12-05 08:53 e2fsck
-rwxr-xr-x root shell 26200 2013-12-05 08:53 fsck_msdos
lrwxr-xr-x root shell 2013-12-05 09:39 getenforce -> toolbox
lrwxr-xr-x root shell 2013-12-05 09:39 getevent -> toolbox
lrwxr-xr-x root shell 2013-12-05 09:39 getprop -> toolbox
lrwxr-xr-x root shell 2013-12-05 09:39 getsebool -> toolbox
lrwxr-xr-x root shell 2013-12-05 09:39 grep -> toolbox
-rwxr-xr-x root shell 9500 2013-12-05 08:53 gzip
lrwxr-xr-x root shell 2013-12-05 09:39 hd -> toolbox
-rwxr-xr-x root shell 309828 2013-12-05 08:53 hostapd
lrwxr-xr-x root shell 2013-12-05 09:39 id -> toolbox
lrwxr-xr-x root shell 2013-12-05 09:39 ifconfig -> toolbox
lrwxr-xr-x root shell 2013-12-05 09:39 iftop -> toolbox
-rwxr-xr-x root shell 194 2013-12-05 08:53 ime
-rwxr-xr-x root shell 201 2013-12-05 08:53 input
lrwxr-xr-x root shell 2013-12-05 09:39 insmod -> toolbox
-rwxr-xr-x root shell 30220 2013-12-05 08:53 installd
lrwxr-xr-x root shell 2013-12-05 09:39 ioctl -> toolbox
lrwxr-xr-x root shell 2013-12-05 09:39 ionice -> toolbox
-rwxr-xr-x root shell 165540 2013-12-05 08:53 ip
-rwxr-xr-x root shell 191520 2013-12-05 08:53 ip6tables
-rwxr-xr-x root shell 196312 2013-12-05 08:53 iptables
-rwxr-xr-x root shell 5356 2013-12-05 08:53 irsc_util
-rwxr-xr-x root shell 38340 2013-12-05 08:53 keystore
lrwxr-xr-x root shell 2013-12-05 09:39 kill -> toolbox
-rwxr-xr-x root shell 63664 2013-12-05 08:53 linker
-rwxr-xr-x u0_a88 u0_a88 1103284 2014-04-19 02:18 lm.cryptsetup
-rwxr-xr-x u0_a88 u0_a88 556728 2014-04-19 02:18 lm.mkdosfs
lrwxr-xr-x root shell 2013-12-05 09:39 ln -> toolbox
lrwxr-xr-x root shell 2013-12-05 09:39 load_policy -> toolbox
lrwxrwxrwx root root 2014-04-20 16:54 log -> toolbox
-rwxr-xr-x root shell 13648 2013-12-05 08:53 logcat
-rwxr-xr-x root shell 13672 2013-12-05 08:53 logwrapper
lrwxr-xr-x root shell 2013-12-05 09:39 ls -> toolbox
lrwxr-xr-x root shell 2013-12-05 09:39 lsmod -> toolbox
lrwxr-xr-x root shell 2013-12-05 09:39 lsof -> toolbox
-rwxr-xr-x u0_a88 u0_a88 19362 2014-04-19 02:18 luks
-rwxr-xr-x root shell 9568 2013-12-05 08:53 make_ext4fs
lrwxr-xr-x root shell 2013-12-05 09:39 md5 -> toolbox
-rwxr-xr-x root shell 255404 2013-12-05 08:53 mdnsd
-rwxr-xr-x root shell 210 2013-12-05 08:53 media
-rwxr-xr-x root shell 13604 2013-12-05 08:53 mediaserver
lrwxr-xr-x root shell 2013-12-05 09:39 mkdir -> toolbox
-rwxr-xr-x root shell 157488 2013-12-05 08:53 mksh
lrwxr-xr-x root shell 2013-12-05 09:39 mkswap -> toolbox
-rwxr-xr-x root shell 9576 2013-12-05 08:53 mm-jpeg-interface-test
-rwxr-xr-x root shell 13604 2013-12-05 08:53 mm-qcamera-app
-rwxr-xr-x root shell 9516 2013-12-05 08:53 mm-qcamera-daemon
-rwxr-xr-x root shell 217 2013-12-05 08:53 monkey
lrwxr-xr-x root shell 2013-12-05 09:39 mount -> toolbox
-rwxr-xr-x root shell 26244 2013-12-05 08:53 mpdecision
-rwxr-xr-x root shell 17912 2013-12-05 08:53 mtpd
lrwxr-xr-x root shell 2013-12-05 09:39 mv -> toolbox
lrwxr-xr-x root shell 2013-12-05 09:39 nandread -> toolbox
-rwxr-xr-x root shell 5348 2013-12-05 08:53 ndc
-rwxr-s--- root inet 5532 2013-12-05 08:53 netcfg
-rwxr-xr-x root shell 83700 2013-12-05 08:53 netd
-rwxr-xr-x root shell 117320 2013-12-05 08:53 netmgrd
lrwxr-xr-x root shell 2013-12-05 09:39 netstat -> toolbox
lrwxr-xr-x root shell 2013-12-05 09:39 newfs_msdos -> toolbox
-rwxr-xr-x root shell 5356 2013-12-05 08:53 nl_listener
lrwxr-xr-x root shell 2013-12-05 09:39 notify -> toolbox
-rwxr-xr-x root shell 79272 2013-12-05 08:53 oatdump
-rwxr-xr-x root root 26124 2013-12-05 08:53 ping
-rwxr-xr-x root shell 30488 2013-12-05 08:53 ping6
-rwxr-xr-x root shell 191 2013-12-05 08:53 pm
-rwxr-xr-x root shell 17804 2013-12-05 08:53 port-bridge
-rwxr-xr-x root shell 141924 2013-12-05 08:53 pppd
lrwxr-xr-x root shell 2013-12-05 09:39 printenv -> toolbox
lrwxr-xr-x root shell 2013-12-05 09:39 ps -> toolbox
-rwxr-xr-x root shell 54564 2013-12-05 08:53 qmuxd
-rwxr-xr-x root shell 5452 2013-12-05 08:53 qseecomd
-rwxr-xr-x root shell 162768 2013-12-05 08:53 racoon
-rwxr-xr-x root shell 25992 2013-12-05 08:53 radish
lrwxr-xr-x root shell 2013-12-05 09:39 readlink -> toolbox
-rwxr-xr-x root shell 5352 2013-12-05 08:53 reboot
lrwxr-xr-x root shell 2013-12-05 09:39 renice -> toolbox
-rwxr-xr-x root shell 188 2013-12-05 08:53 requestsync
lrwxr-xr-x root shell 2013-12-05 09:39 restorecon -> toolbox
-rwxr-xr-x root shell 9556 2013-12-05 08:53 rild
lrwxr-xr-x root shell 2013-12-05 09:39 rm -> toolbox
lrwxr-xr-x root shell 2013-12-05 09:39 rmdir -> toolbox
lrwxr-xr-x root shell 2013-12-05 09:39 rmmod -> toolbox
-rwxr-xr-x root shell 19408 2013-12-05 08:53 rmt_storage
lrwxr-xr-x root shell 2013-12-05 09:39 route -> toolbox
-rwxr-x--- root shell 9500 2013-12-05 08:53 run-as
lrwxr-xr-x root shell 2013-12-05 09:39 runcon -> toolbox
-rwxr-xr-x root shell 5356 2013-12-05 08:53 schedtest
lrwxr-xr-x root shell 2013-12-05 09:39 schedtop -> toolbox
-rwxr-xr-x root shell 9456 2013-12-05 08:53 screencap
-rwxr-xr-x root shell 17868 2013-12-05 08:53 screenrecord
-rwxr-xr-x root shell 38324 2013-12-05 08:53 screenshot
-rwxr-xr-x root shell 17692 2013-12-05 08:53 sdcard
lrwxr-xr-x root shell 2013-12-05 09:39 sendevent -> toolbox
-rwxr-xr-x root shell 303092 2013-12-05 08:53 sensors.qcom
-rwxr-xr-x root shell 5412 2013-12-05 08:53 sensorservice
-rwxr-xr-x root shell 9500 2013-12-05 08:53 service
-rwxr-xr-x root shell 9664 2013-12-05 08:53 servicemanager
lrwxr-xr-x root shell 2013-12-05 09:39 setconsole -> toolbox
lrwxr-xr-x root shell 2013-12-05 09:39 setenforce -> toolbox
lrwxr-xr-x root shell 2013-12-05 09:39 setprop -> toolbox
lrwxr-xr-x root shell 2013-12-05 09:39 setsebool -> toolbox
-rwxr-xr-x root shell 178 2013-12-05 08:53 settings
lrwxr-xr-x root shell 2013-12-05 09:39 sh -> mksh
lrwxr-xr-x root shell 2013-12-05 09:39 sleep -> toolbox
lrwxr-xr-x root shell 2013-12-05 09:39 smd -> toolbox
lrwxr-xr-x root shell 2013-12-05 09:39 start -> toolbox
lrwxr-xr-x root shell 2013-12-05 09:39 stop -> toolbox
-rwxr-xr-x root shell 13876 2013-12-05 08:53 subsystem_ramdump
-rwxr-xr-x root shell 5360 2013-12-05 08:53 surfaceflinger
-rwxr-xr-x root shell 192 2013-12-05 08:53 svc
lrwxr-xr-x root shell 2013-12-05 09:39 swapoff -> toolbox
lrwxr-xr-x root shell 2013-12-05 09:39 swapon -> toolbox
lrwxr-xr-x root shell 2013-12-05 09:39 sync -> toolbox
-rwxr-xr-x root shell 63044 2013-12-05 08:53 tc
-rwxr-xr-x root shell 171968 2013-12-05 08:53 thermal-engine-hh
-rwxr-xr-x root shell 17756 2013-12-05 08:53 time_daemon
-rwxr-xr-x root shell 139040 2013-12-05 08:53 toolbox
lrwxr-xr-x root shell 2013-12-05 09:39 top -> toolbox
lrwxr-xr-x root shell 2013-12-05 09:39 touch -> toolbox
-rwxr-xr-x root shell 3814 2013-12-05 08:53 uiautomator
lrwxr-xr-x root shell 2013-12-05 09:39 umount -> toolbox
lrwxr-xr-x root shell 2013-12-05 09:39 uptime -> toolbox
-rwxr-xr-x root shell 5352 2013-12-05 08:53 usbhub
-rwxr-xr-x root shell 5356 2013-12-05 08:53 usbhub_init
-rwxr-xr-x root shell 5348 2013-12-05 08:53 vdc
lrwxr-xr-x root shell 2013-12-05 09:39 vmstat -> toolbox
-rwxr-xr-x root shell 87752 2013-12-05 08:53 vold
lrwxr-xr-x root shell 2013-12-05 09:39 watchprops -> toolbox
lrwxr-xr-x root shell 2013-12-05 09:39 wipe -> toolbox
-rwxr-xr-x root shell 190 2013-12-05 08:53 wm
-rwxr-xr-x root shell 793480 2013-12-05 08:53 wpa_supplicant
Subscribe to:
Posts (Atom)

