おくだけセンサー リンク

G AT T デ ー タ ベ ー ス 仕 様 書
第1版

第1版

2020年8月24日発行

更新履歴
更新内容

更新日
2020.08.24■ 更新履歴初版ⅰ

はじめに
本文書は、おくだけセンサー リンクのGATTデータベース仕様および一部の動作仕様について説明するものです。
おくだけセンサー リンクの取り扱いについては、おくだけセンサー リンク取扱説明書をご参照く
ださい。

ⅱ■ はじめに目次
更新履歴__________________________________________________________________ ⅰ
はじめに__________________________________________________________________ ⅱ
目次______________________________________________________________________ ⅲ

1. 動作モード_______________________________________________________ P.1
2. Service一覧______________________________________________________ P.2
3. 動作モード共通で有効なService________________________________________ P.3
3.1.Generic Access________________________________________________________ P.3
3.2.Device Information_____________________________________________________ P.4
3.3.Sun Device Preferences__________________________________________________ P.5

4. PDLPモードで有効なService__________________________________________ P.7
4.1.PeripheralDeviceLinkService______________________________________________ P.7

5. GATTモードで有効なService__________________________________________ P.8
5.1.Sun Accelerometer Service_______________________________________________ P.8
5.2.Sun Illuminometer Service_______________________________________________ P.10
5.3.Sun Magnetometer Service_______________________________________________ P.12
5.4.Sun Thermohygrometer Service___________________________________________ P.13
5.5.Sun Battery Service_____________________________________________________ P.15
5.6.Sun LED Service_______________________________________________________ P.16

6. Characteristicの値が反映されるタイミング等______________________________ P.17

■ 目次ⅲ

1. 動作モード
おくだけセンサー リンクはCentralデバイスとの接続が完了した後の動作について、以下の二つの動作モードを持ちます。

PDLPモード
Linkingデバイスとして動作するモードです。
PeripheralDeviceLinkServiceのWriteMessage Characteristicに対してWriteを行うとPDLPモードで動作します。

GATTモード
一般的なGATT Serverとして動作するモードです。
以下のServiceのCharacteristicに対してWriteを行うとGATTモードで動作します。
Service Name

Characteristic Name

Sun Accelerometer Service
Sun Illuminometer Service
Sun Magnetometer Service
Sun Thermohygrometer ServiceEnable

Sun Battery Service

Battery Enable

各ServiceやCharacteristicについては次章以降で説明します。
両モードを同時に使用することはできません。動作モードが決定した後、Centralデバイスとの接続が切断されるまではその動作モードを維持します。動作モードを切り替える場合は一度Centralデバイスとの接続を切断する必要があります。
本書では主にGATTモードで使用するServiceとCharacteristicについて説明します。

P.1■ おくだけセンサー リンク

2. Service一覧
おくだけセンサー リンクでは以下のServiceが定義されています。
Service UUID

Service Name

対象動作モード0x1800

Generic Access-0x180a

Device Information-b3b36901-50d3-4044-808d-50835b13a6cdPeripheralDeviceLinkService4867e90c-6366-4bbf-5e4a-abb82b515446

Sun Device Preferences

24eaebfe-d7fe-425a-8e7f-3cadbb1d1879

Sun Accelerometer ServiceGATT

dc209ab9-f531-4171-b7bc-7473b0ddd600

Sun Illuminometer Service

GATT

c324e6a8-feb8-472e-a202-eecf7bc8c14c

Sun Magnetometer Service

GATT

4ea70e4e-f107-4428-9863-c2ccd3d41bb0

Sun Thermohygrometer Service

GATT

7b420b63-9c23-4047-922f-e8caeb27273f

Sun Battery Service

GATT

96ef744d-3075-43ce-92b6-42b1745ac4d6

Sun LED Service

GATT■ おくだけセンサー リンクP.2PDLP-3. 動作モード共通で有効なService
本章では、動作モードにかかわらず有効なServiceについて説明します。

3.1. Generic Access
Generic Access Serviceでは以下のCharacteristicが定義されています。
Characteristic UUID

Characteristic Name

Properties

Length0x2a00Device Name

Read120x2a01

Appearance

Read

2

Device Name
Readされると、デバイス名を “COK001_xxxxx” の形式で応答します。
xxxxxの部分はおくだけセンサー リンクの製造番号によって決定されます。
製造番号から決定されるデバイス名は弊社Webサイトのツールで確認することができます。
•おくだけセンサー リンク デバイス番号確認ツール | IoT/M2Mルータならサン電子
https://www.sun-denshi.co.jp/sc/tool/

