Homatics Box R 4K Plus

Sorry for asking dumb questions. Am I able to copy my storage partition to a new USB Stick to keep my plugins and settings?

Did this item ever show up in previous nightly builds? In NO?
It looks to me like none of the CE builds would show this item with your current Android version because none of the NAND partitions we are currently searching for exist on your box.

1 Like

No need, it is enough to use CoreElec options for Backup/Restore to transfer all your settings and plugins.

Sadly my flash got corrupted during the last nightly update

Yes, it’s many times worth to make a backup before doing a nightly update :wink:

1 Like

I can answer partially for him: on ATV 12, with CoreElec NG, the option was available if we used an alternative skin.
I wonder if there is also an add-on available to have this option without changing the skin.

It’s pretty cool to have this option under ATV 14 without having to install another skin or CoreElec NO :slight_smile:

1 Like

I’m not sure, it’s possible with a different skin but I was hoping to see it as an option on the standard skin. It’s not that big a deal if it’s not possible. Thanks for your reply

The standard estuary works fine.
My custom estuary modv2 working fine with that too,
as my arctic.zephyr 2 resurrection.
Under atv14 too.

1 Like

Can you run fw_printenv and post what you get back from it?

A post was merged into an existing topic: White artifacts with S905X4 video decoder

Thanks for the help, this is the info

##############################################
#                  CoreELEC                  #
#            https://coreelec.org            #
##############################################
CoreELEC (official): 21.1.1-Omega_nightly_20250116 (Amlogic-ng.arm)
      Machine model: Dune/Homatics R 4K Plus
     CoreELEC dt-id: sc2_s905x4_sei_smb_280_id5
      Amlogic dt-id: sc2_s905x4_ah212-id5
      Linux version: 4.9.269 (docker@f6871bcd7532) #1 Thu Jan 16 05:20:30 IST 2025      Kodi compiled: 2025-01-16 04:57:48 +0100
