マイコン工作実験日記

Microcontroller を用いての工作、実験記録

MINI-M4

2013-01-30 12:34:44 | Weblog
Mouserの新製品情報で、MikroElektronikaのMIN-M4 STM32を知りました。同じシリーズでStellaris版もあります。このサイズとシンプルな構成は、とってもわたしの好みです。



ここの製品にはTFT液晶やMP3デコーダなどのついたmikromediaシリーズもあって、見ているだけで楽しい。ゲームシールドなんかもあって、個人向けマーケットを意識した商品になっているのがまたいいですね。会社概要の説明を読むと、売り上げの半分は教育関係と個人ホビィストからあげているようです。

売却と買収

2013-01-25 22:12:55 | Weblog
月曜にFusion PCBに発注した基板ですが、どうやら製造は終わって出荷待ちの状態らしい。これまでは、製造が開始されて In productionの状態になるとメールが届いていたのですが、サービス改善の影響からかメールが飛ばなくなったようです。Order statusのページから状況は確認できるのですが、メール出してもらった方が気分的には安心できるかと。

さて、手直しを入れたSAM3S4A基板を頼んだこともあり, 使用する部品の準備をしていると、いまさらながら気付いたことが。。

まずひとつめが、USB のMini Bコネクタ。いつものように秋月でコネクタを買ってきたら、同封されている説明書が以前と変わっている。確認してみると、変わっているのは説明文だけではなく、コネクタの品番そのものが変わっていました。ホームページの説明見ると以前のものは製造中止で、完全に切り替わった模様。省スペース化されて結構なのですが、これまでとランドパターンが違うので製造した基板では使えないことが判明。どこか他のお店でコネクタ探してこなきゃいけません。昨年の4月に販売になっている商品なのですが、手持ちのストックが充分にあったので、今頃になって気付きました。

そして、ボード上に載せるDataFlash用のコードを書こうとデータシートをダウンロードしにいったら、ATMELは昨年10月にシリアルFlash製品事業を売却していたことを知りました。AT45XXXX系のDataflashとAT25XXX系のBIOS Flashが売却され、AT24XXX系のI2C EEPROMはまだ残っているようです。自分の中の勝手なイメージではFlashはATMELの事業の中では大きなウェイトを占めていると想像していたので、ちょっとビックリ。近頃はmaxTouchのようなタッチパネルのコントローラーが勢いがあるようですが、この事業はもともと買収によって本格化したように記憶しています。こうやって、売却と買収を繰り返しながら、成長/生き残りを模索しているんですねぇ。

サービス改善

2013-01-21 23:36:52 | Weblog
それは昨日のことでした。なんとなく、Seeed Studioのサイトを見に行ったら、Fusion PCBのサービスが改善されたという。それに伴って、10ドル分のクーポンプレゼントのキャンペーンを17日から20日までの4日間限定で実施中とのこと。5cmx5cmなら次回注文分を無料にできることになります。そうは言ってもこのキャンペーンを知ったのが最終日の20日。ESTでの20日とのことなので、時差の関係で余裕があるとはいうものの、急に新しく基板なんて作れません。そこで、既存の基板データに少しだけ直しを入れることにしました。MiniSAM3Sボードと、このあいだ作ったばかりのBlueHAND基板をちょこっと修正して、大急ぎで発注。

ほとんどクーポン(と付属の基板)を欲しいがために発注しているような感がありますが。。。

このキャンペーンですが、昨年生じたFusion PCBのサービス不手際を詫びて、評判を取り戻すための作戦のようです。わたしは実害にはあっていませんが、どうやら昨年の夏から11月頃まで基板製造サービスに大幅な遅れが生じていたようです。ひどい人だと、2ヶ月くらい待たされていたという書き込みがあったと記憶しています。受付担当者が急に退社してしまったらしいですが、その穴を埋められずに放置されたユーザが続出したようですね。

ブログ記事ではクーポンプレゼントとともに、サービス内容の改善もアピールされています。オーダされたデータを製造会社に直送することで納期短縮を計るとともに、製造枚数として20枚、30枚も選べるようになったようです。

小さめのキーパッド

2013-01-17 22:33:33 | Weblog
基板を作り直したのに合わせて、キーパッドの方も作り直しました。右側が昨年製作したもの、左側が今回作り直したものです。




これまではキーパッドが大きめだったので、LCDが秋月B基板からはみ出るかっこうになっていたのですが、小さめのキーパッドに変更したことで全体がB基板の大きさに収まるようになりました。このキーパッドはaitendoで見つけたのですが、在庫僅少になっていました。




キーパッドの周囲のランドが配線に使えるようになったので、メインボードとの接続も容易になりました。秋月の連結コネクタを使って普通に接続。配線の都合上、両面のB基板を使っています。キーパッドがちゃんと接着できるか心配でしたが、特に問題無いようです。

いつも苦労するQFN

2013-01-14 11:41:53 | Weblog
ひととおりの部品の実装を終えて動作確認。




いつも他のライブラリからできあいのパッケージデータをコピーしてきて部品ライブラリを用意するので、手ハンダするにはすこしばかりランドのサイズが小さめになってしまいます。そこでランドを少し大きめにする修正を加えるのですが、それでもQFNパッケージのハンダ付けの際にはちょっとてこずります。

まず位置決めです。拡大グラスを使って確認するのですが、なかなか面倒。ハンダ付けするときにずらしてしまうこともあります。そして部品が浮いてしまいがちなこと。プリント基板がハンダレベラー仕上げなこともあり、浮き気味になった端子に思ったようにハンダが流れ込んでくれません。今回もヘッドフォンからの音にボツ、ボツとノイズが載るので、浮き気味に見える端子にこてをあて直してみたところ問題解決。QFNパッケージと基板とが接する角にちゃんと接触できるように、ちがう種類のコテ先を買ってみた方が良さそうです。