Appearance
Readされると0x0000を応答します。

P.3■ おくだけセンサー リンク3.2. Device InformationDevice Information Serviceでは以下のCharacteristicが定義されています。
Characteristic UUID

Characteristic NameProperties

Length0x2a29

Manufacturer Name String

Read

140x2a25

Serial Number String

Read140x2a26

Firmware Revision String

Read3~0x2a28

Software Revision String

Read

14

Manufacturer Name String
Readされると “SUNCORPORATION” を応答します。

Serial Number String
Readされると製造番号（”COK001~”）を応答します。

Firmware Revision String
Readされると現在のファームウェアバージョン（”1.3” など）を応答します。

Software Revision String
Readされるとファームウェアのビルド番号（”20200729163459” など）を応答します。

■ おくだけセンサー リンクP.4

3.3. Sun Device Preferences
Sun Device Preferences Serviceでは以下のCharacteristicが定義されています。
Characteristic UUID

Characteristic Name

Properties

LengthDefault

49cbdc62-5f37-4412-80f6-27890adaa2d4

Idle Timeout

Read/Write

20d8351cbe-ba95-4066-8423-9eee6c71472e

Beacon Transmitting
Interval

Read/Write

21280

53a54d50-7baf-4027-8f41-39c92fd89358

Beacon Updating Interval

Read/Write1

4

109cf8a7-863e-4123-9d34-b462ace512d8

Tx Power Level

Read/Write

20

本ServiceのCharacteristicへWriteが行われたとき、以下のエラーコードを返す場合があります。
Error code

意味0x0D

バイト長が不正0x80

指定可能範囲外

Idle Timeout
GATTモードにおいてセンサ値のReadやNotificationが行われなかったときに、Centralデバイスとの接続を切断するまでの時間を設定します。設定は直ちに反映されます。
設定は分単位で、0~1440の範囲で指定可能です。0が指定された場合は切断されません。
タイムアウトまでのタイマは以下のServiceのCharacteristicをReadされる、またはNotificationが発生するとリセットされます。
Service Name

Characteristic Name

Sun Accelerometer Service
Sun Illuminometer Service
Sun Magnetometer Service
Sun Thermohygrometer ServiceData

Sun Battery Service

Battery Level
USB Plugged

Sun LED Service

Status

本設定はGATTモードの時のみ有効です。PDLPモードでは切断されません。
Sun Magnetometer Serviceのみを使用する場合はIdle Timeoutを設定しない、または長く設定することを推奨します。
短く設定した場合、磁気が頻繁に変化するような環境でないとタイムアウトにより接続が切断されます。

P.5■ おくだけセンサー リンク

Beacon Transmitting Interval
Centralデバイス未接続時のビーコン送出間隔を設定します。設定はCentralデバイスとの接続が切断された際に反映されます。
設定は0.625ミリ秒単位で、160~4096（100~2560ミリ秒）の範囲で指定可能です。

Beacon Updating Interval
Centralデバイス未接続時のビーコンデータの更新間隔を設定します。設定はCentralデバイスとの接続が切断された際に反映されます。
設定は秒単位で、1~60の範囲で指定可能です。

Tx Power Level
おくだけセンサー リンクの電波送信出力を設定します。設定は直ちに反映されます。
設定は0.1dBm単位で、-200~70（-20~+7dBm）の範囲で指定可能です。

■ おくだけセンサー リンク

P.6

4. PDLPモードで有効なService
本章では、PDLPモードで有効なServiceについて説明します。

4.1. PeripheralDeviceLinkService
PeripheralDeviceLinkServiceでは以下のCharacteristicが定義されています。
Characteristic UUID

Characteristic Name

Properties

b3b39101-50d3-4044-808d-50835b13a6cd

WriteMessage

Write

b3b39102-50d3-4044-808d-50835b13a6cd

IndicateMessage

Indicate

本ServiceはProject Linkingにて定義されているLinking Profileの実装となります。
本Serviceの挙動についてはProject Linkingの開発者向けサイトをご参照ください。

P.7■ おくだけセンサー リンク

5. GATTモードで有効なService
本章では、GATTモードで有効なServiceについて説明します。