CoreELEC:~ # fw_printenv
2160p60hz_deepcolor=422,12bit
2160p_h=2160
2160p_w=3840
2160p_x=0
2160p_y=0
EnableSelinux=enforcing
Irq_check_en=0
active_slot=normal
aml_dt=sc2_s905x4_ah212-id5
arch=arm
avb2=1
baudrate=115200
bcb_cmd=get_avb_mode;get_valid_slot;if test ${vendor_boot_mode} = true; then setenv loadaddr_kernel 0x2080000;setenv dtb_mem_addr 0x1000000;fi;if test ${active_slot} != normal; then echo ab mode, read dtb from kernel;setenv common_dtb_load imgread dtb ${boot_part} ${dtb_mem_addr};fi;
bct3236_rgbcolor=0x003028
board=ohm
board_logo_part=odm_ext
board_name=sc2_ah212_hua
bootLogoPart=odm_ext
boot_ddr_type=LPDDR4
boot_flag=0
boot_part=boot
bootargs=init=/init console=ttyS0,921600 no_console_suspend earlycon=aml-uart,0xfe07a000 ramoops.pstore_en=1 ramoops.record_size=0x8000 ramoops.console_size=0x4000
loop.max_part=4 scramble_reg=0xfe02e030 scsi_mod.scan=async xhci_hcd.quirks=0x800000 loglevel=1 otg_device=1 hw_id=5 bct3236_rgbcolor=0x003028 skip_driver_register=0 cma_first_wm_low=on logo=osd0,loaded,0x00300000 vout=2160p60hz,disable panel_type=lcd_1 hdmitx=,422,12bit hdmimode=1080p60hz hdmichecksum=0x7cac0000 dolby_vision_on=1 hdr_policy=0 hdr_priority= androidboot.enable_console= config_csc_en=1frac_rate_policy=1 hdmi_read_edid=1 cvbsmode=480cvbs osd_reverse=0 video_reverse=0 irq_check_en=0 androidboot.selinux=enforcing androidboot.firstboot=0 androidboot.sei_kernelLog=0 jtag=disable disable_ir=0 androidboot.bootloader=01.01.240930.103908 androidboot.hardware=amlogic mac=8C:98:06:45:2D:C3 androidboot.mac=8C:98:06:45:2D:C3 androidboot.serialno=1242555651400002396 androidboot.oem=ATV0010002100000000000000000CC2W
bootcmd=if test ${bootfromnand} = 1; then setenv bootfromnand 0; saveenv; else run bootfromsd; run bootfromusb; run bootfromemmc; fi; run storeboot
bootdelay=0
bootfromemmc=run cfgloademmc
bootfromnand=0
bootfromsd=if mmcinfo; then run cfgloadsd; if fatload mmc 0 ${loadaddr} kernel.img; then run sddtb; setenv bootargs ${bootargs} bootfromsd; bootm; fi; fi
bootfromusb=usb start 0; run cfgloadusb; if fatload usb 0 ${loadaddr} kernel.img;
then run usbdtb; setenv bootargs ${bootargs} bootfromusb; bootm; fi
bootloader_version=01.01.240930.103908
bootm_low=0
bootm_size=f1000000
buildtype=user
ce_on_emmc=no
cfgloademmc=for p in 1 2 3 4 5 6 7 8 9 A B C D E F 10 11 12 13 14 15 16 17 18; do
if fatload mmc 1:${p} ${loadaddr} cfgload; then setenv device mmc; setenv devnr 1; setenv partnr ${p}; setenv ce_on_emmc "yes"; autoscr ${loadaddr}; fi; done;
cfgloadsd=if fatload mmc 0:1 ${loadaddr} cfgload; then setenv device mmc; setenv devnr 0; setenv partnr 1; autoscr ${loadaddr}; fi
cfgloadusb=if fatload usb 0:1 ${loadaddr} cfgload; then setenv device usb; setenv
devnr 0; setenv partnr 1; autoscr ${loadaddr}; fi
check_result=succ
cmdline_keys=setenv region_code US;setenv usid ohm${cpu_id};if keyman init 0x1234; then if keyman read usid ${loadaddr} str; then fi;if keyman read region_code ${loadaddr} str; then fi;if keyman read mac ${loadaddr} str; then setenv bootargs ${bootargs} mac=${mac} androidboot.mac=${mac};fi;if keyman read deviceid ${loadaddr} str; then setenv bootargs ${bootargs} androidboot.deviceid=${deviceid};fi;fi;setenv bootargs ${bootargs} androidboot.serialno=${usid};setenv serial ${usid}; setenv serial# ${usid};if keyman read oem ${loadaddr} str; then setenv bootargs ${bootargs} androidboot.oem=${oem};fi;if keyman read ddr ${loadaddr} str; then setenv bootargs ${bootargs} androidboot.ddr=${ddr};fi;if keyman read emmc ${loadaddr} str; then setenv bootargs ${bootargs} androidboot.emmc=${emmc};fi;if keyman read wifi ${loadaddr} str; then setenv bootargs ${bootargs} androidboot.wifi=${wifi};fi;factory_provision init;
colorattribute=422,12bit
common_dtb_load=imgread dtb _aml_dtb ${dtb_mem_addr}
config_csc_en=1
cpu=armv8
cpu_id=d60946811132
cvbs_drv=0
cvbsmode=480cvbs
disable_ir=0
disableunlock=0
display_bpp=16
display_color_bg=0
display_color_fg=0xffff
display_color_index=16
display_height=2160
display_layer=osd0
display_width=3840
dolby_status=2
dolby_vision_on=1
dtb_mem_addr=0x1000000
dv_enable=1
dv_fw_addr=0xa00000
dv_fw_dir=/oem/firmware/dovi_fw.bin
dv_fw_dir_odm_ext=/odm_ext/firmware/dovi_fw.bin
dv_fw_dir_vendor=/vendor/firmware/dovi_fw.bin
edid_14_dir=/mnt/vendor/odm_ext/etc/tvconfig/hdmi/port_14.bin
edid_20_dir=/mnt/vendor/odm_ext/etc/tvconfig/hdmi/port_20.bin
edid_select=0
eth6addr=8c:98:06:45:2d:c3
ext4LogoPath=/logo_files/bootup.bmp
ext4LogoSz=3f4848
ext4logoLoadCmd=ext4load mmc 1:${logoPart} ${logoLoadAddr} ${ext4LogoPath}
fatload_dev=usb
fb_addr=0x00300000
fb_height=1080
fb_width=1920
fdt_high=0x20000000
fdtaddr=1000000
fdtcontroladdr=f0783740
fileaddr=20000
filesize=3f4848
firstboot=0
forUpgrade_1stBootIndex=0
forUpgrade_bootloaderCopies=3
forUpgrade_bootloaderIndex=0
forUpgrade_flashType=BOOT_EMMC
forUpgrade_robustOta=true
forUpgrade_secureBoot=false
forUpgrade_socType=32
frac_rate_policy=1
fs_type=rootfstype=ramfs
gatewayip=10.18.9.1
get_os_type=if store read ${os_ident_addr} ${boot_part} 0 0x1000; then os_ident ${os_ident_addr}; fi
gpt_mode=false
hdmi_colordepth=8
hdmi_colorspace=auto
hdmi_read_edid=1
hdmichecksum=0x7cac0000
hdmimode=1080p60hz
hdr_policy=0
hostname=arm_gxbb
hw_id=5
init_display=get_rebootmode;echo reboot_mode:::: ${reboot_mode};if test ${reboot_mode} = quiescent; then setenv reboot_mode_android quiescent;setenv dolby_status 0;setenv dolby_vision_on 0;run storeargs;setenv bootargs ${bootargs} androidboot.quiescent=1;osd open;osd clear;else if test ${reboot_mode} = recovery_quiescent; then setenv reboot_mode_android quiescent;setenv dolby_status 0;setenv dolby_vision_on 0;run storeargs;setenv bootargs ${bootargs} androidboot.quiescent=1;osd open;osd
clear;else setenv reboot_mode_android normal;run storeargs;hdmitx hpd;hdmitx get_preferred_mode;hdmitx get_parse_edid;dovi process;watermark_init;osd open;osd clear;run load_bmp_logo;bmp scale;vout output ${outputmode};dovi set;dovi pkg;vpp hdrpkt;fi;fi;
initargs=init=/init console=ttyS0,921600 no_console_suspend earlycon=aml-uart,0xfe07a000 ramoops.pstore_en=1 ramoops.record_size=0x8000 ramoops.console_size=0x4000
loop.max_part=4 scramble_reg=0xfe02e030 scsi_mod.scan=async xhci_hcd.quirks=0x800000
initrd_high=7f800000
ipaddr=10.18.9.97
jtag=disable
load_bmp_logo=if rdext4pic ${board_logo_part} $loadaddr; then bmp display $logoLoadAddr; else if imgread pic logo bootup $loadaddr; then bmp display $bootup_offset; fi; fi;
loadaddr=0x00020000
loadaddr_kernel=0x2080000
loadaddr_rtos=0x00001000
lock=10101000
loglevel=1
logoLoadAddr=20000
logoPart=c
mac=8C:98:06:45:2D:C3
netmask=255.255.255.0
nocs_mode=false
oem=ATV0010002100000000000000000CC2W
oemlock=lock
os_ident_addr=0x00500000
osd_reverse=0
otg_device=1
outputmode=2160p60hz
panel_type=lcd_1
partition_mode=dynamic
port_map=4321
preboot=run bcb_cmd; run upgrade_check;run init_display;run storeargs;run upgrade_key;bcb uboot-command;run switch_bootmode;
reboot_mode=normal
reboot_mode_android=normal
reboot_status=reboot_init
recovery_from_fat_dev=setenv loadaddr ${loadaddr_kernel};if fatload ${fatload_dev} 0 ${loadaddr} aml_autoscript; then autoscr ${loadaddr}; fi;if fatload ${fatload_dev} 0 ${loadaddr} recovery.img; then if avb memory recovery ${loadaddr}; then avb
recovery 1;if fatload ${fatload_dev} 0 ${dtb_mem_addr} dtb.img; then echo ${fatload_dev} dtb.img loaded; fi;setenv bootargs ${bootargs} ${fs_type};bootm ${loadaddr};fi;fi;
recovery_from_flash=echo active_slot: ${active_slot};setenv loadaddr ${loadaddr_kernel};if test ${active_slot} = normal; then setenv bootargs ${bootargs} ${fs_type} aml_dt=${aml_dt} recovery_part=${recovery_part} recovery_offset=${recovery_offset};if test ${upgrade_step} = 3; then if ext4load mmc 1:2 ${dtb_mem_addr} /recovery/dtb.img; then echo cache dtb.img loaded; fi;if test ${vendor_boot_mode} = true; then if imgread kernel ${recovery_part} ${loadaddr} ${recovery_offset}; then bootm ${loadaddr}; fi;else if ext4load mmc 1:2 ${loadaddr} /recovery/recovery.img; then echo cache recovery.img loaded; bootm ${loadaddr}; fi;fi;else if imgread dtb recovery ${dtb_mem_addr}; then else echo restore dtb; run common_dtb_load;fi;fi;if imgread kernel ${recovery_part} ${loadaddr} ${recovery_offset}; then bootm ${loadaddr}; fi;else if fdt addr ${dtb_mem_addr}; then else echo retry common dtb; run common_dtb_load; fi;if test ${partition_mode} = normal; then setenv bootargs ${bootargs}
${fs_type} aml_dt=${aml_dt} recovery_part=${boot_part} recovery_offset=${recovery_offset};if imgread kernel ${boot_part} ${loadaddr}; then bootm ${loadaddr}; fi;else if test ${vendor_boot_mode} = true; then setenv bootargs ${bootargs} ${fs_type}
aml_dt=${aml_dt} recovery_part=${boot_part} recovery_offset=${recovery_offset} androidboot.slot_suffix=${active_slot};if imgread kernel ${boot_part} ${loadaddr}; then bootm ${loadaddr}; fi;else setenv bootargs ${bootargs} ${fs_type} aml_dt=${aml_dt} recovery_part=${recovery_part} recovery_offset=${recovery_offset} androidboot.slot_suffix=${active_slot};if imgread kernel ${recovery_part} ${loadaddr} ${recovery_offset}; then bootm ${loadaddr}; fi;fi;fi;fi;
recovery_from_sdcard=setenv fatload_dev mmc;if mmcinfo; then run recovery_from_fat_dev; fi;
recovery_from_udisk=setenv fatload_dev usb;if usb start 0; then run recovery_from_fat_dev; fi;
recovery_offset=0
recovery_part=recovery
region_code=US
rollback_flag=0
rpmb_state=1
sdc_burning=sdc_burn ${sdcburncfg}
sdcburncfg=aml_sdc_burn.ini
sddtb=if fatload mmc 0 ${dtb_mem_addr} dtb.img; then else store dtb read $dtb_mem_addr; fi
sei_kernelLog=0
serial=1242555651400002396
serial#=1242555651400002396
serverip=10.18.9.113
silent=0
skip_driver_register=0
skip_drv_val=0
slot-suffixes=-1
soc=sc2
standby_reboot_quiescent=0
stderr=serial@a000
stdin=serial@a000
stdout=serial@a000
storage_param=store param;setenv bootargs ${bootargs} ${mtdbootparts};
storeargs=get_bootloaderversion;setenv bootargs ${initargs} loglevel=${loglevel} otg_device=${usb_is_slave} hw_id=${hw_id} bct3236_rgbcolor=${bct3236_rgbcolor} skip_driver_register=${skip_drv_val} cma_first_wm_low=on logo=${display_layer},loaded,${fb_addr} vout=${outputmode},${vout_init} panel_type=${panel_type} hdmitx=${cecconfig},${colorattribute} hdmimode=${hdmimode} hdmichecksum=${hdmichecksum} dolby_vision_on=${dolby_vision_on} hdr_policy=${hdr_policy} hdr_priority=${hdr_priority} androidboot.enable_console=${enable_console} config_csc_en=${config_csc_en}frac_rate_policy=${frac_rate_policy} hdmi_read_edid=${hdmi_read_edid} cvbsmode=${cvbsmode} osd_reverse=${osd_reverse} video_reverse=${video_reverse} irq_check_en=${Irq_check_en}  androidboot.selinux=${EnableSelinux} androidboot.firstboot=${firstboot} androidboot.sei_kernelLog=${sei_kernelLog} jtag=${jtag} disable_ir=${disable_ir};setenv bootargs ${bootargs} androidboot.bootloader=${bootloader_version} androidboot.hardware=amlogic;run cmdline_keys;
storeboot=run get_os_type;run storage_param;if test ${os_type} = rtos; then setenv loadaddr ${loadaddr_rtos};store read ${loadaddr} ${boot_part} 0 0x400000;bootm ${loadaddr};else if test ${os_type} = kernel; then get_system_as_root_mode;echo system_mode in storeboot: ${system_mode};get_avb_mode;echo active_slot in storeboot: ${active_slot};if test ${system_mode} = 1; then setenv bootargs ${bootargs} ro rootwait skip_initramfs;else setenv bootargs ${bootargs} androidboot.force_normal_boot=1;fi;if test ${active_slot} != normal; then setenv bootargs ${bootargs} androidboot.slot_suffix=${active_slot};fi;setenv bootargs ${bootargs} androidboot.rollback=${rollback_flag};if fdt addr ${dtb_mem_addr}; then else echo retry common dtb; run common_dtb_load; fi;setenv loadaddr ${loadaddr_kernel};if imgread kernel ${boot_part} ${loadaddr}; then bootm ${loadaddr}; fi;else echo wrong OS format ${os_type}; fi;fi;echo try upgrade as booting failure; run update;
switch_bootmode=get_rebootmode;if test ${reboot_mode} = factory_reset; then run recovery_from_flash;else if test ${reboot_mode} = update; then run update;else if test ${reboot_mode} = quiescent; then setenv bootargs ${bootargs} androidboot.quiescent=1;run try_auto_burn;else if test ${reboot_mode} = recovery_quiescent; then setenv bootargs ${bootargs} androidboot.quiescent=1;run recovery_from_flash;else if test ${reboot_mode} = cold_boot; then run try_auto_burn;else if test ${reboot_mode} = fastboot; then fastboot 0;fi;fi;fi;fi;fi;fi;
try_auto_burn=adnl 2000 3000;
update=run usb_burning; run usb_burningCfg; run sdc_burning; if mmcinfo; then run
recovery_from_sdcard;fi;if usb start 0; then run recovery_from_udisk;fi;run recovery_from_flash;
upgrade_check=echo recovery_status=${recovery_status};if itest.s "${recovery_status}" == "in_progress"; then run init_display;run storeargs; run recovery_from_flash;else fi;echo upgrade_step=${upgrade_step}; if itest ${upgrade_step} == 3; then run init_display;run storeargs; run update; fi;
upgrade_key=if detect_upgradekey; then echo upgradekey_val:::: ${upgradekey_val};if test ${upgradekey_val} = fastboot; then osd clear;imgread pic logo fastboot $loadaddr;bmp display $fastboot_offset;bmp scale; echo detect fastboot key; fastboot 0;else if test ${upgradekey_val} = upgrade; then run update;fi;fi;fi;
upgrade_step=2
upgradekey_val=pw
usb_burning=adnl 1200
usb_burningCfg=usb_burn aml_sdc_burn.ini
usb_is_slave=1
usbdtb=if fatload usb 0 ${dtb_mem_addr} dtb.img; then else store dtb read $dtb_mem_addr; fi
user_prefer_dv_type=2
usid=1242555651400002396
vendor=amlogic
vendor_boot_mode=true
vendor_boot_part=vendor_boot
video_reverse=0
vout_init=disable
CoreELEC:~ #

