| IanHo joined:
2010-08-28
 posted:
476
 promoted: 7
 bookmarked: 4
 Taipei
 | | 1 | subject:
Debian 10 GNOME + intel內顯+VGA輸出,無法呈現1920X1080解析度 |  0  0 | 2019-08-30 | quote |  |  | 
 嘗試描述一個狀況,有問有機會,系統環境是:debian 10 linux (amd64) + gnome flashback(metacity)
 安裝在USB外接硬碟內,已經安裝了的套件包括,
 intel-microcode、
 firmware-misc-nonfree,
 然後因故需要拿去接的幾台稍舊和舊款電腦主機(可連網),
 這些主機剛好都是只有主機板上的VGA(15pin)輸出 (沒有再插獨立顯卡)+ intel內顯晶片組,
 然後搭配 AOC 1920x1080 解析度的LCD螢幕。
 (原主機內接硬碟都是MSwindows系統)
 在debian gnome 設定值\詳細資料\關於\繪圖,資訊欄位內,印象所及的有:
 intel HD Graphics 610(kaby lake GT1)、
 intel Sandybridge Desktop、
 intel G41,
 然而在 gnome 設定值\裝置\顯示器\unknow display\解析度:
 卻「都只有」 1024x768、800x600 兩種選項可以選。
 我參考了
 https://wiki.debian.org/GraphicsCard#Intel
 把 xserver-xorg-video-intel 套件徹底移除,重開debian發現沒有用!
 這三台主機還是只有 1024x768、800x600 兩種選項可以選而已。
 (gnome 設定值\詳細資料\關於\繪圖 資訊也沒變)
 gnome桌面環境(在圖形介面操作的前提下)還可以設定一些什麼?或著還需要補安裝什麼套件?
 能讓我在usb外接硬碟gnome桌面環境,能夠跟原本主機內的MSwindows一樣,呈現 1920x1080 解析度選項。
 電腦主機板型號在貼文當下尚未取得。
 補充,系統「預設」「沒有」 "xorg.conf" 設定檔。
 ----以下簽名檔------------------------------------------------------------ 發表過的網路文字作品;https://sites.google.com/site/ianho7979/home
 | 
| guest | 看起來很像是D-sub(VGA)接頭沒抓到正確的螢幕資訊,我遇到這種情形的話,會嘗試在xorg.conf或xorg.conf.d直接指定螢幕資訊,
 像這一段:
 Section "Monitor"
 Identifier   "Monitor0"
 VendorName   "Monitor Vendor"
 ModelName    "Monitor Model"
 HorizSync    31.0 - 80.0
 VertRefresh  55.0 - 76.0
 Modeline     "1280x720"  74.50  1280 1344 1472 1664  720 723 728 748 -hsync +vsync
 ModeLine    "1920x1080" 138.5 1920 1968 2000 2080 1080 1082 1087 1111
 | 
| IanHo joined:
2010-08-28
 posted:
476
 promoted: 7
 bookmarked: 4
 Taipei
 | | guest |  | 看起來很像是D-sub(VGA)接頭沒抓到正確的螢幕資訊,我遇到這種情形的話,會嘗試在xorg.conf或xorg.conf.d直接指定螢幕資訊,
 像這一段:
 Section "Monitor"
 Identifier   "Monitor0"
 VendorName   "Monitor Vendor"
 ModelName    "Monitor Model"
 HorizSync    31.0 - 80.0
 VertRefresh  55.0 - 76.0
 Modeline     "1280x720"  74.50  1280 1344 1472 1664  720 723 728 748 -hsync +vsync
 ModeLine    "1920x1080" 138.5 1920 1968 2000 2080 1080 1082 1087 1111
 | 
