[OS] Debian Buster (for ODROID Go Advance/Super)

Third party OS images and hardware mods
SupaaSchnitzel
Posts: 4
Joined: Mon Aug 13, 2018 9:33 am
languages_spoken: english, german
ODROIDs: Odroid go
Has thanked: 0
Been thanked: 1 time
Contact:

Re: [OS] Debian Buster (for ODROID Go Advance)

Post by SupaaSchnitzel »

Hi,
i have a problem. the os installs fine, but as soon as i install a desktop it just shows a black screen after the reboot. AM i doing something wrong?
Thanks in advance
Alex
These users thanked the author SupaaSchnitzel for the post:
stormer (Mon Aug 31, 2020 5:34 pm)

User avatar
meveric
Posts: 11382
Joined: Mon Feb 25, 2013 2:41 pm
languages_spoken: german, english
ODROIDs: X2, U2, U3, XU-Lite, XU3, XU3-Lite, C1, XU4, C2, C1+, XU4Q, HC1, N1, Go, H2 (N4100), N2, H2 (J4105), GoA, C4, GoA v1.1, H2+, HC4, GoS
Has thanked: 59 times
Been thanked: 443 times
Contact:

Re: [OS] Debian Buster (for ODROID Go Advance)

Post by meveric »

Check the previous post.
There was an update on MESA GPU drivers, which requires me to update the GPU drivers to fix this, or you can fix manually as described in the previous post.
I'll update the GPU drivers in the next couple days.
Donate to support my work on the ODROID GameStation Turbo Image for U2/U3 XU3/XU4 X2 X C1 as well as many other releases.
Check out the Games and Emulators section to find some of my work or check the files in my repository to find the software i build for ODROIDs.
If you want to add my repository to your image read my HOWTO integrate my repo into your image.

SupaaSchnitzel
Posts: 4
Joined: Mon Aug 13, 2018 9:33 am
languages_spoken: english, german
ODROIDs: Odroid go
Has thanked: 0
Been thanked: 1 time
Contact:

Re: [OS] Debian Buster (for ODROID Go Advance)

Post by SupaaSchnitzel »

Thanks, that did the tricked, should have looked a bit more careful instead of just scrolling through the thread

ThomasW69
Posts: 17
Joined: Sat Jul 18, 2015 8:30 pm
languages_spoken: german, english
ODROIDs: Odroid-U3, Odroid Go Advance BE
Location: Thuringia /Germany
Has thanked: 0
Been thanked: 0
Contact:

Re: [OS] Debian Buster (for ODROID Go Advance)

Post by ThomasW69 »

Now that the x11 and mate desktop is working I was wondering which VNC server I should use. Is there one available in Mate desktop and if, how can I setup it?

User avatar
meveric
Posts: 11382
Joined: Mon Feb 25, 2013 2:41 pm
languages_spoken: german, english
ODROIDs: X2, U2, U3, XU-Lite, XU3, XU3-Lite, C1, XU4, C2, C1+, XU4Q, HC1, N1, Go, H2 (N4100), N2, H2 (J4105), GoA, C4, GoA v1.1, H2+, HC4, GoS
Has thanked: 59 times
Been thanked: 443 times
Contact:

Re: [OS] Debian Buster (for ODROID Go Advance)

Post by meveric »

I normally prefer Vino as a VNC server, but you can use other as well.
But remember the GO2 is not that powerful of a device and VNC might not do good on it's performance.
Still let us know how it works.
Donate to support my work on the ODROID GameStation Turbo Image for U2/U3 XU3/XU4 X2 X C1 as well as many other releases.
Check out the Games and Emulators section to find some of my work or check the files in my repository to find the software i build for ODROIDs.
If you want to add my repository to your image read my HOWTO integrate my repo into your image.

mad_ady
Posts: 9090
Joined: Wed Jul 15, 2015 5:00 pm
languages_spoken: english
ODROIDs: XU4, C1+, C2, C4, N1, N2, H2, Go, Go Advance
Location: Bucharest, Romania
Has thanked: 597 times
Been thanked: 584 times
Contact:

Re: [OS] Debian Buster (for ODROID Go Advance)

Post by mad_ady »

The desktop resolution is low, so vnc should be fine. I prefer x11vnc because I'm old

User avatar
meveric
Posts: 11382
Joined: Mon Feb 25, 2013 2:41 pm
languages_spoken: german, english
ODROIDs: X2, U2, U3, XU-Lite, XU3, XU3-Lite, C1, XU4, C2, C1+, XU4Q, HC1, N1, Go, H2 (N4100), N2, H2 (J4105), GoA, C4, GoA v1.1, H2+, HC4, GoS
Has thanked: 59 times
Been thanked: 443 times
Contact:

Re: [OS] Debian Buster (for ODROID Go Advance)

Post by meveric »

x11vnc is from 2001/2002 vino from 2004 that's not that much of a difference.
Vino integrates with the OS itself in many cases. It has it's own gsettings.

Anyway here's a nice list about different VNC servers:
https://help.ubuntu.com/community/VNC/Servers
Donate to support my work on the ODROID GameStation Turbo Image for U2/U3 XU3/XU4 X2 X C1 as well as many other releases.
Check out the Games and Emulators section to find some of my work or check the files in my repository to find the software i build for ODROIDs.
If you want to add my repository to your image read my HOWTO integrate my repo into your image.

mad_ady
Posts: 9090
Joined: Wed Jul 15, 2015 5:00 pm
languages_spoken: english
ODROIDs: XU4, C1+, C2, C4, N1, N2, H2, Go, Go Advance
Location: Bucharest, Romania
Has thanked: 597 times
Been thanked: 584 times
Contact:

Re: [OS] Debian Buster (for ODROID Go Advance)

Post by mad_ady »

@meveric - do you know what's up with this error?

Code: Select all

odroid@go2-white:~/ymuse$ sudo apt-get install libgtk-3-dev
Reading package lists... Done
Building dependency tree       
Reading state information... Done
Some packages could not be installed. This may mean that you have
requested an impossible situation or if you are using the unstable
distribution that some required packages have not yet been created
or been moved out of Incoming.
The following information may help to resolve the situation:

The following packages have unmet dependencies:
 libgtk-3-dev : Depends: libepoxy-dev (>= 1.0) but it is not going to be installed
E: Unable to correct problems, you have held broken packages.
I'm trying to compile ymuse, a MPD frontend written in go.

On further investigation it's related to the MESA mess:

Code: Select all

 libepoxy-dev : Depends: libgl1-mesa-dev but it is not going to be installed

User avatar
meveric
Posts: 11382
Joined: Mon Feb 25, 2013 2:41 pm
languages_spoken: german, english
ODROIDs: X2, U2, U3, XU-Lite, XU3, XU3-Lite, C1, XU4, C2, C1+, XU4Q, HC1, N1, Go, H2 (N4100), N2, H2 (J4105), GoA, C4, GoA v1.1, H2+, HC4, GoS
Has thanked: 59 times
Been thanked: 443 times
Contact:

Re: [OS] Debian Buster (for ODROID Go Advance)

Post by meveric »

mesa should be able to be installed along side with GPU drivers from me..
Can you try to install libgl1-mesa-dev as well?
I don't provide GL1 packages, so that shouldn't affect the system.
Keep going until you get to a point where you can't complete the requirements.
Just saying it depends on libgl1-mesa-dev is not yet a show stopper..
Only if it says package not found, or conflicts with XYZ then that's where I can say what's going on.

My guess I probably already use some "buster-backports" packages and your driver depends on drivers that are already in buster-backports.
As a quick test just try apt install -t buster-backports libgtk-3-dev to see if that is already enough.
If not follow what I said above.
Donate to support my work on the ODROID GameStation Turbo Image for U2/U3 XU3/XU4 X2 X C1 as well as many other releases.
Check out the Games and Emulators section to find some of my work or check the files in my repository to find the software i build for ODROIDs.
If you want to add my repository to your image read my HOWTO integrate my repo into your image.

mad_ady
Posts: 9090
Joined: Wed Jul 15, 2015 5:00 pm
languages_spoken: english
ODROIDs: XU4, C1+, C2, C4, N1, N2, H2, Go, Go Advance
Location: Bucharest, Romania
Has thanked: 597 times
Been thanked: 584 times
Contact:

Re: [OS] Debian Buster (for ODROID Go Advance)

Post by mad_ady »

It doesn't like the version number:

Code: Select all

odroid@go2-white:~/ymuse$ sudo apt-get install libgtk-3-dev libepoxy-dev libgl1-mesa-dev mesa-common-dev libdrm-dev libdrm2
Reading package lists... Done
Building dependency tree       
Reading state information... Done
libdrm2 is already the newest version (2.4.97-1+odroid1).
libdrm2 set to manually installed.
Some packages could not be installed. This may mean that you have
requested an impossible situation or if you are using the unstable
distribution that some required packages have not yet been created
or been moved out of Incoming.
The following information may help to resolve the situation:

The following packages have unmet dependencies:
 libdrm-dev : Depends: libdrm2 (= 2.4.97-1) but 2.4.97-1+odroid1 is to be installed
E: Unable to correct problems, you have held broken packages.
odroid@go2-white:~/ymuse$ 

I managed to trick it by downloading libdr2-dev and changing the deb to depend on libdrm 2.4.97-1+odroid1 and manually installing it. Now I can go on with my compilation...

User avatar
meveric
Posts: 11382
Joined: Mon Feb 25, 2013 2:41 pm
languages_spoken: german, english
ODROIDs: X2, U2, U3, XU-Lite, XU3, XU3-Lite, C1, XU4, C2, C1+, XU4Q, HC1, N1, Go, H2 (N4100), N2, H2 (J4105), GoA, C4, GoA v1.1, H2+, HC4, GoS
Has thanked: 59 times
Been thanked: 443 times
Contact:

Re: [OS] Debian Buster (for ODROID Go Advance)

Post by meveric »

hmm but libdrm2-dev should be available in that version as well.
It's part of the updates I needed to do for the X11/DRM drivers from Rockchip (libdrm-rockchip1).

Can you check with apt-cache policy libdrm-dev which version it sees?
Donate to support my work on the ODROID GameStation Turbo Image for U2/U3 XU3/XU4 X2 X C1 as well as many other releases.
Check out the Games and Emulators section to find some of my work or check the files in my repository to find the software i build for ODROIDs.
If you want to add my repository to your image read my HOWTO integrate my repo into your image.

pmprog
Posts: 102
Joined: Thu Oct 18, 2018 4:01 am
languages_spoken: english
ODROIDs: ODROID-GO
Has thanked: 27 times
Been thanked: 1 time
Contact:

Re: [OS] Debian Buster (for ODROID Go Advance)

Post by pmprog »

meveric wrote:
Sat Aug 15, 2020 5:42 am
If you have WLAN and LAN connected at the same time the LAN always has a higher priority.
So that could have been the issue, as the route probably preferred the LAN instead.
After seeing the last few comments here since my post about disabling LAN, I've just give it a try, and now my WiFi works. Why would it think my LAN was connected though?
Anyway, as I said, I'm finally connected now, so I can give this a bit of a spin.

Cheers

Edit: Getting to 50% of installing MATE after about 4 hours, I pretty much gave up and switched the device off.

mad_ady
Posts: 9090
Joined: Wed Jul 15, 2015 5:00 pm
languages_spoken: english
ODROIDs: XU4, C1+, C2, C4, N1, N2, H2, Go, Go Advance
Location: Bucharest, Romania
Has thanked: 597 times
Been thanked: 584 times
Contact:

Re: [OS] Debian Buster (for ODROID Go Advance)

Post by mad_ady »

For me installation of mate never took more than an hour

User avatar
meveric
Posts: 11382
Joined: Mon Feb 25, 2013 2:41 pm
languages_spoken: german, english
ODROIDs: X2, U2, U3, XU-Lite, XU3, XU3-Lite, C1, XU4, C2, C1+, XU4Q, HC1, N1, Go, H2 (N4100), N2, H2 (J4105), GoA, C4, GoA v1.1, H2+, HC4, GoS
Has thanked: 59 times
Been thanked: 443 times
Contact:

Re: [OS] Debian Buster (for ODROID Go Advance)

Post by meveric »

hmm that really depends on the quality of your SD card.
I have some crappy SD card, where it took 7hrs to install MATE (didn't really care it ran in the background).
And last time I tried it, I was using a A1 grade SanDisk SD card where it took about 15~20mins.
Donate to support my work on the ODROID GameStation Turbo Image for U2/U3 XU3/XU4 X2 X C1 as well as many other releases.
Check out the Games and Emulators section to find some of my work or check the files in my repository to find the software i build for ODROIDs.
If you want to add my repository to your image read my HOWTO integrate my repo into your image.

mad_ady
Posts: 9090
Joined: Wed Jul 15, 2015 5:00 pm
languages_spoken: english
ODROIDs: XU4, C1+, C2, C4, N1, N2, H2, Go, Go Advance
Location: Bucharest, Romania
Has thanked: 597 times
Been thanked: 584 times
Contact:

Re: [OS] Debian Buster (for ODROID Go Advance)

Post by mad_ady »

@meveric: How do you force audio output to headphones (I don't think there is any headphone detection) in your gaming image? I'd like to set it up as a audio output in MPD so that I can route audio to headphone jack.

Code: Select all

root@go2-white:~# aplay -L
null
    Discard all samples (playback) or generate zero samples (capture)
jack
    JACK Audio Connection Kit
pulse
    PulseAudio Sound Server
default:CARD=rockchiprk817co
    rockchip,rk817-codec,
    Default Audio Device
sysdefault:CARD=rockchiprk817co
    rockchip,rk817-codec, 
    Default Audio Device
dmix:CARD=rockchiprk817co,DEV=0
    rockchip,rk817-codec, 
    Direct sample mixing device
dsnoop:CARD=rockchiprk817co,DEV=0
    rockchip,rk817-codec, 
    Direct sample snooping device
hw:CARD=rockchiprk817co,DEV=0
    rockchip,rk817-codec, 
    Direct hardware device without any conversions
plughw:CARD=rockchiprk817co,DEV=0
    rockchip,rk817-codec, 
    Hardware device with all software conversions
usbstream:CARD=rockchiprk817co
    rockchip,rk817-codec
    USB Stream Output

Edit: I was wrong - there is headphone input detection:

Code: Select all

Event: time 1598340631.283690, type 5 (EV_SW), code 2 (SW_HEADPHONE_INSERT), value 1
Event: time 1598340631.283690, -------------- SYN_REPORT ------------
Event: time 1598340632.887462, type 5 (EV_SW), code 2 (SW_HEADPHONE_INSERT), value 0
Event: time 1598340632.887462, -------------- SYN_REPORT ------------


User avatar
meveric
Posts: 11382
Joined: Mon Feb 25, 2013 2:41 pm
languages_spoken: german, english
ODROIDs: X2, U2, U3, XU-Lite, XU3, XU3-Lite, C1, XU4, C2, C1+, XU4Q, HC1, N1, Go, H2 (N4100), N2, H2 (J4105), GoA, C4, GoA v1.1, H2+, HC4, GoS
Has thanked: 59 times
Been thanked: 443 times
Contact:

Re: [OS] Debian Buster (for ODROID Go Advance)

Post by meveric »

Code: Select all

amixer -c 0 sset 'Playback Path' '<OUTPUT>'
where <OUTPUT> is either:
SPK, HP, SPK_HP or OFF

(Speaker, Headphones, Speaker + Headphones, no sound)

so for example:

Code: Select all

amixer -c 0 sset 'Playback Path' 'HP'
would set the output to Headphones only.
These users thanked the author meveric for the post:
mad_ady (Wed Aug 26, 2020 8:54 pm)
Donate to support my work on the ODROID GameStation Turbo Image for U2/U3 XU3/XU4 X2 X C1 as well as many other releases.
Check out the Games and Emulators section to find some of my work or check the files in my repository to find the software i build for ODROIDs.
If you want to add my repository to your image read my HOWTO integrate my repo into your image.

mad_ady
Posts: 9090
Joined: Wed Jul 15, 2015 5:00 pm
languages_spoken: english
ODROIDs: XU4, C1+, C2, C4, N1, N2, H2, Go, Go Advance
Location: Bucharest, Romania
Has thanked: 597 times
Been thanked: 584 times
Contact:

Re: [OS] Debian Buster (for ODROID Go Advance)

Post by mad_ady »

Thanks!

stormer
Posts: 9
Joined: Fri Aug 28, 2020 11:07 pm
languages_spoken: english
ODROIDs: odroid go advance 1.1 black
Has thanked: 6 times
Been thanked: 0
Contact:

Re: [OS] Debian Buster (for ODROID Go Advance)

Post by stormer »

SupaaSchnitzel wrote:
Tue Aug 18, 2020 7:52 pm
Hi,
i have a problem. the os installs fine, but as soon as i install a desktop it just shows a black screen after the reboot. AM i doing something wrong?
Thanks in advance
Alex
Hi~ Did you resoled the problem? I dont know how fix manually :cry: Any tip :idea: ? Thanks~

mad_ady
Posts: 9090
Joined: Wed Jul 15, 2015 5:00 pm
languages_spoken: english
ODROIDs: XU4, C1+, C2, C4, N1, N2, H2, Go, Go Advance
Location: Bucharest, Romania
Has thanked: 597 times
Been thanked: 584 times
Contact:

Re: [OS] Debian Buster (for ODROID Go Advance)

Post by mad_ady »

The fix has been discussed here: viewtopic.php?p=303167#p303167

mad_ady
Posts: 9090
Joined: Wed Jul 15, 2015 5:00 pm
languages_spoken: english
ODROIDs: XU4, C1+, C2, C4, N1, N2, H2, Go, Go Advance
Location: Bucharest, Romania
Has thanked: 597 times
Been thanked: 584 times
Contact:

Re: [OS] Debian Buster (for ODROID Go Advance)

Post by mad_ady »

Shameless plug for anyone wanting to control a ncurses app with the Go Advance keypad, but without having to use X11: viewtopic.php?f=193&t=40068

macc24
Posts: 5
Joined: Sun Sep 20, 2020 11:31 pm
languages_spoken: english polish
ODROIDs: Go Advance BE
Has thanked: 1 time
Been thanked: 6 times
Contact:

Re: [OS] Debian Buster (for ODROID Go Advance)

Post by macc24 »

Any plans to support mainline kernel?

User avatar
meveric
Posts: 11382
Joined: Mon Feb 25, 2013 2:41 pm
languages_spoken: german, english
ODROIDs: X2, U2, U3, XU-Lite, XU3, XU3-Lite, C1, XU4, C2, C1+, XU4Q, HC1, N1, Go, H2 (N4100), N2, H2 (J4105), GoA, C4, GoA v1.1, H2+, HC4, GoS
Has thanked: 59 times
Been thanked: 443 times
Contact:

Re: [OS] Debian Buster (for ODROID Go Advance)

Post by meveric »

Probably not.
I'll have to check mesa support if it's fast enough.
But I don't think it's worth it as it's not a standard SBC.
Donate to support my work on the ODROID GameStation Turbo Image for U2/U3 XU3/XU4 X2 X C1 as well as many other releases.
Check out the Games and Emulators section to find some of my work or check the files in my repository to find the software i build for ODROIDs.
If you want to add my repository to your image read my HOWTO integrate my repo into your image.

MrStahlfelge
Posts: 2
Joined: Wed Dec 16, 2020 1:52 am
languages_spoken: english,german
ODROIDs: Odroid Go Advance BE
Has thanked: 0
Been thanked: 0
Contact:

Re: [OS] Debian Buster (for ODROID Go Advance)

Post by MrStahlfelge »

Hi,

thanks for this image. I was able to get it to run on my Adance Black Edition.
However, it seems I don't have any OpenGL support. I wanted to use the image to check if the Odroid is capable of running libgdx games since arm64 support was added to libgdx.
However, running a compiled game is canceled on start because of an Lwjgl3 error:
GLFW_API_UNAVAILABLE
GLX extension not found
I tried to install libgl1-mesa-dev with the command given above (sudo apt-get install libgtk-3-dev libepoxy-dev libgl1-mesa-dev mesa-common-dev libdrm-dev libdrm2). However, this does not work out but is canceled due to unmet dependency (libdrm2 2.4.91-1 needed, but 2.4.91-1+odroid1 installed)

Any hints appreciated. I have to admit that I am not experienced in solving such problems despite the fact that I use Linux as my main operating system. :)

User avatar
meveric
Posts: 11382
Joined: Mon Feb 25, 2013 2:41 pm
languages_spoken: german, english
ODROIDs: X2, U2, U3, XU-Lite, XU3, XU3-Lite, C1, XU4, C2, C1+, XU4Q, HC1, N1, Go, H2 (N4100), N2, H2 (J4105), GoA, C4, GoA v1.1, H2+, HC4, GoS
Has thanked: 59 times
Been thanked: 443 times
Contact:

Re: [OS] Debian Buster (for ODROID Go Advance)

Post by meveric »

ARM devices generally only support OpenGL ES not full Desktop OpenGL (although this is now changing with the OpenSource Panfrost MESA drivers).
Therefore you can't run OpenGL applications on the board directly.

I have however a OpenGL to OpenGL ES wrapper (gl4es) by @ptitSeb, which allows you to run limited OpenGL applications (currently up to OpenGL Profile 2.1 is supported).
You can install it by installing the package libgl-odroid.

Also, none of the drivers for GPU is installed by default.
I HIGHLY recommend you use the setup-odroid tool to install a desktop first (I recommend MATE).
Which will install GPU drivers and set it up.
GLX -> "OpenGL Extension to the X Window System" requires X11 or a Desktop anyway.
Donate to support my work on the ODROID GameStation Turbo Image for U2/U3 XU3/XU4 X2 X C1 as well as many other releases.
Check out the Games and Emulators section to find some of my work or check the files in my repository to find the software i build for ODROIDs.
If you want to add my repository to your image read my HOWTO integrate my repo into your image.

MrStahlfelge
Posts: 2
Joined: Wed Dec 16, 2020 1:52 am
languages_spoken: english,german
ODROIDs: Odroid Go Advance BE
Has thanked: 0
Been thanked: 0
Contact:

Re: [OS] Debian Buster (for ODROID Go Advance)

Post by MrStahlfelge »

Thank you for your reply. Of course I already set up the MATE desktop, wifi etc, what was recommended on the first pages. Is there a wiki page of useful add ons to install, like libgl-odroid?

Lwjgl3/libgdx is confirmed to run on Raspi with Raspian, so this should work on the Odroid, too - in theory. I installed libgl-odroid now sucessfully, however, the error still persists.

I tried to check with glxinfo if glx is active, but it just raises an error (couldn’t find RGB GLX visual or fbconfig). I checked Xorg.0.log and it states at the beginning that GLX is disabled, but that's all I can find convering it.

Btw, I have another minor inconvinience I don't understand: Wifi is often not connected after a system start, but sometimes it is. Restarting the network server helps, but I don't understand why it is working sometimes and often not.

Thanks for your help!

User avatar
meveric
Posts: 11382
Joined: Mon Feb 25, 2013 2:41 pm
languages_spoken: german, english
ODROIDs: X2, U2, U3, XU-Lite, XU3, XU3-Lite, C1, XU4, C2, C1+, XU4Q, HC1, N1, Go, H2 (N4100), N2, H2 (J4105), GoA, C4, GoA v1.1, H2+, HC4, GoS
Has thanked: 59 times
Been thanked: 443 times
Contact:

Re: [OS] Debian Buster (for ODROID Go Advance)

Post by meveric »

MrStahlfelge wrote:
Wed Dec 16, 2020 3:05 am
Thank you for your reply. Of course I already set up the MATE desktop, wifi etc, what was recommended on the first pages. Is there a wiki page of useful add ons to install, like libgl-odroid?
Not really I have thousands of packages in my repository, from games over tools and drivers.
It really depends on the stuff you want to do.
MrStahlfelge wrote:
Wed Dec 16, 2020 3:05 am
Lwjgl3/libgdx is confirmed to run on Raspi with Raspian, so this should work on the Odroid, too - in theory.
One has nothing to do with the other. RPi uses MESA drivers and has standard OpenGL support, as I said before, ODROIDs do not have this, therefore you can not compare this.
Some ODROID boards already have MESA support as well (ODROID N1 is the best at the moment), they would outperform RPi, but the drivers are not there yet for all boards.
MrStahlfelge wrote:
Wed Dec 16, 2020 3:05 am
I installed libgl-odroid now sucessfully, however, the error still persists.
I tried to check with glxinfo if glx is active, but it just raises an error (couldn’t find RGB GLX visual or fbconfig). I checked Xorg.0.log and it states at the beginning that GLX is disabled, but that's all I can find convering it.
Just installing alone doesn't work you also have to point the program to the right location.
For example:

Code: Select all

LD_LIBRARY_PATH=/usr/local/lib/aarch64-linux-gnu/ glxinfo
Should show some different results, but GLX directly will probably not work, also you won't find any support for GLX in Xorg.0.log as once again, OpenGL is not supported, and therefore the Desktop does not run on OpenGL or GLX.
MrStahlfelge wrote:
Wed Dec 16, 2020 3:05 am
Btw, I have another minor inconvinience I don't understand: Wifi is often not connected after a system start, but sometimes it is. Restarting the network server helps, but I don't understand why it is working sometimes and often not.

Thanks for your help!
Not sure about WLAN, I configure mine via /etc/network/interfaces and it works quite reliably.
I haven't tired via network manager yet.
Donate to support my work on the ODROID GameStation Turbo Image for U2/U3 XU3/XU4 X2 X C1 as well as many other releases.
Check out the Games and Emulators section to find some of my work or check the files in my repository to find the software i build for ODROIDs.
If you want to add my repository to your image read my HOWTO integrate my repo into your image.

Azure48
Posts: 22
Joined: Thu Dec 17, 2020 3:53 am
languages_spoken: english
ODROIDs: ODROID Go-Advance
Has thanked: 3 times
Been thanked: 0
Contact:

Re: [OS] Debian Buster (for ODROID Go Advance)

Post by Azure48 »

Hello, I've been messing around with this image for a couple of days now, but I've run into a bit of a wall trying to run Steam under box86. I've managed to get everything mostly working, but binfmt doesn't work, so the shell script fails. From what I've found from a bit of searching, it's seemingly because CONFIG_BINFMT_MISC isn't enabled in the kernel? I couldn't find any source on your repo to attempt building it myself, is there something I'm missing? Or could you maybe update the kernel with it? I'm decently experienced with Linux but I've never really dug into this type of stuff before. Thanks.

User avatar
meveric
Posts: 11382
Joined: Mon Feb 25, 2013 2:41 pm
languages_spoken: german, english
ODROIDs: X2, U2, U3, XU-Lite, XU3, XU3-Lite, C1, XU4, C2, C1+, XU4Q, HC1, N1, Go, H2 (N4100), N2, H2 (J4105), GoA, C4, GoA v1.1, H2+, HC4, GoS
Has thanked: 59 times
Been thanked: 443 times
Contact:

Re: [OS] Debian Buster (for ODROID Go Advance)

Post by meveric »

Azure48 wrote:
Thu Dec 17, 2020 4:04 am
Hello, I've been messing around with this image for a couple of days now, but I've run into a bit of a wall trying to run Steam under box86. I've managed to get everything mostly working, but binfmt doesn't work, so the shell script fails. From what I've found from a bit of searching, it's seemingly because CONFIG_BINFMT_MISC isn't enabled in the kernel? I couldn't find any source on your repo to attempt building it myself, is there something I'm missing? Or could you maybe update the kernel with it? I'm decently experienced with Linux but I've never really dug into this type of stuff before. Thanks.
I use the Kernel from HardKernel by default.
I can try rebuilding it with CONFIG_BINFMT_MISC support shouldn't be that hard :)
Then you can just update the image via apt and have a kernel with that option available.
Give me a few days and I report back.
These users thanked the author meveric for the post:
Azure48 (Thu Dec 17, 2020 3:06 pm)
Donate to support my work on the ODROID GameStation Turbo Image for U2/U3 XU3/XU4 X2 X C1 as well as many other releases.
Check out the Games and Emulators section to find some of my work or check the files in my repository to find the software i build for ODROIDs.
If you want to add my repository to your image read my HOWTO integrate my repo into your image.

Azure48
Posts: 22
Joined: Thu Dec 17, 2020 3:53 am
languages_spoken: english
ODROIDs: ODROID Go-Advance
Has thanked: 3 times
Been thanked: 0
Contact:

Re: [OS] Debian Buster (for ODROID Go Advance)

Post by Azure48 »

Makes sense, thank you! Also, I've been having trouble running/installing armhf software, libgl1:armhf, libglx-mesa-dev:armhf, libdrm-dev:armhf, libdrm2:armhf, and all of the other dependencies, always refuse to install. This is my first time trying to do multiarch things on Linux, so I'm not entirely sure if I'm just not supposed to do that at all? But several armhf packages I need have a dependency that always winds up wanting one of those few that I can't install. I've seen some errors maybe indicating it has something to do with libdrm2 2.4.97-1+odroid1 not wanting to play nice with the non +odroid1 armhf version? I'm really not sure.

User avatar
meveric
Posts: 11382
Joined: Mon Feb 25, 2013 2:41 pm
languages_spoken: german, english
ODROIDs: X2, U2, U3, XU-Lite, XU3, XU3-Lite, C1, XU4, C2, C1+, XU4Q, HC1, N1, Go, H2 (N4100), N2, H2 (J4105), GoA, C4, GoA v1.1, H2+, HC4, GoS
Has thanked: 59 times
Been thanked: 443 times
Contact:

Re: [OS] Debian Buster (for ODROID Go Advance)

Post by meveric »

have to check if libdrm2 2.4.97-1+odroid1 is available for armhf or if I only made it for arm64 but I think it's more likely an issue with the -dev package as I might not have pushed this, as you only need it to build stuff which should not be needed.
Also please note even if you can install the above libraries you can't use them, as OpenGL is not supported, and you can only use OpenGL ES.
These users thanked the author meveric for the post:
Azure48 (Fri Dec 18, 2020 3:05 pm)
Donate to support my work on the ODROID GameStation Turbo Image for U2/U3 XU3/XU4 X2 X C1 as well as many other releases.
Check out the Games and Emulators section to find some of my work or check the files in my repository to find the software i build for ODROIDs.
If you want to add my repository to your image read my HOWTO integrate my repo into your image.

Azure48
Posts: 22
Joined: Thu Dec 17, 2020 3:53 am
languages_spoken: english
ODROIDs: ODROID Go-Advance
Has thanked: 3 times
Been thanked: 0
Contact:

Re: [OS] Debian Buster (for ODROID Go Advance)

Post by Azure48 »

My bad, I believe I've mixed up libgl with libegl and so on, and I don't remember how libdrm-dev and libglx-mesa-dev got into the mix. However libdrm2:armhf still refuses to install, and I think that's the core of my problems. You may have to bear with me a little, I don't really understand everything that's going on here.

EDIT: I haven't even had any luck with arm64 gles actually, am I missing something? RVGL works perfectly, but other things tend to segfault or have some other kind of error. Trying to run the glmark2-es2 package from your repo just says "eglCreateWindowSurface failed with error: 0x3003", but as far as I can tell I shouldn't be missing anything? Are the drivers broken? I have the symbolic link in place suggested earlier in the thread, I'm really not sure what I'm doing wrong here.

EDIT 2: Nevermind, GLX was disabled in /etc/X11/xorg.conf.d/20-modesetting.conf, for some reason, and that ended up being the core of the problem, sorry. Still, libdrm2:armhf is missing, I've had to downgrade to the non +odroid1 versions for everything to work, and I'd imagine they're probably there for a reason.

User avatar
meveric
Posts: 11382
Joined: Mon Feb 25, 2013 2:41 pm
languages_spoken: german, english
ODROIDs: X2, U2, U3, XU-Lite, XU3, XU3-Lite, C1, XU4, C2, C1+, XU4Q, HC1, N1, Go, H2 (N4100), N2, H2 (J4105), GoA, C4, GoA v1.1, H2+, HC4, GoS
Has thanked: 59 times
Been thanked: 443 times
Contact:

Re: [OS] Debian Buster (for ODROID Go Advance)

Post by meveric »

Azure48 wrote:
Fri Dec 18, 2020 2:39 pm
My bad, I believe I've mixed up libgl with libegl and so on, and I don't remember how libdrm-dev and libglx-mesa-dev got into the mix. However libdrm2:armhf still refuses to install, and I think that's the core of my problems. You may have to bear with me a little, I don't really understand everything that's going on here.
None of these libraries will work.
The GO2 doesn't use MESA libraries, and while you can "install" them (and may have to for some -dev packages) none of them will WORK as the Kernel doesn't support MESA and you end up with software rendering instead of Hardware rendering.
Meaning all of your OS will run on the CPU not on GPU.
Azure48 wrote:
Fri Dec 18, 2020 2:39 pm
EDIT: I haven't even had any luck with arm64 gles actually, am I missing something? RVGL works perfectly, but other things tend to segfault or have some other kind of error. Trying to run the glmark2-es2 package from your repo just says "eglCreateWindowSurface failed with error: 0x3003", but as far as I can tell I shouldn't be missing anything? Are the drivers broken? I have the symbolic link in place suggested earlier in the thread, I'm really not sure what I'm doing wrong here.
Most likely cause you installed the libegl drivers from MESA and with that broke MALI GPU support.
Re-installing MALI GPU drivers may fix this:

Code: Select all

apt install --reinstall libmali-rk-bifrost-g31-rxp0-x11-gbm libmali-rk-bifrost-g31-rxp0-x11-gbm:armhf
Azure48 wrote:
Fri Dec 18, 2020 2:39 pm
EDIT 2: Nevermind, GLX was disabled in /etc/X11/xorg.conf.d/20-modesetting.conf, for some reason, and that ended up being the core of the problem, sorry.
Since the ODROID Go2 doesn't support OpenGL, it also doesn't support GLX, therefore it should be disabled.
The config is correct, most likely you just broke the GPU support by installing MESA drivers.
Azure48 wrote:
Fri Dec 18, 2020 2:39 pm
Still, libdrm2:armhf is missing, I've had to downgrade to the non +odroid1 versions for everything to work, and I'd imagine they're probably there for a reason.
I'm currently working on fixing the Kernel (already have a working Kernel with BINFMT_MISC support), but I need to test the replacement procedure of the Kernel, so you don't get stuck during the update.
After that I'll look into the libdrm issue, although I'm still not sure what you need it for.
Donate to support my work on the ODROID GameStation Turbo Image for U2/U3 XU3/XU4 X2 X C1 as well as many other releases.
Check out the Games and Emulators section to find some of my work or check the files in my repository to find the software i build for ODROIDs.
If you want to add my repository to your image read my HOWTO integrate my repo into your image.

User avatar
meveric
Posts: 11382
Joined: Mon Feb 25, 2013 2:41 pm
languages_spoken: german, english
ODROIDs: X2, U2, U3, XU-Lite, XU3, XU3-Lite, C1, XU4, C2, C1+, XU4Q, HC1, N1, Go, H2 (N4100), N2, H2 (J4105), GoA, C4, GoA v1.1, H2+, HC4, GoS
Has thanked: 59 times
Been thanked: 443 times
Contact:

Re: [OS] Debian Buster (for ODROID Go Advance)

Post by meveric »

ok, new Kernel is ready, hopefully it works as expected.

Will work on libdrm next.
These users thanked the author meveric for the post:
Azure48 (Sun Dec 20, 2020 8:58 am)
Donate to support my work on the ODROID GameStation Turbo Image for U2/U3 XU3/XU4 X2 X C1 as well as many other releases.
Check out the Games and Emulators section to find some of my work or check the files in my repository to find the software i build for ODROIDs.
If you want to add my repository to your image read my HOWTO integrate my repo into your image.

Azure48
Posts: 22
Joined: Thu Dec 17, 2020 3:53 am
languages_spoken: english
ODROIDs: ODROID Go-Advance
Has thanked: 3 times
Been thanked: 0
Contact:

Re: [OS] Debian Buster (for ODROID Go Advance)

Post by Azure48 »

I see, I remembered reading somewhere that Mesa supported Mali GPUs, perhaps I was mistaken or mixed up with something else, that makes more sense, and I also assumed GLX worked with GL ES, my bad, thank you. And the main thing that I couldn't get to work with libdrm2 was SDL2, I could only get the armhf version to install everything correctly when all of the drivers were in place. Going to rebuild and install Box86 with the new kernel, will report back how it goes.

Azure48
Posts: 22
Joined: Thu Dec 17, 2020 3:53 am
languages_spoken: english
ODROIDs: ODROID Go-Advance
Has thanked: 3 times
Been thanked: 0
Contact:

Re: [OS] Debian Buster (for ODROID Go Advance)

Post by Azure48 »

Disabling GLX back to how it was and reinstalling the Mali drivers just put things back to how it was. I attempted to remove any unnecessary mesa or glx drivers, and that didn't seem to help. The usual error, usually from anything that uses qt, being

Code: Select all

Cannot find EGLConfig, returning null config
Unable to find an X11 visual which matches EGL config 0
Segmentation fault
I also tried going back to libdrm2+odroid1, and that made no difference. Perhaps i've just messed everything up royally here, wouldn't be a first for me. :|

As for binfmt, it seems to be missing some files? I have binfmt-support installed, attempted reinstalling it as well, no dice. Maybe I'll try starting over with a fresh sd card, didn't want to have to resort to that, though.

Code: Select all

● systemd-binfmt.service - Set Up Additional Binary Formats
   Loaded: loaded (/lib/systemd/system/systemd-binfmt.service; static; vendor preset: enabled)
   Active: failed (Result: exit-code) since Sun 2020-12-20 00:46:27 UTC; 20min ago
Condition: start condition failed at Sun 2020-12-20 01:06:47 UTC; 1s ago
           ├─ ConditionDirectoryNotEmpty=|/lib/binfmt.d was not met
           ├─ ConditionDirectoryNotEmpty=|/usr/lib/binfmt.d was not met
           ├─ ConditionDirectoryNotEmpty=|/usr/local/lib/binfmt.d was not met
           ├─ ConditionDirectoryNotEmpty=|/etc/binfmt.d was not met
           └─ ConditionDirectoryNotEmpty=|/run/binfmt.d was not met
     Docs: man:systemd-binfmt.service(8)
           man:binfmt.d(5)
           https://www.kernel.org/doc/html/latest/admin-guide/binfmt-misc.html
           https://www.freedesktop.org/wiki/Software/systemd/APIFileSystems
 Main PID: 257 (code=exited, status=1/FAILURE)

Dec 20 00:46:27 buster64-go2 systemd[1]: Starting Set Up Additional Binary Formats...
Dec 20 00:46:27 buster64-go2 systemd-binfmt[257]: Failed to add binary format: No such file or directory
Dec 20 00:46:27 buster64-go2 systemd[1]: systemd-binfmt.service: Main process exited, code=exited, status=1/FAILURE
Dec 20 00:46:27 buster64-go2 systemd[1]: systemd-binfmt.service: Failed with result 'exit-code'.
Dec 20 00:46:27 buster64-go2 systemd[1]: Failed to start Set Up Additional Binary Formats.
Dec 20 00:52:41 buster64-go2 systemd[1]: Condition check resulted in Set Up Additional Binary Formats being skipped.
Dec 20 01:06:47 buster64-go2 systemd[1]: Condition check resulted in Set Up Additional Binary Formats being skipped.
Thank you for all of your help, by the way. :)

User avatar
meveric
Posts: 11382
Joined: Mon Feb 25, 2013 2:41 pm
languages_spoken: german, english
ODROIDs: X2, U2, U3, XU-Lite, XU3, XU3-Lite, C1, XU4, C2, C1+, XU4Q, HC1, N1, Go, H2 (N4100), N2, H2 (J4105), GoA, C4, GoA v1.1, H2+, HC4, GoS
Has thanked: 59 times
Been thanked: 443 times
Contact:

Re: [OS] Debian Buster (for ODROID Go Advance)

Post by meveric »

Azure48 wrote:
Sun Dec 20, 2020 8:58 am
I see, I remembered reading somewhere that Mesa supported Mali GPUs, perhaps I was mistaken or mixed up with something else, that makes more sense, and I also assumed GLX worked with GL ES, my bad, thank you.
GLX only works with Desktop OpenGL not with OpenGL ES.
MALI GPUs slowly getting to work with MESA drivers, but you need LATEST Kernel (talking about 5.9 and higher).
Also requires LATEST MESA GPU drivers (20.3 or higher).
Everything that is currently on this image available is not ready to work with MESA.
Azure48 wrote:
Sun Dec 20, 2020 8:58 am
And the main thing that I couldn't get to work with libdrm2 was SDL2, I could only get the armhf version to install everything correctly when all of the drivers were in place. Going to rebuild and install Box86 with the new kernel, will report back how it goes.
I provide ready to use packages for box86 and wine for box86 to run on this image, which only need to be installed.
SDL2 works fine, many of the application I use rely on SDL2 with hardware acceleration and they work fine.
In fact, it's the other way around, if you break the image and have MESA with OpenGL in software rendering, SDL2 won't work anymore as it's specific for OpenGL ES.
The version of libdrm has a +odroid1 in it's name as it's a specific version optimized to run on RockChip variations of the X Server allowing for "some" OpenGL ES hardware acceleration. It's not GLX, but it can still use glamore.
So this works as well.
Only when you start to install -dev packages there might be a hickup if I forgot to upload a package or you don't install from the correct repository.

Overall libdrm2 works fine, I use it for the image as it's provided :)
Azure48 wrote:
Sun Dec 20, 2020 10:53 am
The usual error, usually from anything that uses qt, being

Code: Select all

Cannot find EGLConfig, returning null config
Unable to find an X11 visual which matches EGL config 0
Segmentation fault
Qt is another issue I can currently not resolve.
Debian builds Qt5 against OpenGL on arm64 platforms, which means it requires OpenGL to work with, but we only have OpenGL ES.
Therefore it doesn't work.
Ubuntu for example builds Qt5 on arm64 against OpenGL ES and that works fine.
In the past I rebuild Qt5 with OpenGL ES support, but that's a very long process that can take several weeks, which is why I haven't done this.
Therefore I have to say Qt5 won't work at the moment, at least not when hardware acceleration is needed.
Azure48 wrote:
Sun Dec 20, 2020 10:53 am
I also tried going back to libdrm2+odroid1, and that made no difference. Perhaps i've just messed everything up royally here, wouldn't be a first for me. :|

As for binfmt, it seems to be missing some files? I have binfmt-support installed, attempted reinstalling it as well, no dice. Maybe I'll try starting over with a fresh sd card, didn't want to have to resort to that, though.
Probably a good idea. Sometimes it's hard to backtrack what you changed on an image over time and it's better to start from a fresh install.
Donate to support my work on the ODROID GameStation Turbo Image for U2/U3 XU3/XU4 X2 X C1 as well as many other releases.
Check out the Games and Emulators section to find some of my work or check the files in my repository to find the software i build for ODROIDs.
If you want to add my repository to your image read my HOWTO integrate my repo into your image.

Azure48
Posts: 22
Joined: Thu Dec 17, 2020 3:53 am
languages_spoken: english
ODROIDs: ODROID Go-Advance
Has thanked: 3 times
Been thanked: 0
Contact:

Re: [OS] Debian Buster (for ODROID Go Advance)

Post by Azure48 »

I've got a fresh SD card set up, binfmt seems to work now, but Box86 doesn't, and I think that's because the version in your repo dynamically linked. I don't really know how to build it that way, but I'll see if I can figure it out tomorrow.

Also, as for qt5, I wasn't aware that was a problem at all. I've used qt5 applications on similar-ish hardware in the past without any snags, and I assumed KDE Plasma and LXQT being options in setup-odroid implied that it'd be fine. I assume it's the same across all of the Odroids then? I tend to gravitate towards KDE programs which are pretty much all qt, so that explains a lot of my earlier problems. :oops:

Might be a good idea to point that out somewhere, and if you'd be able to, it might be worth editing the setup scripts a little for the OGA. Libreoffice eats up quite a large chunk of the installation and I don't imagine anyone would want to use it on a screen like this, among other things.

User avatar
meveric
Posts: 11382
Joined: Mon Feb 25, 2013 2:41 pm
languages_spoken: german, english
ODROIDs: X2, U2, U3, XU-Lite, XU3, XU3-Lite, C1, XU4, C2, C1+, XU4Q, HC1, N1, Go, H2 (N4100), N2, H2 (J4105), GoA, C4, GoA v1.1, H2+, HC4, GoS
Has thanked: 59 times
Been thanked: 443 times
Contact:

Re: [OS] Debian Buster (for ODROID Go Advance)

Post by meveric »

Azure48 wrote:
Sun Dec 20, 2020 11:04 pm
I've got a fresh SD card set up, binfmt seems to work now, but Box86 doesn't, and I think that's because the version in your repo dynamically linked.
box86 in my repo does work, I already played around with it quite a bit.
Here are some examples:
https://oph.mdrjr.net/meveric/other/Vid ... ox86-1.mp4
https://oph.mdrjr.net/meveric/other/Vid ... ox86-2.mp4
https://oph.mdrjr.net/meveric/other/Vid ... wine-1.mp4
https://oph.mdrjr.net/meveric/other/Vid ... wine-2.mp4

Linking it dynamically has absolutely nothing to do with it NOT working. On the contrary, it's more likely NOT to work if you link it statically.
There was a long discussion about that on GitHub project page of box86, basically dynamic linking is what you want.
Azure48 wrote:
Sun Dec 20, 2020 11:04 pm
Also, as for qt5, I wasn't aware that was a problem at all. I've used qt5 applications on similar-ish hardware in the past without any snags, and I assumed KDE Plasma and LXQT being options in setup-odroid implied that it'd be fine.
In the past (for Debian Stretch) I rebuild Qt5 so it did work, but on Debian Buster, I haven't done that.
As I said, this is a very long process that takes several weeks just for compiling all the involved packages.
Azure48 wrote:
Sun Dec 20, 2020 11:04 pm
I assume it's the same across all of the Odroids then? I tend to gravitate towards KDE programs which are pretty much all qt, so that explains a lot of my earlier problems. :oops:
Depends on the ODROID and the OS that is running. ARMHF is compiled against OpenGL ES. It's just that Debian decided to compile arm64 against OpenGL.
So any board that uses ARMHF instead is fine, or if the OS is my Debian Stretch it's fine as well.
Ubuntu images also have Qt5 build against OpenGL ES so it's working there as well.
Also if the board supports upstream Kernel with MESA Panfrost driver for Mali GPU it can run OpenGL along side OpenGL ES.
Some stuff even works with wrappers.
BUT an entire Desktop OS is something different. Only cause Qt5 is working doesn't mean a KDE Desktop will work as well.
In the past these Desktops had support for OpenGL ES through kde-win-gles but that was removed after KDE 4.
Not sure what the state of KDE5 is, never tried.
Azure48 wrote:
Sun Dec 20, 2020 11:04 pm
Might be a good idea to point that out somewhere, and if you'd be able to, it might be worth editing the setup scripts a little for the OGA. Libreoffice eats up quite a large chunk of the installation and I don't imagine anyone would want to use it on a screen like this, among other things.
These are not my installation scripts, it simply installs the packages from Debian, for example "task-mate-desktop" and that package installs libreoffice automatically.
It's not "me" installing these.
Donate to support my work on the ODROID GameStation Turbo Image for U2/U3 XU3/XU4 X2 X C1 as well as many other releases.
Check out the Games and Emulators section to find some of my work or check the files in my repository to find the software i build for ODROIDs.
If you want to add my repository to your image read my HOWTO integrate my repo into your image.

Azure48
Posts: 22
Joined: Thu Dec 17, 2020 3:53 am
languages_spoken: english
ODROIDs: ODROID Go-Advance
Has thanked: 3 times
Been thanked: 0
Contact:

Re: [OS] Debian Buster (for ODROID Go Advance)

Post by Azure48 »

I see, that all makes sense, and yes, box86 does indeed seem to work, but the problem is some things like steam can't work without going through binfmt_misc, and unless I'm wrong, binfmt_misc can't redirect to something that isn't statically linked? So then would the solution perhaps be to have a dynamically linked version for use whenever possible, and static otherwise. Unless there's some way to get it working that i'm not aware of, or I'm just wrong about binfmt_misc. I'll see what i can figure out.

EDIT: And I'd also like to say, sorry for all of the bother. I assumed I had a pretty good grasp on things, coming from three raspis and especially arch linux on a hacked nintendo switch, it was in a decently similar state to this image, so going into the OGA I figured i'd have it all figured out. I didn't quite expect this to be as much of a different beast as it is, not to mention I haven't exactly been fully awake a lot of the time I've had to spend tinkering with it. But i'm slowly getting more and more of a grasp on things, thanks to your help. :D

User avatar
meveric
Posts: 11382
Joined: Mon Feb 25, 2013 2:41 pm
languages_spoken: german, english
ODROIDs: X2, U2, U3, XU-Lite, XU3, XU3-Lite, C1, XU4, C2, C1+, XU4Q, HC1, N1, Go, H2 (N4100), N2, H2 (J4105), GoA, C4, GoA v1.1, H2+, HC4, GoS
Has thanked: 59 times
Been thanked: 443 times
Contact:

Re: [OS] Debian Buster (for ODROID Go Advance)

Post by meveric »

Azure48 wrote:
Mon Dec 21, 2020 6:05 am
I see, that all makes sense, and yes, box86 does indeed seem to work, but the problem is some things like steam can't work without going through binfmt_misc, and unless I'm wrong, binfmt_misc can't redirect to something that isn't statically linked? So then would the solution perhaps be to have a dynamically linked version for use whenever possible, and static otherwise.
That is not how it works, on the contrary. with box86 you get a file that defines, that in case a binary is found that has ELF header for x86 it should use box86 to start it.
binfmt is used to determine the architecture (elf header) of that binary.
Most of the binaries used are actually dynamically linked (so is steam) and it works fine.
Although running steam directly on the GO2 is probably pushing it too far.
The CPU is slow, the GPU is slow and you have less than 1GB of memory, that is nothing steam will actually run on.
Steam itself may require libraries that are not installed, and as long as they are not installed steam will not start.
Azure48 wrote:
Mon Dec 21, 2020 6:05 am
Unless there's some way to get it working that i'm not aware of, or I'm just wrong about binfmt_misc. I'll see what i can figure out.
This is generally working fine now.
I have several games on the GO2 that are from GoG and come just with a start.sh script that starts the binary. It does NOT call box86 directly.
But since it finds that the binary that is suppose to be started has a i386 header it automatically start box86 to run the binary.
So it's working fine.
Same goes if I just execute the binary itself and not a script.

So no, binfmt_misc is working fine as well.
Azure48 wrote:
Mon Dec 21, 2020 6:05 am
EDIT: And I'd also like to say, sorry for all of the bother. I assumed I had a pretty good grasp on things, coming from three raspis and especially arch linux on a hacked nintendo switch, it was in a decently similar state to this image, so going into the OGA I figured i'd have it all figured out. I didn't quite expect this to be as much of a different beast as it is, not to mention I haven't exactly been fully awake a lot of the time I've had to spend tinkering with it. But i'm slowly getting more and more of a grasp on things, thanks to your help. :D
I try to help where I can, that's why I worked on binfmt_misc support to make sure this works out of the box.
Donate to support my work on the ODROID GameStation Turbo Image for U2/U3 XU3/XU4 X2 X C1 as well as many other releases.
Check out the Games and Emulators section to find some of my work or check the files in my repository to find the software i build for ODROIDs.
If you want to add my repository to your image read my HOWTO integrate my repo into your image.

Azure48
Posts: 22
Joined: Thu Dec 17, 2020 3:53 am
languages_spoken: english
ODROIDs: ODROID Go-Advance
Has thanked: 3 times
Been thanked: 0
Contact:

Re: [OS] Debian Buster (for ODROID Go Advance)

Post by Azure48 »

Well, the problem I'm running into is that binfmt_misc is never able to start up with the default config file, it says it can't find /usr/local/bin/box86, when it's there. I don't know what else it could possibly be.

User avatar
meveric
Posts: 11382
Joined: Mon Feb 25, 2013 2:41 pm
languages_spoken: german, english
ODROIDs: X2, U2, U3, XU-Lite, XU3, XU3-Lite, C1, XU4, C2, C1+, XU4Q, HC1, N1, Go, H2 (N4100), N2, H2 (J4105), GoA, C4, GoA v1.1, H2+, HC4, GoS
Has thanked: 59 times
Been thanked: 443 times
Contact:

Re: [OS] Debian Buster (for ODROID Go Advance)

Post by meveric »

Azure48 wrote:
Tue Dec 22, 2020 7:58 am
Well, the problem I'm running into is that binfmt_misc is never able to start up with the default config file, it says it can't find /usr/local/bin/box86, when it's there. I don't know what else it could possibly be.
I'm not sure either, as I never encountered this issue.

Can you try running something else and skip on trying Steam for now?
Just try a easy game from GoG, Humble Bundle or something.
To confirm it's working or not.

I can try from a fresh install of this image, but I expect this to work just fine, as it's working on my gaming image as well.
Donate to support my work on the ODROID GameStation Turbo Image for U2/U3 XU3/XU4 X2 X C1 as well as many other releases.
Check out the Games and Emulators section to find some of my work or check the files in my repository to find the software i build for ODROIDs.
If you want to add my repository to your image read my HOWTO integrate my repo into your image.

Azure48
Posts: 22
Joined: Thu Dec 17, 2020 3:53 am
languages_spoken: english
ODROIDs: ODROID Go-Advance
Has thanked: 3 times
Been thanked: 0
Contact:

Re: [OS] Debian Buster (for ODROID Go Advance)

Post by Azure48 »

I don't have many is the thing, I don't tend to buy drm free games. I found I had Super Hexagon though, figured that'd be simple enough. I installed it, this is what it gave me.

Code: Select all

Box86 with Dynarec v0.1.7 081378a1 built on Dec 13 2020 11:28:18
LIBGL: Initialising gl4es
LIBGL: v1.1.5 built on Dec 13 2020 11:42:12
LIBGL: Using GLES 2.0 backend
LIBGL: warning, /root/sources/GAMES/ptitSeb/gl4es/src/gl/loader.c line 145 function load_libs: gles is NULL
LIBGL: warning, /root/sources/GAMES/ptitSeb/gl4es/src/gl/loader.c line 153 function load_libs: egl is NULL
LIBGL: warning, /root/sources/GAMES/ptitSeb/gl4es/src/glx/hardext.c line 131 function GetHardwareExtensions: egl_eglBindAPI is NULL
LIBGL: warning, /root/sources/GAMES/ptitSeb/gl4es/src/glx/hardext.c line 132 function GetHardwareExtensions: egl_eglInitialize is NULL
LIBGL: warning, /root/sources/GAMES/ptitSeb/gl4es/src/glx/hardext.c line 133 function GetHardwareExtensions: egl_eglGetDisplay is NULL
LIBGL: warning, /root/sources/GAMES/ptitSeb/gl4es/src/glx/hardext.c line 134 function GetHardwareExtensions: egl_eglCreatePbufferSurface is NULL
LIBGL: warning, /root/sources/GAMES/ptitSeb/gl4es/src/glx/hardext.c line 135 function GetHardwareExtensions: egl_eglDestroySurface is NULL
LIBGL: warning, /root/sources/GAMES/ptitSeb/gl4es/src/glx/hardext.c line 136 function GetHardwareExtensions: egl_eglDestroyContext is NULL
LIBGL: warning, /root/sources/GAMES/ptitSeb/gl4es/src/glx/hardext.c line 137 function GetHardwareExtensions: egl_eglMakeCurrent is NULL
LIBGL: warning, /root/sources/GAMES/ptitSeb/gl4es/src/glx/hardext.c line 138 function GetHardwareExtensions: egl_eglChooseConfig is NULL
LIBGL: warning, /root/sources/GAMES/ptitSeb/gl4es/src/glx/hardext.c line 139 function GetHardwareExtensions: egl_eglCreateContext is NULL
LIBGL: warning, /root/sources/GAMES/ptitSeb/gl4es/src/glx/hardext.c line 140 function GetHardwareExtensions: egl_eglQueryString is NULL
LIBGL: warning, /root/sources/GAMES/ptitSeb/gl4es/src/glx/hardext.c line 141 function GetHardwareExtensions: egl_eglTerminate is NULL
LIBGL: Using GLES 2.0 backend
1359|SIGSEGV @(nil) (???((nil))) (x86pc=(nil)/???:"???", esp=0xf6c262c4), for accessing (nil) (code=1), db=(nil)((nil):(nil)/(nil):(nil)/???)
/usr/local/bin/box86: line 11:  1359 Segmentation fault      box86.bin "$@"
Am I missing something gles related? I didn't go out of my way to install anything as that seems to be what borked things before, but I did install things through setup-odroid and i did install box86 through your repo. Haven't touched too much else, though.

