EZ-BLE PRoC を使ってみる

Cypress EZ-BLE PRoC というとても小さなモジュールを手に入れたので、
早速これでLチカしてみたいと思います。

用意したもの

チップ単体は1cm×1cmと非常に小さく、これだけでは扱いにくいので、
評価ボードを使って見ようと思います。

今回用意したのはこれだけです。
S6SAE101A00SA1002 Solar-Powered IoT Device Kit
※このキットの場合、技適の通ったBLEモジュールを載せ替える必要があります。

ちなみに、このモジュールを用いたものとして他に、
コイン型センサーモジュールなんかもあります。
CYALKIT-E03 Solar-Powered BLE Sensor 5 Pack

小さな太陽電池でも動く小型で省電力なモジュールなようで、いろんな用途に使えそうです。

PSoC Creator のインストール

S6SAE101A00SA1002 Solar-Powered IoT Device Kitの下の方の関連ファイルから
S6SAE101A00SA1002 Complete Setup (Kit Design Files, PSoC Creator 3.2 SP1, CySmart, PSoC Programmer, Documentation, Examples)
というファイルをダウンロードしてインストールしました。

これでPSoC開発環境のPSoC CreatorとEX-BLEの書き込みソフトやサンプルプロジェクトなどがインストールされました。

サンプルプロジェクトを開く

先ほどインストールしたディレクトリを見てみると、
C:\Program Files\Cypress\Solar-Powered IoT Device Kit\Firmware\other
にサンプルプロジェクトの
LED_ONOFFSimple_BLEがあります。
LED_ONOFFのディレクトリをマイドキュメントなど適当な場所にコピーして、
LED_ONOFF.cydsn\LED_ONOFF.cyprj
を開きます。

LED_ONOFFプロジェクトのTopDesign.cyschを開くとこんな画面が出てきました。

コンポーネントのバージョンが古いと怒られているので、
Project→Update Components
コンポーネントのバージョンを最新版にしました。
BootloadableとLED_Greenピンがあります。

どうやらブートローダーでプログラムを読み出すみたいです。
(詳しくはhttp://www.cypress.com/file/187321/download:Title=S6SAE101A00SA1002 User Guide.pdfに書いてあります。)

同様に、
UART_BootloaderをSet As Active Projectでアクティブにし、Update Componentsします。

こちらは、BootloaderとUARTコンポーネントが含まれています。
おそらくUART経由でプログラムを読み出すということでしょうか。

プロジェクトのビルド

まずは、UART_Bootloaderのプロジェクトを右クリックして、Buildします。
うまくいくとたくさんのファイルが生成されます。

次は、LED_ONOFFプロジェクトのBootloadableコンポーネントをダブルクリックして設定を見てみます。
DependenciesタブでBootloaderのhexとelfのパスが指定されていますが、微妙にパスが違っていることがあるので、
もともと書いてあったパスを参考にこのhexとelfを探して指定します。

そして、LED_ONOFFプロジェクトをビルドします。
すると、こちらも大量のファイルが生成されます。

ここで、LED_ONOFFのプロジェクトディレクトリで、「.cyacd」ファイルを検索すると、
「LED_ONOFF.cyacd」というファイルが見つかると思います。
これが書き込むファイルです。

書き込み

書き込みについては詳しくはhttp://www.cypress.com/file/187321/download:Title=S6SAE101A00SA1002 User Guide.pdf
に書いてあります。

簡単に説明すると、
C:\Program Files\Cypress\Solar-Powered IoT Device Kit\1.0\PMIC Software\Bootloader_Host_GUI_exe\UARTBootloaderHost.exe
を実行すると、書き込み画面がでます。

評価ボードをUSB接続して、COMポートを指定、
ボーレートを115200に指定
さっきのLED_ONOFF.cyacdを指定
評価ボードのSW2を一回押してからBootloadボタンを押すと書き込みが始まる。

と言った感じです。

動作確認

評価ボードのLEDがチカチカすれば成功です。