はかどるん (MFT2012)

このページはMaker Faire Tokyo 2012で頒布した、はかどるんのサポートページです。

hakadorun

目次

更新履歴

  • 2012/12/09はんだづけについて追記
    トラブルシューティング追記
  • 2012/12/05操作方法追記
    フリスクケース加工に適した道具を追加で紹介
    基板をケースに格納するときの注意事項を追記
  • 2012/12/03
    ケースへの収め方・開発環境・ソース追記
  • 2012/12/01
    ページ作る

フリスクケースへのはかどるんの収め方

「はかどるん」はフリスクケースを加工して、その中に格納して使われることを想定しています。

ここではその方法をご説明します。

フリスクケースに穴を開ける

中身を食べて空になった市販のフリスクケースに、以下に示す穴を開けます。以下に示す穴の位置は、おおよその目安です。

基板をあてがいながら穴を開ける位置を微調整してください。

写真のようにケースには大きめに穴を開けておいて、あとでシールなどをフリスクに貼って穴のサイズを調整するのが見栄えがよい気がします。

穴あけは、アートナイフのようなもので、何度も何度も切りたい場所をなぞるとそのうち綺麗に切れます。根気が必要です。ほかにも100円ショップなどでも売っているリュータ(小型のドリル)を使うのもいい感じだそうです(購入された方からの情報)

  • 下側ura_ana
  • 上側omote_ana

ディスプレイ(OLED)の接続方法

フリスクに穴を開けたら、フリスクケース内にはかどるん基板を入れる前に先に、基板にディスプレイ(OLED)を接続します。

  1. コネクタのつめを上に持ち上げるconnector_open
  2. コネクタにOLEDを以下写真の向きで接続するconnected
  3. コネクタのつめを下に下ろす
  4. はかどるん基板と、OLEDが直接接触しないように、隙間にテープや紙などを挿入する。insert

基板のケースへの格納方法

先にOLEDを下図のようにフリスクにテープなどで固定してから、ふたを閉めると閉めやすいです。

注:OLEDのフレキケーブルが強く折り曲げないでください。

断線してします。折り跡などがつかぬようやんわり曲げてください。

oled_set


操作方法

 

PCなどとはかどるんの接続方法

PCなどとUSBキーボードの間に「はかどるん」が挿入されるように「はかどるん」を接続してください。
「はかどるん」とキーボード間はハブを使わず、直接接続してください。
「はかどるん」とPCなどの間でハブを使うことはOKです。
ただし、PC(or ハブ)側からみるとキーボード本来の消費電力に加え「はかどるん」の電力も必要になるので、バスパワーのハブの配下に はかどるん を接続する場合、電力不足となる可能性があります。
はかどるん の画面は、PC側の接続とキーボードの両方を接続しないと出力されません。
また、PCと「はかどるん」を接続したまま、キーボードを抜き差しした場合、PCと「はかどるん」間の接続も抜き差しする必要があります。(キーボードを再接続してもキーが入力できません)
(制限事項) 接続したキーボードのLED(NumLock/CapsLock/Scroll Lock)は点灯しません。
(より技術的にはPC側からのHID Output Reportにはかどるんのファームウエアが対応していません)

キー変換機能(個別変換・日/英キーボード変換)

入力したキーを別のキーに置き換える機能です。

初期設定では、キーボードのCaps Lockを押した場合に、PCには左Ctrlボタンが押されたと通知するように設定されています。

また、設定により日本語キーボード / 英語キーボード間のキーの変換を行うことができます。

設定の変更は後述する設定画面から行います。

(注)スライドスイッチを「内側」にすると、キー変換機能無効になります。キーの変換機能を使うときはスライドスイッチを「外側」にしてください。

slideswitch

マクロ機能

入力したキーを覚えさせ、覚えさせたキーを再生する機能です。
1つのマクロにつき256キー変化、合計で8マクロを はかどるん に記憶できます。
マクロの記録は、デフォルト設定では 左Ctrl+左Win+ファンクションキー(F1~F8)の同時押しで開始されます。
マクロ記録中は、はかどるんのメイン画面が、マクロ記録中であること示す画面になります。
キーの入力をやめ、約3秒放置すると、マクロの記録を終了し、マクロ記録中のキーの変化を保存します。
マクロの再生は、デフォルト設定では、左Ctrl+左Shift+ファンクションキー(F1~F8)の同時押しで開始されます。
マクロの記録・再生の開始に利用するキーは、後述の設定画面から変更することができます。

メイン画面

top_disp

メイン画面には3つのカウンタが表示されます。これらのカウント値は、はかどるんの電源を落としても保存され、次回電源を入れたときは、前回の値からカウントが行われます。

  • 1行目(大きな数字)キーの打鍵数です。全キーがカウント対象となります。
  • 2行目(C: ~の部分)キーの打鍵数ですが、Back spaceを押すと0にリセットされるカウンタです。ただし、Shiftキーを押しながらBack spaceを押した場合は、0にリセットされません。
  • 3行目(M: ~の部分)3行目のカウンタの今までの最大値です。つまり、今までBack spaceを押すことなく連続して入力することができたキー数の最大値です。

