ラズベリパイに小さなディスプレイを

■手元に届いたraspberryPiにちょうどおあつらえ向きのサイズのUSB接続ディスプレイがあったので使えるようにしたかった。調べてみるとデバイスドライバはあるものの、ラズベリパイはデフォルトではそれを有効にはしておらず、カーネルをリコンパイルすることで利用可能にできるということが解った。
 リコンパイルしてみると確かにデバイスは認識されて、あとはX-Windowから利用できるようにするだけだった、というのが先日の日記。

 ラズベリパイのデフォルトのビデオ出力はオンボードのHDMIで、USBデバイスはOSブート後になる。ブートシーケンスの中でUSBホストが有効化され、その延長でディスプレイが発見される流れになる。デバイスのfbというのはフレームバッファーのことで、X-Windowから利用できる。
 利用するにはxorg.confに設定する。ただ、ラズベリパイの配布イメージはデフォルトだとこのxorg.confが存在しない。

 どうにかこうにか見様見真似で/etc/X11/xorg.confを作成した。

Section "Device"
        Identifier      "fb1"
        driver          "displaylink"
        Option  "fbdev" "/dev/fb1"
EndSection
Section "Monitor"
        Identifier "monitor1"
EndSection
Section "Screen"
        Identifier "LCD8000U"
        Device "fb1"
        Monitor "monitor1"
        SubSection "Display"
                Modes   "800x600"
        EndSubSection
EndSection
Section "ServerLayout"
        Identifier     "Display"
        Screen      0  "LCD8000U" 0 0
EndSection

 この設定でstartxとやると、標準のHDMIはブラックアウトして、USB接続のディスプレイだけが使えるようになる。マルチディスプレイの設定もあるのだけど、うちの環境ではHDMIのディスプレイとUSBサブディスプレイの画像サイズが違いすぎて使いづらかったため、シングル接続の設定のみにしました。

 この設定でstartxとやるとデスクトップが表示されるのだけど、今度はLXDE環境の設定と齟齬が残ってメニュー表示が正しく表示されなくなる。画面解像度が想定されたデフォルトからずれているためらしく、これを解消するためにxrandrを初期化時に実行させる。
 今回はログインユーザーのホームディレクトリ(${HOME})以下に設定ファイルを作成しました。
 cd ${HOME}
 cd .config
 mkdir lxsession
 cd lxsession
 mkdir LXDE
 cd LXDE
 cp /etc/xdg/lxsession/LXDE/autostart .
 ユーザー用のautostartファイルをコピーしたあと、編集してxrandrの実行文を追加します。
 vi autostart
  @xrandr --putput udlfb --auto
 これでXデスクトップを再起動すると、LXDE環境が初期化されてメニューがちゃんと画面内に表示されるようになりました。

RaspberryPi + LCD-U8000
Copyright (C) 2008-2015 Satosh Saitou. All rights reserved.
戻る
日記::一覧展開
2016.06
2016.05
2015.12
2015.11
2015.08
2015.07
2015.06
2015.05
2015.04
2015.03
2015.02
2015.01
2014.12
2014.11
2014.10
ケース加工 (2014.10.11)
2014.09
RaspberryPi B+ (2014.09.06)
2014.08
2014.07
SDカード再び (2014.07.05)
2014.06
2014.05
2014.04
2014.03
2014.02
2014.01
2013.12
2013.11
2013.10
2013.09
ヒステリシス (2013.09.28)
2013.08
2013.07
2013.06
2013.05
2013.04
箱詰め終わる (2013.04.13)
2013.03
XBeeで接続する (2013.03.10)
2013.02
音と光 (2013.02.03)
2013.01
2012.12
外装に収める (2012.12.23)
2012.11
2012.10
MPL1151A1 (2012.10.07)
2012.09
2012.08
2012.07
2012.06
2012.05
DHT11 (2012.05.12)
2012.04
PHPでIPCを行う (2012.04.22)
DHCPを立てる (2012.04.14)
DNSを立てる (2012.04.08)
2012.03
IPv6を追加する (2012.03.17)
MTUを調整する (2012.03.11)
2012.02
2012.01
2011.12
2011.11
アサーション (2011.11.20)
XB24-BとXB24-ZB (2011.11.06)
2011.10
家電入れ替え (2011.10.23)
2011.09
湿度センサ (2011.09.25)
2011.08
2011.07
2011.06
2011.05
2011.04
2011.03
2011.02
2011.01
2010.12
PWMで赤外線 (2010.12.26)
2010.11
2010.10
2010.09
音を鳴らす (2010.09.12)
2010.08
2010.07
2010.06
2010.05
2010.04
2010.03
2010.02
2010.01
2009.12
2009.11
2009.10
2009.09
2009.08
2009.07
2009.06
2009.05
2009.03
2009.02
2009.01
2008.12
AVR HTTPサーバ (2008.12.20)
2008.11
2008.10
2008.09
2008.08
ICMP Echo応答 (2008.08.16)
MACフレーム (2008.08.03)
2008.07
2008.06
2008.05
SDカード再び (2008.05.11)
GPSロケーター (2008.05.04)
2008.04
2008.03
音が小さい (2008.03.30)
2008.02
1998.11
作成:2013.03.24
公開:2013.04.28

Valid XHTML 1.1

loading image reserved place