放課後の電子工作 HOME > 超小型MP3プレーヤー [ Timpy ] > Rev8.0 【有機ELディスプレイ付きインナーイヤープレーヤ】

2009年11月29日 更新

超小型MP3プレーヤー [ Timpy ]
 
Rev8.0 【有機ELディスプレイ付きインナーイヤープレーヤ】

Timpy シリーズ・ラインナップ

Rev7.0 【1円玉サイズプレーヤ】

Rev9.0 【スピーカーボックスプレーヤ】

Timpy Rev8.0

有機ELディスプレイ付き
インナーイヤープレーヤ

超小型MP3プレーヤ [Timpy] Rev8.0 超小型MP3プレーヤ [Timpy] Rev8.0

超小型MP3プレーヤ [Timpy] Rev8.0

2008年12月 ひとまず完成

特徴
写真
有機ELディスプレイ
ハードウェア
ファームウェア
メイキング − 製作途中の写真集
賞をいただきました

きょうび、液晶などの表示デバイスが付いたポータブル・プレーヤは珍しくもなんともないですよね。

でもこのRev8.0のユニークなところは、耳かけ型のプレーヤ本体に表示デバイスを集積した点です。
つまり、前々作Rev6.0の特徴である −
 ・ヘッドフォンは音漏れが少ないインナーイヤータイプ
 ・プレーヤ本体はネックコードが巻き取れる耳かけ型
に加えて、Rev8.0では
 ・赤外線リモコンのディスプレイ機能を、ヘッドフォン本体に内蔵
しています。

ディスプレイはプレーヤの内側(耳に接する側)に配置しました。
もし外を向いてたら・・・周りの人に何を聴いてるかバレバレになってしまいます。これは恥ずかしいですよね。

一般的な耳かけ式ヘッドフォンだと、耳に接する部分にマイクロスピーカがありますので、他のものを配置することはできません。このRev8.0ではヘッドフォンとプレーヤ本体が分離していますので、プレーヤ本体だけを耳から外して(つまり左右のヘッドフォンは装着したまま)、ディスプレイを見ながら操作できるのです。

というわけで、Rev8.0の特徴をひと言で言うと『耳に掛けられるポータブル・プレーヤ』です。

--

》特徴

*プレーヤ本体はイヤークリップ型(耳かけ式)、ヘッドフォンはインナーイヤー型
 耳かけ式ヘッドフォンで気になる音漏れを解消しつつ、うっとおしいプラグコードを排除することができる、ユニークなハイブリッドタイプです。

*プレーヤ機能もがんばってます
  ・FMチューナ内蔵
  ・microSDカード対応
  ・USBマス・ストレージ・クラス対応
  ・デコーダICにVS1053bを採用。MP3 / Ogg Vorbis / WMA / MIDIの各フォーマットに対応しています。

*ネックコードを巻き取り可能
 右耳用ヘッドフォンコードを左側のプレーヤ本体内に巻き取ることができます。
 コードが絡まってイライラすることはありません。かばんの中もスッキリです。

*ヘッドフォンは両耳ともインナーイヤータイプ
 耳かけ式ヘッドフォンでの音漏れ問題を大幅に改善できます。

*プレーヤ本体に有機ELディプレイを搭載
 タイトル名、アルバム名、アーティスト名やFM受信時の局名、周波数などを表示します。
 ちなみにディスプレイはプレーヤの外側ではなく内側(耳の方)を向いて設置されています。
 何を聴いていても周りにバレる心配はありません。

--

》写真
全体
全体の外観

プレーヤ本体の筐体にはSONYの耳かけ式ヘッドフォン、実際のヘッドフォンにはEtymoticのER-6iを流用しました。3個の操作用ボタンなど、外側の外観はRev6.0と変わりません。

・・・でも・・・Rev8.0は内側が凄いんです・・・

本体の内側
本体の内側

耳に当たる部分、本来なら耳かけヘッドフォンのマイクロスピーカがある部分がプレーヤ本体になっています。Rev8.0ではさらに有機ELディスプレイを集積しました。

したがって・・・↓

操作中の様子
操作中の様子

両耳にインナーイヤー型のヘッドフォンをしたまま、耳からプレーヤ本体を外して、ディスプレイを見ながら操作できます。

