Switch Science


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

You are viewing an older revision! See the latest version

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使うようになっています。これらのライブラリは、かなり活発に開発が行われており、機能追加も頻繁です。todotaniさんが最新のBLE_APIで動くように修正を行ったコードに本家のライブラリの組み合わせて作ったprogramが上記のものです。

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までしか流せません。

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

本体正面には、タクトスイッチが一つ付いています。これは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

サンプル

HRM1017がプラットフォームに追加されたことに伴い、以下のプログラムは上手く動かないかもしれません。現在調査を行っています。

ANCS

Import programBLE_ANCS_SDAPI_IRC

changed low freq. clock source to IRC

1. importし、コンパイルしてダウンロードされたhexファイルを「MBED」ドライブにドラッグ・アンド・ドロップします。
2. USBで接続しているパソコンから、mbed HRM1017にシリアルターミナルで9,600bpsで接続します。
3. iPhoneの、設定→Bluetoothを見ると「ANCC」というデバイスが見つかりますので、選択し、ペアリングします。
4. iPhoneに電話がかかってきたり、プッシュ通知がなされると、シリアルターミナルに様々なメッセージがでます。

BLE_RCBController

Import programBLE_RCBController2

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

Import programBLE_RCBController

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

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


All wikipages