Tech Side of 泥やまだ

2015/09/30

はてなブログに移転します

 10月1日よりはてなブログのパンクはいつも突然にに移転します。

2015/09/19

[]LTE829のfastbootモード

 fastbootからのブートもできない。調べてみる。

kazz@oscar ~# lsusb
Bus 009 Device 001: ID 1d6b:0001 Linux Foundation 1.1 root hub
Bus 004 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub
Bus 008 Device 001: ID 1d6b:0001 Linux Foundation 1.1 root hub
Bus 007 Device 002: ID 0582:0006 Roland Corp. 
Bus 007 Device 001: ID 1d6b:0001 Linux Foundation 1.1 root hub
Bus 003 Device 005: ID 1a81:2004 Holtek Semiconductor, Inc. 
Bus 003 Device 004: ID 046d:c52b Logitech, Inc. Unifying Receiver
Bus 003 Device 002: ID 05e3:0608 Genesys Logic, Inc. USB-2.0 4-Port HUB
Bus 003 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub
Bus 006 Device 001: ID 1d6b:0001 Linux Foundation 1.1 root hub
Bus 005 Device 002: ID 0d8c:0001 C-Media Electronics, Inc. Audio Device
Bus 005 Device 001: ID 1d6b:0001 Linux Foundation 1.1 root hub
Bus 002 Device 001: ID 1d6b:0003 Linux Foundation 3.0 root hub
Bus 001 Device 004: ID 0bb4:0c01 HTC (High Tech Computer Corp.) Dream / ADP1 / G1 / Magic / Tattoo
Bus 001 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub
kazz@oscar ~# 

 HTCですよ、奥さん、again。あのときはfastbootモードなんかじゃなかったはずだが。

kazz@oscar ~/Android/Sdk/platform-tools# fastboot devices
no permissions	fastboot
kazz@oscar ~/Android/Sdk/platform-tools# 

 許可がないとな。でもLTE829の画面には何も出てこない。

 fastbootから抜ける方法は不明。裏カバーを開けたところにある小さな穴がリセットスイッチ、というか、実際の動作はシャットダウン。

追記

 3つのボタン同時押しでシャットダウンできた。ただ、一回では効かないもよう。

How To Exit Fastboot Mode? - OnePlus Forums

[]LTE928、ワンクリックルートならず

 Shuame / Root GeniusでもMtk Droid ToolsでもKingo RootでもiRootでもルート化成功せず。

 ではCWM Recoveryをインストールして・・・と思ったが、調べてみると要rootの方法しかわからん。

 でMT6752ベースのLollipop 5.1では世界中が苦労しているもよう。

Root for MTK6752 with Lollipop?

can't root clone MT6572 M7...

2015/09/17

[]facebookアプリの通知が止まらなくなった

 数日前からfacebookアプリの通知が止まらなくなって、いろいろ試していたんだが、原因判明。facebookアプリには濡れ衣で、通知をしていたのはchromeだった。

Facebook、Googleと協力してモバイルウェブユーザーにプッシュ通知を送信 | TechCrunch Japan

 通知をタップするとchromeが立ち上がるのに気が付き、判明。

f:id:doroyamada:20150917205733j:image

 現時点では通知全体のオンオフとそのサブオプションとしてメッセージ通知のオンオフがあるのみ。メッセージ通知だけしてほしいんだけどそれはできないもよう。できるようだったらfacebookアプリ捨ててもええんやけど。

[]adbで認識

 XiaomiもどきのMediaTekタブレットをadbで認識しない問題が解決した。

 いろんなことを総合するとadbに原因がある可能性が高い。たとえばadbのバージョンが古いとか。使っているadbはubuntuの公式リポジトリから入ったもので、1.0.31。

kazz@oscar ~# adb version  
Android Debug Bridge version 1.0.31
kazz@oscar ~# 

 あちこちのページを見ながらAndroid Studioインストール。adbは~/Android/Sdk/platform-toolsにインストールされていた。

