パスワードを忘れた? アカウント作成
868115 journal
日記

kondouの日記: WP34sという電卓 2

日記 by kondou

HP-20b/30b はHP電卓の金融向け電卓だが、回路図が公開されていて自由にファームを書き換えることができる。そこに科学技術計算向けのファームを書いて楽しもうという話。オープンソースで開発されており、実用的に使える。
hpmuseum.com のフォーラム、sourceforgewiki4hpは必見。日本語の情報源はA2life さんがほとんど唯一。
HP-35Sは現行の RPN scientific だが、ほとんどの人をがっかりさせるのに十分なデキ(バグ、複素数などの機能、表示など)。スタイリッシュで複素数の扱いが自然なHP-15Cの復活が熱望されてので Limited Edition が発売されたが、ファームのできはこれまたガッカリ(コレジャナイ)。というわけで、今一番アツいのがWP34s。thecalucrator.org で書き込み済みのHP-30b とオーバーレイをセットした物が発売されている。
Walter さんと Pauli さんが始めたからWP、初期のHP電卓である HP-34cにあやかって34s ということらしい。
機能的には、HP-42s相当の基本科学技術計算、2,8,10,16の基数変換、数学関数や統計関数の追加、Real Time Clockや時間関数、物理定数や単位変換、f(x)=0のSolveとIntegrate(HP-15C like)など。無い物は、数学表記入力、グラフ、CAS(Computer Algebra System)、Equation solver。EQSLVはHP電卓なら欲しいところ。ハードもオリジナルなDN-15CCというのもある。

6pin cable
ファーム書き換え用のケーブル。
回路図は公開されているので自作も可能だが、コンタクトプローブ部の形状もあるし、安いので入手を推奨。Gene さんにメール→PayPalで$10(米国外)送金→2週間ほどで送られてくる。
HP15CLEの書き換え(現行出荷品のファームはひどいバグがたくさん)にも使えるらしい。

USB-Serial 変換ケーブル
今時のPCはシリアルポートなんて付いていないので。
フォーラムではFTDI社のチップが使われた物が推奨されているが理由は不明。仮想COMポートが使えればなんでもいいと思うが。

HP-30b
20b でも30b でも電気的には同じなのでどちらでもいいが。30b のほうが、キータッチ、ケース、外観が優れているので。
15Cと比べたら、大きさは同じぐらい、電源は2xCR2032、キーの数は少ない(39→37)、ディスプレイはドットマトリクス付き。バッテリは並列接続なので、電流さえなんとかなれば1個でも?通常計算では大丈夫だがプログラムを走らせると電圧降下がきつい。
大きさ、厚みが、SL-C700, HP-15C, HP-30b でほとんど同じ。ポケットサイズとはこういうことだ。できればもうすこし薄い方がいいが。

オーバーレイ
機能にあったキー表示にするためのシール。実用的に使うには必須だが、遊ぶには不要。
Ericさんが作ったのはhpcalcで配布されている ver. 2.2対応。ver. 3 に向けてレイアウト変更が予定されているので、とりあえずは待ち。それまでは紙に自分で印刷して貼っとこう。

Crystal
HP-20/30b には 32.768kHzの水晶は実装されておらず、時間関係のファンクションで誤差を生じる。32.768kHzの水晶とコンデンサ(18pF 1608 を2個)を入手して空きランドに実装する。HP 20b Hacker's kitにも含まれているが、日本橋でも普通に入手可能。
クリスタルを実装したあとは、ON+C+Cするとクリスタルが有効になる(クリスタルが実装されてなければハングする)。

回路図
AT91SAM7L128(2KB(backuo)+4KB RAM、128KB PROG Flash)
Development Kit ということで、回路図、ファームのソース、エミュレータが公開されている。プロジェクトを走らせるためには、VC++、IARが必要みたいだ。ソースを比べて見ればわかるが、WP34sはHP20bのソースは使わずにフルスクラッチで書かれている。

ファームウエア
基本に忠実で読み易い。バッテリ動作機器のファームウエアの教科書としても適している。たとえば、デバッグモードの入り方、メモリマップの作り方、キー入力処理の方法、電源スイッチとパワーセーブなど。
ブートアップやファーム書き換えには、内部にあるSAM-BAというブートプログラムを使っている。ここの部分は書き換えられないので、レンガ化リスクは小さい。
Cからコンパイルされる部分とアセンブラで書かれたXROMの部分が結合されている。

開発環境
プロジェクトが想定しているのは Windows XP上。コンパイラは AVR向けのGCCだし、アセンブラは perl だし、書き込みツールは wine で動くし、FTDIのシリアルドライバはLinux版もある。Eclipse でデバッガが動けば言うこと無いが、シリアル接続ではなくJTAG接続が必要?エミュレータはROMイメージ内蔵なので開発用ではない感じ。

シリアル通信
UART線は、6pinパッドにつながっているが、トランジスタとレベル変換ICを実装すると、6pinパッドがRS232C互換のシリアルポートになる。PCとの接続や電卓同士の接続してプログラムをのやりとりに使える。というか、本来はそういう目的でケーブルまで用意したが、途中でHPのやる気が無くなった?
内部には汎用I/OやADC入力のランドまである。ポケコン的制御コントローラになるか。

Assembler/Disassembler
perl ベースのツール。Windows 向け.exe もある。ユーザ関数の作成に使えるほか、コンパイル結果は、基本ファームとともに焼き込める。
組み込みの solve や integrate などはこのアセンブラで実装されてXROM領域におかれている。

HP-15C
こっちもファーム書き換えできるんちゃう?
まだだれも手を付けてないみたいだから、一番乗りのチャンス。
外見的にHP15Cの人気は根強いのでビジネス的にもなんとかなりそう。機能的にはHP15CLEのほうがキーは多いがドットマトリクス2段ディスプレイがないのはビハインド。
KINOMIというのもあるぐらいだし、HP15Cの人気は不滅。

この議論は賞味期限が切れたので、アーカイブ化されています。 新たにコメントを付けることはできません。
  • by Anonymous Coward on 2011年12月17日 6時25分 (#2067649)

    WP-34Sに興味が有るのですが、ケーブル入手の「Gene さんにメール」というのは、
    どちらから連絡を取ればいいのでしょうか?
    おそらく、サブジェクトなども決まっていると思うのですが、メールに関する情報をいただけないでしょうか?

    よろしくお願いします。

    • http://sourceforge.net/projects/wp34s/files/ [sourceforge.net]
      ここにV22に関する情報がまとめられています。
      ダウンロードするファイル、Geneさんの連絡先、Ericさんの連絡先など。

      メールフォーマットは自由です。
      わかりやすいサブジェクトで、ビジネススタイルで送ればOKでした。
      ケーブルください、とメールすると、
      米国外$10という値段と、Paypal の払込先を指定されます。
      払い込んだら、またメールして2週間ほど待てば届きます。

      オーバーレイも同様です。いま配布しているのはV22用なのですが、フォーラムではV23用が盛り上がっているはずです(最近忙しくて覗いていない)。

      親コメント
typodupeerror

未知のハックに一心不乱に取り組んだ結果、私は自然の法則を変えてしまった -- あるハッカー

読み込み中...