mbed買った

Posted by ゆのじ on 2月 7th, 2012

mbed

mbedを買った。LPC1768版とLPC11U24版と。

Macからでも開発が出来て、ファームウェアのアップロードはマウントされたドライブにbinファイルを突っ込むだけのお気軽仕様で素晴らしい。Arduinoも悪くないけどこっちのほうが楽な印象がある。ライセンス的にもmbedを1つは買わないとそのターゲット向けのビルドが出来ないものの、1つ買えばいくらでもビルド出来るしLPCXpressoのようなmbedではないボードにファームウェアを放り込むことも出来る。ライセンス的にもそういう使い方をしていいということらしい。曰く、

Can I make commercial products using an mbed?

Yes! You are free to make and sell products that were developed using the mbed libraries.

We do not offer any guarantee for the libraries, they are there for rapid prototyping purposes, but if you wish you use them, you can. here are some examples showing how you might take a prototype to a custom design.

とのこと。

使うことの出来るmbedのライブラリも良くできてるし、しかもエクスポートしてmbedの外でビルドすることも出来るらしい。このあたり、突然mbedサイトが無くなったりサービス終了したときにソフトウェア資産が無くなるのは辛いので十分調べてみたいところ。

そうそう、mbedのLPC11U24版のほう、裏側のmbed interfaceチップの45,46番ピンの間に半田ブリッジがある。twitterで話題に出したら@tedd_okanoさんが確認してくださった。結果、わざとやっていることであって、このリビジョンにおいてはそれで正しい仕様だとのこと。@tedd_okanoさん、ありがとうございました。

macのmail.appで文字化け

Posted by ゆのじ on 1月 28th, 2012

twitterでそういう話を見たので、うちの対策をメモ。

Macのmail.appは送信時文字コードが結構曖昧で都合の良い文字コードで送ってしまう。古いメールクライアントを使っていると、そういう最近めの文字コードを扱われると文字化けを起こして読むことが出来なくなる。

で、対策だが、LetterFix Pluginというのを入れる。ほぼこれしかない。というかMacでMail.appをつかっててこれを入れてない人は仕事でメール出してはいかんと思うくらい。

これを入れておくと、メールの文字コードを基本的にISO-2022-JPという古くからの形式に固定してやることが出来る。デメリットは、入力が出来る文字でもISO-2022-JPで扱えない文字というのがあるので、そういう文字が〓(げた、と呼ばれる文字化けを潰すのによく使われる文字)になってしまう。対策は、音符記号だとか、括弧付き文字、丸付き文字が該当するのでそういう文字を使わないようにすればいいだけ。

これでも実は文字化けするおそれも若干はあるのだが、少しでも読めないクレームを減らしたいならば是非。

codeigniterとmax_execution_timeというかset_time_limit

Posted by ゆのじ on 1月 13th, 2012

codeigniterでcron的なバッチを走らせるときのハマり所。CodeIgniter2.0.3で確認。

http://codeigniter.com/wiki/Cron_job_bootstrapper/この辺のcron.phpを持ってきて動かしたんだけど、–time-limitが効かない。300秒で勝手にとまる。

調べた結果、system/core/CodeIgniter.phpの途中に下記のコードが。

	if (function_exists("set_time_limit") == TRUE AND @ini_get("safe_mode") == 0)
	{
		@set_time_limit(300);
	}

ということで、CodeIgniter本体が呼ばれる前にいくらset_time_limitしても無駄。呼び出されたあとのcontroller内でもう一度set_time_limitし直す必要がある。

オフィシャルサイトにあるコードだったのである程度プルーフされているかと思いきや、思わぬ落とし穴だった。