目 次 1 概 要... 3 2 開 発 環 境... 4 3 動 作 環 境... 4 4 参 考 資 料... 4 5 デモンストレーション 説 明 書... 5 5.1 デモンストレーション 概 要... 5 5.2 ソフトウェア 構 成 図... 6 5.3 デモセット 部 品 一 覧...

Similar documents
Microsoft Word - 参考資料:SCC_IPsec_win8__リモート設定手順書_

変 更 履 歴 日 付 Document ver. 変 更 箇 所 変 更 内 容 2015/3/ 新 規 追 加 2015/9/24 誤 字 修 正 2016/2/ 動 作 環 境 最 新 のものへ 変 更 全 体 オペレーター の 表 記 を 削 除 2016/5/

AGT10 ( Android(TM) 4.1) ファームウェア更新方法

事 前 確 認 2 1 事 前 確 認 1-1.ノート/メモパッドを 取 り 付 ける ノートブックタイプ 1 本 体 左 側 のはくりフィルムをはがす 2ノートの 表 紙 を 透 明 ポケットに 挿 入 する 3 表 紙 を 本 体 のへこみに 合 わせ 貼 り 付 ける 本 体

目 次 目 次... 本 書 の 見 かた... 2 商 標 について... 2 オープンソースライセンス 公 開... 2 はじめに... 3 概 要... 3 使 用 環 境 について... 4 対 応 している OS およびアプリケーション... 4 ネットワーク 設 定... 4 Googl

PowerPoint プレゼンテーション

スライド 1

VisualStage Type-Basic Mobile設定&操作マニュアル(Android版)

入退室インストールマニュアル.pdf

重 要 BB セキュリティ powered by Symantec TM Plus をご 利 用 いただくためには 本 資 料 の 手 順 にしたがって 必 ずアクティブ 化 してください アクティブ 化 とは BB セキュリティの 各 サービスをご 利 用 いただくために 必 要 なオン ライン

スライド 1

WATCH LOGGER

iStorage ソフトウェア VMware vSphere Web Client Plug-in インストールガイド

TeleOffice 3.0 Lync 2 TO

Visio-XPSP2_Mpro.vsd

KINGSOFT Office 2016 動 作 環 境 対 応 日 本 語 版 版 共 通 利 用 上 記 動 作 以 上 以 上 空 容 量 以 上 他 接 続 環 境 推 奨 必 要 2

目 次 1.はじめに 書 式 の 説 明 表 紙 スケジュール 組 入 れ 基 準 併 用 禁 止 薬 併 用 注 意 薬 同 種 同 効 薬 医 師 モニタリング..

目 次 1. はじめに 3 2. システム 要 件 4 3. HDD Password Tool のインストール 5 Windows の 場 合 5 Mac の 場 合 8 4. HDD Password Tool の 使 い 方 HDD Password Tool を 起 動 する

前 書 き 広 域 機 関 システム System for Organization for Cross-regional Coordination of Transmission Operators(OCCTO) rev: 商 標 類 Windows Office Excel

Microsoft Word _Office365ProPlus利用マニュアル.docx