kazz@oscar ~/Android/Sdk/platform-tools# ./adb version
Android Debug Bridge version 1.0.32
Revision eac51f2bb6a8-android
kazz@oscar 

 1.0.32になっている。

 どきどきしながら実行。

kazz@oscar ~/Android/Sdk/platform-tools# adb devices
List of devices attached
* daemon not running. starting it now on port 5037 *
* daemon started successfully *
0123456789ABCDEF	unauthorized

kazz@oscar ~/Android/Sdk/platform-tools# 

 なんとか認識。でもSOL22の場合とだいぶ違う。

 kazz@oscar /etc/udev/rules.d# adb devices
 *1442315728* daemon not running. starting it now on port 5037 *
 *1442315729* daemon started successfully *
 List of devices attached
 CB5124P35E device
 kazz@oscar

 いろんな作業ができるかはこれから検証。

2015/09/15

[]デバグモードで繋がらない

 XiaomiもどきのLTE829がUSBディバグモードでubuntuとつながらない。いろいろと.rulesファイルをいじってみても変化なし。MTPとしてはマウントされている。PTPにしろというページを見たのでやってみたが変わらず。

 そもそも、認識ミスでも何らかの表示はされるはず。

$ adb devices

List of devices attached

???????????? no permissions

 ところが、この????の行が全く表示されない。ちなみにSOL22をつなぐと.rulesファイルを何もいじらなくても

kazz@oscar /etc/udev/rules.d# adb devices

*1442315728* daemon not running. starting it now on port 5037 *

*1442315729* daemon started successfully *

List of devices attached

CB5124P35E device

kazz@oscar

 と表示される。ということは、USBまわりに問題があるのではなく、adbに問題がある可能性が高い。

 SOL22とLTE829の他の挙動の違いは、USBディバグモードでつないだ時にいずれもデスクトップアイコンが現れるものの、sol22ではアイコンをダブルクリックしてもファイルが表示されないのに、LTE829ではMTPモード同様にファイルが表示されること。このあたりに手がかりがありそう。

 さらに

kazz@oscar /etc/udev/rules.d# dmesg|grep usb

(中略)

[ 5492.885627] usb 1-2: new high-speed USB device number 33 using xhci_hcd

[ 5493.016358] usb 1-2: New USB device found, idVendor=0e8d, idProduct=201d

[ 5493.016370] usb 1-2: New USB device strings: Mfr=2, Product=3, SerialNumber=4

[ 5493.016377] usb 1-2: Product: LTE829

[ 5493.016383] usb 1-2: Manufacturer: MediaTek

[ 5493.016389] usb 1-2: SerialNumber: 0123456789ABCDEF

kazz@oscar /etc/udev/rules.d#

 なに、このシリアルナンバーシリアルちゃうやん。

2015/09/14

[]もしかしてこれはニセXiaomi?

 adb接続がなかなかうまくいかなくて情報を探しているうちに何か妙だと気がついた。

kazz@oscar ~# sudo lsusb -vs 001:015

Bus 001 Device 015: ID 0e8d:201d MediaTek Inc.

Device Descriptor:

bLength 18

bDescriptorType 1

bcdUSB 2.00

bDeviceClass 0 (Defined at Interface level)

bDeviceSubClass 0

bDeviceProtocol 0

bMaxPacketSize0 64

idVendor 0x0e8d MediaTek Inc.

idProduct 0x201d

bcdDevice ff.ff

iManufacturer 2 MediaTek

iProduct 3 LTE829

iSerial 4 0123456789ABCDEF

bNumConfigurations 1

Configuration Descriptor:

bLength 9

bDescriptorType 2

wTotalLength 62

bNumInterfaces 2

bConfigurationValue 1

iConfiguration 0

bmAttributes 0xc0

Self Powered

MaxPower 500mA

Interface Descriptor:

bLength 9

bDescriptorType 4

bInterfaceNumber 0

bAlternateSetting 0

bNumEndpoints 3

bInterfaceClass 255 Vendor Specific Class

bInterfaceSubClass 255 Vendor Specific Subclass

bInterfaceProtocol 0

iInterface 18 MTP

Endpoint Descriptor:

