2012年7月26日木曜日

復活のうた

先日、MBP の惨状をお伝えしましたが、注文していた MBP のキーボードが到着しました。注文からちょうど一週間。


eBay での購入時、深圳の会社と香港の会社があって、深圳は工場直送かなー香港の方が早いかなーと悩んで、 香港の会社から購入しました。
いろいろ腑に落ちない点があるけど、ブツはシンガポールから来た模様。


交換をするために、広い作業スペースを求めて、渋谷に来ました。
MOSA のイベントで知った Connecting The Dots という、
1日1050円 (+初回メンバー登録料 525円) のコワーキングスペースです。
記録映像取りたかったので、三脚も担いで。




動画にしてみました。


動画ではカットしちゃいましたが、開始早々Dr. Papper が吹き出るハプニングあり、、、 いろいろとお騒がせしました。 今度はフツーに仕事しに行きます。


そうそう、キートップのデザインが Lion 仕様に変わりました。

今回購入したキーボードは送料込みで $28-。円高なので渋谷までの往復交通費とスペース代、ドクターペッパー代、とだいたい同じ。

2012年7月21日土曜日

TEPRASTYLE - dev 篇


表サイト連動企画、「テプラスタイル」です。
テプラ(SR3700p )を購入したので、電子工作に活用しよう、というお話です。

テープは後回しにすると、買わなくなるので、本体と一緒に何本か買いました。



これと、本体にお試し用で付属していた 18mm の白テープ(黒インク)があります。
まずは普通の使い方ですが、IC に貼ったり、コネクタに貼ったり、基板に貼ったり。



地味に便利です。
IC に貼ったのは 4mm テープ。コネクタは 6mm です。
(基板に貼ったのは 6mm に2行印刷して半分に分割。)

Windows 版のソフトはかなり細かく文字の間隔調整や文字を縦横に伸ばすことができます。合うまでに何度も印刷しましたが、文字と基板のピッチをぴったり合わせることが出来ました。

テープ幅は意外と「小は大を兼ねる」という印象です。
太いテープを切るのは面倒なので、細いテープを貼った方が良い感じです。


こんなのはマジックで書いとけばいいじゃん…………
そんなふうに考えていた時期が 俺にもありました (成句)


油性マジックは消えます。
あと、小さい文字はつぶれて読めないことも、、、


いろんな種類のテープがありますが、TETRA-dev 一押しは「備品管理 銀」です。

銘板のようなシールがつくれます。



間違えやすい ACアダプタの整理に、、、ってなぜこんなに?


あと、トリマー(RT-36W) もお勧め。角丸加工ができるはさみです。
角丸も重要ですが、テープを奇麗に直角にカットできるのが良いです。
普通のはさみで切ると、どうしても曲がってしまいます。
はさみというより、小さい裁断機の様です。

他にも「熱収縮チューブ」や「ケーブル表示ラベル」なんかも、おもしろそう。
(残念ながら電子工作用途に合うサイズではありません。)


今の所大きな不満点はないのですが、気になる点をいくつか、、、
・印刷毎にテープを無駄にカットする
・自動カットした時のテープ排出が勢い良すぎ
・マック版ソフトの機能が少なすぎ
・テープ送り方向の解像度が低い(斜めの線がギザギザに)
・iOS アプリを試したけど使えなかった

Mac でもっと凝った印刷をするなら illustrator を使うしかないのかな?
こちらもまだうまく行ってません。用紙設定が難しい。

2012年7月20日金曜日

キーボード哀歌



このところNewton Keyboard が活躍してます。
あまりポジティブな理由ではなくて、、、

1週間ほど前、MacBook Pro (MID 2010) のキーボードにお茶を飲ませて壊していまいました。
幸い、M/B への浸水はほとんどなかったのですが、F-G-H-J-K-L のキーが入力できなくなりました。
ドとレとミとファとソとラとシの音が出ない♪状態です。

直後は底面を分解して水分を取ったり、携帯水没時の定番「乾燥剤」を使ってみたりしたのですが、症状は治まらず。

今回一念発起して徹底的にばらしてみました。
まず、バッテリーをはずすためにY字ドライバーをハンズで購入。(持ってたハズなんだけどな、、、)
分解手順はiFixitで。







