Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

xcsoar 7pre14 on Galaxy Note3-Android5 #366

Closed
lele70 opened this issue Mar 17, 2020 · 20 comments
Closed

xcsoar 7pre14 on Galaxy Note3-Android5 #366

lele70 opened this issue Mar 17, 2020 · 20 comments
Labels
breaking bug device needed a device specific issue

Comments

@lele70
Copy link

lele70 commented Mar 17, 2020

Hi,
I tried the beta on my Note3 where 6.8.12 runs with no issues but the app only opens with no infoboxes, maps, ...when you try to touch the screen it becomes full red. thanks

@lordfolken lordfolken added the more information More information needed label Mar 25, 2020
@kxmm
Copy link
Contributor

kxmm commented Mar 31, 2020

Hi,
I have the same issue. I thought it may be connected with the old android version so i installed Linage 16 with android 9. Still the same issues. No Info Boxes and when you tab on the screen it gets red.
Even when you start the app the Buttons Fly and Sim are not shown.

@fb
Copy link
Member

fb commented Apr 1, 2020

This is maybe the same problem I had with a XT1068 (Motorola G2) running Android 6.0. OpenGL renderer: Adreno (TM) 305.

@kxmm, @lele70 does it look like this on your devices?

I tested different versions to find the problem. The last working version is preview11. I didn't use git bisect but apks from a random Play Store archive site.
I can only guess that it could be caused by a change between preview11 and preview12: https://github.com/XCSoar/XCSoar/compare/v7.0_preview11..v7.0_preview12

 

Looks like bitmap/texture rendering is failing, so I guess it's related to OpenGL.

UPDATE
I recorded the following with ADB while running preview11 and preview14.
Maybe the change from OpenGL ES-CM 1.1 to OpenGL ES 3.0 V@136.0 AU@ (GIT@I3193f6e94a) is relevant?

preview11:

01-19 14:10:03.432 15553 15581 D XCSoar  : OpenGL vendor: Qualcomm
01-19 14:10:03.432 15553 15581 D XCSoar  : OpenGL version: OpenGL ES-CM 1.1
01-19 14:10:03.432 15553 15581 D XCSoar  : OpenGL renderer: Adreno (TM) 305
[…]
01-19 14:10:03.444 15553 15581 I XCSoar  : Starting XCSoar XCSoar v7.0_preview11-Android
01-19 14:10:03.459 15553 15581 I XCSoar  : OpenGL: egl=no oesdt=1 mda=0 npot=1 vbo=1 fbo=1 stencil=0x88f0

preview14

01-19 14:08:05.439 14424 14439 D XCSoar  : OpenGL vendor: Qualcomm
01-19 14:08:05.439 14424 14439 D XCSoar  : OpenGL version: OpenGL ES 3.0 V@136.0 AU@ (GIT@I3193f6e94a)
01-19 14:08:05.439 14424 14439 D XCSoar  : OpenGL renderer: Adreno (TM) 305
[…]1-19 14:08:05.466 14424 14439 I XCSoar  : Starting XCSoar XCSoar v7.0_preview14-Android
01-19 14:08:05.562 14424 14439 I XCSoar  : OpenGL: mda=0 npot=1 fbo=0 stencil=0

@kxmm
Copy link
Contributor

kxmm commented Apr 1, 2020 via email

@fb
Copy link
Member

fb commented Apr 2, 2020

Maybe you could also test if the rendering issues disappear with preview11. Then we can be more confident that it's the same problem.

@kedder
Copy link
Member

kedder commented Apr 2, 2020

I might be confusing this issue with some other one, but I once bisected very similar looking issue (graphics defects on old android device) and bisect pointed to a commit that switched android SDK to higher version.

@lele70
Copy link
Author

lele70 commented Apr 2, 2020

The screenshots above show the same I see on my Note3 Android5 Adreno330 (Open GL ES3.0 V@84.0 AU@05.00.00.002.025)
The app didn't crash, simply the map and infoboxes are not shown. You can access the config menus and they works. When you switch from one page to the other the screen flash for a shot full red.
If I could have the APK of preview11 I will try to uninstall the preview14 and try it.

@kxmm
Copy link
Contributor

kxmm commented Apr 2, 2020 via email

@elgandoz
Copy link
Contributor

elgandoz commented Apr 3, 2020

I have a similar issue with the very latest preview builds, but I'm not sure if it is actually related.