bLength 7

bDescriptorType 5

bEndpointAddress 0x81 EP 1 IN

bmAttributes 2

Transfer Type Bulk

Synch Type None

Usage Type Data

wMaxPacketSize 0x0200 1x 512 bytes

bInterval 0

Endpoint Descriptor:

bLength 7

bDescriptorType 5

bEndpointAddress 0x01 EP 1 OUT

bmAttributes 2

Transfer Type Bulk

Synch Type None

Usage Type Data

wMaxPacketSize 0x0200 1x 512 bytes

bInterval 0

Endpoint Descriptor:

bLength 7

bDescriptorType 5

bEndpointAddress 0x82 EP 2 IN

bmAttributes 3

Transfer Type Interrupt

Synch Type None

Usage Type Data

wMaxPacketSize 0x001c 1x 28 bytes

bInterval 6

Interface Descriptor:

bLength 9

bDescriptorType 4

bInterfaceNumber 1

bAlternateSetting 0

bNumEndpoints 2

bInterfaceClass 255 Vendor Specific Class

bInterfaceSubClass 66

bInterfaceProtocol 1

iInterface 17 ADB Interface

Endpoint Descriptor:

bLength 7

bDescriptorType 5

bEndpointAddress 0x02 EP 2 OUT

bmAttributes 2

Transfer Type Bulk

Synch Type None

Usage Type Data

wMaxPacketSize 0x0200 1x 512 bytes

bInterval 0

Endpoint Descriptor:

bLength 7

bDescriptorType 5

bEndpointAddress 0x83 EP 3 IN

bmAttributes 2

Transfer Type Bulk

Synch Type None

Usage Type Data

wMaxPacketSize 0x0200 1x 512 bytes

bInterval 0

Device Qualifier (for other device speed):

bLength 10

bDescriptorType 6

bcdUSB 2.00

bDeviceClass 0 (Defined at Interface level)

bDeviceSubClass 0

bDeviceProtocol 0

bMaxPacketSize0 64

bNumConfigurations 1

Device Status: 0x0001

Self Powered

 ウェブで集めた情報だとxiaomiのidVendorは2717のはずなんだが、0e8dになっている。しかもiManuifacturerはXiaomiではなくMedia Tek。以下のページのlsusbの結果とは明らかに違う。

adb connect from ubuntu 13.4 | Unofficial International MIUI / Xiaomi Phone Support

 0e8dは確かにMediaTekのIDのようだ。

USB_ModeSwitch • View topic - False operation on some Mediatek devices

 もう少し調べる。XiaomiのシンガポールバージョンということでGooglePlayや日本語対応がはじめからセットされているけど、実は違うOEMハードウェアにXiaomiのMIUI OS(Xiaomiは元々OS作っていたらしい)載せているのか?ニセモノではないとは思うんだが。ちなみにMediaTekはXiaomiと親密な部品メーカー。

 どうみてもXiaomiのロゴなんですが。

f:id:doroyamada:20150915195336j:image

 ついでにモードごとの違い。

 MTPモード

Bus 001 Device 017: ID 0e8d:200b MediaTek Inc.

 PTPモード

Bus 001 Device 003: ID 0e8d:200c MediaTek Inc.

 内蔵CD−ROMモード

Bus 001 Device 018: ID 0e8d:2002 MediaTek Inc.

 うむ、先日のHTC表示はなんだったんだ?

2010 | 05 | 06 | 07 | 08 | 09 | 10 | 11 | 12 |
2011 | 01 | 02 | 03 | 04 | 05 | 06 | 07 | 08 | 09 | 10 | 11 | 12 |
2012 | 01 | 02 | 03 | 04 | 05 | 06 | 07 | 08 | 09 | 10 | 11 | 12 |
2013 | 01 | 02 | 03 | 04 | 05 | 06 | 08 | 09 | 10 | 11 | 12 |
2014 | 02 | 03 | 04 | 05 | 06 | 07 | 08 | 09 | 11 | 12 |
2015 | 01 | 02 | 03 | 04 | 05 | 06 | 07 | 08 | 09 |