SSブログ

リボンHDMIケーブルにやられてみる… [Raspberry Pi]

『そうだ,ラズパイでポータブルしよう!』の一環で,リボンなHDMIケーブルを用意してみました。
長さは20cm,これでDisplayの裏側に無理なくケーブルを回せる…はず。

ribbonHDMI0.jpg

ですが… これでDisplayと繋ぐと,Bootしてくれない orz

よく見てみたら,ピン1本にハンダが載っていない…
ピンピッチは狭いは,酸化してしてるは… orz

ribbonHDMI1.jpg

なんとか,はんだを載せても症状は改善しない…

Displayに情報が表示されないので,UARTを有効にして,boot開始からの様子を見てみたら…
初っパナで止まってるょぉ orz
とにかくHDMI周りが正しく動作していないっぽい。
と,言うより害している…

hdmi_ignore_cec:0=1hdmi_ignore_cec_init:0=1してもダメ。
EDIDをファイルにしてもダメ。 これは,時間の無駄かな…


ってことで,次行ってみよう!(号泣


『そうだ,ラズパイでポータブルしよう!』は…

な,感じでやってます。(ました。)


以下は作業ログっぽい何か…

UARTからの出力(Boot時)

cmdline.txt(以下の記述が有ることを確認)

console=serial0,115200 console=tty1

config.txt(以下を追加)

dtoverlay=disable-bt # BTとUARTが被っているので,BTを無効化 uart_2ndstage=1

GPIOのPin8(GPIO14(TXD0))とPin10(GPIO15(RXD0))にUSB-Serial変換を繋いで,Bootしてみる。
# 初めて電源投入直後からの様子を見ました。

recover4.elf not found (6)
recovery.elf not found (6)
Read start4.elf bytes  2278432 hnd 0x00016211 hash '69e55b8716fb074f'
Read fixup4.dat bytes     5418 hnd 0x0001b5d2 hash 'e56dffc51f3f6256'
0x00d03114 0x00000000 0x0000001f
MEM GPU: 320 ARM: 704 TOTAL: 1024
Starting start4.elf @ 0xfec00200 partition 0

MESS:00:00:05.260093:0: arasan: arasan_emmc_open
MESS:00:00:05.423112:0: brfs: File read: /mfs/sd/config.txt
MESS:00:00:05.426492:0: brfs: File read: 2140 bytes

<< ここで止まる orz >>
HDMIケーブルを抜くと,boot継続…

MESS:00:00:44.253585:0: brfs: File read: /mfs/sd/config.txt
MESS:00:00:44.262916:0: brfs: File read: 2140 bytes
MESS:00:00:44.757488:0: gpioman: gpioman_get_pin_num: pin DISPLAY_DSI_PORT not defined
MESS:00:00:44.764739:0: *** Restart logging
MESS:00:00:44.778378:0: hdmi: HDMI:hdmi_get_state is deprecated, use hdmi_get_display_state instead
MESS:00:00:44.784318:0: HDMI0: hdmi_pixel_encoding: 300000000
MESS:00:00:44.789785:0: HDMI1: hdmi_pixel_encoding: 300000000
MESS:00:00:44.800201:0: dtb_file 'bcm2711-rpi-4-b.dtb'
    :

Boot初っ端で停止…


ラズパイから見たDisplay

ご参考:


Displayの状態の確認(Boot後にHDMIケーブルを接続)

$ /opt/vc/bin/tvservice -s
state 0xa [HDMI CUSTOM RGB full 16:9], 1920x1080 @ 60.00Hz, progressive

EDIDを読んでみる。

$ /opt/vc/bin/tvservice -d edid.dat; /opt/vc/bin/edidparser edid.dat
^C

あれ?返事が返ってこない orz


動作(Boot出来る)するHDMIケーブルで繋ぐと… ドッサリ。

$ /opt/vc/bin/tvservice -d edid.dat; /opt/vc/bin/edidparser edid.dat
Written 256 bytes to edid.dat
Enabling fuzzy format match...
Parsing edid.dat...
HDMI:EDID version 1.3, 1 extensions, screen size 34x19 cm
HDMI:EDID features - videodef 0x80 !standby !suspend active off; colour encoding:RGB444|YCbCr422; sRGB is not default colourspace; preferred format is native; support GTF
HDMI:EDID found monitor name descriptor tag 0xfc
HDMI:EDID monitor name is GSW56TB-HDMI
HDMI:EDID found monitor S/N descriptor tag 0xff
HDMI:EDID found monitor range descriptor tag 0xfd
HDMI:EDID monitor range offsets: V min=0, V max=0, H min=0, H max=0
HDMI:EDID monitor range: vertical is 50-75 Hz, horizontal is 31-84 kHz, max pixel clock is 190 MHz
HDMI:EDID monitor range default GTF supported
HDMI:EDID found preferred CEA detail timing format: 1920x1080p @ 60 Hz (16)
HDMI:EDID established timing I/II bytes are BF EF 80
HDMI:EDID found DMT format: code 4, 640x480p @ 60 Hz in established timing I/II
HDMI:EDID found DMT format: code 5, 640x480p @ 72 Hz in established timing I/II
    :
    : ドッサリ…出る
    :
HDMI:EDID has HDMI support and audio support
/opt/vc/bin/edidparser exited with code 0

EDIDをファイルから読み込む。

返事が返らないので,ファイルで用意してみる。

EDIDネタファイルを用意
動作するHDMIケーブルを繋いで,以下のコマンドを実行。

$ sudo /opt/vc/bin/tvservice -d /boot/gstory.edid

config.txtを修正

hdmi_ignore_edid:0=0xa5000080 # DisplayのEDID無視 hdmi_ignore_edid:1=0xa5000080 # DisplayのEDID無視 hdmi_edid_file=1 hdmi_edid_filename:0=gstory.edid hdmi_edid_filename:1=gstory.edid

Reboot… やっぱり止まる orz
hdmi_ignore_cec:0=1hdmi_ignore_cec_init:0=1を追加してもダメ。



コメント(0) 
共通テーマ:趣味・カルチャー

コメント 0

コメントを書く

お名前:[必須]
URL:
コメント:
画像認証:
下の画像に表示されている文字を入力してください。

※ブログオーナーが承認したコメントのみ表示されます。

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