我的古早印象中debian linux官方套件庫有一個"hwdata"套件裡頭有個"MonitorsDB"裡頭收集了數千筆的螢幕型號資料。我想到使用
 https://www.debian.org/distrib/packages
 「套件中包含的檔案」"oldstable /stable" 來找 "MonitorsDB"
 沒想到都已經找不到了!
 那debian linux支援的螢幕型號的資料庫檔不曉得又要轉換到哪個套件檔內去查閱了?
 ----以下簽名檔------------------------------------------------------------ 發表過的網路文字作品;https://sites.google.com/site/ianho7979/home
 | 
| guest | 如果只要能使用叫高解析度的話,應該加入水平同步跟垂直更新就好,
 這兩項只要查螢幕說明書就有,
 甚至有的螢幕會寫在背後:
 Section "Monitor"
 Identifier   "Monitor0"
 VendorName   "Monitor Vendor"
 ModelName    "Monitor Model"
 HorizSync    31.0 - 80.0
 VertRefresh  55.0 - 76.0
 如果運氣不好,螢幕會偏移超過自動調整的範圍,
 就必須要加入ModeLine,這就不太好找/產生了。
 | 
| IanHo joined:
2010-08-28
 posted:
476
 promoted: 7
 bookmarked: 4
 Taipei
 | 我試著把我處理的過程記錄下來:我查到的AOC螢幕型號是"I2280SWD",
 這款寬螢幕LCD,解析度最大值就是1920x1080。
 範例主機:
 CPU:Intel Celeron G3930
 主機板:gigabyte H110-D3A
 內顯(主機板內建的VGA輸出)Intel HD Graphics 610
 我試著依據askubuntu頁面說明在終端機下完 xrandr 三行指令,
 (根據友站網友提供的網址)
 https://askubuntu.com/questions/776435/i-cant-get-1920x1080-with-intel-linux-graphic-driver
 gnome桌面確實即時切換到1920x1080 畫面頓時清楚超多,
 但是重開機後之前的設定就都沒有了!
 系統一開始沒有xorg.conf,我在 recover mode 下執行:
 Xorg -configure,獲得一個 xorg.conf.new
 然後依據askubuntu頁面說明把範例的那兩段 xorg.conf 穿插進去!
 不過因為在自己的gnome桌面 ARandR screen layout editor
 看到的畫面是"DP-1",於是我把Subsection"display"改成"DP-1",
 把再編輯過之後的 xorg.conf.new 複製到 /etc/X11/ 改檔名成 xorg.conf。
 重開機,進入桌面後解析度有 800x600、1024x768、1920x1080 三個選項。
 (螢幕還是"Unknow display"),選擇1920x1080之後畫面終於清楚超多。
 可是以上的狀況我發現,等於是為了這個AOC"I2280SWD"螢幕,
 得特別編輯一個客製化的 xorg.conf ,這樣很麻煩,之後若換了別的螢幕,
 還是得事先把這個客製化的 xorg.conf 拿掉!
 例如我臨時借到舊款螢幕CMV T38A,同樣都是VGA輸出,
 在沒有xorg.conf的前提下,
 系統雖然將螢幕偵測為「未知 20"」,但解析度選項「好多個」,
 選項最大值為1400x1050(4:3),畫面清晰。
 (測完馬上還別人了)
 到底是螢幕本身的問題,還是debian linux的問題?
 這兩款螢幕在MSwindows下都是都是解析度最大值顯示!
 但是在沒有xorg.conf的前提下,debian linux預設就是抓不到 AOC I2280SWD,而抓得到 CMV T38A。
 都2019了,照理說linux應該要有一套機制要能自動偵測螢幕才對!?
 ----以下簽名檔------------------------------------------------------------ 發表過的網路文字作品;https://sites.google.com/site/ianho7979/home
 | 
| FourDollars 
  joined:
2008-09-25
 posted:
6
 promoted: 0
 bookmarked: 0
 台灣台北
 | 每個螢幕裡面都有 EDID 的資料 https://glenwing.github.io/docs/VESA-EEDID-A2.pdf 可以用 edid-decode 這個指令去檢查一下 for edid in /sys/class/drm/*/edid; do cat $edid | edid-decode -c -e; done Intel Graphics Driver 高度依賴 EDID 的資料 |