Monday, March 5, 2012

Enabling developer features on the Fujitsu Arrows Tab (wifi-only edition)

Earlier today, I mistakenly announced that Fujitsu didn't include support for developers (e.g., adb and ddms) on the Arrows Tab. Fortunately, I was wrong. Big thanks goes to some of the guys hanging out on Google +, like Nikolay Elenkov and Jan Moren. I've now got full debugging going in a windows VM and on Mac OS 10.

Fujitsu is apparently well aware that there are potential issues because they include explicit instructions on how to fix it in a garbled mojibake text file that couldn't be displayed with any character encoding. (Viewing the readme (txt) directly in a browser with Shift_JIS works, and I've also pasted in the text, in UTF-8, at the bottom of this post.)

The problem was with the USB vendor ID, and the fix was the same as described here for the Sony S tablet. According to the Android developer site, this is what is required for setting up your environment to detect your device (emphasis mine):
  • If you're developing on Windows, you need to install a USB driver for adb. For an installation guide and links to OEM drivers, see the OEM USB Drivers document.
  • If you're developing on Mac OS X, it just works. Skip this step.
  • If you're developing on Ubuntu Linux, you need to add a udev rules file that contains a USB configuration for each type of device you want to use for development. In the rules file, each device manufacturer is identified by a unique vendor ID, as specified by the ATTR{idVendor} property. For a list of vendor IDs, see USB Vendor IDs, below...

Mac OS 10

No, it didn't just work on mac, though I've never had this problem with any of the tons of handsets I've connected to any mac. This is the first time. Ever. For any USB device.

Create an adb_usb.ini file at ~/.android, and add one, single entry: 0x04C5. This doesn't effect the ability to use adb or ddms with other handsets. This worked for me in Mac OS 10.6.7.

Linux

This should be straight forward, so follow the official directions at the Android developer site.

Windows

Here's how I got it working in on Windows XP in virtual box, which was quite a chore for me because I rarely use Windows.

Step 1. Create a filter to pass the USB from the host OS through to the guest OS (only needed for virtual machines.

Step 2. Download the USB drivers from here. Click agree to download (同意する).

Step 3. Unzip the driver to a convenient location.

Step 4. On the Arrows Tab, go to Settings/Applications/Developer and select enable USB debugging (USB デバッグ) and tap OK. [NOTE: language options on this tablet are English and Japanese.]

This screenshot wouldn't exist without ddms.
Step 5. Plug the Tablet into your PC, wait, and then do the standard rigamarole: don't let the Found New hardware wizard search the internet. Instead, point it to the location of the unzipped folder and install.

Installing USB drivers is sooo 1990s. Sigh.
The documentation from Fujitsu talks about a "Fujitsu HSUSB Device," bit displayed for me was "Android Composite ADB Interface."


Step 6. Next, run adb-update to add the Fujitsu's USB vendor ID (04C5) to your user account's adb_usb.ini file. From a dos prompt run the following (If the proper SDK folders aren't added to your path, you'll need to change to the proper directory):

android update adb

Step 7. Manually add the Fujitsu vendor ID. Go to C:\Documents and Settings\YourLoginName\.android and open adb_usb.ini with notepad or any text editor. The top of the file will say something about never, ever manually editing this file. Manually edit the file and add the following line:

0x04C5

And save the file. Then stop adb for good measure, and check to see if you device is recognized.

adb kill-server
adb devices


You should see the following:

* daemon not running. starting it now on port 5037 *
* daemon started successfully *
List of devices attached
xxxxxxx


Where xxxxxxx is your device. Now adb and ddms should work. Happy developing!
-------------------------------------------------
FAR7xA ADB用USBドライバ説明書
usb_driver_FAR7xA_1.0.zip
富士通株式会社
2012/01/19
Version:1.0
-------------------------------------------------
本ドライバは、FAR7xA用ADB USBドライバです。

■対応OS
・Windows(R) XP (32ビット/64ビット版)
・Windows Vista(R) (32ビット/64ビット版)
・Windows(R) 7 (32ビット/64ビット版)
上記の各日本語版OS

■対応パソコン
USB1.1以上に準拠しているUSB搭載のパソコンで、上記対応OSのいずれかがプリインストールされているDOS/V互換機
(環境によっては、ご使用いただけない場合があります)。

■FAR7xAとADB接続を行うには、以下の手順に従って、ご使用ください。
1) 「FAR7xA用ADB USBドライバ インストール手順」に従い「ADBドライバ」をインストールしてください。
2) 「FAR7xAとADB接続を行うにあたっての事前準備」に従い、「adb_usb.ini」をご用意ください。
3) 「FAR7xA」とパソコンをUSBケーブルで接続し、ADB接続ができることをご確認ください。
[ADB接続の確認]
a) コマンドプロンプトを起動してください。
b) Android SDKがインストールされている以下のフォルダへディレクトリを移動してください。
「cd C:\Program Files\Android\android-sdk\platform-tools」
c) 以下のコマンドを入力し、「$」プロンプトが表示されれば、ADB接続完了となります。
「adb kill-server」
「adb shell」

■FAR7xA用ADB USBドライバ インストール手順
1) 「ADB USBドライバ」用のusb_driver_FAR7xA_1.0.zipを解凍します。
2) 「FAR7xA」「USBデバッグ設定」にチェックを入れ、ADB機能を有効にします。
※設定 > アプリケーション > 開発 >USBデバッグ
3) 「FAR7xA」とパソコンをUSBケーブルで接続します。
4) 【Windows XP, Vistaの場合】
「Fujitsu HSUSB Device」が認識されドライバのインストール画面が起動します。
【Windows 7の場合】
「Fujitsu HSUSB Device」が認識されます。
デバイスマネージャを起動して「Fujitsu HSUSB Device」のドライバを更新します。
5) 解凍したドライバ格納先で「usb_driver_FAR7xA」を選択しドライバをインストールします。

※Android SDK Toolsは、最新版をご使用ください。
http://developer.android.com/sdk/index.html

■FAR7xAとADB接続を行うにあたっての事前準備
1) 「adb_usb.ini」が、以下のフォルダにあることをご確認ください。
【Windows XPの場合】
「C:\Documents and Settings\<login user名>\.android\adb_usb.ini」
【Windows Vista, 7の場合】
「C:\Users\<login user名>\.android\adb_usb.ini」
もし、「adb_usb.ini」が存在しない場合は、以下の手順で作成してください。
a) コマンドプロンプトを起動してください。
b) Android SDKがインストールされている以下のフォルダへディレクトリを移動してください。
「cd C:\Program Files\Android\android-sdk\tools」
c) 以下のコマンドを入力して、「adb_usb.ini」を作成ください。
「android update adb」
d) 1)項記載のフォルダに、「adb_usb.ini」を確認してください。
2) 「adb_usb.ini」をメモ帳等のエディタで開き、「0x04C5」の行があるかをご確認ください。
もし、「0x04C5」の行がない場合は、「0x04C5」を1行だけ、追記してください。

■ご注意
ARROWS Tab Wi-Fi 以外のタブレットおよび携帯電話では使用できません。
上記の対応OSおよびパソコンであっても、その全てについて動作保証するものではありません。

No comments:

Post a Comment