Switch Science


Switch Science is one of the open source hardware retailers in Japan. We are manufacturing our own products.

mbed HRM1017をはじめよう

English documentation is on Getting started with mbed HRM1017.

Note

どうしても日本語のページ名にしたかったため、URLにマルチバイトが入ってしまいました。Tweetで紹介していただくとき、次のURLをコピペしていただくと、正しく短縮されて便利だと思います。
mbed HRM1017をはじめよう https://mbed.org/teams/Switch-Science/wiki/mbed-HRM1017%E3%82%92%E3%81%AF%E3%81%98%E3%82%81%E3%82%88%E3%81%86

概要

mbed HRM1017のピン配置は次の通りです。




本体正面には、タクトスイッチが一つ付いています。これはHRM1017(nRF51822)のリセット用ですが、今のところ機能しません。今後、mbedインターフェースのファームウェアのアップデートで対応予定です。

基板上面のソルダジャンパ2つは、BLEモジュールのTX,RXとmbedインターフェースを接続しています。HRM1017と外部のデバイスをUARTで接続したいときには、このソルダジャンパのハンダを除いてください。

基板底面のソルダジャンパは、USB - レギュレータ - インターフェースチップの3V3と、BLEモジュール - ピンヘッダ の3V3をショートしてます。モジュール単体でバッテリ駆動したいときに、モジュールだけにピンヘッダから給電するときには、この底面のソルダジャンパのハンダを除いてください。

回路図(PDF)

Warning

LEDなどを接続する際には、FETなどでドライブするようにしてください。
nRF51822のポートは0.5mAまでしか流せません。

Note

Windowsでは、COMポートとして認識せるためにドライバのインストールが必要です。Windows serial configurationの「Download latest driver」からドライバのインストーラが入手できます。

販売店

- スイッチサイエンス
- 千石電商
- アールティ
- 共立電子産業
- Amazon

とりあえず

とりあえず、何かを動かしてみたい方は、Platformsのhttp://mbed.org/platforms/mbed-HRM1017/をご自分のオンラインコンパイラに追加した上で、こちらのプログラムをインポートし、コンパイルしてみてください。

Import programBLE_HTM_HRM1017

BLE_Health_Thermometer; based on todotani-san's mod. Libraries are now genuine.


コンパイルすると、hexファイルがダウンロードされます。
nRF51822はBLEのスタックの部分がSoftDeviceということでプログラム可能になっています。自分のプログラムとSoftDeviceの両方を転送するために、hexファイルとなっています。

ボードをUSBでPCに接続すると、MBEDというドライブがマウントされるはずです。ここにhexファイルをドラッグ・アンド・ドロップすることで、mbedにプログラムを転送することができます。hexファイルをドラッグ・アンド・ドロップすると、「MBED」ドライブは勝手にアンマウントされ、再度マウントされます。このとき、HRM1017はリセットされ、コードの実行が始まります。

Nordicが提供している、nRF Toolboxというプログラムをお手持ちのiPhoneにインストールして起動し、HTMというアイコンをタップ、CONNECTというボタンをタップすることで、HRM1017が電波を吹いていれば一覧にデバイスが現れると思います。温度も表示させたい人は、こんな感じでI2Cの温度センサを接続すると良いでしょう。


現在メンテナンスされている新しいBLEのライブラリ、BLE_API使うようになっています。これらのライブラリは、かなり活発に開発が行われており、機能追加も頻繁です。

FAQ

HEXファイルを書き込んでもプログラムが動きません

オンラインコンパイラでダウンロードしたファイルを直接MBEDドライブに保存した場合、うまく動かないという事例が報告されています。
お手数ですが、いったん他の場所にHEXファイルを保存してから、MBEDドライブにドラッグ・アンド・ドロップして書き込んでください。
なお、HEXファイルをドラッグ・アンド・ドロップして、コピーを終えるとMBEDドライブは勝手に取り外され、再度接続された状態になります。再度接続したあとは、コピーしたはずのHEXファイルが見えなくなっていますが、nRF51822にプログラムは書き込まれていますのでご安心ください。

Blinkyを実行しても基板上のLEDが点滅しません

mbed HRM1017に付いているLEDは、mbedインターフェースのアクセスランプです。
Blinky(Lチカ)は、別途LEDをFETでドライブするように取り付けて行ってください。

Warning

LEDなどを接続する際には、FETなどでドライブするようにしてください。
nRF51822のポートは0.5mAまでしか流せません。
当社の2ch FET付きLEDボードもお薦めです。

基板上のスイッチを押してもリセットできません

本体正面には、タクトスイッチが一つ付いています。これはHRM1017(nRF51822)のリセット用ですが、今のところ機能しません。今後、mbedインターフェースのファームウェアのアップデートで対応予定です。

接続事例

iPhone/iPad

iPhone 4S以降など、BLE対応のiOSデバイス

Android

Nexus 5 (接続できない場合、OSをアップデートしてください。)
Nexus 7

Windows 8/8.1

SurfaceなどのBLE対応デバイス
MakerLabNagoyaのWikiに、色々なTipsが掲載されています。http://makerlab.jp/wiki/kb:mbed-ble
matsujirushiさんによって、githubでコードが公開されています。 https://github.com/matsujirushi/mjwinble

参考資料

Miconoさんによる、mbed HRM1017資料館@ROBOMIC(ブログ)
http://micono.cocolog-nifty.com/blog/mbed-hrm1017.html

サンプル

BLE_RCBController

Import programBLE_RCBController2

iOSのBLEコントローラアプリ「RCBController」と接続し、コントローラの操作を取得するサンプルプログラムです。 mbed HRM1017で動作を確認しています。 2014.08.20時点でのBLEライブラリに対応しました。

詳細は、jksoftさんのmbed HRM1017用RCBControllerサンプルプログラムを参照してください。

Note

mbed HRM1017の新しいファームウェアとその書き込み方法は次のページに書かれています。
Firmware HRM1017