5.1. Sun Accelerometer Service
Sun Accelerometer Serviceは加速度センサの制御を行うServiceです。
本Serviceでは以下のCharacteristicが定義されています。
Characteristic UUID

Characteristic Name

Properties

LengthDefault

57cc3b5c-b5ac-4d3d-ad6a-36ec1392502a

Data

Read/Notify

6-ee7edab2-da00-4545-8ede-b85713dc55d6

EnableRead/Write

107cf84ebf-d8d9-42f0-9d89-711d9c919a1b

PeriodRead/Write

21000

本ServiceのCharacteristicへReadまたはWriteが行われたとき、以下のエラーコードを返す場合があります。
Error code

意味

0x02

Enableの値が0のときにDataをReadした

0x03

PDLPモードで動作中（Enableのみ）

0x0D

バイト長が不正0x13

500の倍数でない（Periodのみ）

0x80

指定可能範囲外

Data
Enableの値が1のときにReadされると、最後に計測した加速度センサの値を返します。フォーマット
は以下の通りです（一つの枠が1バイト）。
X軸データ
(LSB)

X軸データ
(MSB)

Y軸データ
(LSB)

Y軸データ
(MSB)

Z軸データ
(LSB)

Z軸データ
(MSB)

各軸のデータはリトルエンディアンで格納されており、1ビットあたり3.9mG（G: 重力加速度）となります。m/s2に変換するには以下のような式で計算を行う必要があります。
加速度 (m/s2) = (軸データ × 3.9 × 9.8) ÷ 1000
Client Characteristic Configuration Descriptorに1が書き込まれている場合、加速度センサの計測が行われたタイミングで計測値のNotificationを行います。

■ おくだけセンサー リンク

P.8

Enable
加速度センサの有効・無効の設定を行います。
値が1のとき、Periodで指定されている間隔で加速度センサの計測を行います。
値が0のときは計測を行いません。
Centralデバイスとの接続が切断されると値は0に戻ります。

Period
加速度センサの計測間隔を設定します。設定は直ちに反映されます。
設定はミリ秒間隔で、500~60000の範囲、かつ500の倍数で指定可能です。
Centralデバイスとの接続が切断されても値は保持されます。電源を切ると初期値に戻ります。

P.9■ おくだけセンサー リンク5.2. Sun Illuminometer Service
Sun Illuminometer Serviceは照度センサの制御を行うServiceです。
本Serviceでは以下のCharacteristicが定義されています。
Characteristic UUID

Characteristic Name

Properties

LengthDefault

64315206-83f8-4d36-893a-ba458f4eb76e

Data

Read/Notify

2-021c84ca-7e21-47ba-a778-50a92e18b91a

EnableRead/Write10

fa90a747-267d-47f6-8ecd-2bf586d4467f

PeriodRead/Write

210000本ServiceのCharacteristicへReadまたはWriteが行われたとき、以下のエラーコードを返す場合があります。
Error code

意味

0x02

Enableの値が0のときにDataをReadした

0x03

PDLPモードで動作中（Enableのみ）

0x0D

バイト長が不正0x13

500の倍数でない（Periodのみ）

0x80

指定可能範囲外

Data
Enableの値が1のときにReadされると、最後に計測した照度センサの値を返します。フォーマットは以下の通りです（一つの枠が1バイト）。
測定値 (LSB)

指数 (4bit) + 測定値 (MSB4bit)

2バイト全体をビットフィールドで表現すると以下のようになります。
1514131211109876543210R7R6R5R4R3R2R1R0E3E2E1E0R11 R10R9R8

R0~R11に測定値 (12bit) が、E0~E3に指数 (4bit) が格納されます。
指数の値によって測定値1bitあたりの分解能が次ページの表のように変化します。

■ おくだけセンサー リンク

P.10

E3E2E1E0

分解能 (lux per LSB)

最大計測照度00000.0140.9500010.0281.9000100.04

163.8000110.08327.60

01000.16655.20

01010.32

1310.4001100.642620.80

01111.285241.60

10002.56

10483.20

10015.12

20866.40

101010.14

41932.80

101

120.4883865.60

測定値をluxに変換するには以下のような式で計算を行う必要があります。
lux = 分解能 × 測定値
なお、83865.60lux以上の値（測定可能上限を突破）した場合、Dataには0xFFFFが格納されます。
Client Characteristic Configuration Descriptorに1が書き込まれている場合、照度センサの計測が行われたタイミングで計測値のNotificationを行います。
Enableの値が0のときにReadされると、エラーコード0x02を返します。

