概要 †
キーボードとして認識される、ちょっと変わった USB 温度計です。
USB コネクタに接続して、別のキーボードの ScrollLock キーを4連打すると、現在の温度が文字として入力されます。疑似的にキーボードを押すことで文字を出力していますので、メモ帳や検索欄など、どこにでも入力できます。Digispark 上のマイコン Tiny85 に内蔵された温度センサーを使っています。
使い方 †
- Digispark を USB 端子に挿しこみ、メモ帳や検索欄など、文字が入力できるところにカーソルを合わせて、別のキーボードの ScrollLock キーを,1秒以内に4回押してください。現在の温度が表示されます。
- Digispark 上の LED は ScrollLock ランプに連動して点滅します。
- ScrollLock ランプがついたままの状態にすると、1分間に1回温度が表示され続けます。
作り方 †
書き込みツールの準備 †
Digispark にファームウェア(HEXファイル)を書き込むツールを準備してください。
温度センサーの校正 †
今回使った Tiny85 に内蔵された温度センサーは、チップごとにばらつきが大きいため、はじめに校正する必要があります。現在の室温がわかる温度計を用意してください。
- 校正用ファームウェアの書き込み
ZIP ファイル中の temp-cal.hex を Digispark に書き込みます。
# micronucleus --run temp-cal.hex
- 温度センサー値の確認
Digispark を USB コネクタに挿しこむと、キーボードとして認識されて、5秒ごとに温度センサーの値が出力されます。メモ帳などに入力して値を確認します。
- 3分以上待機する(重要)
センサーの値が安定するまで 3分~5分間程度かかります。必ず安定してから読み取ってください。
- 使うファームウェアの決定
センサーの値から現在の室温 を引き算します。その値のラベルの付いたファームウェアを使ってください。
(例) センサーの値が 310 で現在の室温が26℃の場合は、310-26=284 なので、temp-284.hex を使います。
ファームウェアの書き込み †
上記の手順で決めたファームウェアを書き込めば完成です。
# micronucleus --run temp-284.hex
ダウンロード †
Digispark-temp-1.0.zip