結局駄目でした。
凄い量のホコリと何かのカス、少しの水分を回収したものの、とくにこれが原因という跡は見つからず。


このキーボードは Upper Case という筐体部分とセットになっているため、
部品代だけで$300- 近くするようです。

eBay でキーボードのみを売っていた(工場横流し品?)ので、とりあえず注文したのが本日未明。
はたしてどれくらいで着くものなのか。そもそも、M/B側故障の可能性もあり、キーボードの交換で治る保証はないですが、、、

Newton Keyboard はクラシカルなメカニカルキーボード(カタカタいう)なので、出先では気まずいことこ上ないです。

2012年6月29日金曜日

Newton Keyboard to USB Converter、売れてます。


昨年から紹介している1995年製のNewton Keyboard をUSB Keyboard に変換するコンバーターですが、販売も行なっています。

先日 4つめのコンバーターを発送しました。
やはり、あのKeyboard を持っている方は思い入れがあるんですね。嬉しいです。

ときどき過去記事のコメント欄でお問い合わせを頂くので、改めて、

・商売でやっているものではありません。(素人工作です/ほぼ原価です)
・注文を受けてから材料を手配するので、発送まで一週間程度かかります。
・代金はAmazon Gift で頂いております。(コンビニでも買えます。)

発送先の住所とギフトコードを m@djgj.jp 宛にメールで送って下さい。

以下の3つからお選びください。

・完成品 Amazon Gift 3,000円分(送料/USBケーブル込み)
(Newton Keyboard をそのまま接続して、USB Keyboard にする変換BOX)

現行版はこちらの黒いBOX タイプです。(指定があれば薄い白いBOX でも承ります。)

(※白いBOX にMOSA のイベントでバスケさんにサインもらいました。もちろんこれは非売品です。)

・プログラム書き込み済み基板 Amazon Gift 2,000円分(送料込み)
(Newton Keyboard を改造して、USB Keyboard にする基板)
希望があれば、基板側の3本線をはんだづけして提供します。
コネクタを付けたケーブルをはんだづけして送ります!(ボードのみでも承りますが、値段は同一です)


USB ケーブルはmini-B タイプが必要です。
こちらを強く推奨します。(ノーブランドの安物を買ったら使えなかった事があります。)
有名メーカー品なのに安く、送料も無料(Amazon 在庫切れの際、マーケットプレイスの業者が表示されます。その場合、送料がかかる場合が有ります。ご注意ください。)です。元のケーブル穴から出す事ができます。


・プログラムのみ 無償
AVR の書き込みができる方が対象。書き込みに関するサポートは致しません。

(準備中)お急ぎの方はメールでご連絡ください。
ATmega32u4(@16MHz)専用 → ストロベリーリナックスの ダ・ヴィンチ32U を使用してます。
http://strawberry-linux.com/catalog/items?code=25005


キーボードに組み込む場合の改造手順
1) 分解
裏面のねじ 6ヶ所を外します。(隠しねじはありません)

2) 分解2
開ける際にケーブルを切らないように注意して下さい。
(フレキのコネクタは白い部分を手前に引っ張ると外れます。)


3) 書き込み(私から購入する場合は不要です)
AVR ライターでプログラムを書き込みます。
私は USBasp(2011-05-28) と avrdude v5.11.1 の組合わせを使用しています。

4) 配線(ダヴィンチ32U)
3本のリード線をはんだ付けします。
(便宜的に 赤、白、黒で説明しますが、もちろん何色でも構いません。)
赤:5V, 白:D2, 黒:G に接続 (Gはいろんな場所からとれます)

5) 配線 (Newton Keyboard)
キーボードの基板側のはんだ付けです。
赤: D4、白:R7、黒:R8 の足(写真の向き注意)に接続します。


(7/2)追記 コネクタが入手できました。(日圧のPH 6pin でした。aitendo のこれを購入。線の色はバラバラでした。)
コネクタ付きボードを購入した場合は、手順 4), 5) のはんだ付けは不要で、元のケーブルと差し替えるだけになりました。


6) 組み込み
・厚手の両面テープなどで固定します。(底面がカーブしているので横向きがお勧めです。)
・キーボードの金属面とショートしない様、紙等をはさむと、より安全です。
・ケーブルの抜け防止に、ビニタイをキツく巻いてます。


7) 分解したときと逆の手順で元に戻します。
フレキケーブルを戻すのを忘れずに!!


簡単!

2012年5月14日月曜日

Arduino IDE カスタマイズ その2

前回紹介した「Harpy Nano」を IDE のメニューから選択できるようにする小技です。



このメニューのリストは以下の場所にある boards.txt というファイルに、ボード毎の設定として記述されています。(使用しているCPU やクロック、ブートローダーの種類など)

Harpy は (Arduino Pro or Pro Mini (3.3V, 8 MHz) w/ ATmega328) 相当なので、それを選択すれば良いのですが、折角なので Harpy を名前で選択できるようにしましょう。


[Mac の場合]
Arduino のアイコンを右クリックして「パッケージの内容を表示」を選択
以下のようにフォルダをたどる。
Arduino.app > Contents > Resources > Java > hardware > arduino > boards.txt


[Windows の場合]
Arduino アプリケーション 本体と同じフォルダにあるhardware フォルダをひらいて、
arduino フォルダにある。
arduino-1.0 > hardware > arduino > boards.txt



下記の内容を追加するか、追加済みの boards.txt に差し替えて下さい。

何種類かのボードを使い分けている場合、自分の使うボードを上の方に寄せるなどの並べ替えをすると、地味に便利です。



追加内容
##############################################################
harpy.name=Harpy Nano or Micro (3.3V, 8 MHz) w/ ATmega328

harpy.upload.protocol=arduino
harpy.upload.maximum_size=30720
harpy.upload.speed=57600

harpy.bootloader.low_fuses=0xFF
harpy.bootloader.high_fuses=0xDA
harpy.bootloader.extended_fuses=0x05
harpy.bootloader.path=atmega
harpy.bootloader.file=ATmegaBOOT_168_atmega328_pro_8MHz.hex
harpy.bootloader.unlock_bits=0x3F
harpy.bootloader.lock_bits=0x0F

harpy.build.mcu=atmega328p
harpy.build.f_cpu=8000000L
harpy.build.core=arduino
harpy.build.variant=eightanaloginputs

Suica & PASMO 残額読み上げ


日本語 音声合成LSI ATP3011F4-PU を入手したので、作ってみました。
このIC はArduino Uno などに使われている、ATmega328 に音声合成エンジンを載せた、ちょっと信じられないプロダクトです(8bit マイコンですよ!?)。

シリアル通信でローマ字で送るだけで読み上げてくれます。しかも助数詞対応(1本、2本、3本を いっぽん、にほん、さんぼん と読ませることができる)。
MTM07 で売っていたそうなのですが、現在は秋月電子で購入可能です。

felica リーダーについては以前の記事に書いたものを使いました。
以前の記事同様、NeoCat さんのライブラリを使用。Suica/Edy の残額を読み出すサンプルを使って、残額部分だけをATP3011 に送るようにしました。

以前の記事には、PaSoRi.h の中の #include <Spi.h> をコメントアウトするように、とありますが、
Arduino IDE 1.0 で使う場合は、それに加えて #include "WProgram.h" もコメントアウトが必要でした。


felica リーダーからPASMO の残額を読み出す部分には、Arduino + USB Host Shield が必要なのですが、今回は鳥人間さんの Harpy Nano を使用しました。USB Host Shield と Arduino (Fio 相当)の機能を小型の1ボードにまとめたものです。

プログラムは NeoCat さんのサンプル(PaSoRi_Suica_Edy_Reader.pde)から、必要な部分だけを取り出したものです。
こちらにあげておきます。


2012年5月2日水曜日

やすっぽいーの with UHS mini


先日つくった「やすっぽいーの」が進化しました。
3.3V のレギュレータと、USB Host Shield の本家、Circuits@Home の USB Host Shield mini に対応する端子をつけました。(空き端子を使って、必要な7pinを並べています。)