Enable照度センサの有効・無効の設定を行います。
値が1のとき、Periodで指定されている間隔で照度センサの計測を行います。
値が0のときは計測を行いません。
Centralデバイスとの接続が切断されると値は0に戻ります。

Period照度センサの計測間隔を設定します。設定は直ちに反映されます。
設定はミリ秒間隔で、500~60000の範囲、かつ500の倍数で指定可能です。
Centralデバイスとの接続が切断されても値は保持されます。電源を切ると初期値に戻ります。

P.11■ おくだけセンサー リンク5.3. Sun Magnetometer Service
Sun Magnetometer Serviceは磁気センサの制御を行うServiceです。
本Serviceでは以下のCharacteristicが定義されています。
Characteristic UUID

Characteristic Name

Properties

LengthDefault

84d3d46f-c936-4edb-8b5d-e10124e04f28

Data

Read/Notify

1-77b89044-5c7c-4fb5-a3d9-11c745537a9a

EnableRead/Write

10

本ServiceのCharacteristicへReadまたはWriteが行われたとき、以下のエラーコードを返す場合があります。
Error code

意味0x02

Enableの値が0のときにDataをReadした

0x03

PDLPモードで動作中

0x0D

バイト長が不正0x80

指定可能範囲外

Data
Enableの値が1のときにReadされると、磁気センサが磁界を検出しているかどうかを返します。
磁界を検出している場合は0x00を、検出していない場合は0x01を返します。
Client Characteristic Configuration Descriptorに1が書き込まれている場合、磁気センサの値が変化したタイミングで計測値のNotificationを行います。
Enableの値が0のときにReadされると、エラーコード0x02を返します。

Enable磁気センサの有効・無効の設定を行います。
値が1のとき、磁気センサが有効になります。値が0のときはセンサが無効となります。
Centralデバイスとの接続が切断されると値は0に戻ります。

■ おくだけセンサー リンク

P.12

5.4. Sun Thermohygrometer Service
Sun Thermohygrometer Serviceは温湿度センサの制御を行うServiceです。
本Serviceでは以下のCharacteristicが定義されています。
Characteristic UUID

Characteristic Name

Properties

LengthDefault

f94517ff-aa55-427c-ab19-33ca5dfec192

Data

Read/Notify

4-b0cc0a99-a8b2-4f80-8095-472d7234bfc8

EnableRead/Write

10a8914c08-f8d1-4152-8b7d-18429226d6c0

PeriodRead/Write

210000本ServiceのCharacteristicへReadまたはWriteが行われたとき、以下のエラーコードを返す場合があります。
Error code

意味0x02

Enableの値が0のときにDataをReadした

0x03

PDLPモードで動作中（Enableのみ）

0x0D

バイト長が不正0x13500の倍数でない（Periodのみ）

0x80

指定可能範囲外

Data
Enableの値が1のときにReadされると、最後に計測した温湿度センサの値を返します。フォーマットは以下の通りです（一つの枠が1バイト）。
相対湿度データ (LSB)

相対湿度データ (MSB)

温度データ (LSB)

温度データ (MSB)

両データはリトルエンディアンで格納されています。一般的なフォーマットに変換するには以下のような式で計算を行う必要があります。
相対湿度 (%) = 125 × 相対湿度データ ÷ 65536 – 6
温度 (℃) = 175.72 × 温度データ ÷ 65536 – 46.85
Client Characteristic Configuration Descriptorに1が書き込まれている場合、温湿度センサの計測が行われたタイミングで計測値のNotificationを行います。
Enableの値が0のときにReadされると、エラーコード0x02を返します。

P.13■ おくだけセンサー リンク

Enable
温湿度センサの有効・無効の設定を行います。
値が1のとき、Periodで指定されている間隔で温湿度センサの計測を行います。
値が0のときは計測を行いません。
Centralデバイスとの接続が切断されると値は0に戻ります。

Period
温湿度センサの計測間隔を設定します。設定は直ちに反映されます。
設定はミリ秒間隔で、500~60000の範囲、かつ500の倍数で指定可能です。
Centralデバイスとの接続が切断されても値は保持されます。電源を切ると初期値に戻ります。

■ おくだけセンサー リンク

P.14

