VIM1S-Android-11-V221020 Rom Release

Please check OOWOW to install the ROM.
Or check USB Burn Firmware Page to download the ROM for USB burning.

ROM Infos:

Version(Latest): vim1s-android-11-v2201020.img.xz Update List:

  • BT: fix the BT cannot be opened again after repeatedly opening the BT
  • pwm_f: config gpio for Tone2 and SBC are connected through 40PIN pin(35pin,37pin)
  • FileBrowser: add cut/copy/paste/rename/delete feature
  • IR: Fix several problems of infrared remote control
  • WIFI: fix the WIFI shows that the network connection is limited
  • Fix Google App Store can’t search youtube/youtube music/twitter/alpha/face book
  • Fix 40PIN array pin - serial port fails to work
  • HDMI: add vesa resolutions support 480x320p60hz 640x480p60hz 800x480p60hz 800x600p60hz 1024x600p60hz 1024x768p60hz 1280x480p60hz 1280x800p60hz 1280x1024p60hz 1360x768p60hz 1440x900p60hz 1600x900p60hz 1600x1200p60hz 1680x1050p60hz 1920x1200p60hz 2560x1080p60hz 2560x1440p60hz 2560x1600p60hz 3440x1440p60hz


Version(Beta): vim1s-android-11-v220922.img.xz

Upgrade guidance:

The Android Source Code :

1 Like

HI goenjoy
I tested the android release for vim1s you mentioned with my 800x480 resolution screen, but no success, I get the khadas logo but after that nothing is displayed.

THere is only black screen,
I tested my display with other devices and it worled properly.

Hello

  1. Can you help confirm the list of supported HDMI, go to adb and use it
    cat /sys/class/amhdmitx/amhdmitx0/vesa_cap View

  2. Did you select the resolution size of 800x480 in Khadas settings—>Display & Sound—>More display & sound settings—>Screen resolution—>Display Mode

can you tell me in more detail what is cat /sys/class/amhdmitx/amhdmitx0/vesa_cap and how to access it.

BTW i will check today if i can find the 800x480 resolution in the menu you mentioned but it is a lot of hassle as i have to then connect my khadas to my tv

cat /sys/class/amhdmitx/amhdmitx0/vesa_cap is viewed through the adb command

Examples are as follows:

640x480p60hz
800x600p60hz
1024x768p60hz
1600x900p60hz
These are the list of HDMI resolutions supported by the board

I tested it but there is no resolution for 800x480 hdmi screen

The 640x480p mode does not work with 800x480 display

As shown in the HDMI support list, the resolution of 800x480 is not in the supported list, so it cannot be used. Only the resolution size in the supported list can be used.

Is there any way to use 800x480 resolution display with thebkhadas board.

I know about your situation, can you post the specifications of your 800x480 resolution monitor or something? I think it may be that the resolution parameters we added are quite different from your monitor.

I would like to know about the following parameters in the specifications of your 800x480 monitor
H Active, H Total, H Front, H Sync, H Back
V Active, V Total, V Front, V Sync, V Back
Pixel Clock


You choose the resolution in the red box above me and try

My display is 60Hz display but there is no datasheet for my display, is there any alternative way to calculate H Active, H Total, H Front, H Sync, H Back
V Active, V Total, V Front, V Sync, V Back
Pixel Clock

I referred to this topic HDMI Resolutions testing but I dont think it works with android 11 for vim1s. I tried installing the hdmi_custom_resolution patches given but it failed.

The picture shows the 59.94hz of my monitor, you can choose the corresponding 480p and try it

It only works on tv not on the 800x480 hdmi display, on the 800x480 display only the khadas logo appears but then disappears and nothing is displayed further more, I waited for 20 minutes but nothing happened.

In the above mentioned forum they have got 800x480 display to work with khadas vim1 and 3 but they have used very old android version, hence the method is not working on android 11.

Try the following modifications, please note that you need to compile uboot first and then compile all the android code

xiong@server:/users/xiong/work/amlogic/vim1s/bootloader/uboot$ git diff
diff --git a/arch/arm/mach-meson/s4/hdmitx_clk.c b/arch/arm/mach-meson/s4/hdmitx_clk.c
index 6e474c1595..d3f1f14a65 100644
--- a/arch/arm/mach-meson/s4/hdmitx_clk.c
+++ b/arch/arm/mach-meson/s4/hdmitx_clk.c
@@ -341,7 +341,7 @@ void set_hpll_clk_out(unsigned int clk)
                WAIT_FOR_PLL_LOCKED(P_ANACTRL_HDMIPLL_CTRL0);
                pr_info("HPLL: 0x%x\n", hd_read_reg(P_ANACTRL_HDMIPLL_CTRL0));
                break;
-       case 292300:
+       case 297600:
                hd_write_reg(P_ANACTRL_HDMIPLL_CTRL0, 0x3b0004C2);//800x480
                if (frac_rate)
                        hd_write_reg(P_ANACTRL_HDMIPLL_CTRL1, 0x0001cccc);
@@ -826,7 +826,7 @@ static struct hw_enc_clk_val_group setting_enc_clk_val_24[] = {
                1, VIU_ENCP, 251750, 4, 4, 1, VID_PLL_DIV_5, 2, 1, 1, -1},
        {{HDMIV_800x480p60hz,
          GROUP_END},
-               1, VIU_ENCP, 292300, 4, 4, 1, VID_PLL_DIV_5, 2, 1, 1, -1},
+               1, VIU_ENCP, 297600, 4, 4, 1, VID_PLL_DIV_5, 2, 1, 1, -1},
        {{HDMIV_800x600p60hz,
          GROUP_END},
                1, VIU_ENCP, 400000, 4, 2, 1, VID_PLL_DIV_5, 2, 1, 1, -1},