設定画面

プッシュスイッチを押すと設定画面 (SETUP MODE) が表示されます。

SETUP MENUにおける、項目の選択はキーボードの上下または左右の矢印キー、または、k or p(上)、j or n (下)または、h or b (左)、 l or f (右)で変更でき、決定はEnterキーで行います。また、ESCキーを押した場合、設定画面を抜けます。

main_menu

SETUP MENUの各項目は以下のようになっています。

  • CHANGE JP/EN日/英キーボード変換の設定です。項目を選択しEnterキーで設定を更新します。change_enjp
    • Not Convert
      変換無し
    • Jp -> En
      接続しているキーボードが日本語で、OS側が英語設定の場合
    • En -> Jp
      接続しているキーボードが英語で、OS側が日本語設定の場合
  • CHANGE KEY TABLE
    キー変換テーブルの設定です。まず変換元のキーをひとつ入力し、次に変換先のキーをひとつ入力します。画面に表示される2桁の16進数の値は、キーのUsage IDです。ただし、はかどるん ではReservedとなっている0xE8~のUsage IDを、Modifier keyに割り当てて使っています。具体的な対応については、ソースコード中のKeyTable.hを参照してください。

    変換元と先の2つのキーを入力後、Yesを選択すると該当の変換が保存されます。

    Noを選択すると、変換ルールは記録されずもとの画面に戻ります。

    Cancelを選択すると、設定を記録せず、元の2つのキーの入力画面に戻ります。

    change_keytable

  • MACRO MacroKey
    マクロの記録(SET)、再生(RUN)を行うためのキーを決定する画面です。左または右矢印、または、h or b (左)、 l or f (右)で、設定を変更するマクロエントリを変更して、Enterを押すと、複数のキー入力を受け付ける状態になります。複数のキー入力を受け付ける状態のスタートから、最も同時に押しているキー数が多かったときの押しキーを、マクロ記録/再生用キーとして割り当てます。change_macro
  • Clear Counter
    設定のカウンタ値を0にクリアします。
  • Reset Settings
    設定を初期設定に戻します。
  • Exit
    設定画面を抜けます

半田付け方法 / ファームウエア更新方法

以下の資料に、部品表、半田付け時の注意点、ファームウエアの更新方についてまとめてあります。

資料ダウンロード (第2版)

半田付けについて

半田付けは、道具とやり方が分かれば、意外となんとかなる気がします。
実際、道具とやり方を覚えた以降、私はなんとかなっています(すくなくても趣味レベルでは…)

道具は以下のものをそろえましょう。

goot

kote

  • 半田ごては、温度調整機能つきの半田ごてが便利です。電源入れて数秒で半田付けできるようになるので、こまめに半田ごての電源On/Offしても煩わしくないです。
  • コテ先は、自分自身が狭いピッチの半田付けがうまくできずに、いろいろ調べてみたところ、通常の鉛筆上のとんがったもの(B型というらしい)ではなく、写真のように、斜めになっているやつ(C型というらしい)を使うと良いらしいという情報を得てから、このC型のコテ先を利用しています。後述するように、コネクタやICのピンなどはブリッジを気にせず、一気にガーッと半田付けしてしまったほうが、うまくいくので、私も、先がとんがっているB型より、むしろ、平らなところ(斜めになっている部分)がC型のほうが使いやすいと思います。
  • 半田は、いろいろ種類があるようですが、よくわかりません。ただ、あまりに太い半田だと、ついつい使いすぎてしまうので、細いほうがよいかと。
  • フラックスは、重要アイテムです。半田ごては持っているし使ったことある方の中には、このフラックスというもののを知らない方もいらっしゃるかと思いますが、これがあるとないとでは、半田付けのやり易さが別次元です。半田付けした居場所にこいつを薄く塗ってから半田付けすると、半田がランドにきれいに流れてくれます。半田吸い取り線これも重要アイテムです。フレキケーブルのコネクタなど、どうしてもブリッジしてしまう場所は、最初からブリッジするつもりでガーッとまずは半田付けしてしまいます。そのあとで、ブリッジした場所に、上述のフラックスを塗り、吸い取り線をあて、吸い取り線の上から半田ごてをあてて、しばらく動かさずに待っていると、余計な半田がスルスルと吸い取り線に吸い取られて、ブリッジが解消します。

トラブルシューティング

 

部品を半田付けしたけどうまく動かないという場合の