装着の様子(左)
装着の様子:左側

左耳側は、インナーイヤーヘッドフォンの上からかぶせるように、プレーヤ本体を耳に掛けます。
絡まったり、首にまとわり付いたりする、うっとおしいプラグコードはありません。

装着の様子(右)
装着の様子:右側

右耳側はインナーイヤーヘッドフォンだけです。
ネックコードはプレーヤ本体に巻き取れますので、適当に引き出して右耳に装着します。
この左右のアンバランスさもユニークな点です。

スポンジを外したところ
スポンジを外すと・・・

Rev8.0で一番大変だったのは配置です。Rev6.0の時と使える空間のサイズは同じなのに、さらにディスプレイを追加してますので、必然的に部品密度は高くなります。簡単には収まりません。
いろいろな検討の結果、写真のこの形に落ち着きました。

生基板 表面
生基板 裏面

Rev8.0用に新規設計しました。大きさは直径およそ35mmです。
中央のT字型の穴は、有機ELディスプレイのコントローラICを落とし込むための“逃がし穴”です。
穴を囲んでいる斜めの大きな長方形はバッテリのための空間です。ここには回路部品を置かずに、バッテリと基板がベタで接するようにしてあります。
そして残る領域にVS1053bやバッテリ充電回路、電源回路が配置されています。
この裏面の部品実装はこれまで以上にキツイです。QFPやQFN類は問題ないのですが、1005のCRが0.2mm間隔で並んでたりするのがちょっと・・・。基板設計時に当然覚悟はしていたのですが、最近歳のせいか目が・・・。

生基板 裏面
生基板 表面

裏面と同様に、有機ELディスプレイ、microSDコネクタ、FMチューナモジュール、microUSBコネクタといった大物部品実装のために領域を割り当てたので、本来の回路部品で使える面積がごくわずかになってしまいました。
これも大物部品と回路部品の干渉を避け、全体の仕上がり厚さをできるだけ抑えるためです。

完成までにはTVチャンピオン『手先が器用選手権』並みの技巧(半分本当)と、仏様のような精神力(これはウソ)と、およそバカバカしいほどの費用(これは本当)が必要ですが、この生基板をご希望の方、いらっしゃいますか?
もしも『よし、やってみよう』という酔狂な気概ある方はご連絡くださいませ。あと18枚16枚あります(2枚お譲りしました)。

--

》有機ELディスプレイ
有機ELディスプレイ全景
実は・・・

写真は使用した有機ELディスプレイです。
ご覧の通り、右側が変?な形してますよね・・・、はい。実はこの有機ELディスプレイ、単体で販売されているものではありません。日本開閉器工業株式会社、いわゆる『スイッチの日開』の有機ELディスプレイ付きスイッチIS-C15ANP4をバラしたものです。
このディスプレイの魅力はなんといっても外形寸法の小ささです。表示部のガラスの部分で19.0mm×16.1mm(実測)しかありません。
メーカの製品ページ
詳細情報

でも実際に使い込むには上記の資料では不十分です。特にディスプレイコントローラICに関する情報が不可欠ですが、残念ながら日開のサイトでは公開されていません。いろいろ調べた結果、コマンドやパラメータの類似性から、おそらくSolomon SystechのSSD1331相当ではないかと思われます。このコントローラICは4D SystemsμOLED-96-PROPでも使われているようです。比較的新しいデータシートがここにあります。

有機EL表示サンプル(1)
表示サンプル(1)

このディスプレイはもちろんカラーです。
色深度は16ビット(赤5ビット、緑6ビット、青5ビット)です。

テスト的にグラデーションを表示してみました。
有機ELは自発光なのでコントラストが高く、発色も十分きれいです。

有機EL表示サンプル(2)
表示サンプル(2)

モノクロのグラデーションパターンです。

有機EL表示サンプル(3)
表示サンプル(3)

Rev8.0のロゴを作ってみました。
これが起動画面になる予定です。

有機EL表示サンプル(4)
表示サンプル(4) - 直線描画

ディスプレイコントローラがもしSSD1331ならば、グラフィック・アクセラレーション・コマンド・セットが使えるはずです。

・・・というわけで試してみました。
結果、見事"Draw Line"コマンドが機能しました。8バイトのコマンドを送るだけで直線が引けます。すばらしい。
他に矩形描画のコマンドもあります。

有機EL表示サンプル(5)
表示サンプル(5) - スクロール表示

もうひとつ重要なコマンドとして"Copy"があります。任意の矩形領域を別の位置へコピーするコマンドですが、これを応用すると、マイコンに重い負荷を負わせることなく高速な部分スクロールが可能です。これは文字列のスクロール表示に絶大な効果を発揮します。

左はロゴの中央部分をスクロールさせてみたものです。写真をクリックすると動画で見られます(WMVはこちら)。
"Copy"コマンドのおかげでマイコンはほとんど遊んでます。
後半の高速スクロールは早回しじゃありません。ファームだけでこれを実現するのは無理(笑)。

--

》ハードウェア
回路図
回路図

timpy-rev80-sch.pdf

アートワーク 部品面
アートワーク − 部品面

timpy-rev80-cmp.pdf

アートワーク はんだ面
アートワーク − はんだ面

timpy-rev80-sol.pdf

*FMチューナについて
Rev8.0ではこれまでのNS953MではなくYTS-7002Fを採用しました。サイズはNS953Mより一回り大きい9mm×9mmですが、パッケージがBGAではなくDFNなので、基板の裏を有効利用できることが決め手になりました。とは言ってもYTS-7002Fに載っているチューナICはNS953なので、過去の制御プログラムがそのまま流用できます。

*基板設計について
従来どおり、基板設計はEagle(version 4.16r2)で行い、製造はP板.comさんにお願いしました。
Timpyシリーズは超小型がウリ(?)ですので、毎回できるだけ基板を小さくするためにいろいろと苦心しています。基板設計の都合で回路を変更することも多々ありますし、パッケージが小さいことを理由にわざわざ入手が難しいICを採用したりもしています。
そういう状況ですので、当然基板設計においてもパターン幅・間隔を可能な限り細く狭くしたいところです。P板さんの場合はその最小値が0.127mm(2008年12月現在、追加料金なしの時)になるわけですが、実はRev5.0の時に欲張ってエライ苦労したので、その失敗談を恥ずかしながら書いておきます。また今回、同じ轍を踏まないようにするために採った対処法も併せてご紹介します。

まずはちょっと前置きにお付き合いください。
みなさんは基板設計時の座標の【単位】に何を使っていますか?私は直感的にわかりやすいので、いつも【mm】単位で設計しています。
ところでEagleで拡張ガーバを出力すると、座標値は整数部2桁+小数部4桁の【インチ】表現になります。つまり最小単位は0.0001インチで、ミリに換算すると25.4×0.0001=0.00254mmです。したがって基板設計時にどんなに微妙にパターン位置などを調整しても、0.0001インチ(0.00254mm刻み)未満の位置情報はガーバ出力に反映されません。例えばガーバで0.0050(=5mil)なら0.127mmを表しますが、これが仮に0.0049なら0.12446mm、逆に0.0051なら0.12954mmですね。ここで至極当然ではありますが、0.127mmの下限値に対して0.0049インチはNGとなります。そうです、キナ臭くなってきました。ミリで設計しているものを、十分な有効桁が無いインチに換算して出力しているのですから、これは要注意なわけです。まぁ後でわかったことなんですが。

Rev5.0設計当時、P板さんのパターン幅・間隔の最小値は今と違って0.125mmでした。そしてこの時にハマッた落し穴とは、バカ正直に0.125mm設定のDRUファイルを作って苦心惨憺設計し、自信満々でP板さんにガーバを送ったところが、複数の要修正箇所の指摘と共にあっさりとNG判定を受けてしまったことです。調べてみると、そのDRUの設定に基づいて生成されたベタパターンやラインの折れ曲がり部分などにおいて、最小値0.125mmを満足しない部分が多数生じてしまうことがわかりました。ベタの生成法やガーバデータの解釈法などいろいろな要因がありそうなのですが、曲線補間などにより自動生成された頂点座標値において、先ほどの±0.0001インチに象徴される誤差が生ずることが主な原因ではないかと推測しています。

Rev5.0の時はパターンを0.125mmピッチできっちり並べてしまっていたので大変でした。DRUを0.125から0.127mmに変更した上で、基板全面にわたるパターン修正が必要でした。それも1回では不十分で、3回目の修正でベタ生成の時だけ6mil設定のDRUを使用することで何とかクリアしました。

ここで厄介なのは、以上いずれのデータにおいても、EagleのDRC(デザインルールチェック)ではエラーにならないことです。DRCは設計中のデータに対してエラーをチェックするのであって、出力されたガーバをチェックするわけではありません。Eagle内部において、座標データは1/10000mm(0.0001mm)単位で管理されていますので、仮にDRUが0.125mm設定であっても有効桁は十分ですし、それ以前にDRUの設定値にしたがって自動生成したデータがDRUを満たさないはずがありません。つまりユーザの設計ミス以外のエラーは検出できないのです。P板さんがチェックに使用しているツールと同じものが手元に無い以上、エラーがあるかどうかはデータを送ってみないとわからない、という情けない事態となります。

このRev8.0では、全面的な設計変更という最悪の事態が再び起こることを避けたかったので、次の2つの手を打ってみました。
 (1)ミリ単位でガーバを出力する
 (2)最小パターン幅・間隔を0.130mmとして設計しておく

まずミリ単位のガーバ出力についてです。
上記の通りインチ表現が原因のひとつと思われたので、EagleのLight Editionライセンスを購入した(有)サーキットボードサービスさんに相談してみたところ、ミリ単位で出力してくれるCAMファイルを提供していただくことができました。このCAMファイルは整数部3桁+小数部3桁の【ミリ】表現でガーバを出力します。最小単位が0.001mmになりますから、従来の0.0001インチ単位よりも倍以上細かな表現が可能になります。また設計をミリ単位で行っていることと併せて考えても、この方が誤差の少ない出力になると期待できます。(なおヘルプの説明に従えば自分でこのCAMファイルを作ることも可能なようです)

その上で、パターン幅と間隔の最小値を0.130mmとして設計しました。
たとえガーバをミリ単位で出力したとしても、上記のようなベタパターン生成などにおいて、ある程度の誤差発生はやむを得ないと思われます。厳しいデザインルールで設計された基板を緩いルールに変更するのはRev5.0の時に懲りたので、当初から多少のマージンを見込んで0.130mm設定の基で設計することにしました。

…パターンを引き終わった後、ベタパターンを0.127mm設定のDRUを使って生成し、ミリ単位のガーバを出力してP板さんに送ってみたのですが、残念ながらNGでした。やはりガーバをミリ単位で生成するだけではダメということですね。0.128mmでもNGで、結局0.130mm設定でベタを作らないとOKになりませんでした。パターン設計を0.130mm下限にしておいて正解でした。下はその際のDRUファイルです。
p-ban_min-0.130mm.dru (ファイルを保存してお使いください)

(私はガーバの専門家ではありません。上記の説明中に適切でない部分があればご指摘ください)

--

》ファームウェア

とりあえず動作する程度までは実装しましたが、まだまだ作り込みが必要な段階です。
いずれ公開しますのでもう少々お待ちくださいませ。
(参考のために現状のものでも良いという方はご連絡ください)

--

》メイキング − 製作途中の写真集

作業中、キリのいい時に撮った写真です。
結構たくさん撮ったつもりだったのですが、今見返してみると全く網羅できてません。orz
まぁこれをそのまま真似する人は居ないと思いますが、何かのヒントかひらめきの種になれば…。

メイキング1
操作スイッチ用の追加工

これはヘッドフォンの外装部品(上の写真で"SONY"のロゴが入っている赤いパーツ)の裏面です。3個の操作スイッチを取り付けるための準備として追加工をしたところです。
取り付け位置のケガキをしたら四つ目キリでポンチ代わりのくぼみを付け、ピンバイスでまずφ2.0の下穴を開けます。その後φ6.5のドリル刃で皿ザグリをし、最後にφ4.0で仕上げ穴を開けます。
この仕上げ穴は裏側から、ドリル刃を直接手でもんでそっと開けるようにします。表から刃を立ててはいけません。塗装がはげてしまうので。皿ザグリはスイッチのボディを落とし込むために必須です。裏側から塗装面が透けて見えるくらいまで深くザグリましょう。
併せて配線を落とし込むためのくぼみを彫刻刀で彫っておきます。

メイキング3
銀色のパーツへの追加工

これはイヤークリップのヒンジ部にある銀色のパーツです。
この内側にスイッチの線を通しますので、干渉する部分をしっかり削り落とします。
別の角度から(1)
別の角度から(2)

メイキング9
操作スイッチの取り付け

操作スイッチにはALPSのSKQGAFE010を使用しています。
スイッチの端子にあらかじめ配線材をはんだ付けしておき、透明タイプのエポキシで1個ずつ接着します。
硬化したら保護のためにカプトンテープを貼っておきます。

このスイッチと配線を仕込むのは、プラグコード巻取りボビンと赤いパーツの間のわずかな隙間です。組み立てた時にボビンと干渉しないように、隙間以上の出っ張り部分が無いよう注意深く仕上げます。十分な皿ザグリの深さとエポキシの適量加減がポイントです。

メイキング8
マイクロスピーカの取り外し

ヘッドフォンの左側のスポンジを外し、マイクロスピーカを取り外します。
スピーカは本体内側(写真左)のリング部に複数あるツメでしっかり固定されています。このツメは後で利用しますので、壊さないように慎重に外します。

メイキング11
プラグコード巻き取りボビンの取り外し

スピーカを外したら、裏返して巻き取りボビンを外します。
このボビン部分は後で元通りに戻しますので、部品を壊したり、失くしたりしないようにしてください。同時に、ゼンマイで手を切らないように注意してください。ボビンを外すときによくゼンマイがはぜてしまいます。作業前には忘れずにゼンマイを緩めておきましょう。
無事にボビンが外せたら写真の状態になります。

メイキング10
ロータリーコネクタ接点部品への追加工

プラグコード巻き取りボビンとヘッドフォン本体間はロータリーコネクタで電気的に接続されています。もちろんL-ch、GND、R-chの3回路分あります。
写真はその接触子ですが、この根元の立ち上がり部分を真ん中から折り返すように追加工します。左は未加工のもの、右は加工後です。3個の接触子全部を同様に加工します。
この折り曲げ加工はバッテリをヘッドフォン本体にぴったりと収めるために必要な細工です。

メイキング12
スイッチ用配線の通線穴

クリップヒンジ部の脇のくぼみに、スイッチの配線(5本)を内側へ通すための穴を開けておきます(写真中央部)。
内側から見たところ

メイキング21
プラグコード巻き取りボビンの再組立

ロータリーコネクタ接触子を追加工し取り付けたら、プラグコード巻き取りボビンを元通りに組み付けます。
写真はスイッチ用通線穴付近のアップです。

メイキング13
本体内側の追加工

スピーカを取り外してできた空間に、バッテリや基板などがぴったりと収まるように追加工を施します。
削りすぎたり、残すべき部分を折ってしまったりしないよう、細心の注意を払って少しずつ削っていきます。

メイキング15
本体内側の追加工−ツメの温存

マイクロスピーカがはめ込まれていたリング状の部分の内側には、スピーカを固定するためのツメが出ています。
写真のように、基板の固定にはこのツメを利用します。基板の上面がちょうどツメにかかる高さに来て、かつツメと部品が干渉しないように、部品の配置や選定、基板の形状を工夫してあります。
別の角度から(1)
別の角度から(2)
別の角度から(3)

メイキング20
外装部品の追加工

これはヘッドフォン表側の外周に位置する外装部品です。これにも銀色のパーツと同様、スイッチの配線を通すための逃げを作ります。
裏側から見たところ

メイキング22
ヘッドフォン表側の再組立

スイッチの配線5本がクロスしないように気をつけながら穴に通し、表側の外装部品を元通りにはめ込んでいきます。
巻取りボタンの組み付けが難しいですが、無理をせず慎重に作業します。
またこの時、あらかじめゼンマイを巻いておくことを忘れずに。完了したら巻取り機構がちゃんと動作することを確認します。

メイキング23
バッテリの収まり具合の確認

バッテリの端子部を処理し、追加工した本体にすっぽり収まるかどうかを確認します。リング状の部分を支えている足の間にちょうどバッテリが納まるはずです。

基板表面
実装が完了した基板

動作確認中の様子です。Timpy Rev8.0のロゴが表示されています。

メイキング24
有機ELディスプレイの接続法

写真はバッテリを取り付ける前の状態です。基板中央の"T"字型に開いた穴にディスプレイコントローラのチップがすっぽり収まっている様子がわかります。さらにこの穴からディスプレイのFPCの端子側を引き出して、写真のように基板のエッジに直接はんだ付けします。このための準備として、ディスプレイ接続用の8個のスルホール(CN4)がちょうど半分欠けるまで、ヤスリで基板を削っておきます。この接続法は、FPCの端子部を限られたスペースで確実に接続するためにひねり出した、まさに"窮すれば通ず"という感じの苦肉の策です。

基板裏面
バッテリを取り付けたところ

シルクの位置に合わせて、バッテリを極薄の両面テープで固定し、本配線を施します。

メイキング25
基板の組込み

配線類を適切に処理したら、いよいよ基板を本体に組み込みます。

メイキング35
基板の固定−ツメによる固定(1)

写真中央に見えるICはSiLabsのC8051F342です。その両側でツメが基板にかかっているのが見えます。

メイキング36
基板の固定−ツメによる固定(2)

およそ反対側の様子です。microUSBコネクタの両側に同じようにツメがかかっています。このように基板はヘッドフォン本体に"パチッ"とはまるようにしてあります。

メイキング33
スポンジへの追加工

有機ELディスプレイ画面の位置に合わせてスポンジを切り抜きます。でも切り抜いただけだと引張りが効かなくなるためスポンジの形状が保てません。そこで、円形に切り抜いた0.3mm厚のPET材をスポンジの裏側に両面テープで貼り付けてあります。ディスプレイ表面の保護と合わせて一石二鳥です。
裏側の様子

USBコネクタ部
microUSB接続部

スポンジに穴を開けるとmicroUSBコネクタが顔を出します。
このような切抜きには眉はさみが最適です。

カード挿入部
microSDカード挿入口

写真はカードをセットした状態です。取り出しやすく、かつカードが耳たぶに当たらないように考えて配置してあります。

LED部
状態表示LED

有機ELディスプレイが付いているにもかかわらず、ついLEDも付けてしまいました。青、赤、緑の3個です。
それぞれの意味は、青は2秒に1回一瞬光ることで電源ONを示します。USBモード時はmicroSDカードへのアクセスランプになります。赤は充電中を示し、緑はUSBバスパワー供給中を意味します。
LEDも上記の有機ELディスプレイと同様に基板をヤスリで削っておき、その端面に表裏を渡す形で実装します。上面発光LEDで基板側面を光らせるための窮余の一策です。

Rev7.0と厚さ比較
Rev6.0と厚さ比べ

写真左はRev8.0、右はRev6.0です。できる限りの最適設計を試みた結果、ディスプレイを追加したにもかかわらず、Rev6.0よりもかなり薄く仕上がりました。このため装着感がずっと良くなりました。

--

》賞をいただきました
賞をいただきました

Engineer Award 電子工作コンテスト2009にて、「審査員特別賞」と「トランジスタ技術賞」をいただきました。
感激です・・・。

さらに、授賞式の時にお会いした複数の方から「これ欲しいです」とか「作ってみたいんですけど」と言っていただけたことがとても嬉しかったです。皆さまありがとうございました。結構手間や費用がかかるのと、ハンダ付けが難しいことなどで、なかなかご要望にお応えし難くて本当にすみません。
また「私は長いコードが嫌いなので」とお話しすると、「そうそう、私も嫌いなんです」と強くご賛同いただけたりもしました。あの長いコードをうっとおしく思っている方は少なからずいらっしゃるようです。

応募のためにアップした動画です。


Timpy シリーズ・ラインナップ

ページの先頭へ戻る

Rev7.0 【1円玉サイズプレーヤ】

Rev9.0 【スピーカーボックスプレーヤ】Rev9.0

HOME