Emulationstation crashes using CVBS Resolution (log inside)

I have an x96 max plus ultra device, just installed emuelec 4.6v, everything works fine except when i use the CVBS resolution on my CRT when it reaches to the emulationstation theme the device crashes and then shuts down. Of course this doesn’t happen when using other resolutions

These are all the logs i could find

2022-11-08 07:59:22 ERROR Resource path not found: :/splash.xml
2022-11-08 07:59:22 ERROR System wii path does not exist !
2022-11-08 07:59:22 ERROR System gamecube path does not exist !
2022-11-08 07:59:22 ERROR System phillips-cdi path does not exist !
2022-11-08 07:59:22 ERROR System karaoke path does not exist !

[0.000390] [INFO] Stopping systemd unit ‘smbd.service’
[0.003432] [INFO] Started systemd job ‘260’, waiting for it to finish
[0.003465] [DEBUG] Processing sd_bus message…
[0.003468] [WARNING] Failed to read systemd message
[0.106096] [DEBUG] Processing sd_bus message…
[0.106128] [DEBUG] Got message, ID: 260
[0.106133] [INFO] Job finished, checking result
[0.106151] [INFO] Job finished successfully
[0.106220] [INFO] Umounting all mount points under /storage/roms…
[0.123989] [INFO] Successfully umounted /storage/roms
[0.124607] [INFO] Successfully umounted all mount points under /storage/roms
[0.124867] [ERROR] Setting not found
[0.124872] [ERROR] Failed to get setting ee_load.delay for platform (null) rom (null)
[0.124955] [DEBUG] Got setting int: [1]
[0.124960] [INFO] Successfully got setting ee_mount.retry for platform (null) rom (null)
[0.125037] [ERROR] Setting not found
[0.125039] [ERROR] Failed to get setting externalmount for platform (null) rom (null)
[0.125043] [INFO] Scanning external drives, try 1 of 2
[0.125180] [INFO] Scanning external drives, try 2 of 2
[0.125204] [WARNING] No external rom drives found
[0.125207] [INFO] Mounting /storage/roms…
[0.125232] [DEBUG] Path ‘/storage/roms’ exists and is directory, no need to create it
[0.125237] [INFO] Trying to mount EEROMS to ‘/storage/roms’
[0.125246] [DEBUG] Path ‘/storage/roms’ exists and is directory, no need to create it
[0.125248] [DEBUG] Checking if ‘/storage/roms’ is a mount point
[0.125978] [INFO] Trying to get the underlying partition of /storage/.update
[0.125983] [INFO] ‘/storage/.update’ is mounted, using the underlying partition /dev/mmcblk1p3 as EEROMS
[0.129577] [INFO] Successfully re-mounted EEROMS back to /storage/roms
[0.129594] [INFO] Trying to mount ‘/storage/roms/.update’ to ‘/storage/.update’
[0.129596] [DEBUG] Checking if ‘/storage/.update’ is a mount point
[0.129999] [INFO] ‘/storage/.update’ already a mount point, no need to mount
[0.309917] [DEBUG] Path ‘/storage/roms/ports_scripts’ exists and is directory, no need to create it
[0.310040] [DEBUG] Path ‘/emuelec/ports’ exists and is directory, no need to create it
[0.310055] [DEBUG] Path ‘/storage’ exists and is directory, no need to create it
[0.310067] [DEBUG] Path ‘/storage/.tmp’ exists and is directory, no need to create it
[0.310149] [DEBUG] Path ‘/storage/.tmp/ports-workdir’ exists and is directory, no need to create it
[0.310155] [INFO] Successfully mkdir ‘/storage/.tmp/ports-workdir’ recursively
[0.312856] [INFO] Successfully mounted ports
[0.312879] [INFO] Trying to mount systems
[0.312882] [INFO] Finished mounting systems
[0.312886] [INFO] All mount successful, happy retro-gaming
[0.312888] [INFO] Starting systemd unit ‘smbd.service’
[0.322268] [INFO] Started systemd job ‘262’, waiting for it to finish
[0.322306] [DEBUG] Processing sd_bus message…
[0.322312] [DEBUG] Got message, ID: 261
[0.522719] [DEBUG] Processing sd_bus message…
[0.522748] [DEBUG] Got message, ID: 262
[0.522752] [INFO] Job finished, checking result
[0.522754] [INFO] Job finished successfully

I’m really desperate, i’m open to suggestions

Can you post dmesg and full ES logs?

Did cvbs work for you with version 4.5? Anyone else using cvbs with this kind of issue? What cvbs do you PAL (576cvbs) or NTSC (480cvbs)?