トラブルシュート手順を以下に示します。

  1. (ファームウエアが書き込めない場合)電源が正常かチェックOLEDとキーボードを接続せず、はかどるんとPCをUSBケーブルで接続した状態で、USBの5Vから3.3Vが正しく生成されているかをテスタを利用してチェックしてください。この3.3Vの測定ポイントとしては、たとえば、FRAMの側にあるC18の両端などが挙げられます。3.3V(近辺)となっていない場合、レギュレータ周りの部品(FB1,C15,U3,C17,D1)が正しく実装されているか(特にD1の向き)を集中的に確認してください。
  2. (ファームウエアが書き込めない場合)CPU(VNC)周りをチェックCPU(VNC)まわりの半田付けが正しくできているか確認してください。
    • ピン間がブリッジしていないかテスタを利用してチェックしてください
    • ピンとランドが正しく半田付けて接続されているかテスタを利用してチェックしてください
    • CPU(VNC)周りのチップ抵抗、ならびに、ピンヘッダ周りのR3/R4が正しく半田付けされているかテスタを利用してチェックしてください
  3. (ファームウエアは書き込める場合)テストプログラムにて被疑箇所を絞りこむ
    1. この(ModTest)テストプロラムを書き込んでください
    2. はかどるんとUSBシリアル変換基板との接続をRXD/TXD/GNDのみにし、はかどるんとPCをUSBケーブルで接続してください。このとき、まだ、OLEDとキーボードは接続しないでください。
    3. PC側でTeraTermなどのターミナルエミュレータ(シリアル通信ソフト)をボーレート 115,200 / データ 8bit /パリティ無し / ストップ 1ビットで開いてください
    4. [SLIDE SWITCH] Toggle Slide Switch というメッセージが表示され続けるので、Slideスイッチを切り替えてください。ここで何も変化が起きない場合、スライドスイッチ周り、ならびに、CPUの12番ピン(CPUのピン番号については、VNC2のデータシート参照)周りを確認してください
    5. [PUSH SWITCH] Push Switchとうメッセージが表示され続けるので、Pushスイッチを押してくださいここで何も変化が起きない場合、プッシュスイッチ周り、ならびに、CPUの26番ピン周りを確認してください
    6. [FRAM TEST] Start / [FRAM TEST] End と表示された場合、CPUとFRAMの接続はOKです。[FRAM TEST] Faild と表示され場合、FRAMのピンが正しく接続されているか、ならびに、OLEDのフレキコネクタのピン間がショートしていないかを確認してください
    7. 一度はかどるんとPCとのUSB接続を切り、今度ははかどるんにUSBキーボードを接続した状態で、はかどるんとPCとを再度USBで接続し、ここまでの手順を再度実行します。
    8. [USBHOST] Wait Connectの表示から先に進まない場合、はかどるんとUSBキーボード間が被疑となります。USB-Aメスコネクタ、C12/C13/R5/R6、CPUのピン17/18の半田付けに問題がないか集中的に確認してください。
    9. [USBHOST] Unsupport Deviceと表示された場合、現在、はかどるんに接続されているUSBデバイスを、はかどるんがUSBキーボードとして認識できていません。別のUSBキーボードをお使いください。
    10. [USBHOST] Keyboard Detectedと表示された場合、キーボードがはかどるんに正しく認識されています。この状態でキーボードのEnterキーを押すと、はかどるんがPCに対してキーボードとして接続されます。ここで、PC側にはかどるんがキーボードとして正しく認識されない場合は、PCとはかどるん間が被疑となります。ミニUSB-Bメスコネクタ、C2/C5/R1/R2、CPUのピン20/21の半田付けに問題ないか集中的に確認してください。
    11. PC側にはかどるんが正しく認識された場合、キーボードで入力した内容が、はかどるんを経由して、そのままPCに送られます
    12. ここまでのテストで問題なければ、一旦はかどるんの電源を落とし、OLEDを接続して、再度、はかどるんとPCとをUSBケーブルで接続します。正しくOLEDのフレキケーブルのコネクタが半田付けされていれば、OLEDが一面青色表示になるはずです。青色表示にならない場合、フレキケーブルのコネクタが正しく半田付けされているか確認してください。

開発環境・ソースコード

 

開発環境 / 各種データシートの入手先

はかどるんは、FTDI社のVinculumII(VNC2)というICを利用しています。

VNC2の開発環境やデータシート、サンプルソースコードは以下のサイトより無料でダウンロード可能です。

 

http://www.ftdichip.com/Products/ICs/VNC2.htm

 

開発環境(Toolchain)はここから。

そのほかの主な部品のデータシートなどは以下などより入手願います。

  • OLEDモジュール(96×64)[ALO-095BWNN-J9] リンク先は部品購入元の aitendo の商品ページ。ただし、このモジュールで使われているコントローラ・ドライバは、SSD1332という型番なので、この型番でググるとより詳細なデータシートを見つけることができます。
  • FRAM(FM25L04B)

ソースコード

ソース一式(Rev.01)ダウンロード

  • ROMの容量がいっぱいいっぱいなので、Debugビルドできません。Relaseビルド必須です。
  • VNC2のCコンパイラは怪しい動きをします。(特にVNC2用コンパイラが独自拡張している rom 型)。何か変なコード書き方だな・・・と言う箇所は、たいてい、このコンパイラの怪しい動きへの対応でそうなったものが多いです。

Leave a Comment

NOTE - You can use these HTML tags and attributes:
<a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <s> <strike> <strong>

Trackbacks and Pingbacks: