Saturday, June 25, 2011

EP121のACアダプタ修理

うっかりEP121を落としたらプラグが割れてしまったので、とりあえず何とか対処してみました。
まずは共立エレショップDCプラグの注文。内径1.1φ、外径3.0φ。
ただDC12V/0.5Aなのがかなり心配。19Vの3.0Aをフルに通すことは無くても、発熱とかしないといいけど…


ジャンクに19.5Vがなかったので、19Vでも多分大丈夫だろうと確保。ジャンクのくせに高い。

被覆を剥いて適当にはんだ付け。

今のところ動作に問題なし。

Friday, June 10, 2011

JPEGカメラ

スイッチ・サイエンスLinkSpriteシリアル接続JPEGカラーカメラを動作テスト。

とりあえず何も考えずにシリアルに出力して、それをそのまま保存してみる。


一応撮影はできるみたいだけど、やっぱり転送速度が遅い。
9600bpsだから仕方ないんだけどね。

撮影はArduinoで下のようなプログラムを使ってテスト。
リセットボタンを押すと吐き出されてくるバイナリを、そのままシリアルコンソールで保存しただけ。
ひとまず使えることは確認できた。

/*
JPEG Camera Example Sketch

Hardware Notes:
The camera Rx/Tx should be attached to pins 2 and 3.
IMPORTANT: The JPEG camera requires a TTL level shifter between the camera output
and the arduino. Bypassing this may damage the Arduino pins.
*/

#include <JPEGCamera.h>
#include <NewSoftSerial.h>

JPEGCamera camera;

char response[32];
unsigned int count=0;
int size=0;
int address=0;
int eof=0;

void setup()
{
//Setup the camera, serial port
camera.begin();
Serial.begin(9600);

//Reset the camera
count=camera.reset(response);
delay(3000);

//Take a picture
count=camera.takePicture(response);

//Get the size of the picture
count = camera.getSize(response, &size);

while(address < size)
{
//Read the data starting at the current address.
count=camera.readData(response, address);
//Store all of the data that we read to the SD card
for(int i=0; i //Check the response for the eof indicator (0xFF, 0xD9). If we find it, set the eof flag
if((response[i] == (char)0xD9) && (response[i-1]==(char)0xFF))eof=1;
Serial.print(response[i], BYTE);
//If we found the eof character, get out of this loop and stop reading data
if(eof==1)break;
}
//Increment the current address by the number of bytes we read
address+=count;
//Make sure we stop reading data if the eof flag is set.
if(eof==1)break;
}
}

void loop()
{

}

さて、次の目標はと…

Sunday, May 29, 2011

XBee通信実験

XBee ZBの通信実験。
この辺のページとかこのページとかを見ながら通信実験の準備。


子機は送受信端子を短絡させてループバック。


家の端から端まで離してもまあまあの通信強度。

細かい設定がよくわかってないので、少しずつ調べていかないと。

XBee組み立て

スイッチサイエンスのXBeeピッチ変換基板とソケットのセットを組み立ててみた。
ついでに動作確認のために適当にUSB変換モジュールと組み合わせ。
手持ちのじゃ5Vしか取れないけど、たまたま手元に3.3VのレギュレータがあったからそれをかましてXBeeに電力供給。

USBモジュールのRXをXBeeの左上から2番目(Vccの下)に、TXを3番目に接続してひとまず完成。


X-CTUをインストールして、接続テストをすると問題なく接続できて、
Modem Configurationタブで設定を読み込みも成功。

…というところまででいったん終了。設定や通信テストはまた今度。

Wednesday, May 25, 2011

秋月のATmegaキット

秋月のATmega168/328マイコンボードキット――というよりもArduinoキットと言った方が良いかも。
とりあえず組み立てて、Arduinoブートローダを書き込んでみた。
結構苦労して、最終的には楽な方に逃げてしまったのだけど、まあそれも含めて覚え書き。

結論から言うと、ATMega168Pへの書き込みがどうしてもうまくいきませんでした。
使ったのは純正のAVRライタ。

ブートローダの書き込みにはpermissionが~と言われるので、とりあえず管理者モードでArduinoIDEを起動
$ sudo arduino
あとは168で5Vのブートローダを選べば…
avrdude: Expected signature for ATMEGA168 is 1E 94 06
Double check chip, or use -F to override this check.
秋月のキット付属のマイコンはATmega168pで168じゃないから、チェックでハネられてしまうみたい。

この辺りのサイトを参考に/usr/share/arduino/hardware/tools/avrdude.confを差し替え。
http://d.hatena.ne.jp/LaclefYoshi/20110108/1294475337
http://www.geocities.jp/arduino_diecimila/bootloader/index.html
なんか妙なエラーが出たのでコメントアウト…はともかく、それでも結局うまく書き込めない。
(avrdude.confは元に戻しました)

WindowsのAVR Studioからブートローダを書き込んでみると、エラーも無くブートローダの書き込み自体は成功している様子。
そこでArduinoIDEからスケッチを書き込もうとすると
avrdude: stk500_recv(): programmer is not responding

結局よくわからないので、マイコンをATMega328Pに取り替えて、ターゲットボードをArduinoUNOとしてIDEからブートローダを書き込んでみると、拍子抜けするほどあっさり成功。
ライタを外してスケッチを書き込んでみるとちゃんと動く。

…よくわからないけど動いたから良いや。168Pも普通のマイコンとしてなら使えるだろうし。

Monday, May 16, 2011

1ステップ目でボードから白煙

12ステップで作る組込みOS自作入門の1ステップ目。
USBシリアル変換ケーブルではうまく書き込みできなかったので、デスクトップのWin機からFDTで書き出そうとして電源とケーブルをボードに繋いだまま設定をしていたら……表面実装のLEDが凄く光ったかと思うとボードが白煙を上げはじめた。

あわてて電源を抜いてLEDを見ると、すっかり白濁してあきらかにお亡くなりになっている様子。

……というか、ここまで焼けたLEDを作ったのは初めて。


えーと、プログラムの転送と実行は一応無事に出来ました。

どう考えても他の部品が無事だとは思えないんだけど、せめて本を読み終わるまでは耐えてほしいな。

Saturday, May 14, 2011

ASUS EP121の公式ペンドライバ公開

いつの間にか野良ドライバのリンクが切れている…と思ったら公式ドライバが公開されていたみたい。

野良ドライバを削除してから公式ドライバを入れてみる。
削除はデバイスマネージャから右クリックで削除するときに
「このデバイスのドライバーソフトウェアを削除する」
にチェックを入れるだけ。
一通り消したら再起動。
(わざわざ消さなくてもよかったかもしれないけど、念のため)

新ドライバはEee Slate EP121のダウンロードページで、OS:Windows7 64bitを選択して、タッチパッドのの一番上の「V7.0.2.21」ってのがそうみたい。

ダウンロードすると「ISD_DualTouch_702-21.rar」ってのが落ちてきたので解凍。
できたフォルダの中のsetup.exeを実行するだけ。

後は「コントロールパネル -> ハードウェアとサウンド->ペンタブレットのプロパティ」で調整。
好みによって「ペンとタッチ -> タッチ入力設定の変更 -> 入力デバイスとして指を使う」のチェックを付けたりはずしたり。

…野良ドライバよりいいところはコントロールパネルの「ペンタブレットのプロパティ」で表示される日本語フォントがきれいになったことくらい?
精度は変わらないか若干悪くなったような……どうだろ、悪くなったような気がするのはさすがに気のせいかもしれない。


新しく買った人には必須のドライバだと思うけど、野良ドライバ導入済みの人は敢えて入れる必要ないかも。