MOVERIO Pro Developer's Guide (Rev.1.5)
2
1.1. Product Summary and Functions
The BT-2000/2200 is a smart headset for business use. The same optical see-through
technology as the consumer orientated MOVERIO BT-200 has been adopted. This allows
information to be displayed across a wide viewing area while keeping eye movement to a
minimum, thereby reducing fatigue and making it suitable for use at work. This also allows you
to view your surroundings while projecting an image, which adds an aspect of safety.
The weight of the product is supported by the entire head, allowing you to work for long periods
of time without feeling fatigued. You can work while checking images in a hands-free
environment.
MOVERIO Pro Developer's Guide (Rev.1.5)
3
1.2. Main System Specifications
Item Specifications
Model number MOVERIO Pro BT-2000/2200
Main processor OMAP4460 (dual core ARM Cortex A9)
System clock Max 1.2 GHz (Auto adjusts according to the system load and
temperature)
System software Android 4.0.4
Internal storage (emmc) 8 GB (2 GB reserved for the system)
Main memory 1 GB
Power Battery operated/AC power operated
External memory MicroSD/MicroSDHC supported (32 GB max.)
No. of pixels in LCD panel 960x540 (QHD)/16:9/Refresh rate 60 Hz
Virtual screen size 80" (for virtual viewing distance of 5 m)
Color reproduction 24 bit full color (16,770,000 colors)
3D display Available (only for side by side)
User interface Audio commands: supports Japanese and English
Hardware keys: Power, lock, D-pad/OK key and A, B, X, Y keys
Others: Headset tap input function
Camera Built-in headset, stereo camera
Sensor IMU (Gyro/acceleration)/geomagnetic built-in headset
Wi-Fi IEEE 802.11a/b/g/n, Wi-Fi Direct
Wi-Fi Security WEP
WPA – Enterprise, Personal
WPA2 – Enterprise, Personal
EAP Types
EAP-TLS
EAP-TTLS/MSCHAPv2
PEAPv0/EAP-MSCHAPv2
PEAPv1/EAP-GTC
VPN PPTP
Bluetooth A2DP, HSP, HID, OPP, SPP, BLE support
GPS GPS function, GPS Assist function
*Safety shield is applying ANSI/ISEA Z87.1 (2015 version).
MOVERIO Pro Developer's Guide (Rev.1.5)
4
1.3. Basic Information for App Development
Item Description
CPU/ABI ARMv7 armeabi
Android API level 15
Device screen density mdpi
Screen type Tablet UI
Screen orientation Fixed at Landscape (without sensor rotation)
USB vendor ID 0x04B8
■ HOME, MENU, and BACK keys are supported by hardware keys
■ Touch screen and track pad are not used
■ Except for Wi-Fi, data communication, such as 3G, is not supported
■ This is not a Google Certified device, meaning the following services which require Google
Certification are not available:
- Google Play
- Google location information service
- Additional services only available on Google Certified devices.
MOVERIO Pro Developer's Guide (Rev.1.5)
5
1.4. Other Main Functions
BT-2000 can use below functions. As well as the standard Android API, there are functions that
need EPSON original API. Please refer below charts.
Chart1.4.1 Table of each function and which API to use
Function Android standard API EPSON original API
3.Display control ✔
4.UI control ✔ ✔
5.Voice command ✔
6.Camera control ✔ ✔
7.Sensor control ✔
8.Bluetooth/BLE ✔
9.Power control ✔
10.Self-Diagnostic ✔
11.GPS Assist ✔
The following chapters explain how to use these from an app.
For EPSON original API that needs special caution, please refer Chapter 2.1. Pre-Caution for
Developing Apps.
MOVERIO Pro Developer's Guide (Rev.1.5)
7
2.1. Pre-Caution for Developing Apps
BT-2000 is using Android platform, but considering the product’s use purpose, it is applying own
functions. Therefore it is necessary to control by EPSON own API. There are some cases that
Android emulator or Android applications that operated with Android Smartphones may not
operate. Please take attention when transplanting APK or diverting source code. Below API needs
attention specially, please refer details at each chapter.
Module lists that need attention for developing Apps.
Camera ・・・ Chapter 6 Camera control
BLE ・・・ Chapter 8 Bluetooth/BLE
MOVERIO Pro Developer's Guide (Rev.1.5)
8
2.2. Summary of Developing Apps
The BT-2000 has adopted Android as the system software. Therefore, you can develop apps for
the BT-2000 in the same environment as developing apps for Android smartphones. However,
when connecting the BT-2000 with the app development computer, or when using functions
unique to the BT-2000, you need to have the PC settings compatible with BT-2000.
This chapter explains the following procedures necessary to develop apps for the BT-2000.
■ Introduction to the Android SDK
■ ADB driver settings
■ Connecting the BT-2000 to a computer
■ Including the SDK provided by EPSON
MOVERIO Pro Developer's Guide (Rev.1.5)
9
2.3. Introduction to the Android SDK
The introduction to the Android SDK assumes the following steps will be performed in a
Windows7 environment.
2.3.1. Acquiring Android Studio
Download Android Studio from the following Website.
https://developer.android.com/sdk/index.html
2.3.2. Acquiring and installing JDK
Download the JDK (7 or later) from the following Website, and then install.
http://www.oracle.com/technetwork/java/javase/downloads/jdk8-downloads-2133151.html
(Not sure if it’s a good idea to include the link above as it may change over time)
2.3.3. Installing Android Studio
Follow the directions provided by the installer to install Android Studio.
Example) C:\Users\User name\AppData\Local\Android\sdk
* From here on, instructions assume Android Studio is installed in the folder above.
MOVERIO Pro Developer's Guide (Rev.1.5)
10
2.3.4. Installing Platform-tools, SDK Platform, and USB Driver
Execute "C:\Users\User name\AppData\Local\Android\sdk\SDK Manager.exe".
* When you start SDK Manager, the dialog "No packages found" may be displayed.
This occurs when the proxy is not set correctly, and information cannot be updated.
Close all dialogs except for "Android SDK Manager", and then set the proxy in [Tools] -
[Options]. When Proxy settings are unknown, please contact network administrator for
“Connecting method to external network using Proxy”
MOVERIO Pro Developer's Guide (Rev.1.5)
11
Select the following necessary files in the SDK Manager, and then install.
■ [Tools] - [Android SDK Platform-tools]
■ [Android 4.0.3] - [SDK Platform]
■ [Extras] - [Google USB Driver」
Select the above, click [Install], and then select ‘Accept’ all.
This completes the introduction to the Android SDK.
Next, we will explain how to connect the BT-2000 to the app development computer, and setting
up the ADB driver.
MOVERIO Pro Developer's Guide (Rev.1.5)
12
2.4. ADB driver settings
Here we will explain how to connect the BT-2000 to the app development computer, and set the
ADB driver.
When using Windows8 OS or later, it is required to operate by test mode to install ADB driver.
When using Windows7 OS or before, proceed to “2.4.2 When using Windows7 OS or before”.
2.4.1. When using Windows8 OS or later
2.4.1.1. Operate by test mode
1) Run the command prompt as administrator, and run below command.
※When below error occur by running above command, please refer to
”2.4.1.2 When failing test mode command”.
2) Select 「Setting」→「Change PC Setting」 from the charm.
3) Select 「Update and recovery」→「Recovery」→「Restart now」.
4) Select 「Trouble shoot」→「Advanced options」 from the menu.
> bcdedit -set testsigning on
Select→
Select→
Select→
MOVERIO Pro Developer's Guide (Rev.1.5)
13
5) It will reboot after selecting Windows [Startup Settings].
6) [Startup Settings] screen will show after reboot, so select [Disable Driver Signature
Enforcement].
For procedure from here, please proceed to next chapter“2.4.2When using Windows 7 OS or
before”.
Select→
MOVERIO Pro Developer's Guide (Rev.1.5)
14
2.4.1.2. When failing test mode command
Test mode command failure is due to lock by Secure Boot.
Please disable Secure Boot by below method.
1)Select 「Settings」→「Change PC Settings」 from charm.
2)Select 「Update and recovery」→「Recovery」→「Restart now」.
3)Select 「Trouble shoot」→「Advanced options」→「UEFI firmware Settings」.
4) Find Secure Boot Control and change to Disabled.
Select→
Select→
Select→
Select→
MOVERIO Pro Developer's Guide (Rev.1.5)
15
5) Save the change and reboot
6) After PC rebooted, operate command prompt by Administrator privileges and run test mode
command.
To make Secure Boot on again, please set by below procedure.
1) Proceed procedure 1) ~ 3) when disabled the setting.
2) Find Secure Boot control and change to Enabled.
3) Save the change and reboot.
7) Execute the procedure of 2.4.1.1 agin.
MOVERIO Pro Developer's Guide (Rev.1.5)
16
2.4.2. When using Windows 7 OS or before
2.4.2.1. Editing the Google USB Driver
Settings for the BT-2000 are added to the Google USB Driver installed in the previous item.
Open [C:\Users\User name\AppData\Local\Android\sdk\extras\google\usb_driver\android_winusb.inf]
in a text editor, and then add the following 6 lines to 2 points in the [Google.NTx86] and the
[Google.NTamd64].
;EPSON MOVERIO BT-2 series MTP
%SingleAdbInterface% = USB_Install, USB¥VID_04B8&PID_0C06
%CompositeAdbInterface% = USB_Install, USB¥VID_04B8&PID_0C06&MI_01
; EPSON MOVERIO BT-2 series PTP
%SingleAdbInterface% = USB_Install, USB¥VID_04B8&PID_0C07
%CompositeAdbInterface% = USB_Install, USB¥VID_04B8&PID_0C07&MI_01
MOVERIO Pro Developer's Guide (Rev.1.5)
17
2.4.2.2. Vendor ID setting
Set ADB as the vendor ID.
1. Create new file “adb_usb.ini” in “C:/Users/<user name>/.android”.
2. Open this file (adb_usb.ini) in notepad, and add the vendor ID (0x04B8) as shown below.
This completes setting up the ADB driver in the app development environment.
The next section explains how to connect the BT-2000 to a computer.
0x04B8
Omit
Omit
MOVERIO Pro Developer's Guide (Rev.1.5)
18
2.5. Connecting the BT-2000 to a computer
This section explains how to connect the BT-2000 to a computer after the ADB driver setting has
been completed.
2.5.1.1. BT-2000 settings
Start the BT-2000, and then select "Settings" - "Developer options" - "USB debugging".
2.5.1.2. Install the BT-2000 driver
Connect a USB cable to the computer on which the BT-2000 is running and the ADB driver
settings are complete.
If the computer does not respond, disconnect the USB cable, restart the BT-2000, and then
reconnect the USB cable.
When "New device detected" is displayed on the computer, select [Control Panel] - [Hardware
and Sound] - [Device Manager].
Right-click [bt2pro] from [Other devices], and then select Update Driver Software.
MOVERIO Pro Developer's Guide (Rev.1.5)
19
Select [Browse my computer for driver software].
Select the driver from the following path.
“C:\Users\User name\AppData\Local\Android\sdk\extras\google\usb_driver”
When [Android Composite ADB Interface] is displayed in [Android Device] as shown below, ADB
connection is available.
2.5.1.3. Checking the connection
You can check if the computer and the BT-2000 are connected by using the ADB check
command.
Start the command prompt, run "cd C:\Users\ User name \AppData\Local\Android\sdk\tools ", and
move the folder.* It is useful to maintain the environment variable path mentioned above.
When you execute "adb devices" the message "0123456789ABCDEF2 device" is displayed. ADB
connection is complete.
* If this is not displayed, reconnect the BT-2000 to the USB port, and rerun the "adb devices"
command.
MOVERIO Pro Developer's Guide (Rev.1.5)
20
2.6. Including the SDK provided by EPSON
2.6.1. Cautions for using SDK provided by EPSON
Please make sure to confirm the version of SDK provided by EPSON and the version of system
software inside BT-2000.
If the version of SDK provided by EPSON used for Apps development and the version of system
software is not matching, due to the difference of API included, developed Apps may not operate.
※User using system software version R1.0.4
When updating OS from R1.0.4 to R1.2.1 or later, adding callback API process which is newly
added is required.
This phenomenon may occur in below Apps.
・Apps using Voice command class(VoiceCommandClientCallbacks)
If it happens, please solve by below procedure.
1) Change the SDK of Apps development environment to SDK that matching system
software version.
2) Revise the source code according to SDK and re-build.
MOVERIO Pro Developer's Guide (Rev.1.5)
21
2.6.2. How to use SDK provided by EPSON
The following procedures assume app development in Android Studio.
1) Display Project View of Android Studio, and then create “libs” folder from
[File]-[New]-[Directory].
2) C:\Users\<user name>\AndroidStudioProjects\<application name>\app\libs will be
created, and put H725Ctrl.jar to this folder.
(When created project folder is C:\Users\<user name>\AndroidStudioProjects)
※ Explanation from now on is based on that project is at C:\Users\<user
name>\AndroidStudioProjects\<application name>.
3) Press Sync Project with Gradle Files button where it is above of AndroidStudio, reflect
Gradle change to the project.
4) Open build.gradle(Project: <application name>) in the left window of AndroidStudio,
and then edit as below.
allprojects { repositories { jcenter() } gradle.projectsEvaluated { tasks.withType(JavaCompile) { options.compilerArgs.add('-Xbootclasspath/p:C:/Users/<user name>/AndroidStudioProjects/<application name>/app/libs/H725Ctrl.jar') } }
}
MOVERIO Pro Developer's Guide (Rev.1.5)
22
5) Once, run Clean Project from Build items of AndroidStudio.
SDK settings are completed by above.
On edit display, EPSON original API like getSupportedEpsonCameraModes() are still not solved,
but please ignore and run app, and install application to the equipment. Unsolved method will
operate normally.
MOVERIO Pro Developer's Guide (Rev.1.5)
23
2.6.3. To solve unsolved situation by Android Studio
By below method, you can solve the unsolved situation temporary and use code completion
function.
1) Open C:\Users\<user name>\AndroidStudioProjects\<application name>\app\app.iml
2) Move line of
<orderEntry type="library" exported="" name="H725Ctrl" level="project" />
to the line above
<orderEntry type="jdk" jdkName="Android API 23 Platform" jdkType="Android SDK"/>
This will increase the priority of H725Ctrl.jar in AndroidStudio, and can solve the unsolved
situation temporary and use code completion function.
■Limited items
Due to AndroidStudio specification, after running like rebuild and update gradle contents,
app.iml will be updated too and EPSON original API will return to unsolved situation. Please
proceed above 1), 2) again. Run after build will not be affected.