ファームウェアのインストール


mbedにファームウェア(プログラム)をインストール(コピー)してください.
zip形式で圧縮されていますので解凍する必要があります.

mk2r2.zip

USBケーブルでPCとmbedを接続するとUSBメモリのように使えますので解凍したファイルを全てmbedにコピーしてください.

含まれるファイルは次のとおりです.
geiger.binファームウェア本体
geiger.txtファームウェアバージョン
env.iniファームウェア設定ファイル
sbm-20.iniGM管(sbm-20 )特性ファイル
ci-3bg.iniGM管(ci-3bg)特性ファイル
j408.iniGM管(j408)特性ファイル
twitter.cfgTwitter設定ファイル
pachube.cfgpachube設定ファイル

ファームウエアのコピー,設定変更時


ケースに組んだ状態ではmbedのmini USBポートにケーブルが接続できません.ケースを開けてプログラムの書き換えや設定の書き換えをしてください.ケースにUSBコネクタの穴加工をするのもいいでしょう.ケースを空けて作業する場合は高電圧回路には触れないよう注意してください.

ファームウェアのソース


mbed.orgにアカウントを作成すればインポートできます.
mk2r2のソースコードは、フルセットのgccを用いて、C++で記述されています。
C言語で、ヒープメモリーの使い過ぎ、スタックオーバーランに気をつけて、自由に好みにカスタマイズ頂けます。

http://mbed.org/users/mark2r2/programs/geiger/lxt2...
ファームウェアを変更した場合は自己責任でご使用ください.

geiger_src.zip

Special thanks mbed.org programmers.
mbed.orgで公開されているプログラムを流用させていただいている部分があります.各開発者に感謝いたします.

自動ファームウェア・アップデート


mbedのファームウェアは,インターネットに接続されている状態で,起動時及びenv.iniのfirmware_update_intervalオプション(単位:時間)毎に,env.iniのfwserverで指定されたURLにアクセスし,最新のファームウェアが見つかればダウンロードします.
firmware_update_intervalのタイミングで新しいバージョンを発見した時はmbedをリセットし,起動時にアップデート処理を行います.

バージョンチェックはサーバのBINNAME.txtと,mbed内部のBINNAME.TXT内の数字をチェックし,サーバ側ファイルの数値が大きければ,新しいバージョンが存在するものとして動作します.
  1. サーバにあるBINNAME.binをBINNAME.bというファイル名でダウンロード
    サーバにあるBINNAME.txtをBINNAME.t
    というファイル名でダウンロード
    サーバにあるBINNAME.md5をBINNAME.m__というファイル名でダウンロード
    を行う.
  2. BINNAME.bのMD5ハッシュ値を計算し,BINNAME.mの中身と比較する.
  3. MD5チェックに問題なければ,既存のファームウェア(xxx.bin)をxxx.BBKというファイルにバックアップコピーする.
  4. BINNAME.bをBINNAME.BINというファイル名でコピー
    BINNAME.t
    をBINNAME.txtというファイル名でコピー
    BINNAME.m__をBINNAME.md5というファイル名でコピー
    を行う.(※mbedのファイルシステムはファイル名変更ができないのでコピーをしている)
  5. コピーが完了すればmbedをリセットする.
ファームウェアアップデート動作の状況はmbed内のUPDATE.LOGにテキストファイルで記録されます.

自動アップデート中にリセットを押すなどして自動アップデートに失敗した場合は、ミニUSBをつないで、パソコンから、BINNAME.binを削除して、BINNAME.bakを見つけて、BINNAME.binに、リネームしてリセットをおして見てください。
それでもうまくいかない場合は、パソコンからフラッシュメモリーに見えるmbedを、FATでフォーマットして、こちらにございます、プログラムや初期設定ファイル等一式のmk2r2.zipファイルをダウンロードして解凍して、mbedに、転送してください。
ご自分で用意したフォルダーを転送する場合で、複数のbinファイルがある場合は、binファイルは、ファイルの日付でなくmbedに転送した時刻が最新と言う事になっていますので、複数のbinファイルを転送する場合は、リセット時にどれが動くかはファイルの日付ではわかりませんのでご注意ください。

独自ファームウェアアップデート・サーバの運用


HTTPでアクセスできる(IEやSafari等でアクセスできる)サーバを準備すれば独自のファームウェアアップデート・サーバを運営することが可能です.

サーバに配置するファイル
geiger.binmbed.orgでコンパイルしたファームウェアのファイル名
(ソースコードのgeiger.hにあるBINNAME[]の内容+".bin")
ファイル名の大文字小文字は区別されるので注意すること.
geiger.txtバージョン番号ファイル.中身は"29"など数字がテキストで入っている.
(ソースコードのgeiger.hにあるBINNAME[]の内容+".txt")
ファイル名の大文字小文字は区別されるので注意すること.
geiger.md5ファームウェアのMD5チェックサム.ハッシュ値.
(ファイル名はソースのgeiger.hにあるBINNAME[]の内容+".md5")
ファイル名の大文字小文字は区別されるので注意すること.
ハッシュ値の計算は,ファームウェアをwebサービスで変換して計算する.
Googleで「md5 変換」で探すとwebサービスがいろいろ見つかります.
例)http://www.kiyori.co.jp/MD5Reverse/http://hash.taroz.jp/

mbedがハングアップしたとき


プログラムが暴走し,フラッシュドライブ領域としても認識できなくなった場合はmbedのリセットボタンを押しっぱなしにすることでPCから一時的にアクセス可能になります.文字化けのファイル名が残っていたり,コピー途中でエラーになる場合などはフォーマットしてからファイルをコピーすると復帰する場合があります.

Menu

MK2R2マニュアル


管理人/副管理人のみ編集できます