このようにして使います。小さい青いボードがUSB ホストシールドに相当する基板。正式名称は「USB Host Shield for Arduino Pro Mini」です。
国内で扱ってる代理店が見当たらず、Circuits@Home から直接購入した方からわけてもらいました。

このボードは USB Host Shield のメインIC である Max3421e のみを取り出したもので、3.3V 動作のマイコンと直結できるものの、Arduino Uno など 5V動作のマイコンでは使用できません。

「やすっぽいーの」も5V 仕様で作ってしまったので、3.3V とのレベル変換基板(秋月 8ビット双方向ロジックレベル変換モジュール)を裏面に搭載しています。


このIC、双方向変換なので各信号の向きを気にせず使えます。超便利。
8bit (8ライン) ありますが、今回使用したのは5本のみ (SCK, MISO, MOSI, SS, INT)。
Max_Reset は基板上でプルアップしています。

USB Host の機能を手に入れたので、ADK を試してみました。
ATmega168 では、ADB のサンプル(logcat など)は動作するものの、Demokit などADK のサンプル はNG のようで、、、結局 ATmega328p に差し替えて無事に動作しました。

見た目は安っぽいけど、高機能(そして全然安くない)。「やすっぽいーの」あなたも一つ、作ってみませんか?


2012年4月28日土曜日

やすっぽいーの


秋月のC タイプ基板 で作った、Arduino互換機です。
この基板はArduino のシールドソケットの間隔とちょうど同じ幅です。
それを利用して、こんな感じでシールドを作る技を、最近知りました。
(すごい手間ですが、、、)

ということは、逆もできるんじゃ、、、
ということで、連結ソケットを曲げて作ってみたのが、上の写真です。

普通のユニバーサル基板そのものですが、「Arduino シールド互換」なので、実用性は抜群。


名前は、その見た目から「やすっぽいーの」と命名します。

これ用にATmega328p 買ったのですが、ブートローダー書き込み済みのATmega168 が手元にあったので、とりあえず使ってます。(ATmega88 にすればさらに安っぽく?)

実は、コネクタ類が高いので、見た目ほど安くはないです。
特に Akizukino こと AE-ATMEGA の基板が150円 なので、配線の手間を考えると、、、
いいんです。ネタなので。


配線数は多いのですが、作成自体は結構簡単です。
Pro っぽいduino と同様、Arduino pro と同等のシリアルコネクタを装備。
プログラム転送と電源端子を兼ねています。

強度はハンダ付けの腕次第、です。

昔よく有ったおもちゃとタイアップしている少年漫画(ミニ四駆とか、、)に出てくる貧乏キャラが、「買えないから自分で作った」みたいな感じがでてて、結構気に入ってます。

2012年4月27日金曜日

Arduino IDE カスタマイズ


Arduino IDE は「シンプル」そのものですが、不満なのがライブラリの管理機能がないことです。世界中のArduino ユーザーが作成する豊富なライブラリは、Arduino の重要な機能です。豊富なシールドとそれを扱うライブラリの組み合わせは、他のマイコンを圧倒します。

しかし、そのライブラリのインストール・アップデートは手動なのです。
指定のディレクトリにコピーするだけとは言え、結構面倒。

最近はADK 関連のライブラリをよく使うのですが、似たようなライブラリでも
複数の作者による、多彩なバリエーションがあるため、入れ替えながら使っています。

似たような機能のライブラリは、名称が被っている事が多く、同時に使えません。
となると、使わない方を一時だして、、、あれ、これはどっちのバージョンを使うんだっけ?

と、煩雑な管理を強いられています。
Arduino IDE から、使用するライブラリをOn/Off するくらいのことはやってほしいのですが、仕方が無いので、後ろ向きの解決策を考えてみました。

(以下、Mac 版の話しです。他の環境では異なるかもしれません。)
Arduino IDE はコピーするだけの簡単インストールで、複数インストールしても、問題はありません。これまでも、旧バージョンを使用する必要があったり、3つほどインストールしていました。

今回の提案は、もっと積極的に、同じバージョンを複数使用します。
ライブラリのインストール場所は ~/Documents/Arduino/libraries か、アプリケーションパッケージの中にあるlibraries フォルダと、衝突するライブラリごとにIDE のコピーを用意し、パーケージ内にライブラリをインストール。Arduino IDE ごと切り替える事にしました。