Hi, instead of creating a new thread, I would like to bump this one since my issue seems to be exactly the same. I’m using a X96 X4 (https://androidpctv.com/x96-x4-review/) TV Box. I’m using EMUELEC 4.6, which introduced support to S905 X4 devices.

When I set 480CVBS and restart EmulationStation, it briefly displays its menu screen and then immediately shuts down. Since I couldn’t access back EmulationStation menu or access anything through the network, I couldn’t generate or extract any logs at the first time.

So I had the idea to change the starting application to Retroarch before changing to 480cvbs and rebooting. After booting, Retroarch starts normally (though very off centered and very over scanned in my Trinitron CRT, and without any sound). When I manually quit Retroarch, EMUELEC tries to access EmulationStation and it shuts down.

Rebooting the device to Retroarch, I regained network access and changed the configuration back to 1080p60hz, so I could generate a new log using a LCD screen. The following log was generated:
http://ix.io/4oE9

I’ll kindly ask for help here for the restart issue, but if its not very tough or not so obvious, I would appreciate some advice to overscanning, image centering and CVBS audio. Also, is there any option for 240p out thru cvbs? It would be very nice because 480i presents blinking colors at the TV screen.

If I can contribute with more information, please let me know!

Thanks in advance!

Sorry for double posting. The es_log.txt brings the following:

2023-02-22 09:35:46 ERROR Resource path not found: :/splash.xml
2023-02-22 09:35:46 ERROR System wii path does not exist !
2023-02-22 09:35:46 ERROR System gamecube path does not exist !
2023-02-22 09:35:46 ERROR System phillips-cdi path does not exist !
2023-02-22 09:35:46 ERROR System karaoke path does not exist !
2023-02-22 09:35:47 ERROR Resource path not found: :/splash.xml
2023-02-22 09:35:48 ERROR Error saving gamelist.xml to /usr/bin/scripts/setup/gamelist.xml (for system setup)!

Maybe a file access issue? Strangely, the last log line is not displayed when I set 1080p60hz and boot ES normally…

In your logs did you see this:

[    0.309780@2]- cvbs_out: cvbsout_probe, cpu_id:8,name:meson-sc2-cvbsout
[    0.309787@2]- ERROR: could not get clock /cvbsout:venci_top_gate(0)
[    0.309806@2]- cvbs_out: error: cvbsout_clktree_probe: clk venci_top_gate
[    0.309816@2]- ERROR: could not get clock /cvbsout:venci_0_gate(1)
[    0.309824@2]- cvbs_out: error: cvbsout_clktree_probe: clk venci_0_gate
[    0.309833@2]- ERROR: could not get clock /cvbsout:venci_1_gate(2)
[    0.309842@2]- cvbs_out: error: cvbsout_clktree_probe: clk venci_1_gate
[    0.309851@2]- ERROR: could not get clock /cvbsout:vdac_clk_gate(3)
[    0.309858@2]- cvbs_out: error: cvbsout_clktree_probe: clk vdac_clk_gate

I dont think that is normal lol, seems to be a driver issue not getting correct clocks.

Yes, now it seems to be something difficult and kind of hardware specific. I wonder why it triggers a shut down in Emulationstation (it shows saving configuration), while the box stays on at Retroarch.

Sorry for double posting again. I tested this:

Langerz82 commented last month
CVBS Testing procedure:
SSH into your device then type in or copy/paste the following commands:
cd /emuelec/bin
wget https://raw.githubusercontent.com/EmuELEC/EmuELEC/fad0eabf4b70c1b67537adf9a01c847a0a5247d3/packages/sx05re/emuelec/bin/setres.sh
chmod +x setres.sh

It improved a lot the image centering on the CRT using CVBS, but the image still is a bit to the left in comparison to what my device use to display when in Android.

You can adjust the screen borders by creating a file like this:

echo 60 20 659 459 > "/storage/.config/576cvbs_offsets"

the 1st number is x1, the 2nd is y1, the 3rd is x2 (draw till the pixel on the x-axis on the right), and 4th is y2.
If you use 2 values then it will add borders uni-formally for example the above is equivalent to just:

echo 60 20 > "/storage/.config/576cvbs_offsets"

So if it’s a bit too much to the left try something like:

echo 70 20 > "/storage/.config/576cvbs_offsets"

Thanks for the support. If I use 480cvbs I should create a 480cvbs_offsets file, right? I tried both 576cvbs_offsets and 480cvbs_offsets, seems to have no effect on my CRT, be it 4 values or 2. Being 2 values, whatever values I try, 60 40, 70 20 or even 140 20 have no effect.

Yep 480cvbs_offsets for PAL also make sure your using that latest setres.sh file in /emuelec/bin and had exec permissions.
The link I gave you last is an old setres.sh file, use this:
https://raw.githubusercontent.com/EmuELEC/EmuELEC/e6c97badc1af7d2d0c65cf9633cc0bef4bf3a25b/packages/sx05re/emuelec/bin/setres.sh

It worked fine, thanks! Tweaking the two values I found out my NTSC CRT values are far different, I’m currently using: echo 10 5 > 480cvbs_offsets for results.This is the resulting image from Genesis 240p test, which, TV screen display scratches aside, and after a little Retroarch scaling tweaks, filled the whole screen:

It would be very cool if the AV out supported 240p for a crisp retro display, but I guess I’m just asking too much for a reasonably obscure device and a very niche setup. Maybe in the future could we have a HDMI to VGA 15Khz option for using with transcoders?

Regarding the Emulationstion shutdown issue, I’m still testing some configurations, but still no success. If I eventually fix this I’ll post here.

Hi!

Not working for me. ES crashes under AV. Not crashing if I boot to retroarch directly. (4.6)
I tested all setres.sh you post, and last on dev branch too without success.

Anyone could help me?

dmesg

I confirm the problem that occurs when you connect by composite video to 480CVBS. The TVBOX turns off when loading Emulastation