以 下 に 手 順 の 流 れを 記 載 します 3ページ 以 降 で 各 項 目 の 手 順 を 説 明 します ( をクリックすると 該 当 ページにジャンプします ) また 15ページに 汎 用 データ 受 入 に 関 する よくあるお 問 い 合 わせをご 紹 介 しています Step1 (

<4D F736F F D C97F195CF8AB DEC90E096BE8F912091E6312E313294C52E646F63>

XPFILESHARE.PDF

もくじ はじめに 本 書 はスマートフォンやタブレットのアプリ LINE の 設 定 を 行 うためのマニュアルとなります 詳 しい 操 作 方 法 については メーカーホームページ 上 の 基 本 的 な 使 い 方 を 参 照 ください LINE 基 本 的 な 使 い 方

改 訂 履 歴 版 概 要 区 分 更 新 日 1.0 新 規 作 成 新 規 2014/06/26 2

HTG-35U ブルーバック表示の手順書 (2014年12月改定)

目 次 1.はじめに 1-1. はじめに 2. 操 作 2-1. 概 要 2-2. 操 作 方 法 ( 調 査 依 頼 の 確 認 ) 2-3. 操 作 方 法 ( 回 答 登 録 ) 2-4. 操 作 方 法 (ワークシート 出 力 ) 2-5. 操 作 方 法 (ワークシート 取 込 ) 3.

ESET Smart Security 8 リリースノート

目 次 ログインする 前 に... 4 メンバー 管 理 編 ( 管 理 者 )... 5 ログインする... 6 トップページについて... 7 メンバー 管 理 をする... 8 メンバー 管 理 画 面 について 医 療 機 関 指 定 新 規 追 加 指 定...

治 験 実 施 管 理 システム NMGCP 向 け Excel 形 式 プロトコール 作 成 手 順 書 V4.0.3 対 応 版 第 1 版 株 式 会 社 富 士 通 アドバンストエンジニアリング All Rights Reserved,Copyright 株 式 会 社 富 士 通 アドバン

1

CSV_Backup_Guide

研究者情報データベース

同 期 を 開 始 する( 初 期 設 定 ) 2 1 Remote Link PC Sync を 起 動 する 2 1 接 続 機 器 の [PIN コード ] [ ユーザー 名 ] [ パスワード ] を 入 力 する [PIN コード ] などの 情 報 は 接 続 機 器 の 設 定 画 面

ez_meishi.ppt

Microsoft PowerPoint _リビジョンアップ案内_最終.pptx

4 自 己 登 録 の 画 面 が 表 示 されたら 送 信 をクリックします 5 アクションが 完 了 しました: 成 功 が 表 示 されたら 画 面 を 下 にスクロールし 画 面 右 下 隅 の OK をクリックします 6 キャンパスクラウドエージェントのダウンロード をクリックします 7

Microsoft Word - 02…C…fi…X…g†[…‰_ doc

Mac OS Xでの利用設定 マニュアル

1. はじめに 1.1. Office365 ProPlus ライセンスについて 九 州 産 業 大 学 に 在 籍 中 の 学 生 教 職 員 の 方 は Office365 ProPlus のライセンスを 1 つ 保 持 しています 1 つの Office365 ライセンスで Office365

目 次 1 インストール 手 順 プログラム データファイルのインストール Microsoft Access2013Runtime SP1(32bit) 版 のインストール 基 本 操 作 ログイン メニュー...

_禑暥ã†�ã…“ã……ã…‹ç«¯æœ«ã‡»ã……ã…‹ã‡¢ã……ã…Šæ›‰é€ƒæł¸ã•’10ã•‚V1.3.xls

目 次 1. 積 算 内 訳 書 に 関 する 留 意 事 項 1 ページ 2. 積 算 内 訳 書 のダウンロード 3 ページ 3. 積 算 内 訳 書 の 作 成 (Excel 2003の 場 合 ) 6 ページ 4. 積 算 内 訳 書 の 作 成 (Excel 2007の 場 合 ) 13

変 更 履 歴 日 付 版 数 変 更 内 容 2012/07/13 Rev 初 版 発 行 2013/07/03 Rev 対 応 機 器 一 覧 機 器 一 覧 を 更 新 [Settings] 画 面 の 表 示 時 刻 を 挿 入 する 機 能 を

< A B E786C7378>

目 次 注 意... 3 インストール... 4 通 信 仕 様 の 切 り 替 え(シリアルポートへの 変 更 )... 6 USB-シリアルドライバのインストール... 7 Windows7 の 場 合... 7 WindowsXP の 場 合... 7 COM ポート 番 号 の 確 認...

目 次 はじめに... 3 間 接 接 続 環 境 かどうかの 判 断... 3 前 提 となる 回 線 構 成 PC-A1 の 仮 想 ハブ 設 定 PC-A1 の 仮 想 ネットワークアダプタを 仮 想 ハブに 接 続 する ブロードバンドルータの 静

PowerPoint プレゼンテーション

MetaMoJi ClassRoom/ゼミナール 授業実施ガイド

この 章 では 電 子 入 札 システムをご 利 用 いただくための 事 前 準 備 について 説 明 します 事 前 準 備 と して ID 初 期 パスワードの 確 認 初 期 パスワード 初 期 見 積 用 暗 証 番 号 の 変 更 IC カード 登 録 またはICカード 更 新 を 行 っ

スライド 1

クーポン販売かんたんインストールガイド

目 次 目 次... 1 本 書 の 見 かた... 2 商 標 について... 2 オープンソースライセンス 公 開... 2 はじめに... 3 概 要... 3 使 用 環 境 について... 4 対 応 している OS およびアプリケーション... 4 ネットワーク 設 定... 4 Goo

TIPS - 棚 割 りを 開 始 するまで Liteを 起 動 し 企 業 情 報 の 追 加 を 行 い 棚 割 を 行 う 企 業 の 追 加 をして 下 さい 企 業 情 報 の 追 加 時 に エラーメッセージが 表 示 された 場 合 別 途 TIPS トラブルが 発 生 した 場 合

購買ポータルサイトyOASIS簡易説明書 b

ID 保 存 されても 問 題 無 い 共 有 されていない PC でしたら ログインボタンの 上 にある[ID 保 存 ]のチェックボックスにチ ェックを 入 れて 下 さい 3. パスワードのオートコンプリート ログインボタンを 押 した 後 に 環 境 によっては 以 下 のような 確 認 が

アスラテック株式会社 会社案内

Untitled

PC 移 行 は 以 下 の 流 れで 行 います 次 ページ 以 降 に 各 手 順 を 記 載 しますのでご 確 認 ください ( をクリックすると 該 当 の 説 明 にジャンプします ) 移 行 元 のPCでの 作 業 Step1 移 行 するデータをバックアップする (3ページ) [データ

グループのファイル 共 有 の 設 定 以 下 の 手 順 に 沿 って 設 定 します 1. ぐるコラ のグループ 番 号 の 確 認 使 用 したいグループのグループ 番 号 を 確 認 します まずログイン 後 ホーム 画 面 からグループに 繋 がります ファイル 共 有 したい グループを

Mac OS インストールマニュアル

<4D F736F F D204F432D434F4D E815B D836A B81698BA697CD89EF8ED A2E646F6378>

はじめに 本 書 では インテリジェントウェイブ 社 ( 以 下 IWI 社 )の 株 主 のお 客 様 に IWI 社 から 株 主 優 待 として 配 布 された Doctor Web 社 のアンチウイルス 製 品 において ライセンスを 更 新 する 手 順 をご 案 内 します お 手 元

(Microsoft PowerPoint - Ver12\203o\201[\203W\203\207\203\223\203A\203b\203v\216\221\227\277.ppt)

目 次 1. 必 要 機 器 概 要 付 属 ファイル 手 順 商 標 改 訂 履 歴

業務用HDビデオシステムプレーヤー

1. はじめに かんたんタブレット アプリは 関 連 するソフトウェアのアップデート( 機 能 の 改 善 や 追 加 )を う 機 能 を 備 えています アプリ 起 動 5 分 後 に 関 連 するソフトウェアアップデートの 有 無 を 自 動 的 にチェックし ソフトウェアのアップデートがあれ

Microsoft Word - 操作マニュアル(石油コンビナート_オフラインソフト編)_v0.2.doc

「ARROWS Tab LTE F-01D」OS バージョンアップ手順書

Windows 7ファイル送信方法 SMB編

目 次 1. はじめに ライセンス 証 書 の 受 領 ライセンス 証 書 に 含 まれる 内 容 環 境 前 提 条 件 準 備 インストール 環 境 の 確 認 ファイル イン

スライド 1

ファクス送信用変換ソフト 操作説明書_VA

V-CUBE One

取扱説明書

インテル(R)Viiv(TM)ユーザーガイド

タイトル位置

1. 概 要 Webで 申 込 みした 手 続 きの 内 容 とNEXIでの 手 続 状 況 を Web 申 込 状 況 一 覧 で 確 認 することができます また 各 種 手 続 きにおいて 申 込 みを 完 了 せずに 保 存 状 態 にした 手 続 きを この 一 覧 から 再 開 すること

SP xDrive Explorer ユーザーマニュアル

図 2 のような 画 面 が 表 示 されるので Install Proself Disk.pkg を 右 クリック(Ctrl+クリック)して 開 く をクリックしてください 図 2 インストーラ 画 面 図 3 のような 画 面 が 表 示 されるので 開 く をクリックしてください 図 3 確

「1 所得税及び復興特別所得税の確定申告書データをお持ちの方」からの更正の請求書・修正申告書作成編

Thunderbird のメール/設定を別PCへ移行する方法(「MozBackup」を使って)

Microsoft PowerPoint - MobileViewer説明資料_ pptx

PowerPoint プレゼンテーション

アプリケーション補足説明書(Office2003)

(3) 下 記 画 面 が 表 示 されます 参 照 ボタンを 押 下 すると 図 5.1-4フォルダ 指 定 画 面 が 表 示 されるので 保 存 先 を 指 定 し OKボタン を 押 下 します 展 開 ボタンを 押 下 します 図 ファイルの 展 開 先 ( 保 存 場 所 )

Office365 ProPlus 利用方法について

事前チェック提出用現況報告書作成ツール入力マニュアル(法人用)

<4D F736F F D C B838B91CE8DF491808DEC837D836A B76312E342E646F63>

贈与税 faq

< 目 次 > 8. 雇 用 保 険 高 年 齢 雇 用 継 続 給 付 27 ( 育 児 休 業 給 付 介 護 休 業 給 付 ) 8.1 高 年 齢 雇 用 継 続 給 付 画 面 のマイナンバー 設 定 高 年 齢 雇 用 継 続 給 付 の 電 子 申 請 高

Manual.xls

5-2.操作説明書(支店連携)_xlsx

目 次 1 はじめに 本 マニュアルの 目 的 注 意 事 項 ご 利 用 のイメージ の 設 定 フロー 概 略 5 3 スマートフォン (Android 6.0) の 設 定 例 接 続 設 定 例 (Sony XPERI

医 療 費 自 己 負 担 額 支 払 明 細 書 入 力 シート - 目 次 - < 第 1 章 > 共 通 事 項 説 明 医 療 費 自 己 負 担 額 支 払 明 細 書 入 力 シート 目 次 1.1 本 システムの 注 意 点 入 力 項 目 について 基 本 情

01_07_01 データのインポート_エクスポート_1

(Microsoft PowerPoint - GasViewer\203_\203E\203\223\203\215\201[\203h\201E\203C\203\223\203X\203g\201[\203\213\216\350\217\207\217\221.pptx)

ファイルサーバー(NFS) 構築ガイド

鎌ケ谷市 施設予約管理システム ご利用の手引き

表紙

Transcription:

RL78 BLE Dongle 仮 想 UART 通 信 チュートリアルガイド Rev :1.0 TS-TUM03626 2015/12/04 1

目 次 1 概 要... 3 2 開 発 環 境... 4 3 動 作 環 境... 4 4 参 考 資 料... 4 5 デモンストレーション 説 明 書... 5 5.1 デモンストレーション 概 要... 5 5.2 ソフトウェア 構 成 図... 6 5.3 デモセット 部 品 一 覧... 7 5.4 セットアップ... 8 5.4.1 rble_uart_gui のセットアップ... 8 5.4.2 Android のセットアップ... 8 5.5 操 作 方 法... 9 5.5.1 Dongle と Android 間 での 仮 想 UART 通 信 を 行 う... 9 6 プロファイル 構 成... 14 6.1 プロファイル 一 覧... 14 6.1.1 Sample Custom Profile... 14 7 ソフトウェア 構 成... 15 7.1 ソフトウェア 概 要... 15 7.1.1 仕 様 概 要... 15 7.1.2 ソフトウェア 動 作... 16 7.1.3 仮 想 UART 通 信 動 作... 17 7.2 ソースコード 解 説... 18 7.2.1 Advertising 開 始... 18 7.2.2 接 続 / 仮 想 UART 通 信 同 作 用 プロファイルの 有 効 化... 19 7.2.3 文 字 列 の 送 信... 20 7.2.4 文 字 列 の 受 信... 21 7.3 Sample Custom Profile API... 22 7.3.1 Definitions... 22 7.3.2 Functions... 25 7.3.2.1 RBLE_SCP_Server_Enable... 25 7.3.2.2 RBLE_SCP_Server_Disable... 25 7.3.2.3 RBLE_SCP_Server_Send_String... 26 7.3.3 Events... 27 7.3.3.1 RBLE_SCP_EVENT_SERVER_ENABLE_COMP... 27 7.3.3.2 RBLE_SCP_EVENT_SERVER_DISABLE_COMP... 27 7.3.3.3 RBLE_SCP_EVENT_SERVER_SEND_NOTIFY_COMP... 27 7.3.3.4 RBLE_SCP_EVENT_SERVER_CHG_CHAR_IND... 27 2

1 概 要 テセラ テクノロジー 製 RL78 BLE Dongle と Android 端 末 を 用 いて RL78 BLE Dongle と Android 端 末 間 で Bluetooth Low Energy の 通 信 を 利 用 した 仮 想 UART 通 信 により 文 字 列 の 送 受 信 を 行 うデモンストレ ーションの 実 施 方 法 および 実 装 方 法 を 示 します A) 動 作 確 認 デバイス RL78 BLE Dongle(RL78/G1D) B) 略 語 および 略 称 の 説 明 略 語 / 略 称 フルスペル 備 考 BLE Bluetooth Low Energy SCP Sample Custom Profile 仮 想 UART 通 信 に 使 用 する 独 自 プロファイル GUI アプリ rble_uart_gui 仮 想 UART 通 信 に 使 用 する PC 上 で 動 作 する GUI アプリ ケーション Android アプリ G1D uart 仮 想 UART 通 信 に 仕 様 する Android 上 で 動 作 する GUI アプリケーション 表 1-1 略 語 および 略 書 の 説 明 Bluetooth は Bluetooth SIG, Inc., U.S.A.の 登 録 商 標 です Android は Google Inc.の 商 標 または 登 録 商 標 です Windows は 米 国 Micorosoft Corporation の 米 国 およびその 他 の 国 における 登 録 商 標 です 3

2 開 発 環 境 仮 想 UART 通 信 ソフトウェアの Windows 用 GUI アプリケーション rble_uart_gui の 開 発 環 境 を 以 下 に 示 します 項 目 説 明 統 合 開 発 環 境 Visual Studio 2013 Professional Update 5 Visual Studio Community 2013 with Update 5 でもビルド 可 言 語 Visual C++ 2013 (MFC 使 用 ) ライブラリ ルネサス エレクトロニクス 製 Bluetooth Low Energy プロトコルスタック V1.10 表 2-1 rble_uart_gui の 開 発 環 境 3 動 作 環 境 仮 想 UART 通 信 ソフトウェアの Windows 用 GUI アプリケーション rble_uart_gui の 動 作 環 境 を 以 下 に 示 します 項 目 説 明 OS Windows 7 Professional 日 本 語 64bit 版 ランタイム Visual Studio 2013 の Visual C++ 再 頒 布 可 能 パッケージ(32bit 版 ) 表 3-1 rble_uart_gui の 動 作 環 境 4 参 考 資 料 1. ネサス エレクトロニクス Bluetooth Low Energy プロトコルスタック ユーザーズマニュアル R01UW0095JJ0117 4

5 デモンストレーション 説 明 書 5.1 デモンストレーション 概 要 本 デモは RL78 BLE Dongle( 以 下 Dongle と 表 記 )および rble_uart_gui( 以 下 GUI と 表 記 )と Android 端 末 ( 以 下 Android と 表 記 )を 用 いて Dongle と Android 間 で Bluetooth Low Energy の 通 信 を 利 用 した 仮 想 UART 通 信 により 文 字 列 の 送 受 信 を 行 います Android は Master として 動 作 し Dongle および GUI は Slave として 動 作 します デモ 構 成 は 以 下 の 通 りです Dongle は PC の USB 端 子 に 接 続 し GUI から 文 字 列 の 送 受 信 を 行 います Android は Android アプリケー ション G1D uart を 使 用 して 文 字 列 の 送 受 信 を 行 います 仮 想 UART 通 信 とは Dongle および GUI と Android に 実 装 されている Bluetooth Low Energy の 独 自 プロ ファイルである Sample Custom Profile(SCP)を 使 用 し 両 者 間 Bluetooth Low Energy の 通 信 を 仮 想 的 に UART の 通 信 に 見 立 てた 通 信 のことです SCP についての 詳 細 は 7.3 Sample Custom Profile API を 参 照 してください G1D uart 図 5-1 システムブロック 図 5

5.2 ソフトウェア 構 成 図 RL78 BLE Dongle と rble_uart_gui は Modem 構 成 となっており APP_MCU と BLE_MCU の 2 つのチップで 動 作 します Dongle と GUI のソフトウェア 構 成 図 を 以 下 に 示 します 図 5-2 ソフトウェア 構 成 図 6

5.3 デモセット 部 品 一 覧 デモンストレーションを 実 施 するために 必 要 な 部 品 は 以 下 の 通 りです 部 品 名 数 量 参 考 情 報 RL78 BLE Dongle 1 テセラ テクノロジー 製 Windows7 以 降 を 搭 載 し たパソコン 1 rble_uart_gui 1 GUI サンプルアプリケーション BLE に 対 応 した Android (Ver4.4.2 以 降 ) (HUAWEI Ascend P7) 1 Visual Studio 2013 の Visual C++ 再 頒 布 可 能 パッケージ が インストールされた 状 態 4.4.2 以 降 には 対 応 しておりますが すべての 端 末 バージョンでの 動 作 は 保 証 していません G1D uart 1 Android アプリケーション 表 5-1 デモセット 部 品 一 覧 表 7

5.4 セットアップ 5.4.1 rble_uart_gui のセットアップ PC に 接 続 した Dongle の 制 御 に rble_uart_gui を 使 用 します rble_uart_gui は 製 品 に 添 付 されていた 文 書 記 載 の URL からダウンロードして 下 さい rble_uart_gui を 実 行 するには Visual Studio 2013 の Visual C++ 再 頒 布 可 能 パッケージ ( 以 下 : ランタイムと 表 記 )が 必 要 です ランタイムを https://www.microsoft.com/ja-jp/download/details.aspx?id=40784 より 入 手 してイン ストールします インストール 方 法 は 上 記 URL の インストール 方 法 を 参 照 してください 5.4.2 Android のセットアップ 1 Android の[ 設 定 ] - [セキュリティ] - 提 供 元 不 明 アプリのインストールを 許 可 にします 2 下 記 の QR コードを 読 み 取 って G1Duart_1.0.0.0.apk ファイルをダウンロードしてください QR コードが 読 み 取 れない 場 合 は 下 記 よりダウンロードしてください http://www.tessera.co.jp/download/android/g1duart_1.0.0.0.apk 3 ダウンロードした G1Duart_1.0.0.0.apk ファイルをタップすると[インストール]ボタンが 表 示 さ れるので タップしてください 4 アプリケーションのインストールが 終 わると[アプリケーションをインストールしました]と 表 示 されます 5 アプリケーションメニューに G1Duart のアイコンが 登 録 されるので アイコンをタップして G1Duart を 起 動 します QR コードは( 株 )デンソーウェーブの 登 録 商 標 です 8

5.5 操 作 方 法 Dongle および rble_uart_gui と Android 間 で 通 信 を 行 う 場 合 の 操 作 方 法 を 記 載 します 5.5.1 Dongle と Android 間 での 仮 想 UART 通 信 を 行 う 1 Dongle を PC の USB ポートに 差 し 込 み PC が Dongle を 認 識 したことをデバイスマネージャで 確 認 し ます 9

2 rble_uart_gui を 起 動 します 設 定 画 面 で Dongle が 接 続 されているポート 名 と Advertising 間 隔 および Complete Local Name を 設 定 して OK ボタンを 押 下 します 項 目 名 デフォルト 説 明 Com Port COM0 Dongle が 接 続 されている COM ポート 名 を 選 択 します Baud Rate 4800 Dongle と GUI の 通 信 速 度 を 設 定 します (4800bps 固 定 ) Interval Min (msec) 30 Advertising 間 隔 の 最 小 値 を 設 定 します ( 範 囲 :20~10240) Interval Max (msec) 60 Advertising 間 隔 の 最 大 値 を 設 定 します ( 範 囲 :20~10240) Complete Local Name Relesas-BLE デバイス 名 を 設 定 します ( 最 大 26 バイト) 表 5-2 設 定 画 面 での 設 定 項 目 10

3 rble_uart_guiのメイン 画 面 が 表 示 され Status が Advertising 状 態 になっていることを 確 認 します 11

4 Android アプリケーション G1D uart を 起 動 し DEVICE ボタンをタップします 先 程 起 動 した Slave が 発 見 され Complete Local Name が 表 示 されるので タップして 接 続 を 行 います 12

rble_uart_gui のステータスが Connected になることを 確 認 します 5 Slave の rble_uart_gui に 任 意 の 文 字 列 を 入 力 し Send ボタンを 押 します G1D uart に 文 字 列 が 表 示 されることを 確 認 します G1D uart に 任 意 の 文 字 列 を 入 力 し Send ボタンをタップします Slave の rble_uart_gui に 文 字 列 が 表 示 されることを 確 認 します Dongle と Android 間 で 文 字 列 の 送 受 信 が 行 え ることを 確 認 してください Master (Android) 送 信 した 文 字 列 が 青 色 文 字 で 受 信 した 文 字 列 が 赤 色 文 字 で 表 示 されます Slave (Dongle) 送 信 した 文 字 列 が Send:として 受 信 した 文 字 列 が Recv:として 表 示 されます 13

6 プロファイル 構 成 6.1 プロファイル 一 覧 本 デモを 実 現 するにあたり BLE の 独 自 プロファイルを 実 装 し 使 用 しています BLE のプロファイルには Client と Server の 2 つの 役 割 がありますが 本 デモでは Master を Client Slave を Server として 動 作 させます 各 動 作 とそれに 使 用 されているプロファイルを 表 6-1 に 示 します 動 作 プロファイル 名 備 考 Sample Custom Profile Android は Master 動 作 のみ 対 応 仮 想 UART 通 信 動 作 (SCP) Dongle は Slave 動 作 のみ 対 応 表 6-1 各 動 作 とプロファイル 本 デモに 使 用 しているプロファイルの 仕 様 を 以 下 に 示 します 6.1.1 Sample Custom Profile Service 名 Sample Custom Service UUID 0x80000000 00000000 00000000 00000001 表 6-2 Srvice 名 Characteristic 名 Notify Characteristic Properties Notify UUID 0x80000000 00000000 00000000 00000002 Member Uint8_t data[] Client から Server への 送 信 文 字 列 (1~20byte) 表 6-3 Notify Characteristic Characteristic 名 Write Characteristic Properties Write UUID 0x80000000 00000000 00000000 00000003 Member Uint8_t data[] Client から Server への 送 信 文 字 列 (1~20byte) Response RBLE_ATT_ERR_NO_ERROR(0x00) or RBLE_ATT_ERR_APP_ERROR(0x80) 表 6-4 Write Characteristic 14

7 ソフトウェア 構 成 7.1 ソフトウェア 概 要 Dongle の 動 作 は rble_uart_gui から 起 動 することにより Server 動 作 を 行 います Dongle と rble_uart_gui の 構 成 は 5.2 ソフトウェア 構 成 図 を 参 照 してください 7.1.1 仕 様 概 要 Dongle および rble_uart_gui を 動 作 させると Advertising が 行 われます 接 続 が 確 立 されると 仮 想 UART 通 信 動 作 に 移 行 します 仮 想 UART 通 信 動 作 の 内 容 を 以 下 に 示 します 仮 想 UART 通 信 動 作 Advertising を 行 い Master との 接 続 を 待 ちます Master と 接 続 確 立 後 仮 想 UART 通 信 動 作 に 移 行 します rble_uart_gui から USB Serial 経 由 で 受 信 したデータを BLE により Master へ 送 信 します Master から BLE により 受 信 したデータを rble_uart_gui へ USB Serial 経 由 で 送 信 します 15

7.1.2 ソフトウェア 動 作 Modem 構 成 で 動 作 するソフトウェアについて 説 明 します 1 GUI 起 動 直 後 設 定 画 面 の Setting ダイアログを 表 示 します 2 Setting ダイアログで OK ボタンを 押 下 するとメイン 画 面 キャンセルボタンを 押 下 すると 終 了 します 3 メイン 画 面 が 表 示 されると COM ポートをオープンして BLE の 初 期 化 を 行 い Advertising を 開 始 し て Android からの 接 続 を 待 ちます 4 Android と 接 続 確 立 後 仮 想 UART 通 信 動 作 を 行 います 5 Android との 接 続 が 切 断 されると Advertising を 再 開 します Modem 構 成 で 動 作 するソフトウェアのフローチャートを 図 7-1 に 示 します GUI 起 動 設 定 画 面 表 示 OK ボタン 押 下 キャンセルボタン 押 下 COM ポートオープン 終 了 BLE 初 期 化 Advertising 開 始 Android 接 続 仮 想 UART 動 作 Android 切 断 図 7-1 Modem 構 成 で 動 作 するソフトウェアのフローチャート 16

7.1.3 仮 想 UART 通 信 動 作 仮 想 UART 通 信 動 作 について 説 明 します 仮 想 UART 通 信 動 作 では Master と Slave 間 で 仮 想 UART 通 信 を 行 います Dongle は PC と 接 続 されていて rble_uart_gui から 文 字 列 を 入 力 し Send ボタンを 押 下 することで Android にその 文 字 列 を 表 示 させます 1 度 に 送 信 できる 文 字 列 は 最 大 で 20 文 字 です 送 信 動 作 1 rble_uart_gui から 送 信 する 文 字 列 を 入 力 します 2 入 力 した 文 字 列 を BLE により 送 信 します 受 信 動 作 1 BLE により 受 信 した 文 字 列 を rble_uart_gui へ 出 力 します 仮 想 UART 通 信 動 作 のフローチャートを 図 7-2 図 7-3 に 示 します 仮 想 UART 通 信 送 信 文 字 列 入 力 1 送 信 文 字 列 入 力 Master へ 文 字 列 送 信 2BLE による 文 字 列 送 信 Send: 文 字 列 として 表 示 図 7-2 仮 想 UART 通 信 動 作 フローチャート( 送 信 動 作 ) BLE による 文 字 列 受 信 Recv: 文 字 列 として 表 示 1BLE による 文 字 列 受 信 表 示 図 7-3 仮 想 UART 通 信 動 作 フローチャート( 受 信 動 作 ) 17

7.2 ソースコード 解 説 本 デモのソースコードについて 解 説 します 本 デモに 関 連 する MCU APP のファイルについて その 動 作 内 容 を 表 7-1 に 示 します 次 節 より ソースコードを 示 しながら 動 作 を 説 明 します ファイル rble_core.c SettingsDlg.cpp rble_uart_guidlg.cpp scps.c 動 作 内 容 BLE ソフトウェア 用 API の C++ラッパー 関 数 設 定 ダイアログ 仮 想 UART 通 信 動 作 APP Sample Custom Profile Server 用 API 表 7-1 MCU APP ファイルの 動 作 内 容 7.2.1 Advertising 開 始 初 期 化 後 設 定 ダイアログの 設 定 内 容 に 従 って Advertising を 開 始 します 行 数 838 839 840 841 842 843 844 845 846 847 848 849 850 rble_uart_guidlg.cpp // コネクションハンドルのクリア m_uiconnectionhandle = ILLEGAL_CONNECTION_HANDLE; // 設 定 情 報 のパラメータを 取 得 CrBLE_Params::GetBroadCastEnableParam( &prm, theapp.m_psettinginfo->m_settinginfo.uiadvmin, theapp.m_psettinginfo->m_settinginfo.uiadvmax, theapp.m_psettinginfo->m_settinginfo.szcomplocalname, strlen(theapp.m_psettinginfo->m_settinginfo.szcomplocalname)); // ブロードキャスト 開 始 WP_RBLE_GAP_Broadcast_Enable(prm.disc_mode, prm.conn_mode, &prm.adv_info); 18

7.2.2 接 続 / 仮 想 UART 通 信 同 作 用 プロファイルの 有 効 化 接 続 が 確 立 されたら 仮 想 UART 通 信 動 作 用 プロファイル(Server)の 有 効 化 を 行 います 行 数 896 897 898 899 900 901 902 903 904 905 906 907 908 909 910 911 912 913 914 915 916 917 rble_uart_guidlg.cpp // コネクションハンドルを 保 持 Con_Info_p = &event->param.conn_comp.connect_info; m_uiconnectionhandle = Con_Info_p->conhdl; // SCPサーバーの 有 効 化 /* Valid Connection Handle? */ if (ILLEGAL_CONNECTION_HANDLE!= m_uiconnectionhandle) { ::SendMessage(CrBLE_UART_GUIDlg::m_hWnd, WM_APPEND_LOG_FILE, NULL, (LPARAM)&log); log.log.empty(); ::SendMessage(m_hWnd, WM_CLEAR_DATA_LOG, NULL, NULL); /* API Call */ /* SCPサーバー 有 効 化 */ ret_api = WP_RBLE_SCP_Server_Enable(m_uiConnectionHandle, RBLE_APP_SCPS_CallBack); ::SendMessage(m_hWnd, WM_UPDATE_STATUS, NULL, (LPARAM)EStatus::STATUS_CONNECT); log.log.appendformat(_t("wp_rble_scp_server_enable(conhdl=%d)=0x%04x"), m_uiconnectionhandle, ret_api); } 19

7.2.3 文 字 列 の 送 信 Sample Custom Profile を 有 効 化 したら 文 字 列 の 送 信 を 行 います ソースコードを 以 下 に 示 します 任 意 の 文 字 を 入 力 し Send ボタンを 押 下 することで 入 力 した 文 字 列 を 対 応 デバイスに 送 信 します 行 数 320 321 322 323 324 325 326 327 328 329 330 331 332 333 334 335 336 337 338 339 340 341 342 343 344 345 346 347 348 349 350 351 rble_uart_guidlg.cpp UpdateData(TRUE); uint8_t data[max_send_data_len]; uint8_t len = m_ctrlvalsenddata.getlength(); if (ILLEGAL_CONNECTION_HANDLE!= m_uiconnectionhandle) { for (int i = 0; i < m_ctrlvalsenddata.getlength(); i++) { data[i] = (uint8_t)m_ctrlvalsenddata[i]; } // データ 送 信 WP_RBLE_SCP_Server_Send_String(m_uiConnectionHandle, data, len); // Logデータ 生 成 datalog.direction = CLogList::EDataDirection::Send; datalog.log = m_ctrlvalsenddata.getbuffer(); SendMessage(WM_APPEND_DATA_LOG, NULL, (LPARAM)&datalog); log.category = ELogCategory::BleApi; log.log.appendformat(_t(" WP_RBLE_SCP_Server_Send_String(conhdl=%d, data='%s', len=%d)"), m_uiconnectionhandle, m_ctrlvalsenddata, m_ctrlvalsenddata.getlength()); ::SendMessage(CrBLE_UART_GUIDlg::m_hWnd, WM_APPEND_LOG_FILE, NULL, (LPARAM)&log); m_ctrlvalsenddata.releasebuffer(); m_ctrlvalsenddata.empty(); UpdateData(FALSE); } 20

7.2.4 文 字 列 の 受 信 対 向 デバイスから 文 字 列 の 受 信 を 行 います 文 字 列 受 信 部 分 のソースコードを 以 下 に 示 します 行 数 996 997 998 999 1000 1001 1002 1003 1004 1005 1006 1007 1008 1009 1010 1011 1012 1013 1014 rble_sample_app.c /* クライアントからデータを 受 信 */ case RBLE_SCP_EVENT_SERVER_CHG_CHAR_IND: log.log.append(_t(" RBLE_SCP_EVENT_SERVER_CHG_CHAR_IND")); PRINTF("RBLE_SCP_EVENT_SERVER_CHG_CHAR_IND\n"); datalog.direction = CLogList::EDataDirection::Recv; for (int loop_cnt = 0; loop_cnt < event->param.write_char.data_len; loop_cnt++) { buff.appendchar((char_t)event->param.write_char.data[loop_cnt]); } datalog.log = buff.getbuffer(); ::SendMessage(m_hWnd, WM_APPEND_DATA_LOG, NULL, (LPARAM)&datalog); log.log.appendformat(_t(", '%s'"), buff); buff.releasebuffer(); break; 21

7.3 Sample Custom Profile API Sample Custom Profile (SCP)の API について 記 載 します Sample Custom Profile を 使 用 することで 仮 想 UART 通 信 を 行 うことができます 7.3.1 Definitions Sample Custom Profile の API で 使 用 される 定 義 について 記 載 します SCP イベントタイプ 列 挙 型 宣 言 enum RBLE_SCP_EVENT_TYPE_enum { RBLE_SCP_EVENT_SERVER_ENABLE_COMP = 0x01, // Server 有 効 設 定 完 了 イベント RBLE_SCP_EVENT_SERVER_DISABLE_COMP = 0x02, // Server 無 効 設 定 完 了 イベント RB LE_SCP_EVENT_SERVER_SEND_NOTIFY_COMP = 0x03, // Server 文 字 列 送 信 完 了 イベント RBLE_SCP_EVENT_SERVER_CHG_CHAR_IND = 0x04, // Server 文 字 列 受 信 イベント RBLE_SCP_EVENT_CLIENT_ENABLE_COMP = 0x81, // Client 有 効 設 定 完 了 イベント RBLE_SCP_EVENT_CLIENT_DISABLE_COMP = 0x82, // Client 無 効 設 定 完 了 イベント RBLE_SCP_EVENT_CLIENT_NOTIFY = 0x83, // Client 文 字 列 受 信 イベント RBLE_SCP_EVENT_CLIENT_WRITE_CHAR_RESPONSE = 0x84 // Client 文 字 列 送 信 応 答 イベント }; SCP イベントタイプ 型 宣 言 typedef uint8_t RBLE_SCP_EVENT_TYPE; SCP イベントタイプ 型 宣 言 typedef uint8_t RBLE_SCP_EVENT_TYPE; SCP Server イベントコールバック 関 数 型 宣 言 typedef void ( *RBLE_SCPS_EVENT_HANDLER )( RBLE_SCPS_EVENT *event ); SCP Client イベントコールバック 関 数 型 宣 言 typedef void ( *RBLE_SCPC_EVENT_HANDLER )( RBLE_SCPC_EVENT *event ); 仮 想 UART 通 信 サービス 内 容 構 造 体 typedef struct RBLE_SCS_CONTENT_t { uint16_t shdl; // 仮 想 UART 通 信 開 始 ハンドル uint16_t ehdl; // 仮 想 UART 通 信 終 了 ハンドル uint16_t notify_char_hdl; // Server 文 字 列 特 性 ハンドル uint16_t notify_val_hdl; // Server 文 字 列 特 性 値 ハンドル uint8_t notify_prop; // Server 文 字 列 特 性 プロパティ uint8_t reserved1; // 予 約 uint16_t write_char_hdl; // Client 文 字 列 特 性 ハンドル uint16_t write_val_hdl; // Client 文 字 列 特 性 値 ハンドル uint8_t write_prop; // Client 文 字 列 特 性 プロパティ uint8_t reserved2; // 予 約 }RBLE_SCS_CONTENT; 仮 想 UART 通 信 サービス 定 義 #define RBLE_SCP_WRITE_CHAR_MAX (0x14) // 最 大 送 信 文 字 数 22

SCP Server イベントパラメータ 構 造 体 typedef struct RBLE_SCPS_EVENT_t { RBLE_SCP_EVENT_TYPE type; // SCP イベントタイプ uint8_t reserved; // 予 約 union Event_Scps_Parameter_u { RBLE_STATUS status; // ステータス // Server 有 効 設 定 完 了 イベント struct RBLE_SCP_Server_Enable_t{ uint16_t conhdl; // コネクションハンドル RBLE_STATUS status; // ステータス uint8_t reserved; // 予 約 }server_enable; // Server 無 効 設 定 完 了 イベント struct RBLE_SCP_Server_Disable_t { uint16_t conhdl; // コネクションハンドル RBLE_STATUS status; // ステータス uint8_t reserved; // 予 約 }server_disable; // Server 文 字 列 送 信 完 了 イベント struct RBLE_SCP_Server_Send_Notify_t { uint16_t conhdl; // コネクションハンドル RBLE_STATUS status; // ステータス uint8_t reserved; // 予 約 }send_notify; // Server 文 字 列 受 信 イベント struct RBLE_SCP_Server_Write_Chara_Ind_t{ uint16_t conhdl; // コネクションハンドル uint8_t data_len; // 文 字 数 uint8_t reserved; // 予 約 uint8_t data[rble_scp_write_char_max]; // 文 字 列 }write_char; }param; }RBLE_SCPS_EVENT; 23

SCP Client イベントパラメータ 構 造 体 typedef struct RBLE_SCPC_EVENT_t { RBLE_SCP_EVENT_TYPE type; // SCP イベントタイプ uint8_t reserved; // 予 約 union Event_Scpc_Parameter_u { RBLE_STATUS status; // ステータス // Client 有 効 設 定 完 了 イベント struct RBLE_SCP_Client_Enable_t{ uint16_t conhdl; // コネクションハンドル RBLE_STATUS status; // ステータス uint8_t reserved; // 予 約 RBLE_SCS_CONTENT scs; // 仮 想 UART 通 信 サービス 情 報 }client_enable; // Client 無 効 設 定 完 了 イベント struct RBLE_SCP_Client_Disable_t { uint16_t conhdl; // コネクションハンドル RBLE_STATUS status; // ステータス uint8_t reserved; // 予 約 }client_disable; // Client 文 字 列 受 信 イベント struct RBLE_SCP_Client_Notify_Ind_t { uint16_t conhdl; // コネクションハンドル uint8_t data_len; // 文 字 数 uint8_t reserved; // 予 約 uint8_t data[rble_scp_write_char_max]; // 文 字 列 }notify; // Client 文 字 列 送 信 応 答 イベント struct RBLE_SCP_Client_Write_Char_Response_t { uint16_t conhdl; // コネクションハンドル uint8_t att_code; // ステータス uint8_t reserved; // 予 約 }wr_char_resp; }param; }RBLE_SCPC_EVENT; 24

7.3.2 Functions 以 下 に SCP 機 能 で 定 義 されている API 関 数 を 表 7-2 にまとめ その API 関 数 の 詳 細 について 説 明 しま す API 名 RBLE_SCP_Server_Enable RBLE_SCP_Server_Disable RBLE_SCP_Server_Send_String 概 要 Server Role を 有 効 にする Server Role を 無 効 にする 文 字 列 を 送 信 する 表 7-2 SCP 機 能 API 関 数 一 覧 7.3.2.1 RBLE_SCP_Server_Enable RBLE_STATUS RBLE_SCP_Server_Enable( uint16_t conhdl, RBLE_SCPS_EVENT_HANDLER call_back ) このファンクションは SCP 機 能 の Server Role を 有 効 にします 結 果 は Server Role 有 効 設 定 完 了 イベント RBLE_SCP_EVENT_SERVER_ENABLE_COMP で 通 知 されます Parameters: Return: conhdl call_back RBLE_OK RBLE_PARAM_ERR RBLE_STATUS_ERROR コネクションハンドル SCP のイベントを 通 知 するコールバックファンクションを 指 定 正 常 終 了 パラメータ 異 常 状 態 エラー 7.3.2.2 RBLE_SCP_Server_Disable RBLE_STATUS RBLE_SCP_Server_Disable( uint16_t conhdl ) このファンクションは SCP 機 能 の Server Role を 無 効 にします 結 果 は Server Role 無 効 設 定 完 了 イベント RBLE_SCP_EVENT_SERVER_DISABLE_COMP で 通 知 されます Parameters: Return: conhdl RBLE_OK RBLE_PARAM_ERR RBLE_STATUS_ERROR コネクションハンドル 正 常 終 了 パラメータ 異 常 状 態 エラー 25

7.3.2.3 RBLE_SCP_Server_Send_String RBLE_STATUS RBLE_SCP_Server_Send_String( uint16_t conhdl, uint8_t *write_value, uint8_t write_length ) このファンクションは Client に 対 して 文 字 列 を 送 信 します 最 大 送 信 可 能 文 字 数 は 20 です 結 果 は 文 字 列 送 信 完 了 イベント RBLE_SCP_EVENT_SERVER_SEND_NOTIFY_COMP で 通 知 されます Parameters: Return: conhdl write_value write_length RBLE_OK RBLE_PARAM_ERR RBLE_STATUS_ERROR コネクションハンドル 文 字 列 文 字 数 正 常 終 了 パラメータ 異 常 状 態 エラー 26

7.3.3 Events 以 下 に SCP 機 能 で 定 義 されているイベントを 表 7-3 にまとめ イベントの 詳 細 について 説 明 します API 名 概 要 RBLE_SCP_EVENT_SERVER_ENABLE_COMP Server 有 効 設 定 完 了 イベント RBLE_SCP_EVENT_SERVER_DISABLE_COMP Server 無 効 設 定 完 了 イベント RBLE_SCP_EVENT_SERVER_SEND_NOTIFY_COMP Server 文 字 列 送 信 完 了 イベント RBLE_SCP_EVENT_SERVER_CHG_CHAR_IND Server 文 字 列 受 信 イベント 表 7-3 SCP 機 能 イベント 一 覧 7.3.3.1 RBLE_SCP_EVENT_SERVER_ENABLE_COMP RBLE_SCP_EVENT_SERVER_ENABLE_COMP このイベントは Server Role の 有 効 設 定 (RBLE_SCP_Server_Enable) 結 果 を 通 知 します Parameters: status conhdl RBLE_OK コネクションハンドル 7.3.3.2 RBLE_SCP_EVENT_SERVER_DISABLE_COMP RBLE_SCP_EVENT_SERVER_DISABLE_COMP このイベントは Server Role の 無 効 設 定 (RBLE_SCP_Server_Disable) 結 果 を 通 知 します Parameters: status conhdl RBLE_OK コネクションハンドル 7.3.3.3 RBLE_SCP_EVENT_SERVER_SEND_NOTIFY_COMP RBLE_SCP_EVENT_SERVER_SEND_NOTIFY_COMP このイベントは 文 字 列 の 送 信 (RBLE_SCP_Server_Send_String) 完 了 を 通 知 します Parameters: status conhdl RBLE_OK コネクションハンドル 7.3.3.4 RBLE_SCP_EVENT_SERVER_CHG_CHAR_IND RBLE_SCP_EVENT_SERVER_CHG_CHAR_IND このイベントは 文 字 列 の 受 信 を 通 知 します Parameters: data_len data[] conhdl 受 信 文 字 数 受 信 文 字 列 コネクションハンドル 27