オーディオジャックや受話器用ジャックも、SparkfunのEagleライブラリから借用。パターンにあいそうなパーツを探しました。




裏面にあるのは、電池と圧電スピーカだけです。

改良版

2013-01-11 12:39:56 | Weblog
昨年のMFTの際にBlueHAND基板を製造しましたが、実際に使ってみるといくつか後悔した点があったので、改良版の基板を作りました。年末に発注したのですが、ようやくと今週になって届きました。




主な改善点は次のとおり
  1. USBシリアル変換のためにFT230Xを搭載。ジャンパ設定で直接WT32につなげられる。
  2. 未使用のWT32のPIO端子とマイコンの端子をヘッダで出した。
  3. スイッチを追加して、USBからの給電/電池のどちらでも動けるようにした。
  4. マイク用ジャックを追加。
FT230Xはパッケージが小さくなったので場所をとらないのが嬉しいですね。試しに使ってみたかったというのが、基板作り直した動機のひとつでもあります。値段も200円しないしと思っていたのですが、ここのところの円安でジワジワと値があがってきているような気がします。今年は、いろいろと部品が値上がりする年になるんでしょうか。。

異議申し立て

2013-01-08 12:22:02 | Weblog
朝起きたらYouTubeからこんなメールが来ていました。

あなたの動画「LED Blink controlled by MMA8452Q」に、rumblefish さんが所有またはライセンスを所持しているコンテンツが含まれている可能性があります。引き続き YouTube には表示されますが、一緒に広告が掲載される可能性があります。

YouTubeの動画管理画面を開くと




該当する動画については、こんな指摘が。。




しかし、この動画無音になっています。たしか、自分で音声トラックを無音にしたんじゃないかと思うんですが、YouTube側で強制的に無音にしているのかなぁ?

再生回数とは関係無くチェックしているんでしょうが、指摘されてもまったく訳がわかりません。

もちろん、続いて異議申し立てしておきました。

2013/1/10追記
異議申し立てから、2日経過。当然のことですが、異議が認められ著作権侵害だという主張は取り下げられました。トンデモ自動検査に対する異議対応は、やはり人間がひとつひとつ目と耳で確認作業しているんでしょうかね。



BluetoothChatをビルドしてみる

2013-01-03 11:49:52 | Weblog
新年を迎えて少しは新しいことにも挑戦してみようと思い立ち、ADT (Android Development Tools)をMBAにインストール。Macでも動いてよかった。これが、Windowsで動かさねばならなかったら、それだけで挫折していたでしょう。Android用のアプリを作ることにはほとんど興味は無いのですが、今回ADTをインストールすることを決心したのには、理由があります。

これまでは、MBAのMac OS XからWT32にSPPで接続することで、WT32の動きをモニタしたり、その設定変更をしたりしていたのですが、時々Mac OS Xがクラッシュします。決まってMac OS側からSPPの接続を切断した場合に、クラッシュが発生するのですが、いつも起こるわけではありません。しかしながら、いつクラッシュするかハラハラしながら使っているのもシンドイので、Macの代わりにAndroid携帯をSPPでつないで動作モニタすることにしたのです。Play Storeで調べるとSPP接続の端末ソフトもいくつか見つかるのですが、Googleが提供するBluetoothChatというサンプルプログラムをちょっと変更すればSPPで接続できるということを多くの方が紹介されています。電子工作やロボットのリモコン操作を実現するにも、みなさんこのサンプルを元にしていらっしゃるようです。

そんな訳で、サンプルをビルドするだけなら自分にもできそうなので、挑戦してみることにした次第です。いろいろなサイトを参考にしながらサンプルプロジェクトを開いてビルド、そしてUSB接続した実機に転送。ところが、起動後すぐに画面が暗転してしまい。しばらくすると、こんな表示が出て動いてくれません。



サンプルが動いてくれないとは予想外。検索したところ、このサイトにも同じような問題が発生したとの記述があったので、対処を倣うとともにSPPに対応するためにUUIDを変更。しかしながら、やはり動き始めてくれません。しょうがないので、デバッガを動かして調べてみるとgetActionBar()がnullを返しているためにクラッシュしていることが判明。該当する箇所をコメントアウトすれば、動き始めることがわかりました。なんだか、どんどん脇道にそれていきますが、しょうがないので、もう少し追いかけるハメに。。

するとActionBarを使うにはSDK version を11以上に設定しないといけないというTipsが見つかりました。そういえば、ADTからアプリを起動しようとするとコンソールに

WARNING: Application does not specify an API level requirement!

というメッセージが表示されていました。これまで無視していましたが、どうやら関係ありそうです。

AndroidManifest.xmlを確認してみると確かに

< uses-sdk minSdkversion="6" />

となっていました。これを

< uses-sdk android:targetSdkVersion="11" android:minSdkVersion="11"/>

と修正したところ元のソースのままでもちゃんと動くようになりました。結局のところ上記のAndroidManifest.xmlとUUIDさえ変更すればSPPでつながることがわかりました。自分の端末がAndroid 4.0なので相当するSDKとサンプルを選択したのが遠因のようです。2.8とか古いサンプルを使えば(ActionBarを使っていないので)この問題は発生しないようです。

こうしてサンプルを動かすことはできましたが、もともとがチャット用アプリなので、行末にCRを付けてくれないうえに、端末操作に使うには表示がうるさいです。行末にCRを追加して送信するようにしたのが下の画面です。



もうちょっと手を加えて、よりシンプルにするつもりです。

なんだかんだで、正月の一日を費やしてしまいました。こんな風に入り口でつまずいてしまうと、やっぱり、Androidの闇は深いんだ。と思ってしまいます。