ThinkGear 开发指南(安卓版)
2013年4月5号
2013 年 4 月 5 日 | © 2012 NeuroSky, Inc. 版权所有. 1
神念科技e NeuroSky®家族产品包括硬件和软件,这些产品
能将生物传感器简单的融合进消费者和工业的终端应用程序
中。所有产品的设计和制造目的都是为了满足消费者对产品质
量、价格和功能的各项需求。神念科技能脱颖而出的关键在于
能够不断构建基块组件解决方案,同时这些方案能发挥与之相
关并技术互补的良好协同作用。
免责声明:神念科技公司系列产品及相关文件资料并不
包含任何明示或暗示的保证,授权或许可。包括有关适
销性,知识产权(包括专利,版权或其他) 或特殊目的的
适用性的保证。在任何情况下,神念科技公司或其供货
商均不会就使用或无法使用神念科技公司的产品或资料
而产生的任何损害(包括但不限於利润损失,业务中断,
货物替换成本或信息丢失或损坏) 承担责任,无论神念科
技公司是否已被告知可能出现上述损害。由於某些司法
管辖区域明确禁止免除或限制对后果性损害或附带性损
害应承担的责任,上述限制中有些可能对您并不适用。
神念科技公司产品的使用应遵守最终用户许可协议中的
规定。。
“为ipod制造”、“为iphone制造”、“为ipad制造”表示一个电子
配件已经被设计成用来分别连接到ipod、iphone、ipad,并
且已经由开发人员来满足苹果的性能标准认证。苹果公司
对此设备或其遵守的安全操作或者监管标准将不负任何责
任。请注意,使用此配件ipod、iphone、ipad可能会影响到
无线性能。
2013 年 4 月 5 日 | © 2012 NeuroSky, Inc. 版权所有. 2
目录
简介................................................................................................................................................ 5
THINKGEAR SDK (安卓版) 内容 ......................................................................................... 5
支持的 THINKGEAR 硬件 ......................................................................................................... 5
你的第一个工程项目: ................................................................................................................... 7
开发你自己的启用 THINKGEAR 的安卓应用 ......................................................................... 8
准备你的安卓工程 ............................................................................................................. 8
创建 TGDEVICE 对象 .............................................................................................................. 8
接受和处理数据信息........................................................................................................... 9
TGDevice 消息类型 (msg.what) .................................................................................................................. 11
TGDevice 状态 ........................................................................................................................................... 14
TGDevice 配置问题 .................................................................................................................................. 14
使用 TGDEVICE 对象 ............................................................................................................ 14
THINKGEAR 数据类型 ........................................................................................................... 16
通用型 ............................................................................................................................... 16
POOR_SIGNAL/SENSOR_STATUS ................................................................................................................... 16
RAW_DATA .................................................................................................................................................. 17
RAW_MULTI ................................................................................................................................................. 17
EEG .................................................................................................................................... 17
ATTENTION 专注度 ....................................................................................................................................... 17
MEDITATION 冥想度 ..................................................................................................................................... 18
ZONE 区域 ................................................................................................................................................. 18
BLINK 眨眼 .................................................................................................................................................. 19
EEG_POWER .............................................................................................................................................. 19
THINKCAP_RAW ........................................................................................................................................ 20
POSITIVITY 积极性 ........................................................................................................................................ 20
FAMILIARITY 熟练度 ........................................................................................................................................ 20
ECG/EKG 心电 ..................................................................................................................... 23
HEART_RATE 心率 .......................................................................................................................................... 23
Smoothed Heart Rate 平滑的心率 ........................................................................................................... 23
Heart Rate Acceleration 心跳加速 ........................................................................................................... 24
Target Heart Rate for Physical Training 体能训练的目标心率 ................................................................. 24
Heart Fitness Level 健康心脏水平 ........................................................................................................... 25
RELAXATION 放松度................................................................................................................................. 26
2013 年 4 月 5 日 | © 2012 NeuroSky, Inc. 版权所有. 3
RESPIRATION 呼吸率 ............................................................................................................................... 26
Heart Risk Awareness 心脏病风险意识 ................................................................................................... 27
HEART_AGE 心脏年龄 .............................................................................................................................. 29
Personalization 个性化心电识别 ............................................................................................................. 30
EKG_RRINT 心电的 RR 间隔 ........................................................................................................................... 32
恰当的应用设计 .......................................................................................................................... 33
故障排除 ...................................................................................................................................... 34
重要声明 ..................................................................................................................................... 35
附录 A: 其他参考文献................................................................................................................ 36
附录 B: UART (非蓝牙) 连接 .................................................................................................... 37
附录 C: 启用个性化的使用 ..................................................................................................... 38
附录 D: 允许写入安卓文件系统 ................................................................................................ 39
2013 年 4 月 5 日 | © 2012 NeuroSky, Inc. 版权所有. 4
第一章
简介
该指南将指导你怎样使用神念科技的ThinkGear SDK(安卓版)来写一个能够使用从神念
科技Thinkgear系列的生物传感器(CardioChip系列产品)获取的生物信号数据的应用程序。这
将使你的安卓应用能够获取和使用生物信号数据,比如从神念科技传感器获取心电图和脑电
图。
本指南仅提供给已经熟练使用Eclipse和Android SDK的程序员使用。如果你不熟悉安卓开发,
请先访问http://developer.android.com 来学习如何建立eclipse和android SDK 开发环境和创建安卓
应用程序。
如果你已经熟悉创建一个安卓应用程序,那接下来的步骤就是确保你已经下载了神念科技的安
卓版ThinkGear SDK。如果你已经在读这篇文档,说明你已经有这个SDK了。如果没有,这个SDK
可以从http://store.neurosky.com/products/developer-tools-3-android 下载。
ThinkGear SDK (安卓版) 内容
ThinkGear SDK (安卓版):开发指南(本文档)
ThinkGear SDK (安卓版):API 参考
ThinkGearBase.jar 包
ThinkGearPackX.jar 包
• 示例 ThinkGear (安卓版)项目
你能发现“API参考”在reference/TG-SDK文件夹下,“thinkGearBase.jar”和“thinkGearPackX.jar”
在lib文件夹下,“HelloEEG”,“HelloEKG”或者其他示例工程在Sample Projects文件夹下
重要提醒:如果你有测试版本或者其他特殊版本的jar包文件夹,这个文件夹可能替代
TgLabsbase.jar和TgLABsPackX.jar。如果这个jar文件名字中有Pack,那个接下来的字符表示一个
选项包。例如TgLABsPackX.jar或者ThinkGearPackB.jar。
支持的ThinkGear 硬件
ThinkGear SDK(安卓版)必须和与之兼容的ThinkGear硬件传感设备一起使用。
以下是目前兼容的ThinkGear硬件传感设备:
• MindWave (RF)
• MindWave Mobile
2013 年 4 月 5 日 | © 2012 NeuroSky, Inc. 版权所有. 5
第一章 - 简介
• MindBand
• MindTune
• MindSet
• ThinkCap (*一些更老的型号已不再支持)
• BrainAthlete
• CardioChip Starter Kit Unit
重要提醒: 请确保在使用任何TG-SDK的安卓应用前已经将ThinkGear传感器配对到你的安卓
设备。你可以根据ThinkGear硬件设备中附带的用户手册指导配对。
2013 年 4 月 5 日 | © 2012 NeuroSky, Inc. 版权所有. 6
第二章
你的第一个工程项目:
你的SDK可能包含了一个简单工程包括如何设置,连接和处理ThinkGear设备的数据。你
可以通过以下步骤添加一个工程到Eclipse IDE。(已测试的Eclipse IDE版本:Mac OS 10.8.2平
台的Juno Service Release 1)
1. 打开 Eclipse, 选择 File > New > Project…
2. 在新建工程的向导中,点开Android选项,并且选择Android Project from Existing Code ,
并且单击 Next。
3. 点击 Browse… 找到Sample Projects文件下的 Hello 工程并点击Open
4. 勾选 Copy projects to workspace 并点击 Finish
5. 退出向导
6. 用你的安卓设备连接到你的电脑
7. 此时,你应该能够浏览你的代码,做修改,编译和部署任何常规安卓应用程序一样,部
署你的应用程序到你的设备或者模拟器上。
注意: 如果出现问题,可尝试以下的操作:
在工程上右击并且选择Properties。单击Android选项确保安装Android2.3.3或以上版本。
在尝试连接之前。确保你的安卓设备已通过你的安卓设备的蓝牙设置与ThinkGear硬件
设备配对了。
在Eclipse的Package Explorer中,展开你的工程下的libs文件夹,右击ThinkGearBase.jar,
并且选择Build Path > Add to Build Path,并且添加这个文件夹下的ThinkGearPackX.jar
文件。(或者TgLABsBase.jar 和 TgLABsPackX.jar)
为确保应用运行在正确的设备上,检查Eclipse , 点击Run> Run Configurations. 在 Target
标签页,勾选"Always prompt to pick device".
查看一下Eclipse 控制台,有时会显示需要重启,此时应退出再重新打开Eclipse。
如果你看到“The selection cannot be launched, and there are no recent launches.”的消息。右击
Package 或 Project Explorer的project,选择"Run As"并勾选"Android Application" 然后尝试
重新运行一遍。
你可以使用相同的步骤部署其他的示例工程。
2013 年 4 月 5 日 | © 2012 NeuroSky, Inc. 版权所有. 7
第三章
开发你自己的启用ThinkGear的安卓应用
准备你的安卓工程
首先确保你工程的"Android build target"至少是Android 2.3.3.版本。
1. 右击你的工程并选择Properties。
2. 点击Andorid 标签确保Target Name至少为Android 2.3.3。
接着你需要添加 ThinkGearBase.jar和ThinkGearPackX.jar到你的工程中去。
1. 使用Eclipse的Package Explorer在你的安卓项目的根目录中创建一个lib文件夹。
2. 使用Windows Explorer (Mac的Finder)把ThinkGear jar从TG-SDK for Android的lib文
件夹拷贝到你Eclipse工程的lib文件夹中。
3. 打开Eclipse Package Explorer,右击ThinkGear-Base.jar(Mac用户使用Ctrl-click),
选择Build Path » Add to build path. 同时添加ThinkGearPackX.jar
to enable the BLUETOOTH permission in your app's manifest ële:
假设你的app会通过蓝牙连接ThinkGear硬件设备, 你需要在app的manifest文件中启用
need
BLUETOOTH权限。
创建TGDevice对象
TGDevice对象用来管理单个ThinkGear硬件设备的连接问题的。本书仅涉及了最普遍的连接场
景,即你的安卓app会通过TGDevice(BluetoothAdapter, Handler)的构造的标准安卓蓝牙来连接
ThinkGear硬件设备。(替换构造函数(TGDevice(InputStream,outputStream,Handler)只能
在特殊不常见的情况下使用)。
• 在Activity中导入以下的包:
import com.neurosky.thinkgear.*;
import com.android.bluetooth.*;
import com.android.util.Log;
2013 年 4 月 5 日 | © 2012 NeuroSky, Inc. 版权所有. 8