edit, adding @myst13

This works for me → Reboot to CoreELEC APK - #41 by jamal2367

1 Like

Thanks for the response, I have tried the add on you suggested but it didn’t seem to work as I hoped. The box rebooted to android ok but it switched the video output to force hdr out and I had to then go into settings every time to change it back.
I believe that this is an android default (to automatically switch to hdr output after a forced reboot)
I was hoping to find a reboot to android solution that didn’t cause this problem.
Thanks

We have discussed in internally in the team, and “fixing” this issue for your particular box may break it for other users, so for now we decided not to change anything.
The addon discussed does the same thing Kodi does in order to reboot to android.
And you can modify the default HDR settings in Android. The recommended setting is “Auto”.

3 Likes

Thanks for the response, it’s not a huge problem for me and I can use the add on to achieve the same results.
The problem I have with the add on is that when I reboot my Dune Homatics it seems to forget that I have chosen hdr automatic and displays an hdr output. I can change this setting back but it’s a bit frustrating having to do this every time.
Appreciate your support and efforts, thanks again

Your problem will be resolved once your box is updated to Android TV 14.
This version works better, with all the available audio/video codecs.
Homatics/SEI have just put restrictions on the functioning of certain apps, but it’s easily bypassed.

At that point, you will have the menu that will appear in CoreElec :wink:

