Cypress Semiconductorの「PSoC 62S2 Wi-Fi BTパイオニアキット」のCAPSENSE™ buttonsとsliderのデータを、Android端末で動作する「CySmart」アプリに送信します。「infineonのModusToolboxの設定」で開発環境を構築したinfineonのModusToolboxを使って開発します。BLEのプログラムについては、提供されているサンプルコードを使用し、詳細については「Bluetooth® LE with CAPSENSE™ buttons and slider」を参考にしました。
BLEプログラムの作成
次の手順でModusToolboxを使ってBLEプログラムを開発します。
- Quick PanelからNew Applicationを選択して、Project Creatorを起動します。
- Project Creator で「PSoC™ 6 BSPs 」より「PSoC 62S2-43012 」を選択し、「Next」ボタンをクリックします。
- 次のようにサンプルコード「Bluetooth」から「Bluetooth_LE_CAPSENSE_Buttons_and_Slider」を選択して、「Create」ボタンをクリックします。
Bluetooth LEの設定
プロジェクトエクスプローラに表示されている「design.cybt」ファイルをダブルクリックするとBluetooth LEの設定が表示されます。
次のようにCAPSENSEのService UUIDが「0003CAB5-0000-1000-8000-00805F9B0131」になっています。
次のようにCAPSENSEのButtonsのCharacteristic UUIDが「0003CAA3-0000-1000-8000-00805F9B0131」になっています。
BLEプログラムの実行
次の手順で作成したBLEプログラム「Bluetooth_LE_CAPSENSE_Buttons_and_Slider」をビルドしてPSoC 62S2 Wi-Fi BTパイオニアキットで実行します。
- Quick Panelから「Build Bluetooth_LE_CAPSENSE_Buttons_and_Slider Application」をクリックしてBuild します。
- Quick Panelから「Bluetooth_LE_CAPSENSE_Buttons_and_Slider Debug(KitProg3_MiniProg4)」をクリックして実行します。次のようにシリアル端末に表示されます。
- CapSense Button「BTN0」を押すとLEDが点灯し、CapSense Button「BTN1」を押すとLEDが消灯します。CapSense Sliderを移動させると、LEDの輝度が変化します。
- Android端末で「CySmart」アプリを起動すると、次のように表示されます。
- 表示された画面で「CapSense Button Slider」をクリックすると、次のように表示されます。
- 次のようにシリアル端末に表示されます。
******Bluetooth LE CapSense Buttons & Slider******* *************************************************** Bluetooth stack initialization successful! App management cback: 0x16 App management cback: 0x0 Bluetooth local device address: 18:48:CA:88:48:CB Discover the device with name: "CapSense Button Slider" GATT event handler registration status: 0x0 GATT database initiliazation status: 0x0 App management cback: 0x18 Advertisement state change: 0x3 App management cback: 0x18 Advertisement state change: 0x4
GATT event handler registration status: 0x0 GATT database initiliazation status: 0x0 App management cback: 0x18 Advertisement state change: 0x3 App management cback: 0x14 Bluetooth connected with device address:4F:9B:B5:76:67: 4 Bluetooth device connection id: 0x8000 App management cback: 0x18 Advertisement state change: 0x0 App management cback: 0x20 4F:9B:B5:76:67: 4 App management cback: 0x20 4F:9B:B5:76:67: 4 GATT req mtu App management cback: 0x20 4F:9B:B5:76:67: 4 App management cback: 0x20 4F:9B:B5:76:67: 4 Bluetooth disconnected with device address:4F:9B:B5:76:67: 4 Bluetooth device connection id: 0x8000 App management cback: 0x18 Advertisement state change: 0x3 App management cback: 0x14 Bluetooth connected with device address:4F:9B:B5:76:67: 4 Bluetooth device connection id: 0x8000 App management cback: 0x18 Advertisement state change: 0x0 App management cback: 0x20 4F:9B:B5:76:67: 4 App management cback: 0x20 4F:9B:B5:76:67: 4 GATT req mtu App management cback: 0x20 4F:9B:B5:76:67: 4 App management cback: 0x20 4F:9B:B5:76:67: 4 Bluetooth disconnected with device address:4F:9B:B5:76:67: 4 Bluetooth device connection id: 0x8000 App management cback: 0x18 Advertisement state change: 0x3 App management cback: 0x14 Bluetooth connected with device address:4F:9B:B5:76:67: 4 Bluetooth device connection id: 0x8000 App management cback: 0x18 Advertisement state change: 0x0 App management cback: 0x20 4F:9B:B5:76:67: 4 App management cback: 0x20 4F:9B:B5:76:67: 4 GATT req mtu