wiki:JapaninoReflection

Japaninoの反省

学研の大人の科学27号は、当社が全面的に協力しています。 ふろくの「ジャパニーノ」の開発もお手伝いしました。 でも、いろいろと訳があって、完璧ではありません。 ちょっと反省。

USBシリアル変換チップ

最大の問題が、USBシリアル変換チップの選定でしょう。 ジャパニーノではSilicon LabsのCP2104を使っています。 Arduinoと同じく、FTDI FT232RLを使えれば良かったのですが、単純にコスト的な問題でCP2104を使いました。 これにより、(1)ドライバのインストールが必要 (2)ドライバのインストーラがヘボい (3)ドライバの配布制限がある (4)ドライバの品質が悪い (5)マックではDTRの制御ができない、という問題があります。

マック用のドライバでDTRの制御ができないのは深刻で、いわゆる「自動リセット」が効きません。 この点に関しては、中国の製造受託会社を通じてSilicon Labsと交渉し、「修正してもらえる」という話でした。 しかし、発売には間に合いませんでした。もしかしたら、製造受託会社は交渉すらしていないかもしれません。

ブートローダ

マックで自動リセットが効かない問題への対処として、ブートローダをいじるという選択肢がありました。 最近のArduinoは自動リセットが効くのを前提としていて、リセット後のスケッチ受信待機時間をかなり短く設定してあります。 以前のArduinoと同様に待機時間を長くすれば、手動リセットがやりやすくなったはずです。

マック用のドライバを修正してもらえることを期待して、ブートローダをいじらない選択をしました。 ファームウェアを書き込み済みのATmega168Vを工場が仕入れるとのことであり、ファームウェアイメージの締め切りがかなり早期でした。 その頃は、ドライバを修正してもらえそうだという事だったので妥当な選択でしたが、結果的には残念な選択でした。

保護抵抗

USBシリアル変換チップからのTXに入っているべき、保護抵抗が入っていません。

今回の開発は、製造受託会社が主導しました。 製造コストをぎりぎりまで切り詰めるために、部品の選定から設計製造まで、製造受託会社が行いました。 たとえば、たまたま手元にある在庫品を使うことによってコストを下げるとかです。 そのため、僕ら東京サイドは、できあがって来た回路や試作品をチェックするだけでした。 保護抵抗が入ってないのに気づいたのは、製造開始後でした。 悔やまれます。

電源コネクタ

電源コネクタが、シールドと干渉するんですよね。シールドによっては。 これも、製造受託会社主導の開発の結果と思います。

USB Aコネクタ

必ずしも悪いことでは無いのですが、USB Aコネクタになっています。 PCによってはささらなかったり、A-Aっていう特殊なUSBケーブルが必要です。 あえて言えば、付録にUSBケーブルを含めるかどうか=コストの判断の結果です。

(2010/5/20 - sgk)

Last modified 8 years ago Last modified on May 20, 2010 8:20:41 PM