Bluetooth で Go! Bar Windows 8 in 名古屋 with 8.1 けきょ( Kouji )

Slides:



Advertisements
Similar presentations
主専攻実験 第1回 ガイダンス資料 TA : 野坂 龍佑 (M2), 高林大輔 (M1)
Advertisements

ブロガーのための ソースコード管理システム 紹介 id:hakobe932 はこべ. 突然ですが ブログでソースコード 読んでますか?
Win32 API を 手なずけよう ! 名古屋 KOUJI MATSUI
Genius Framework について 吉津 卓保( S2 ファクトリー株式会社). 自己紹介.
本プレゼンテーション ( 以下、本書 ) で提供されている情報は、本書が 発表された時点における Microsoft の見解を述べたものです。市場 ニーズの変化に対応する必要があるため、本書は記載された内容の実 現に関する Microsoft の確約とはみなされないものとします。また本 書に記載された情報の正確さについて、保証するものではありません。
本プレゼンテーション ( 以下、本書 ) で提供されている情報は、本書が 発表された時点における Microsoft の見解を述べたものです。市場 ニーズの変化に対応する必要があるため、本書は記載された内容の実 現に関する Microsoft の確約とはみなされないものとします。また本 書に記載された情報の正確さについて、保証するものではありません。
Windows Azure ハンズオン トレーニング Windows Azure Web サイト入門.
Microsoft Office 2010 概要と特徴. システム要件:オペレーティング シス テム Windows XP with Service Pack (SP) 3 (32-bit) Windows Vista with SP1 (32-bit または 64-bit) Windows 7 (32-bit.
SSP in a Nutshell #1.5 最近の新機能よせあつめ
Visual Studio 2010 の新機能 Coded UI Test
PHP AV(Audio Visual) 拡張 クライアントサイド PHP アプリケーションPHP
Windows HPC Server を使ってみる
D&UNITE 株式会社 代表取締役 株式会社 T-Planning 取締役 Microsoft MVP for ASP.NET/IIS
2015/07/04 東海道らぐ 2015年7月オフな集まり in 名古屋 さとう
D2-301 現時点の本資料は 完成版のスライドではありません。
最近の気になるネタ presented by Kei-z.
PHP AV(Audio Visual) 拡張 PHP asアプリケーション
情報実験:ネットワークコンピューティング入門
第十七か ぐちとうわさ話.
USB2.0対応PICマイコンによる データ取得システムの開発
WPF(.NET3.5)   vs Silverlight 2.0 Beta1 中 博俊@わんくま同盟.
コントロールパネル ◎コントロール パネル: コンピュータのさまざまな機能を設定するための画面
C#によるWindowsFormApplication入門
講師 宮川 翼 (情報処理センター テックサポーター)
自作組込みOSを エミュレータで 動かしてみた 坂井弘亮 (KOZOSプロジェクト) Twitter ID:kozossakai.
クイズ 「インターネットを使う前に」 ネチケット(情報モラル)について学ぼう.
“所有”から“利用”へ 情報社会とコンピュータ 第12回.
小型デバイスからのデータアクセス 情報処理系論 第5回.
PHP Framework Update symfony 編 株式会社ディノ 月宮紀柳.
アプリケーション共有機能 〈参考〉 (図1) (図2)
F5 を押すか、または [スライド ショー] > [最初から] をクリックして、コースを開始してください。
Microsoft Office 2010 クイックガイド ~応用編~
発表者 2011/01/08 楽しい256バイトイントロの 世界 発表者 2011/01/08.
Live Framework 入門 その2 JZ5(松江) 2009/8/22.
2013/06/22 つくばC#勉強会 Officeで始めるC# 2013/06/22 つくばC#勉強会
2009/5/22 けーちゃん カンタン  Wikiで情報共有 あいさつ 2009/5/22 けーちゃん
KiCadで IoT電子工作を はじめよう At Kansai Open Forum 2017
iOS, Android, Windows Phone, Windows向けクラウドEMM
Windows ストア アプリ 開発概要 (Windows 8.1 対応)
コンパイラの解析 (2) GCJのデータ構造 - 1.
All IP Computer Architecture
0からわかるF# Part1 中 博俊 F# September 2008 CTP Base.
0からわかるF# Part1 中 博俊 F# September 2008 CTP Base.
Windows Azure (CTP) 触ってみた
WPF、MVVMパターン構成.
「OSで儲けない」 Microsoftの新戦略
0からわかるF# Part1 中 博俊 F# September 2008 CTP Base.
仕事: SystemVerilogを使いたい
0からわかるF# Part1 中 博俊 F# September 2008 CTP Base.
Bluetooth Low Energy 通信
iOS, Android, Windows Phone向けクラウドEMM
Microsoft Office クイックガイド ~応用編~
長崎大学工学部 情報システム工学科 「パターン認識」って・・・ 何? 宮原・喜安研究室.
テーブル設計を後から変更 現場で使える小技のご紹介 株式会社ジーワンシステム 生島 勘富(イクシマ サダヨシ)
Windows Azure (CTP) 触ってみた
0からわかるF# Part1 中 博俊 F# September 2008 CTP Base.
UDPマルチキャストチャット      空川幸司.
0からわかるF# Part1 中 博俊 F# September 2008 CTP Base.
WindowsMobile de HelloWorld
WindowsMobile de HelloWorld
モバイルP2Pを用いた携帯電話 動画配信手法の提案 第2回 FM10019 種田研究室 古江和栄
とにかくゲーム作ってみよう (0からのゲームプログラミング)
NGK2013B – 名古屋合同懇親会 2013忘年会 – Kouji
Microsoft Office クイックガイド ~応用編~
WPF(.NET3.5)   vs Silverlight 2.0 Beta1 中 博俊@わんくま同盟.
System.AddInを利用したアプリケーション拡張 - アドインの開発 -
F5 キーを押すか、または [スライド ショー] > [最初から] をクリックして、コースを開始してください。
クレジットカード被害に遭わない、 加害者にならないための教材
WakeLockと各センサーの関係について
System.AddInを利用したアプリケーション拡張 - アドインの開発 -
Presentation transcript:

Bluetooth で Go! Bar Windows 8 in 名古屋 with 8.1 けきょ( Kouji )

自己紹介  (あまり tweet してません)  会社やってます  「 Micoci 」と「まどべんよっかいち」  主に Windows 。 C#, C++/CLI, ATL, C++0x, x86/x64 アセンブラ, WDM, Azure, TFS, OpenCV, Geo, JNI, 鯖管理, MCP 少々, 自作 PC, 昔マイコン, 複式簿記経理  アプリケーションフレームワーク設計・アーキテクトが仕事の主体。 最近は WPF を使った MVVM に足をツッコミ中  (あまり tweet してません)  会社やってます  「 Micoci 」と「まどべんよっかいち」  主に Windows 。 C#, C++/CLI, ATL, C++0x, x86/x64 アセンブラ, WDM, Azure, TFS, OpenCV, Geo, JNI, 鯖管理, MCP 少々, 自作 PC, 昔マイコン, 複式簿記経理  アプリケーションフレームワーク設計・アーキテクトが仕事の主体。 最近は WPF を使った MVVM に足をツッコミ中

Windows 8 と言えば …  Bluetooth 4.0 対応  で、 4.0 で何が追加されたの?  Bluetooth 4.0 対応  で、 4.0 で何が追加されたの?

Bluetooth 4.0 って?  「 Bluetooth 4.0 LE 」ですよ  「 Low Energy 」ですよ  別名、「 Bluetooth Smart 」ですよ  何か呼称がごちゃごちゃしてますが、 3.0 以前の規格と LE に互換性は無いです。 (大人の事情で 4.0 としたのかも?)  1.0 ~ 4.0 全部ひっくるめて使えるのが、 「 Bluetooth Smart Ready 」 です (レシーバーしかない、多分)  「 Bluetooth 4.0 LE 」ですよ  「 Low Energy 」ですよ  別名、「 Bluetooth Smart 」ですよ  何か呼称がごちゃごちゃしてますが、 3.0 以前の規格と LE に互換性は無いです。 (大人の事情で 4.0 としたのかも?)  1.0 ~ 4.0 全部ひっくるめて使えるのが、 「 Bluetooth Smart Ready 」 です (レシーバーしかない、多分)

Bluetooth 4.0 LE って?  コンシューマーブランド「 Bluetooth Smart 」  「超」低消費電力デバイス向けの規格 ボタン電池で半年~ 1 年  3.0 以前と互換性なし  プロファイルがいっぱい増えた  ライバルは、「 Zigbee 」「 ANT+ 」「 RFID 」か?  コンシューマーブランド「 Bluetooth Smart 」  「超」低消費電力デバイス向けの規格 ボタン電池で半年~ 1 年  3.0 以前と互換性なし  プロファイルがいっぱい増えた  ライバルは、「 Zigbee 」「 ANT+ 」「 RFID 」か?

Windows 8 との関係は?  Windows 8.0 で「 Bluetooth 4.0 」対応表明  しかし、一体何に対応したのか良く分からない (単に 4.0 プロトコルスタックを配布しただけ?)  API についての情報が皆無  そうこうしているうちに、 Windows 8.1 現わる!!  WinRT に名前空間が増えた!  Windows 8.0 で「 Bluetooth 4.0 」対応表明  しかし、一体何に対応したのか良く分からない (単に 4.0 プロトコルスタックを配布しただけ?)  API についての情報が皆無  そうこうしているうちに、 Windows 8.1 現わる!!  WinRT に名前空間が増えた!

Bluetooth API  Windows.Devices.Bluetooth  Windows.Devices.Bluetooth.GenericAttributeProfile  Windows.Devices.Bluetooth  Windows.Devices.Bluetooth.GenericAttributeProfile これぞ LE デバイス! GATT

公式サンプルコード  「 Bluetooth Generic Attribute Profile - Heart Rate Service 」 Demonstrates use of the Bluetooth Generic Attribute Profile (Gatt) Windows Runtime API to interact with a Bluetooth Gatt device which contains a Heart Rate Service. 汚いサンプルコード … (T_T)  「 Bluetooth Generic Attribute Profile - Heart Rate Service 」 Demonstrates use of the Bluetooth Generic Attribute Profile (Gatt) Windows Runtime API to interact with a Bluetooth Gatt device which contains a Heart Rate Service. 汚いサンプルコード … (T_T)

取りあえずやってみた  Bluetooth Smart デバイスが無ければ話にならない  幸い?ロードバイク乗りなので …  Wahoo FITNESS BLUE HR (心拍計)  レシーバーは PLANEX BT-MICRO4  Bluetooth Smart デバイスが無ければ話にならない  幸い?ロードバイク乗りなので …  Wahoo FITNESS BLUE HR (心拍計)  レシーバーは PLANEX BT-MICRO4

Demo (サンプルコード)

まあ …  サンプルコードを動かしただけでは面白くない  WinRT って、噂ではデスクトップからも呼び出せるらしいし  WPF から使えた方が、私的に面白いかも?  本当にデスクトップアプリケーションから、デバイスにアクセス出来るか?  サンプルコードを動かしただけでは面白くない  WinRT って、噂ではデスクトップからも呼び出せるらしいし  WPF から使えた方が、私的に面白いかも?  本当にデスクトップアプリケーションから、デバイスにアクセス出来るか?

API はどう使うの?  デスクトップアプリケーションから WinRT を使うには、 Bing って下さい 例: desktop-appshttp:// desktop-apps  Windows 8.1 の場合は、「 TargetPlatformVersion 」を「 8.1 」にすること ( 8.0 では、新しい API は使えない)  Bluetooth API は Windows.winmd に含まれているので、追加のアセンブリは不要  デスクトップアプリケーションから WinRT を使うには、 Bing って下さい 例: desktop-appshttp:// desktop-apps  Windows 8.1 の場合は、「 TargetPlatformVersion 」を「 8.1 」にすること ( 8.0 では、新しい API は使えない)  Bluetooth API は Windows.winmd に含まれているので、追加のアセンブリは不要

API はどう使うの?  デバイスセレクタの取得 var selector = GattDeviceService.GetDeviceSelectorFromUuid(GattServiceUuids.HeartRate);  デバイスの列挙 IEnumerable dis = await DeviceInformation.FindAllAsync(selector);  デバイスの初期化 var service = await GattDeviceService.FromIdAsync(deviceInformation.Id);  心拍情報のイベントをフック var characteristics = service.GetCharacteristics(GattCharacteristicUuids.HeartRateMeasurement); characteristics[0].ValueChanged += (sender, e) => { … };  デバイスセレクタの取得 var selector = GattDeviceService.GetDeviceSelectorFromUuid(GattServiceUuids.HeartRate);  デバイスの列挙 IEnumerable dis = await DeviceInformation.FindAllAsync(selector);  デバイスの初期化 var service = await GattDeviceService.FromIdAsync(deviceInformation.Id);  心拍情報のイベントをフック var characteristics = service.GetCharacteristics(GattCharacteristicUuids.HeartRateMeasurement); characteristics[0].ValueChanged += (sender, e) => { … }; 心拍計

イベントで心拍数が得られるんだ!(喜)  いやいや、得られるのは、ペイロードの「生」データ(バイト列)です 解析はプロトコルに合わせて独自に行う必要があります(爆) orz  プロトコルの情報は、 Bluetooth SIG で調べる必要があります (ペイロードの説明は全部文書で、ボックス図がないです。辛い … )  とりあえず、心拍計については、サンプルコードのデコーダーが参考になるでしょう  いやいや、得られるのは、ペイロードの「生」データ(バイト列)です 解析はプロトコルに合わせて独自に行う必要があります(爆) orz  プロトコルの情報は、 Bluetooth SIG で調べる必要があります (ペイロードの説明は全部文書で、ボックス図がないです。辛い … )  とりあえず、心拍計については、サンプルコードのデコーダーが参考になるでしょう

Demo ( WPF 版)

それでは、引き続きお楽しみ下さい  ありがとうございました