EDIT: And to clarify, that's not binfmt_misc working, that's manually running it myself with box86 in the terminal. Running it directly predictably just gives an exec format error as binfmt_misc only starts if i remove the line in the config file box86 placed.

User avatar
meveric
Posts: 11382
Joined: Mon Feb 25, 2013 2:41 pm
languages_spoken: german, english
ODROIDs: X2, U2, U3, XU-Lite, XU3, XU3-Lite, C1, XU4, C2, C1+, XU4Q, HC1, N1, Go, H2 (N4100), N2, H2 (J4105), GoA, C4, GoA v1.1, H2+, HC4, GoS
Has thanked: 59 times
Been thanked: 443 times
Contact:

Re: [OS] Debian Buster (for ODROID Go Advance)

Post by meveric »

Azure48 wrote:
Tue Dec 22, 2020 8:27 am
I don't have many is the thing, I don't tend to buy drm free games. I found I had Super Hexagon though, figured that'd be simple enough. I installed it, this is what it gave me.

Code: Select all

Box86 with Dynarec v0.1.7 081378a1 built on Dec 13 2020 11:28:18
LIBGL: Initialising gl4es
LIBGL: v1.1.5 built on Dec 13 2020 11:42:12
LIBGL: Using GLES 2.0 backend
LIBGL: warning, /root/sources/GAMES/ptitSeb/gl4es/src/gl/loader.c line 145 function load_libs: gles is NULL
LIBGL: warning, /root/sources/GAMES/ptitSeb/gl4es/src/gl/loader.c line 153 function load_libs: egl is NULL
LIBGL: warning, /root/sources/GAMES/ptitSeb/gl4es/src/glx/hardext.c line 131 function GetHardwareExtensions: egl_eglBindAPI is NULL
LIBGL: warning, /root/sources/GAMES/ptitSeb/gl4es/src/glx/hardext.c line 132 function GetHardwareExtensions: egl_eglInitialize is NULL
LIBGL: warning, /root/sources/GAMES/ptitSeb/gl4es/src/glx/hardext.c line 133 function GetHardwareExtensions: egl_eglGetDisplay is NULL
LIBGL: warning, /root/sources/GAMES/ptitSeb/gl4es/src/glx/hardext.c line 134 function GetHardwareExtensions: egl_eglCreatePbufferSurface is NULL
LIBGL: warning, /root/sources/GAMES/ptitSeb/gl4es/src/glx/hardext.c line 135 function GetHardwareExtensions: egl_eglDestroySurface is NULL
LIBGL: warning, /root/sources/GAMES/ptitSeb/gl4es/src/glx/hardext.c line 136 function GetHardwareExtensions: egl_eglDestroyContext is NULL
LIBGL: warning, /root/sources/GAMES/ptitSeb/gl4es/src/glx/hardext.c line 137 function GetHardwareExtensions: egl_eglMakeCurrent is NULL
LIBGL: warning, /root/sources/GAMES/ptitSeb/gl4es/src/glx/hardext.c line 138 function GetHardwareExtensions: egl_eglChooseConfig is NULL
LIBGL: warning, /root/sources/GAMES/ptitSeb/gl4es/src/glx/hardext.c line 139 function GetHardwareExtensions: egl_eglCreateContext is NULL
LIBGL: warning, /root/sources/GAMES/ptitSeb/gl4es/src/glx/hardext.c line 140 function GetHardwareExtensions: egl_eglQueryString is NULL
LIBGL: warning, /root/sources/GAMES/ptitSeb/gl4es/src/glx/hardext.c line 141 function GetHardwareExtensions: egl_eglTerminate is NULL
LIBGL: Using GLES 2.0 backend
1359|SIGSEGV @(nil) (???((nil))) (x86pc=(nil)/???:"???", esp=0xf6c262c4), for accessing (nil) (code=1), db=(nil)((nil):(nil)/(nil):(nil)/???)
/usr/local/bin/box86: line 11:  1359 Segmentation fault      box86.bin "$@"
Am I missing something gles related? I didn't go out of my way to install anything as that seems to be what borked things before, but I did install things through setup-odroid and i did install box86 through your repo. Haven't touched too much else, though.
Yes it looks like it's missing the 32bit GPU drivers most likely. As box86 is an armhf driver it only works with armhf libraries, which includes the GPU drivers.
Check if libmali-rk-bifrost-g31-rxp0-x11-gbm:armhf is installed or not.
You can also try software rendering for now by starting with MESA=1.
Azure48 wrote:
Tue Dec 22, 2020 8:27 am
EDIT: And to clarify, that's not binfmt_misc working, that's manually running it myself with box86 in the terminal. Running it directly predictably just gives an exec format error as binfmt_misc only starts if i remove the line in the config file box86 placed.
Well removing that line defeats the purpose of using bin_misc as this line tells it IF it finds an x86 header, it should use box86.
Also just so you know, I don't have binfmt-support installed and it's working anyway if I start the binaries directly.
Maybe you don't need this at all.
Donate to support my work on the ODROID GameStation Turbo Image for U2/U3 XU3/XU4 X2 X C1 as well as many other releases.
Check out the Games and Emulators section to find some of my work or check the files in my repository to find the software i build for ODROIDs.
If you want to add my repository to your image read my HOWTO integrate my repo into your image.

Azure48
Posts: 22
Joined: Thu Dec 17, 2020 3:53 am
languages_spoken: english
ODROIDs: ODROID Go-Advance
Has thanked: 3 times
Been thanked: 0
Contact:

Re: [OS] Debian Buster (for ODROID Go Advance)

Post by Azure48 »

It's not installed, so that's likely the issue, but the problem is it depends on libdrm2, thus running into the same problem from before. Setting MESA=1 with env just crashes even quicker, saying it can't open libGL.so.1 because it doesn't exist. And yes, that was my point, the only way I can get it to start is without the only thing I'm trying to do here. EDIT: And iirc, I think the binfmt-support package only supplies a few tools for working with binfmt, not anything needed for binfmt itself, though I could be wrong on that.

User avatar
meveric
Posts: 11382
Joined: Mon Feb 25, 2013 2:41 pm
languages_spoken: german, english
ODROIDs: X2, U2, U3, XU-Lite, XU3, XU3-Lite, C1, XU4, C2, C1+, XU4Q, HC1, N1, Go, H2 (N4100), N2, H2 (J4105), GoA, C4, GoA v1.1, H2+, HC4, GoS
Has thanked: 59 times
Been thanked: 443 times
Contact:

Re: [OS] Debian Buster (for ODROID Go Advance)

Post by meveric »

Azure48 wrote:
Tue Dec 22, 2020 8:48 am
It's not installed, so that's likely the issue, but the problem is it depends on libdrm2, thus running into the same problem from before.
actually any libdrm2 should work but since already the +odroid1 version of arm64 is installed you need the same version for armhf.
I checked into it and it's rather simple.
The package comes from my backport repository and you have to explicitly activate it.
Please try:

Code: Select all

apt install -t buster libmali-rk-bifrost-g31-rxp0-x11-gbm:armhf
It should install both the GPU drivers as well as the correct version of libdrm2.
Azure48 wrote:
Tue Dec 22, 2020 8:48 am
Setting MESA=1 with env just crashes even quicker, saying it can't open libGL.so.1 because it doesn't exist.
Which means there is no 32bit mesa libraries installed.
You probably want to install:
libgbm1:armhf, libgl1-mesa-dri:armhf, libglapi-mesa:armhf, libglx-mesa0:armhf and libglu1-mesa:armhf if they are not installed automatically with the rest of the 32bit drivers.
In that case you should install them manually as they most likely can help in some situations.
Azure48 wrote:
Tue Dec 22, 2020 8:48 am
And yes, that was my point, the only way I can get it to start is without the only thing I'm trying to do here. EDIT: And iirc, I think the binfmt-support package only supplies a few tools for working with binfmt, not anything needed for binfmt itself, though I could be wrong on that.
I checked on my system again and systemd-binfmt.service comes of cause form the systemd package itself, so yeah nothing needs to be installed.
But mine is up and running fine:

Code: Select all