diff --git a/arch/arm/mach-meson/sc2/hdmitx_clk.c b/arch/arm/mach-meson/sc2/hdmitx_clk.c
index 85ac9e9007..ab5a1934cd 100644
--- a/arch/arm/mach-meson/sc2/hdmitx_clk.c
+++ b/arch/arm/mach-meson/sc2/hdmitx_clk.c
@@ -353,7 +353,7 @@ void set_hpll_clk_out(unsigned int clk)
                WAIT_FOR_PLL_LOCKED(P_ANACTRL_HDMIPLL_CTRL0);
                pr_info("HPLL: 0x%x\n", hd_read_reg(P_ANACTRL_HDMIPLL_CTRL0));
                break;
-       case 292300:
+       case 297600:
                hd_write_reg(P_ANACTRL_HDMIPLL_CTRL0, 0x3b0004C2);//800x480
                if (frac_rate)
                        hd_write_reg(P_ANACTRL_HDMIPLL_CTRL1, 0x0001cccc);
@@ -836,7 +836,7 @@ static struct hw_enc_clk_val_group setting_enc_clk_val_24[] = {
                1, VIU_ENCP, 251750, 4, 4, 1, VID_PLL_DIV_5, 2, 1, 1, -1},
        {{HDMIV_800x480p60hz,
          GROUP_END},
-               1, VIU_ENCP, 292300, 4, 4, 1, VID_PLL_DIV_5, 2, 1, 1, -1},
+               1, VIU_ENCP, 297600, 4, 4, 1, VID_PLL_DIV_5, 2, 1, 1, -1},
        {{HDMIV_800x600p60hz,
          GROUP_END},
                1, VIU_ENCP, 400000, 4, 2, 1, VID_PLL_DIV_5, 2, 1, 1, -1},
xiong@server:/users/xiong/work/amlogic/vim1s/common$ git diff
diff --git a/drivers/amlogic/media/vout/hdmitx/hdmi_common/hdmi_parameters.c b/drivers/amlogic/media/vout/hdmitx/hdmi_common/hdmi_parameters.c
index a57ccca41816..161bdf76a10f 100644
--- a/drivers/amlogic/media/vout/hdmitx/hdmi_common/hdmi_parameters.c
+++ b/drivers/amlogic/media/vout/hdmitx/hdmi_common/hdmi_parameters.c
@@ -1823,9 +1823,9 @@ static struct hdmi_format_para fmt_para_vesa_800x480p60_4x3 = {
        .progress_mode = 1,
        .scrambler_en = 0,
        .tmds_clk_div40 = 0,
-       .tmds_clk = 29230,
+       .tmds_clk = 29760,
        .timing = {
-               .pixel_freq = 29230,
+               .pixel_freq = 29760,
                .h_freq = 30000,
                .v_freq = 60000,
                .vsync = 60,
diff --git a/drivers/amlogic/media/vout/hdmitx/hdmi_tx_20/hw/hw_clk.c b/drivers/amlogic/media/vout/hdmitx/hdmi_tx_20/hw/hw_clk.c
index b1710822ebb7..c49576ce25e9 100644
--- a/drivers/amlogic/media/vout/hdmitx/hdmi_tx_20/hw/hw_clk.c
+++ b/drivers/amlogic/media/vout/hdmitx/hdmi_tx_20/hw/hw_clk.c
@@ -681,7 +681,7 @@ static struct hw_enc_clk_val_group setting_enc_clk_val_24[] = {
                251750, 4, 4, 1, VID_PLL_DIV_5, 2, 1, 1, -1},
        {{HDMIV_800x480p60hz,
          HDMI_VIC_END},
-               292300, 4, 4, 1, VID_PLL_DIV_5, 2, 1, 1, -1},
+               297600, 4, 4, 1, VID_PLL_DIV_5, 2, 1, 1, -1},
        {{HDMIV_800x600p60hz,
          HDMI_VIC_END},
                400000, 4, 2, 1, VID_PLL_DIV_5, 2, 1, 1, -1},
diff --git a/drivers/amlogic/media/vout/hdmitx/hdmi_tx_20/hw/hw_g12a.c b/drivers/amlogic/media/vout/hdmitx/hdmi_tx_20/hw/hw_g12a.c
index 1df4a29c5fda..c1be325f69d7 100644
--- a/drivers/amlogic/media/vout/hdmitx/hdmi_tx_20/hw/hw_g12a.c
+++ b/drivers/amlogic/media/vout/hdmitx/hdmi_tx_20/hw/hw_g12a.c
@@ -419,7 +419,7 @@ void set_g12a_hpll_clk_out(unsigned int frac_rate, unsigned int clk)
                WAIT_FOR_PLL_LOCKED(P_HHI_HDMI_PLL_CNTL0);
                printk("HPLL: 0x%x\n", hd_read_reg(P_HHI_HDMI_PLL_CNTL0));
                break;
-       case 292300:
+       case 297600:
                hd_write_reg(P_HHI_HDMI_PLL_CNTL0, 0x3b0004C2);//800x480
                if (frac_rate)
                        hd_write_reg(P_HHI_HDMI_PLL_CNTL1, 0x0001cccc);

I am still a beginner so can you help me how to make the editings for uboot and the android

Let’s go to the corresponding question sheet below to communicate how