midohajiフォト

2012-08-03 Raspberry PIが来たから動かしてみた+とりあえずArduinoとお話して

Raspberry PIが来たから動かしてみた+とりあえずArduinoとお話してみた。

はじめに

 お久しぶりです。

 プライベートで超色々あって、もう大変なのですが。

 とりあえず。

 6/25にオーダーして、11週待ちね!って言われてたRaspberry PIが我が家にやってきました。

 7/30日に、gmailにRSとDHLからメール来てました。予想外に早い。

 送るよ、送ったよ、この番号でトラックしてね! と言う事で、仕事の合間やらにちょっとずつチェック。

このへんはしょっていい部分ですけど、こんな風に来ました。

 英バーミンガムで集荷して、英イースト・ミッドランズまで送られて、さらにそっから独ライプツィヒ、その後香港を経由して大阪に、なんと3日で来ました。DHL凄い。

 ただそこからがちょっと面倒で、大阪から配送が始まった後、「受取人不在のため保留」とか言ってる。

 あちゃー、と思って、昼休みDHLに電話して、再配達してくれ、できたら20時ぐらいに、って言うと、

「いや、20時は無理」「じゃあ19時は?」「無理です」「何時までならいけるの?」「17時ぐらいでしょうか」「じゃあ取りに行ってもいいけど、営業所は何時まで開いてるの?」「頑張ってお待ちするとして20:30」「場所は?」「大阪港の……」

 と、完全に国内配送にやる気が無い。

「でも、土曜日にしかそんな時間に居ないし、土曜日居るかもわかんないし、出来たら平日の20時ぐらいに送れないの?」

「あ、じゃあ佐川さんに、引き継ぎますね。明日の便の20時で配送かけます」

 なるほどそういう事か。

 と思って、昨日帰って不在票が入って無かったのが多少気になったのですが、ちゃんと来ました。

開梱の儀

 案外チャチい感じの梱包の中に、段ボールでこんな感じに入ってました。

 f:id:midohaji:20120803203336j:image:w400

 開けると、結構厳重にスポンジとか敷いてあって、あのHDDが入ってるようなフィルムに基板が。

 さらにそれを開けてみるとこんな感じ。小さい!

 f:id:midohaji:20120803203808j:image:w400

 ちょっと低めですがそれでもテンションが上がったので、とりあえず、家にある物で動作検証する材料を調達する事に。

 ・セルフパワーのハブ

 ・電源用のUSBケーブル

 ・USBキーボード

 ・USBマウス

 ・4GのSDカード

 ・HDMIケーブル(普段はMacテレビを繋いでる)

 ・LANケーブル

 LANは、この部屋には有線LANが無いので、Mac無線LANを共有して、有線LAN同士を繋ぎました。逆はよくやるんだけど、これは始めてやったな……

 ちなみに、クロスケーブルを用意しなくても、どうやら自動認識とかでストレートケーブルで繋げます。

SDカードOSインストール

 で、SDカードに、OSを入れます。

 Android ICSなんかも面白そうですが、Debianがなんと、Raspberry Pi用にビルドされてるというかカスタムされてる公式パッケージ「Raspbian “wheezy”」があります。

 Ubuntu使う前はずっとDebian使ってたので、これがいいや、と公式サイトからRaspbianのイメージをダウンロード

 SDカードリーダをMacに繋いで、一度アンマウントします。(イジェクトではなく)

 僕はディスクユーティリティーからやりますが。

 ターミナルで、そのまま

sudo dd bs=1m if=...img of=/dev/rdisk1 ※環境によって違います。

 を叩く。何も表示されてなくて不安であれば、Ctrl+Tを押してください。

 あとは、終わったらイジェクトします。

 ※このイメージは実は2G分しか無いのですが、最初のセットアップ的な画面で、SDカードのサイズまで拡張、ができます。

起動

 とりあえずこのSDカードRaspberry Piに差し込んで、色々繋いでおもむろに電源を入れます。

 f:id:midohaji:20120803211304j:image:w400

 f:id:midohaji:20120803211349j:image:w400

 おぉ、起動した!

 とりあえず、最初の画面で色々設定出来るので、Localeの設定したり、ユーザのパスワード設定したり。

 最終的にリブートを求められて、リブートすると普通のLinuxとして起動します。

 で、起動メッセージ通りstartx

 結構ぐりぐり動きます。

 f:id:midohaji:20120803212131j:image:w400

 が、なんと、Localeをja-JP UTF-8にしちゃったもんだから、色々日本語を出そうとして、全部化けてる。

 f:id:midohaji:20120803212627j:image:w400

 日本語フォントが入ってないだけなので、

sudo apt-get update
sudo apt-get install ttf-kochi-gothic xfonts-intl-japanese

 で日本語関係を入れます。

 f:id:midohaji:20120803212935j:image

 ごちゃごちゃーっとなりますが、Yでいいです。

 いったん左下のアイコンから、電源っぽいのを押して、ログアウトし、再度startxをすると……

 f:id:midohaji:20120803213154j:image

 日本語が出るようになります。

 この状態で、せっかくなのであれやってみましょう。

Arduinoを繋ぐ。

 本当は小さいDa Vinciでやってみたかったんですが、とりあえずUNOを繋いでみました。

 しかもUSBで。だってPIのGPIOは3.3Vだし。

 UNOに入れたスケッチはこちら。

int incomingByte = 0;  

