6. API 概要
6.5 Cycling カスタムプロファイル
6.5.1
概要Cyclingカスタムプロファイルの処理を実装します。Cyclingカスタムプロファイルではセンサとして動作
しているRL78/G1D側に対し車輪半径の設定を行います(注)。なお、このカスタムプロファイルはCSCP利用
時に必須の機能ではありません。
【注】 車輪半径の設定数値をRL78/G1DはCyclingカスタムプロファイルを通じて受信することができます
が、RL78/G1D上で動作するデモアプリケーションではその設定数値を利用していません。
Cyclingカスタムプロファイルの仕様を表6-4に示します。
表6-4 Cyclingカスタムプロファイルの仕様
アトリビュートハンドル アトリビュートタイプとその値 DEMO_CUSTOM_CYCL_PROFILE_HDL_SVC
0x0037 (※)
Type: Primary Service Declaration UUID:
0xF2B2C260-5780-11E5-A518-0002A5D5C51B DEMO_CUSTOM_CYCL_PROFILE_HDL_RADIUS_CHAR
0x0038 (※)
Type: Characteristic Declaration UUID:
0x15DB6B80-5780-11E5-B8EC-0002A5D5C51B Property: Read/Write
DEMO_CUSTOM_CYCL_PROFILE_HDL_RADIUS_VAL 0x0039 (※)
Type: Characteristic Value
本CharacteristicにWriteを送信することで、車 輪半径の設定を行うことができます。初期値は 60(cm)です。
DEMO_CUSTOM_CYCL_PROFILE_HDL_RADIUS_DESC 0x003A (※)
Type: Characteristic User Description
(※) アトリビュートハンドルの16進値は、ファームウェア内に組み込むプロファイルによって変わります。
6.5.2 API
一覧Cyclingカスタムプロファイル(demo_custom_cycl_profile.c)の主要APIの一覧を表6-5に示します。
表6-5 CyclingカスタムプロファイルAPI一覧
関数名 概要
DemoCustom_CyclProfile_Enable
DemoCustom_CyclProfile_EndEnableComplete
Cyclingカスタムプロファイル有効化
DemoCustom_CyclProfile_GattCallback CyclingカスタムGATTコールバック DemoCustom_CyclProfile_Response Cyclingカスタム応答
DemoCustom_CyclProfile_SendChgChar Cyclingカスタム更新通知送信 DemoCustom_CyclProfile_SetData Cyclingカスタム更新
6.5.3 API
Cyclingカスタムプロファイル(demo_custom_cycl_profile.c)の主要APIの概要を以下に示します。
RBLE_STATUS DemoCustom_CyclProfile_Enable( uint16_t conhdl, DEMO_CUSTOM_CYCL_PROFILE_EVENT_HANDLER call_back )
概要 Cyclingカスタムプロファイル有効化
説明
・RBLE_GATT_Enableをコールしてカスタムプロファイルを有効化します。
・処理が完了すると DemoCustom_CyclProfile_EndEnableComplete関数をコールし ます。
引数
uint16_t conhdl コネクションハンドル
DMEO_CUSTOM_CYCL_PROFILE_EVENT_HANDLER call_back
カスタムプロファイル のコールバック
戻り値 RBLE_STATUS 処理結果
static void DemoCustom_CyclProfile_EndEnableComplete(RBLE_STATUS status)
概要 Cyclingカスタムプロファイル有効化完了通知
説明 ・指定されたコールバック関数をコールします。
引数 RBLE_STATUS status 処理結果
戻り値 なし
static void DemoCustom_CyclProfile_GattCallback( RBLE_GATT_EVENT *event )
概要 CyclingカスタムGATTコールバック
説明 ・カスタムプロファイルに対するGATTのイベントを受け取ります。対応するコール バック関数をコールします。
引数 RBLE_GATT_EVENT *event イベント情報
戻り値 なし
static
void DemoCustom_CyclProfile_Response(uint16_t att_hdl, RBLE_STATUS result)
概要 Cyclingカスタム応答
説明 ・Write応答を送信します。
引数 uint16_t att_hdl 属性ハンドル
RBLE_STATUS result 書き込み結果
戻り値 なし
static
void DemoCustom_CyclProfile_SendChgChar(
uint8_t char_code, uint8_t *value, uint16_t val_len)
概要 Cyclingカスタム更新通知送信
説明 ・デモアプリケーションに対して値が更新されたことを通知します。
引数
uint8_t char_code Characteristicコード
uint8_t *value Characteristicの値
uint16_t val_len valueの長さ
戻り値 なし
static
RBLE_STATUS DemoCustom_CyclProfile_SetData(
uint16_t val_hdl, uint8_t *data, uint16_t data_len)
概要 Cyclingカスタム更新
説明 ・RBLE_GATT_Set_Data関数をコールしてGATTの持つCyclingカスタムの値を更
新します。
引数
uint16_t val_hdl 値のハンドル
uint8_t *data Characteristicの値
uint16_t data_len dataの長さ
戻り値 RBLE_STATUS 処理結果