CE-NG Dolby Vision for G12 boxes (u22xj, am6+, firetv cube)

Any Dolby Vision certified G12 device can use CE-NG 20.5+/21RC1+, using the s905x2 DoVi driver for Dolby Vision support (including P7 FEL). This allows U22X-J/AM6+ to rejoin the main CE-NG build line. So far it’s confirmed working on:

Ugoos AM6+
Minix U22X-J
Amazon FireTV Cube 2nd gen

The dovi.ko won’t be included in CoreELEC future releases, and will always be up to you to copy to any new CE installation for Dolby Vision support.


  1. Download dovi.ko
    Three optional locations to copy dovi.ko to CoreELEC:
    a) Samba: copy dovi.ko to Configfiles folder
    b) PC: plug CoreELEC USB into computer copy dovi.ko over (same directory with dtb.img & kernel.img).
    c) SSH: copy dovi.ko to /storage/dovi.ko
    This will supersede any other copy of dovi.ko on the device

  2. Reboot CoreELEC
    Confirm the driver has loaded by checking for Dolby Vision features under
    Settings / System / CoreELEC

Note: The new options for placing the dovi.ko are only available in the CE-NG nightlies (March 16th). Place it here /storage/dovi.ko for CE20.5/21RC1 stable.


I just tested this and I can say it works on Ugoos AM6+


I tested also and it’s working on Ugoos AM6+, CE-NG 20.5

1 Like

Thx, this will allow us to drop project Amlogic-ng-dv.

Does everything work? Like Fel?

Following on from Dolby Vision for Minix U22X-J (Max) and Ugoos AM6+ - #345 by doppingkoala

@YadaYada It is a X96 Max Plus device. I have never used the android, I’ll need to test that at a latter time. Is there another way to tell aside from testing in android? (which would then depend on the android/app code supporting it, not just physical device).

The cpu is listed as a S905X3-B in coreelec - not sure what the -B refers to. My hope was kinda based on the Chromecast with Google TV (4K) using a S905X3 cpu (haven’t found which variant) and supporting DV.

EDIT I was told that this is the DV check (in your dmesg):

dv capability 6

SOCs with DV ability return value 7, any other value means no DV support.

I didn’t find anything on Google indicating the X96 Max Plus has DV licensing, so I’m not sure. I don’t know how to check other than booting Android and trying to play a DV video there.

You can try using the dovi.ko from Sabrina (Chromcast s905D3). It has a better chance of compatibility. I only know of this website hosting the entire firmware that you can extract it from. I’d start by checking Android, it’s less work.

The display can be set to DV in uboot, CE needs to know the uboot DV state (on/off) which you see tracked in dmesg. Some of the other stuff is the amdolby_vision module included with CE, and some of that is the s905x2 dovi.ko being loaded.

DV capability is determined by the SOC, so if it’s not DV certified there’s nothing CE can do to make it play DV videos.

-B is dolby audio licensing

I have no success trying this on a SM1 device (S905X3) using NG-20.5.

Interestingly, there were lines referencing both g12 and the dovi module in the dmesg log:

[    0.971682@2]- amdolby_vision_init:module init
[    0.972463@2]-
[    0.972463@2]-  amdolby_vision probe start & ver: 20181220
[    0.972472@2]-
[    0.972472@2]-  cpu_id=2 tvmode=0
[    0.972843@3]- dolby_vision_init_receiver(dvel)
[    0.972858@3]- dolby_vision_init_receiver: dvel
[    0.973404@2]- amdolby_vision_probe: ok
[    0.973423@2]- g12 dovi disable in uboot
[   12.075450@1]- dovi: disagrees about version of symbol module_layout
[   12.075462@1]- dovi: module license 'AML' taints kernel.
[   12.075464@1]- Disabling lock debugging due to kernel taint
[   12.077290@1]- dovi: disagrees about version of symbol register_dv_functions
[   12.078388@1]- *** amlogic_dolby_vision_init dv: g12 ***
[   12.078393@1]- *** register_dv_stb_functions.***
[   12.078404@1]- hdr10_policy 115, ko_info SHENZHEN SDMC TECHNOLOGY CO LTD chip_name = g12 [stb:2.4:e]-[v1.0]-[ Wed Feb 10 17:00:41 CST 2021]-[ yao.liu]-[* stb_2.4]-[caa71899d33843709d4afceefd0ad3a860d58095]-[Date: Wed Feb 10 14:43:48 2021 +0800]-[0]
[   12.078407@1]- efuse_mode=1 reg_value = 0x118
[   12.078408@1]- dv capability 6

I also found dolby_vision_on=0 in the kernel command line, and [ 0.000000@0]d get_dolby_on: 0 shortly after. The full dmesg log is here.

Few question for anyone that may have answers:

  • Based on the log does anyone know if DV is possible on this box?
  • Why is dolby_vision_on=0 in the kernel command line? Is get_dolby_on: 0 related to that / can that be changed?
  • What is dv capability 6?
  • Can g12 dovi disable in uboot be changed by altering the uboot? Would that be helpful?

May you try out this version if DV start playback now in CE?

How exactly do I use this? Do I put this in the update folder of my NG-20.5 install?

I only make CE-21 builds anymore. You will need to start with a spare boot media with CE-21 and then update with this test build.

That’s a cheap device with outdated Android. It’s highly unlikely to have DV support.
dv capability 6 means that the SoC does not have DV support. SoCs with DV support with have dv capability 7.

I’m just looking into how to do this hopefully I can use CE file manager.
So I’m currently in CE NG-DV I don’t have a /storage/dovi.ko folder. Would I need to make one or will it be there after updating to CE-NG.

dovi.ko is the file, and /storage/ is the destination folder.

1 Like

Thank you, I think I’ll hold off updating at the moment as there is a lot going on.

try it , after seeking freezing few seconds, worse than ng-dv

What device?

What version of CE-NG-DV were you previously using?

What version of CE-NG did you try with the DoVi.ko?

ugoos am6b plus
20.5 ng-dv
the latest potish give me the test build. 21 ng omega

I know you have crossed it out based on finding that the dv capability should be 7, but I thought I’d test with the dovi.ko from the Sabrina link.

DV still doesn’t work, but changing the dovi.ko removed these lines

[   12.075462@1]- dovi: module license 'AML' taints kernel.
[   12.075464@1]- Disabling lock debugging due to kernel taint

Does that provide any insight?

20.5 ng-dv
the latest potish give me the test build. 21 ng omega

@jeffc3753 See if you experience the same freezing in CE-NG 20.5. That will help rule out any DV bugs in CE-21 being the cause.

@doppingkoala Did the build that Portisch created make a difference?