void setup(){
	Serial.begin(9600);
	pinMode(13,OUTPUT);
	digitalWrite(13,LOW);
}
void loop(){

	while(Serial.available()>0){
		incomingByte = Serial.read();
		if(incomingByte<(int)'1') continue;
		if(incomingByte>(int)'9') continue;
		Serial.write(incomingByte);
		incomingByte=incomingByte-(int)'0';
		while(incomingByte>0){
			digitalWrite(13,HIGH);
			delay(250);
			digitalWrite(13,LOW);
			delay(250);	
			incomingByte--;	
		}
	}
}

あとはpiから、シリアルで出力してみる。

cuは標準で入っていないので、sudo apt-get install cu

UNOなら、/dev/ttyACM0として認識されるので、

cu -l /dev/ttyACM0 -s 9600

これで、PI側で数字を入力したとき、その数字の回数、LEDがチカチカします。

ついでに、PIに、入力した数字がエコーバックされます。

こんな感じ

D

 これで、フィジカルな入出力と超小型マザーのPIとのお話が出来るようになりました。

 夢がひろがりんぐですね。遊びようが幾らでもありそうで、凄い。

 Webカメラと、OpenCVと、Arduinoとで、視線入力デバイス研究の続きでもやりましょうかね。

2012-06-19

レオナルド互換基板[Da Vinci]にArduino-ISPでUNOでブートローダを書き込む。

22:21

 ほぼ同じテキストが、サイトの方にもあります。


 先日、日本橋共立で1200円程度で発見。

 HIDでのキーボード関係を触りたかったので、思わず購入してしまいました。


 が。


 ブートローダArduinoじゃなくて、FLIPというやつでした。

 まぁ、どっちも同じ値段なんですけどね。でも見た感じFLIPとやらの方しかなかった。


 ブートローダ書き込んじゃえばいいや、と思って共立ライタ繋いでも、芳しくない。


 なんと、共立ライタがATmega32U4に対応していない!!


 これは困った。どうやって書き込もう。

 FTDIモジュールは、あくまでシリアルとして使いたい。

 それに成功例ばっかだし。


 と言う事で、敢えてArduino ISPを使ってみました。



・使った物

 Arduino UNO(R2)

 110Ωの抵抗。

 Da Vinci



・手順

 1.Arduino UNOが素の状態の時に、先にexamplesのArduinoISPを書き込んでおいてください。

 2.StrawberryLinuxのページから、da-vinci-32u.zipダウンロードしてきます。

  ブートローダのhexとか、ドライバとか、boards.txtが入ってます。

 3.Arduino IDEのboards.txtに、ボード定義を足す。

  StrawberryLinuxのページに修正済みboards.txtがあるので、それを使ってもいいです。

 4.ダウンロードしてきたda-vinci-32u.zip内の、「da-vinci-32u-master.hex」を、

 「davinci.hex」とリネームして

 「arduino-1.0.1\hardware\arduino\bootloaders\caterina」に放り込みます。

 なぜboards.txtの方と名前が違うのかはよく分からないです。

 5.つなぎます。

 Arduino UNOと、Da VinciISPコネクタは、

 Da Vinciを上から見たときのピン配置が

  -------
 |1|2|
  -------
 |3|4|
  -------
 |5|6|
  -------

 なんで、それぞれをArduinoにこの場所に繋いで下さい。

  -------
 |12|5V|
  -------
 |13|11|
  -------
 |10|GN|
  -------

 って感じに。

1:MISO

2:VCC

3:SCLK

4:MOSI

5:RESET

6:GND

 って事です。

 6.Arduinoの5Vと、RESETを110Ω〜160Ωで直結。

  これをしておかないと、ターゲットをリセットするときにUNOまでリセットがかかってしまいます。

  僕は手持ちが無かったので、330Ωを並列に二つ繋ぎました。

 7.Arduino IDEのTargetを[ツール]-[マイコンボード]から「Da Vinci 32U」に設定。

 8.同じく、[ツール]-[書込装置]から、Arduino as ISP

 9.[ツール]-[ブートローダを書き込む]で、ブートローダを書き込みます。

10.表示が「ブートローダの書き込みが完了しました」になれば完了。

  あとは、Da Vinci 32U with Arduino Bootloaderとして使えます。

  Da VinciArduino UNOの結線を外して、Da VinciBlinkを転送し、正常に転送が出来る事、光る事を確認してOKです。

2010-08-16

iPhone4+外付けキーボード

20:57

iPhone用にBlueToothキーボードをついに購入しました。

そろそろテキストの環境をDOSモバから、iPhoneにしたくて。

DOSモバ、とても良いんですけどね。ただ、もう壊れたら代えが無いので、いっそ移行しようと。

f:id:midohaji:20100816204024j:image

写真のエレコムのやつです。お値段4980円、特価です。

帰ってきて早速iPhoneに接続。

iPhoneでペアリング待機中に、裏面のCONNECTボタンを押せば、4桁の数字の入力を促され、すんなり接続。ちなみに、PCモードとMacモードがあるので、Macモードにします。

キー配列はやっぱりUS配列になってしまうようですが、US派の自分にはあんまり不便なく使えました。

シフトキーでの選択範囲決定など、一通りの機能はしっかりあります。

小さいですが、結構打ちやすいので今はWindowsのネットブックにも繋いで使っています。

これでまた、電子書籍書いたりしてみようと思ってます。