僕の買ったハートレートモニター(Polar RS200sd)は、Windowsにはデーターをアップロードできるのだけど、マックには対応していない。他のモデルについては、ポルトガルの人がLinux用のソースを公開してくれている。それで、そのソースをいじくって、何とかマックで動かそうと頑張って、1週間、未だ動きません。
でも、今日は、少し進歩があって、どうやら要するにアプリケーションレベルのプロトコルが、他のモデルとは変わっているような気がする、、、ってとこまで解析できた。
このハートレートモニターは、オーディオを使ってデーターを転送する。マック側はマイクで音を拾う準備をしておいて、ハートレートモニターのスイッチを押すと、やおら『ジジジジジジー』とかいってアップロードが始まる。
マック側のソフトは、その音をWavファイルに落としてから、件のポルトガル製のプログラムが解析を開始する。
まだ、動いてくれないんだけど、ここまで来るのに、Wavファイルフォーマット、PCMエンコーディング、AM変調、ハイパスフィルターだとか、色々調べた。とにかく算数が絡むと分からなくなる。プログラム自体はCの小さいプログラムなんだけど、わっかんない。GNUPlotというプログラムで波形をグラフに書いてみて、その波形を正しくプログラムがビットのオン/オフと認識し、さらにバイトとしてデコードしてるかを追っかけるのに、何時間かを費やしてしまった。