تغییر خروجی تصویر در آرمبین – Armbian GNU/LINUX VGA output mode

در این پست چگونگی تغییر خروجی تصویر کوبی تراک(کوبی بورد ۳) در گنو/لینوکس Armbian Ubuntu 16.04 با کرنل قدیمی(Legacy) آموزش داده خواهد شد. این آموزش ممکنه روی سایر ورژن های Armbian با کرنل قدیمی یا Cubian GNU/Linux و سایر فرمور های کوبی تراک هم جواب بده، چون فایل کانفیگ سخت افزارشون مشترک هست یا لااقل به همدیگه شباهت دارند،  اما من تست نکردم.

 


 

۱- نصب ابزار sunxi-tools

۱.۱- ابتدا پکیج های مورد نیاز را نصب کنید:

sudo apt-get install libusb-1.0-0-dev pkg-config

۱.۲- دانلود سورس sunxi-tools و کامپایل کردن آن:

git clone https://github.com/linux-sunxi/sunxi-tools
cd sunxi-tools
make

 

۲- کانفیگ خروجی تصویر

۲.۱- پشتیبان گرفتن از فایل کانفیگ:

sudo cp /boot/script.bin /boot/script.bin.bck

۲.۲- تبدیل فایل script.bin به فایل کانفیگ متنی با پسوند fex. جهت اصلاح تنظیمات:

sudo bin2fex /boot/script.bin /boot/script.fex

۲.۳.۱- فایل script.fex را توسط یک ویرایشگر متن باز کنید:

sudo vim /boot/script.fex

۲.۳.۲- در محتویات فایل، بلاک „[disp_init]“ را یافته و مقادیر زیر را در آن تغییر دهید:

disp_init_enable: 0 to disable;1 to enable *

disp_mode: Display mode to use *

Value Mode
۰ screen0(screen0, fb0)
۱ screen1(screen1, fb0)
۲ two_diff_screen_diff_contents(screen0, screen1, fb0, fb1)
۳ two_same_screen_diff_contents(screen0, screen1, fb0)
۴ two_diff_screen_same_contents(screen0, screen1, fb0)

 

screen0_output_type: Output type for screen0 *

Value Type
۰ none
۱ LCD
۲ TV
۳ HDMI
۴ VGA

screen1_output_type: Output type for screen1: same as previous *

screen0_output_mode: Output mode for screen0 *

Mode Used for TV/HDMI output Used for VGA output
۰ ۴۸۰i ۱۶۸۰*۱۰۵۰
۱ ۵۷۶i ۱۴۴۰*۹۰۰
۲ ۴۸۰p ۱۳۶۰*۷۶۸
۳ ۵۷۶p ۱۲۸۰*۱۰۲۴
۴ ۷۲۰p50 ۱۰۲۴*۷۶۸
۵ ۷۲۰p60 ۸۰۰*۶۰۰
۶ ۱۰۸۰i50 ۶۴۰*۴۸۰
۷ ۱۰۸۰i60
۸ ۱۰۸۰p24
۹ ۱۰۸۰p50
۱۰ ۱۰۸۰p60 ۱۹۲۰*۱۰۸۰
۱۱ pal ۱۲۸۰*۷۲۰
۱۴ ntsc

screen1_output_mode: Output mode for screen1: same as previous *

fb0_framebuffer_num: fb0 buffer number, use 2 for double buffering *
fb1_framebuffer_num: fb1 buffer number, use 2 for double buffering *

fb0_format: pixel format for fb0 *

Value Format
۴ RGB655
۵ RGB565
۶ RGB556
۷ ARGB1555
۸ RGBA5551
۹ RGB888
۱۰ ARGB8888
۱۲ ARGB4444

fb1_format: pixel format for fb1: same as previous *

fb0_pixel_sequence: fb0 pixel sequence (0 generally for linux, 2 for android) *

Value Sequence
۰ ARGB
۱ BGRA
۲ ABGR
۳ RGBA

fb1_pixel_sequence: fb1 pixel sequence (0 generally for linux, 2 for android): same as previous *

fb0_scaler_mode_enable: 0 to disable; 1 to enable *
fb1_scaler_mode_enable: 0 to disable; 1 to enable *

 

به این ترتیب بخشی از فایل شما به این صورت خواهد بود:

[disp_init]
disp_init_enable = 1
disp_mode = 0
screen0_output_type = 4
screen0_output_mode = 2
screen1_output_type = 2
screen1_output_mode = 14

fb0_width = 1360
fb0_height = 768
fb0_framebuffer_num = 2
fb0_format = 10
fb0_pixel_sequence = 0
fb0_scaler_mode_enable = 1
fb1_framebuffer_num = 2
fb1_format = 10
fb1_pixel_sequence = 0
fb1_scaler_mode_enable = 1

این کانفیگ برای خروجی از طریق پورت VGA با رزولوشن ۱۳۶۰×۷۶۸ بر روی screen0 با فریم بافر دوبرابر می باشد. screen1 هم غیرفعال شده و به همین دلیل تنظیماتش نادیده گرفته میشه.

۲.۴- بازتبدیل فایل script.fex به فایل باینری script.bin:

sudo fex2bin /boot/script.fex /boot/script.bin

۲.۵: پیشنهاد میکنم که فایل تنظیمات رزولوشن اولیه رو هم تغییر بدید:

فایل armbianEnv.txt را توسط یک ویرایشگر متن باز کنید:

sudo vim /boot/armbianEnv.txt

حال مقدار disp_mode را به ۱۲۸۰x720p60 تغییر بدید. به این ترتیب محتویات فایل شبیه به این خواهد بود.

verbosity=1
console=both
disp_mode=1280x720p60
disp_mem_reserves=on
rootdev=UUID=00000000-0000-0000-0000-000000000000
rootfstype=ext4

۲.۶: دستگاه کوبی تراک رو خاموش کنید و کابل پاور رو برای چند ثانیه از دستگاه جدا کنید.

پس از اتصال مجدد پاور و روشن کردن، دستگاه باید در حالت VGA بوت شود.

 


منابع:

About the Author: I'mTO1

I'm a programmer. GNU/LINUX enthusiast & UNIX philosophy advocate.

دیدگاهتان را بنویسید

نشانی ایمیل شما منتشر نخواهد شد. بخش‌های موردنیاز علامت‌گذاری شده‌اند *