それだけだと、分かりにくいので、アイコンやアプリ名などをちょっといじってます。


1) アプリケーション名(Dock に表示される名前)
→普通にFinder で変更

2) バージョン (Window タイトルに表示される)
→version.txt を編集

アイコン右クリックで「パッケージの内容を表示」
Contents > Resources > Java > lib > version.txt

3) アイコン(Dock に表示される)
→processing.icns を編集(Xcode 付属の Icon Composer を使用)
Dock だけなら 128x128 のみで良い

アイコン右クリックで「パッケージの内容を表示」
Contents > Resources > processing.icns


Contents > Resources > Java > lib > theme にあるファイルをいじれば、ウインドウの色なども変えられるのですが、そこまでやると大変なので、とりあえずこれだけ。
(日本語対応といわれる次バージョンの噂も聞こえてますし、、、)

ひさびさの更新です。
知らぬ間に Blog システム(Blogger) の仕様が変わって何がなんだか、、、、

2012年3月16日金曜日

XBee WiFi テスト中


ついにXBee WiFi がやってきました。

XBee WiFi は、その名の通り XBee シリーズのWiFi モジュールです。従来のXBee モジュールとピン互換になっています。サイズはXBee Pro と同サイズなので、少し長め。ちゃんと日本の技適も取得済みです。

出ているピンは 2mm ピッチなので、ブレッドボードでは使えません。これまで XBee Series 1 で使っていた USB Explorer や、5V マイコン用ボードArduino 用シールドといった資産があったので、モジュール単体で購入しました。PCBアンテナ版が欲しかったのですが、まだ販売されていなかったので、ワイヤーアンテナ(ホイップアンテナ)版を選択。

、、、いろいろとハマりました。現在もテスト中です。XBee が初めての方は開発キットの購入を強くお勧めします。(こっちは在庫あり?)

まず、USB Explorer はモジュールのシールドケースの厚さがあるため、きちんと刺さりませんでした。(一応使えます)



ハマり箇所
1) 電源が入らない。 うんともすんとも言わない、、、というか、ジ〜〜 っという音がする。
 →この記事を参考に、電源部にコンデンサを追加してみました。(とりあえず手持ちの 100+100 =200uF) 容量不足なのか、原因が別にあるのか、たまに起動しない時があります。

2) X-CTU (Digi 純正設定ツール) で 認識しない。
 →X-CTU の最新版をインストールした上で、さらにソフトのメニューからアップデートをかける必要がありました。(モデムの定義ファイルをダウンロードしてる?)

3) 設定方法がわからない。
 →この記事が大変参考になりました。私もSSID が小文字だったので、AT コマンドで設定しました。(私はXP でXCT 5.2.7.5 使いましたが、特に問題はないと思います。なんで 5.1.0.0 指定なんだろう?)

 →AT コマンドはこの記事を参考にしました。
 →AT コマンドで設定できるので、2) のX-CTU は不要です。

そんなこんなで、やっと動いた、という所です。
初期状態では、UDP とUART(シリアル通信) の相互変換器として使えます。設定を変えれば TCP も使える様です。

IP の設定等は予めモジュールに記憶(DHCP 対応) させておくので、WiFi の設定など正しくできていれば、電源をいれてしばらくすると、Ping 応答するようになります。
設定はシリアル通信(AT コマンド) で簡単にできるので、Arduino 側から設定する事も可能です。Arduino のEthernet 関連スケッチは、純正Ethernet Shield (WIZnet W5100)用なので使えません。


Mac のQuartz Comoser を使って簡単な文字列受信のテストをしてみました。

動画:


XBee WiFi をArduino Fio に差したところ
(こちらもコンデンサを追加しないと動作しませんでした。)




Arduino のスケッチは「H を受けると、LED 点灯、L を受けるとLED 消灯」
Examples > 4. Communication > PhysicalPixel のサンプルです。



もう少し検証した後、コンデンサの追加やプログラムなどを解説できればなと思います。
折角の技適が NG になってしまいますので、間違ってもモジュールに直接ハンダづけはしないでください。