odroid@buster64-go2:~$ systemctl status systemd-binfmt.service
● systemd-binfmt.service - Set Up Additional Binary Formats
   Loaded: loaded (/lib/systemd/system/systemd-binfmt.service; static; vendor preset: enabled)
   Active: active (exited) since Mon 2020-12-21 23:54:46 UTC; 34s ago
     Docs: man:systemd-binfmt.service(8)
           man:binfmt.d(5)
           https://www.kernel.org/doc/html/latest/admin-guide/binfmt-misc.html
           https://www.freedesktop.org/wiki/Software/systemd/APIFileSystems
  Process: 228 ExecStart=/lib/systemd/systemd-binfmt (code=exited, status=0/SUCCESS)
 Main PID: 228 (code=exited, status=0/SUCCESS)
and that is with the file from box86:

Code: Select all

odroid@buster64-go2:~$ cat /etc/binfmt.d/box86.conf 
# /etc/binfmt.d/box86.conf
:x86:M::\x7fELF\x01\x01\x01\x00\x00\x00\x00\x00\x00\x00\x00\x00\x02\x00\x03\x00:\xff\xff\xff\xff\xff\xff\xff\x00\xff\xff\xff\xff\xff\xff\xff\xff\xfe\xff\xff\xff:/usr/local/bin/box86:
Donate to support my work on the ODROID GameStation Turbo Image for U2/U3 XU3/XU4 X2 X C1 as well as many other releases.
Check out the Games and Emulators section to find some of my work or check the files in my repository to find the software i build for ODROIDs.
If you want to add my repository to your image read my HOWTO integrate my repo into your image.

Azure48
Posts: 22
Joined: Thu Dec 17, 2020 3:53 am
languages_spoken: english
ODROIDs: ODROID Go-Advance
Has thanked: 3 times
Been thanked: 0
Contact:

Re: [OS] Debian Buster (for ODROID Go Advance)

Post by Azure48 »

Okay, so, did all of that, and Super Hexagon boots up doing things manually like before, though with how it's running it seems like software rendering even though I made sure to set MESA=0, it's silent as well, but it at least starts up and runs mostly as it should. As for binfmt, it still gives me the same error.

Code: Select all

● systemd-binfmt.service - Set Up Additional Binary Formats
   Loaded: loaded (/lib/systemd/system/systemd-binfmt.service; static; vendor preset: enabled)
   Active: failed (Result: exit-code) since Tue 2020-12-22 00:32:14 UTC; 12s ago
     Docs: man:systemd-binfmt.service(8)
           man:binfmt.d(5)
           https://www.kernel.org/doc/html/latest/admin-guide/binfmt-misc.html
           https://www.freedesktop.org/wiki/Software/systemd/APIFileSystems
  Process: 1560 ExecStart=/lib/systemd/systemd-binfmt (code=exited, status=1/FAILURE)
 Main PID: 1560 (code=exited, status=1/FAILURE)

Dec 22 00:32:14 buster64-go2 systemd[1]: Starting Set Up Additional Binary Formats...
Dec 22 00:32:14 buster64-go2 systemd-binfmt[1560]: Failed to add binary format: No such file or directory
Dec 22 00:32:14 buster64-go2 systemd[1]: systemd-binfmt.service: Main process exited, code=exited, status=1/FAILU
Dec 22 00:32:14 buster64-go2 systemd[1]: systemd-binfmt.service: Failed with result 'exit-code'.
Dec 22 00:32:14 buster64-go2 systemd[1]: Failed to start Set Up Additional Binary Formats.
I made sure the config file is exactly the same as yours, and it is. None of that seems like especially useful information, either. journalctl -xe doesn't say anything more helpful either.

On a side note, plugging in headphones only made the speaker jump to full volume. Is there anything I can do about that? I know about

Code: Select all

amixer -c 0 sset 'Playback Path' 'HP'
But then it'll only output through headphones and never the speaker, right?

EDIT: I was just missing libvorbisfile3:armhf and libopenal1:armhf, that both got the sound working and was apparently the cause of the slowdown. So it isn't running in software rendering, it's perfectly smooth now and seems to have no problems other than a segfault when exiting.

User avatar
meveric
Posts: 11382
Joined: Mon Feb 25, 2013 2:41 pm
languages_spoken: german, english
ODROIDs: X2, U2, U3, XU-Lite, XU3, XU3-Lite, C1, XU4, C2, C1+, XU4Q, HC1, N1, Go, H2 (N4100), N2, H2 (J4105), GoA, C4, GoA v1.1, H2+, HC4, GoS
Has thanked: 59 times
Been thanked: 443 times
Contact:

Re: [OS] Debian Buster (for ODROID Go Advance)

Post by meveric »

Azure48 wrote:
Tue Dec 22, 2020 9:45 am
As for binfmt, it still gives me the same error.

Code: Select all

● systemd-binfmt.service - Set Up Additional Binary Formats
   Loaded: loaded (/lib/systemd/system/systemd-binfmt.service; static; vendor preset: enabled)
   Active: failed (Result: exit-code) since Tue 2020-12-22 00:32:14 UTC; 12s ago
     Docs: man:systemd-binfmt.service(8)
           man:binfmt.d(5)
           https://www.kernel.org/doc/html/latest/admin-guide/binfmt-misc.html
           https://www.freedesktop.org/wiki/Software/systemd/APIFileSystems
  Process: 1560 ExecStart=/lib/systemd/systemd-binfmt (code=exited, status=1/FAILURE)
 Main PID: 1560 (code=exited, status=1/FAILURE)

Dec 22 00:32:14 buster64-go2 systemd[1]: Starting Set Up Additional Binary Formats...
Dec 22 00:32:14 buster64-go2 systemd-binfmt[1560]: Failed to add binary format: No such file or directory
Dec 22 00:32:14 buster64-go2 systemd[1]: systemd-binfmt.service: Main process exited, code=exited, status=1/FAILU
Dec 22 00:32:14 buster64-go2 systemd[1]: systemd-binfmt.service: Failed with result 'exit-code'.
Dec 22 00:32:14 buster64-go2 systemd[1]: Failed to start Set Up Additional Binary Formats.
I made sure the config file is exactly the same as yours, and it is. None of that seems like especially useful information, either. journalctl -xe doesn't say anything more helpful either.
I'll try from a fresh image to compare as I currently can't see what should be the issue.
Azure48 wrote:
Tue Dec 22, 2020 9:45 am
On a side note, plugging in headphones only made the speaker jump to full volume. Is there anything I can do about that? I know about

Code: Select all

amixer -c 0 sset 'Playback Path' 'HP'
But then it'll only output through headphones and never the speaker, right?
There are 4 settings:
OFF
SPK
HP
SPK_HP
I guess you can imagine what these mean.
The last one allows for both headphones and speaker.
You can adjust volume with: amixer -c 0 sset Playback <PERCENTAGE>
for example:

Code: Select all

amixer -c 0 sset Playback 100%
or

Code: Select all

amixer -c 0 sset Playback 50%
But if you're using the desktop it should work simply by using the audiomixer from the desktop.
Azure48 wrote:
Tue Dec 22, 2020 9:45 am
EDIT: I was just missing libvorbisfile3:armhf and libopenal1:armhf, that both got the sound working and was apparently the cause of the slowdown. So it isn't running in software rendering, it's perfectly smooth now and seems to have no problems other than a segfault when exiting.
Hmm you probably should re-enable recommends again:
/etc/apt/apt.conf.d/71-no-recommends either edit or delete the file.
I set up most of the packages that are wrapped in box86 as recommends and it should install them when you install box86.
Donate to support my work on the ODROID GameStation Turbo Image for U2/U3 XU3/XU4 X2 X C1 as well as many other releases.
Check out the Games and Emulators section to find some of my work or check the files in my repository to find the software i build for ODROIDs.
If you want to add my repository to your image read my HOWTO integrate my repo into your image.

Azure48
Posts: 22
Joined: Thu Dec 17, 2020 3:53 am
languages_spoken: english
ODROIDs: ODROID Go-Advance
Has thanked: 3 times
Been thanked: 0
Contact:

Re: [OS] Debian Buster (for ODROID Go Advance)

Post by Azure48 »

Okay, got all of the recommended packages for box86 installed. I'll try some other programs out tomorrow if i can. Also, sorry, I should've specified, I was specifically asking if there was a way for it to automatically mute the speaker when headphones are plugged in, as most devices do.

User avatar
meveric
Posts: 11382
Joined: Mon Feb 25, 2013 2:41 pm
languages_spoken: german, english
ODROIDs: X2, U2, U3, XU-Lite, XU3, XU3-Lite, C1, XU4, C2, C1+, XU4Q, HC1, N1, Go, H2 (N4100), N2, H2 (J4105), GoA, C4, GoA v1.1, H2+, HC4, GoS
Has thanked: 59 times
Been thanked: 443 times
Contact:

Re: [OS] Debian Buster (for ODROID Go Advance)

Post by meveric »

ah ok I know what you mean.
Currently there is no such service that would do this, but maybe it can be written.
Since it's an analog port I'm not sure if there is an event that registers that something is plugged in.
If there is no event, then there is no way to automate it.
Donate to support my work on the ODROID GameStation Turbo Image for U2/U3 XU3/XU4 X2 X C1 as well as many other releases.
Check out the Games and Emulators section to find some of my work or check the files in my repository to find the software i build for ODROIDs.
If you want to add my repository to your image read my HOWTO integrate my repo into your image.

Post Reply

Return to “Projects”

Who is online

Users browsing this forum: No registered users and 2 guests