SSブログ

DSMainR5のOLEDの話 その2 [DSmainR5]

 さて、だれも教えてくれなさそうなので、一昨年買ったAmazonで買ったOLED(1.3インチ)を使えるようにしていきたいと思います。
 説明書はこちらのようです。
 ということで、まずは、貧乏でいいのを組み立てて、I2Cでつないで。DSMainR5のスケッチをArduinoUnoとして、使ってみます。まあ、こうなります。
re_DSC02205.jpg

 スケッチをいろいろにらめっこしたり、いろんなところのサンプルを見た後、よくわかりませんが、Yaasan様が言うように2ドットXがずれているだけかなあと思い、
OzOLED.cppのvoid OzOLED::setCursorXY(byte X, byte Y)関数の中身でXを指定している
sendCommand(0x00 + (8*X & 0x0F)); //set column lower address
sendCommand(0x10 + ((8*X>>4)&0x0F)); //set column higher address

sendCommand(0x00 + ((8*X+2) & 0x0F)); //set column lower address
sendCommand(0x10 + (((8*X+2)>>4)&0x0F)); //set column higher address
(18.08.12修正)
としたら、あっさり普通に表示されるようになりました。
深くは考えずにこれで解決とします。下記のようにちゃんと表示されています。
re_DSC02206.jpg

で、DSMainR5のNanoスケッチに入れて、ちゃんと表示されることを確認して、
re_DSC02207.jpg

ケースの前面を加工するために、どのくらいが表示領域かを確認するため、OLED表示を反転させます。
re_DSC02208.jpg

やり方は、
DSMeister.inoのvoid setup()関数内の
LCD.setNormalDisplay(); //Set display to Normal mode

LCD.setInverseDisplay();
と命令を差し替えます。
これに合わせて、ケースの加工のためにケースをマーキングしていきます。
re_DSC02209.jpg

で、ホットナイフで大まかに加工します。
re_DSC02210.jpg

OLEDで現物合わせし、もうちょっと加工します。
re_DSC02211.jpg

で、仮止め用に両面テープをOLEDに貼ります。
re_DSC02212.jpg

で、OLEDを前面ケースに貼って、お決まりのようにセメダインスーパーXを横から盛って、固まるまで数時間待ちます。
re_DSC02213.jpg

で、完成です。
まずは、OLEDを反転表示させたとき。
re_DSC02214.jpg

次に、通常表示。
re_DSC02215.jpg

表示窓は大きくなりましたが、個々の文字は小さくなりました。
文字をすべて16ポイントで表示するとかできたら、もっと見やすいですかねえ?
(そして文字数が少なくなって液晶と変わらなくなるとかいうオチ?)

なお、スマイラー様が1.3インチ用ケースをYaasan様が持っているんじゃないか?とコメントしてくれた時分、すでに、ケースは加工済みでした。

コメント(0) 

raspi zero wでカメラを動かしWifi経由で配信するメモ [その他]

 へのへのもへじさんがやっているraspiでカメラを私もやりました。なんか、Linuxってわからないので、大変です。
 私のほうは、Raspbian Jessie Liteというやつでやっています。
 いろいろな人のページを見ましたが、以下の感じです。
 Raspbian Jessie Liteをインストールします。
 このページの右下のLiteのZIPファイルです。
 で、SDカードをフォーマットします。
 こちらのページのやつが公式だそうで、それでやります。
 クイックフォーマットしておきました。
 RaspberryのZIPファイルは解凍したらImgファイルなので、SDカードに展開しないとです。
 win32diskimagerというソフトを使いました。
 で、SDカードにIMGファイルを展開します。
 
 私も、キーボードやディスプレーを使わない方法でインストールしました。
 こちらのページを参考にします。
 WindowsでSDカード内のconfig.txtとcmdline.txtを編集します。私はVisualStudioを使用しました。メモ帳だと、改行が変なので。
sshというファイルも作っておきます。(じゃないとTeraTermからの接続でエラーが出てつながらない。ここは、はまりました)
で、Windowsから通信するための怪しいドライバをいくつか入れて、SDカードをRaspiに挿して、起動します。
 あとはTeratermもインストールしてRaspiと通信します。
 パスワードはraspberryなのだがrasberryだと勘違いしていて、はまりました。
 TeraTermでログイン出来たら、こちらのページを参考に、Wifiの設定をします。

 wifiの設定まで終わったら、Wifi経由でTaraTermでつながるようになります。
 で、

$ sudo apt-get update
$ sudo apt-get upgrade
とやって、とりあえずraspiの中身をなんとな最新にしておきます。これをやらないと、カメラの配信部分で、makeがうまくいきませんでした。

 で、こちらのページを参考にカメラの設定をしますが、メニュー構造がかなり変わってしまっています。
 私がやった感じでは、
$ sudo raspi-config
 とやり、
5 interfacing option を選び
P1 CameraをYesにします。
で、再起動します。

次にこちらのページを参考に、カメラの配信の設定をします。
”配信方法1-mjpg-streamer"のところをそのままやっていきます。で、
注意ですが、git は最初インストールされていないので先に
$ sudo apt-get install git
とやってgitをインストールしないと引っかかります。

ここまでやったらmjpg-streamer-experimentalフォルダで
$ ./mjpg_streamer -o "./output_http.so -w ./www" -i "./input_raspicam.so -x 1280 -y 720 -fps 30 -q 10"
とやれば、カメラから配信され、
PCのChromeブラウザで
http://XXX.XXX.XXX.XXX:8080/?action=stream
とやってやると、普通に動画は見れました。xxxはIPアドレス。
Androidのスマホからも普通にChromeで動画を見れました。
IPアドレスは
ifconfigのコマンドで見れます。

よくわかりませんが、さっきのこちらのページを参考にsambaを立ち上げておくと、
ブラウザから
http://raspberrypi:8080/?action=stream
で動画が見られるようになりましたが、なぜかは良くわかりません。
(その後また見れなくなったりでよくわからん)

なんか、この調子でいけば、Tomixのカメラカー状態まではできそうなことが分かりましたが、
これにDCCのギミックとかを入れていけるのか?、とかなり不安になる意味不明さです。
大体、インストールの手順が難しすぎる気がしますし。

で、まあ、単なるWebカメラですが、
このレイアウトの手前にRaspiZeroWを付けました。
re_DSC02203.jpg

カメラ自体はこんな感じで、USBも刺さっていますが、これは5V供給しているだけです。
re_DSC02204.jpg

で、まあ動画ですが、電車に載せないと、あまり面白くもなんともないですね・・・。





コメント(2) 

この広告は前回の更新から一定期間経過したブログに表示されています。更新すると自動で解除されます。