Until SEI/Homatics does like SDMC/Kinhank (and many other manufacturers) and locks the bootloader to please Google (according to them)…

1 Like

So, we might see improvements in video performance using CE, by installing Android 14 update?

I think I’m still on android 11 on my box, I have only updated android once, when it was required for dolby vision to work after some update to CE. I never boot to android now.

No, switching to Android TV 14 would just allow @MalcolmTucker to have the option in CoreElec to restart on Android without forcing HDR mode.

And on Android TV, all the most common audio/video formats will be decoded, unlike on Android TV 11 or 12 on this box…
On CoreElec, all formats are already supported regardless of the version of Android TV :wink:

1 Like

Did you know if I can enable wireless debugging for shizuku?
Or what restrictions du you mean…

Here is the atv14
sei “currently” blacklisted apps…

com.msandroid.mobile
com.android.mgstv
uy.com.ica.magis
com.android.mgandroid
com.android.msandroid
com.android.mgsandroid
com.android.mgsmob
com.irmantasra.magis
com.recode.magis
com.akyhay. tv
com.magis_ver.player
com.haxsmart.skylive
de.eye_interactive.atvl.magistv
info.appdelay.ytmgstv
com.king.magistv4281apkdescargalaltimaversinparaandroid
com.mycompany.magistv4281apkpremiumdescargaltimaversin
com.magistv.magistv
magistv.magis.iptv.telelatino
com.cfsa.magis
magistv.apbsm
com.topjohnwu.magisk
com.esaba.downloader
com.mycompany.descargarmagistv4281apk
com.magis.user
titan.tv6
com.flextv.livestore
com.acheckintv
ca.dstudio.atvlauncher.pro
ca.dstudio.atvlauncher.free
com.anddoes.launcher
com.scmcontrol.bglauncher
com.basic.android.basiclauncher
studio.scillarium.stblauncher
com.izyver.fllauncher
me.efesser.flauncher
com.infomir.magiclauncher_v2
com.teslacoilsw.launcher
dxidev.primaltvlauncher
com.devswhocare.productivitylauncher
com.spocky.projengmenu
dxidev.sideloadchannel3
eu.chainfire.tv.sideloadlauncher
org.cosinus.launchertv
com.github.tvlauncher.appmainwallpaper
com.vnapps.tvlauncher

1 Like