5.5. Sun Battery Service
Sun Battery Serviceはおくだけセンサー リンクの電源状態を管理するServiceです。
本Serviceでは以下のCharacteristicが定義されています。
Characteristic UUID

Characteristic Name

Properties

LengthDefault

98da9d54-ce70-4718-841b-e8f1196d6b17

Battery Level

Read/Notify1-949724da-0d2d-4f2e-88a4-75b7a7341c3d

Battery Enable

Read/Write

10406b724e-3176-425f-9a68-8532e4c3e0c8

USB Plugged

Read

1-

本ServiceのCharacteristicへReadまたはWriteが行われたとき、以下のエラーコードを返す場合があります。
Error code

意味

0x02

Enableの値が0のときにDataをReadした

0x03

PDLPモードで動作中

0x0D

バイト長が不正0x80

指定可能範囲外

Battery Level
Battery Enableの値が1のときにReadされると、現在の電池電圧が2.4V以上かどうかを返します。
2.4V以上の場合は0x01を、2.4V未満の場合は0x00を返します。
Client Characteristic Configuration Descriptorに1が書き込まれている場合、電池電圧が2.4Vを下回ったタイミングで値のNotificationを行います。
Battery Enableの値が0のときにReadされると、エラーコード0x02を返します。

Battery Enable
電池電圧監視の有効・無効の設定を行います。
値が1のとき、電池電圧監視が有効になります。値が0のときは監視を行いません。
Centralデバイスとの接続が切断されると値は0に戻ります。

USB Plugged
Readされると、現在USB給電が行われているかどうかを返します。
USB給電が行われている場合は0x01を、そうでなければ0x00を返します。

P.15■ おくだけセンサー リンク5.6. Sun LED Service
Sun LED Serviceはおくだけセンサー リンクの状態LEDの制御を行うServiceです。
本Serviceでは以下のCharacteristicが定義されています。
Characteristic UUID

9b93e645-7b89-4c97-9852-a406762203af

Characteristic Name

StatusProperties

LengthDefault

Read/Write

10

本ServiceのCharacteristicへWriteが行われたとき、以下のエラーコードを返す場合があります。
Error code

意味0x0D

バイト長が不正0x80

指定可能範囲外

Status
状態LEDの点灯状態の設定を行います。設定値とLEDの状態の対応は以下の表の通りです。
設定値

LEDの状態

0

消灯

1

1秒毎に点灯と消灯をトグル

2

点灯

Centralデバイスとの接続が切断されると値は0に戻ります。

■ おくだけセンサー リンク

P.16

6. Characteristicの値が反映されるタイミング等
各ServiceにてWrite可能なCharacteristicに書き込んだ値が反映されるタイミング、Centralデバイスとの切断時の値の保持、電源OFF時の値の保持は以下の表のように動作します。
Characteristic Name

反映タイミング

切断時

電源OFF時

書き込み直後

保持される

保持される

Beacon Transmitting Interval

Centralデバイスとの接続が切断されたとき保持される

保持される

Beacon Updating Interval

Centralデバイスとの接続が切断されたとき保持される

保持される

書き込み直後

保持される

保持される

Sun Device Preferences
Idle TimeoutTx Power Level

Sun Accelerometer Service
Enable

書き込み直後初期値に戻る

初期値に戻る

Period

書き込み直後保持される

初期値に戻るSun Illuminometer Service
Enable

書き込み直後初期値に戻る

初期値に戻る

Period

書き込み直後保持される

初期値に戻る

初期値に戻る

初期値に戻る

Sun Magnetometer Service
Enable

書き込み直後Sun Thermohygrometer Service

Enable

書き込み直後初期値に戻る

初期値に戻る

Period

書き込み直後保持される

初期値に戻る

初期値に戻る

初期値に戻る

初期値に戻る

初期値に戻る

Sun Battery Service
Battery Enable

書き込み直後Sun LED Service

Status

書き込み直後P.17■ おくだけセンサー リンク

Moving Forward with IoT0587-53-7606
0587-55-0815
support-suncomm@sun-denshi.co.jp

おくだけセンサー リンク

GATTデータベース仕様書

サン電子株式会社
2020年8月発行

Ver.1.0
2020.08.24（‘200824)

月曜~金曜 10:00~16:00 (12:00~13:00を除く）
土日祝日、弊社休日を除く© 2020 SUNCORPORATION, All rights reserved.