I'm getting this warning in xcsoar-old.log, repeated several times:
Unsupported ChipID value for QGPU features (0x5030004), using a5x as default.

The screen appears all black with no output or feedback.

This happens on a OnePlus 3T running a custom Android 10 ROM.

The last preview build I can run was the 7.0_preview14 from September 2019 (or so, it is now no longer available) with no graphical issues. XCSoar Test from play store works fine.

@fb
Copy link
Member

fb commented Apr 11, 2020

I might be confusing this issue with some other one, but I once bisected very similar looking issue (graphics defects on old android device) and bisect pointed to a commit that switched android SDK to higher version.

I did a bisect and bff3273 (raise API level to 21) introduces the rendering issues, so it could be the same.

@groundhogxc
Copy link
Contributor

This is a duplicate of both #386 and #466. And it is a pity because there are apparently many very interesting devices affected.

I can also reproduce it, and it can be narrowed down to that clearly the issue is with displaying bitmaps. It is quite simply that everywhere where there should be a bitmap (texture) -- including buffered infoboxes -- that area shows up in a solid color (usually black or grey). I think the particular color is simply the last brush color used within that OpenGL context, that is why it is not always the same. By disabling some of the buffering code the infoboxes can be somewhat rescued, because the non-buffered boxes do show up. But of course many things do not work at all without bitmap rendering, so this does not really solve the issue.

All bitmaps are affected, both the ones loaded directly, and the ones rendered internally, so it seems it is not the creation of the bitmaps that is the issue. One thing I was wondering is whether it is the rendering itself or the "stenciling" that is actually failing here.

Max and @lordfolken said a developer needs such a device to fix it. I can't easily give my device away, but I do have one, I know basic C++ and I can compile the source. So I am open to suggestions as to what to attempt, since I have only very very basic OpenGL knowledge myself. Maybe someone has an idea of what to play with?

I did mess around a bit with the OpenGL precision flag settings, because that was mentioned as a solution for other people in an issue affecting the same GPU, but that did not help unfortunately.

@MaxKellermann MaxKellermann added the device needed a device specific issue label Mar 15, 2021
@MaxKellermann
Copy link
Contributor

The bisect is interesting, and will be very helpful once I have such a device, but until that happens, I can't do anything.

@lele70
Copy link
Author

lele70 commented Mar 16, 2021

Hi MaxKellermann, if you have a device (Galaxy Note3), can you troubleshoot the problem? How long will you need to keep it? thanks

@MaxKellermann
Copy link
Contributor

A few days.

@groundhogxc
Copy link
Contributor

This bug has now become much more urgent, since it seems like @MaxKellermann has now released the 7.0 version. I think up to now people with this GPU could just stay with the regular release version, which was still working, and just not update to 7preview versions. Now all of those devices will stop working on the next update.

If someone has an idea of what I could try on my phone, let me know. Someone mentioned in a duplicate issue that the querying of GL capability properties could be insufficient, but I am not sure which direction to probe in that regard.

@lordfolken
Copy link
Contributor

lordfolken commented Mar 25, 2021

@groundhogxc so sponser a phone for @MaxKellermann They cost less than 75$ now.

@rawtaz
Copy link
Contributor

rawtaz commented Mar 26, 2021

@groundhogxc I'll chip in $10 if you go for it (I'll Paypal you if you have Paypal).

@lele70
Copy link
Author

lele70 commented Apr 1, 2021

Hi guys,
just to say that I found on Googleplay an update of xcsoar and instinctively I clicked on it :)) on my Galaxy Note3. I then lounched the app and... It works!!! (head line says 7.0 but in the upper left corner says 7.1) As the icon was blue I didn't think it could be the final release of 7.0 testing that doesn't work with the Note3. What to say: I'm happy of it. Thanks Max.

@MaxKellermann
Copy link
Contributor

Interesting - I did not attempt to fix it yet (because I had no information what was wrong and had no device to reproduce it), but this change may have solved the problem: 2451e25
Maybe some drivers don't allow glLinkProgram() to be called twice.

@lele70
Copy link
Author

lele70 commented Apr 2, 2021

If someone else with Note3 or other devices that shows the same issue can confirm that official 7.1 is working, it could be nice.

@fb
Copy link
Member

fb commented Apr 10, 2021

On the device I created the screenshots with (XT1068 (Motorola G2), Adreno (TM) 305), in 7.4 the rendering issues are gone. 👍

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
breaking bug device needed a device specific issue
Projects
None yet
Development

No branches or pull requests

9 participants