Convergence issues- how to start debugging?
-
Hi team! I'm new to ubports and am excited to play with my new (very, very old) Nexus 5.
For starters, Convergence isn't working and I'm wondering if anyone knows where logs for that functionality hide or if there are any good debugging guides. It quickly went from "plug in, monitor will display for 2 seconds and then be black for 2 seconds, alternating" to "plug in, nothing happened".
Any tips welcome, I'm glad to be here!
-
Do you have a similar on/off problem when charging, especially if you try to use the phone a bit while the cable is plugged in? Nexus 5 is as you say, an old device, and with probably hundreds if not thousands of plug/unplug cycles on the USB port, it's likely become a little loose.
-
It seems like it charges ok- very strange.
I reviewed everything in /var/log and found there are just a bunch of errors being spammed when I connect the cable now.
I'm seeing at least this error get triggered:
https://android.googlesource.com/kernel/msm/+/android-msm-flo-3.4-jb-mr2/drivers/misc/slimport_anx7808/slimport_tx_drv.c#2056Time to take a closer look. I'll push debugging to the telegram channel until I have a better idea what is going on.
-
I got a good lead on the issue! Looks like between the Slimport knockoff cable I have, and the monitors I'm using which have never been quite on point, unexpected data is being sent to the phone and thrown out.
However, on a much smaller resolution device (my television), the phone outputs video just fine! That rules out the phone as broken overall. I'd like to think that it can handle higher resolutions out of the box, but I haven't seen any specific numbers for what slimport is expected to output- and it definitely looks like the automatic switch to windowed mode and several zoom presets (like the font on tabs and menus) don't set correctly if you use the ut-tweak tool to force windowed mode.
My C isn't great, so reading and understanding Kernel code is going to take some time. To help speed up the process, I could use tips on debugging the Android/cyanogen kernel that comes with 16.04 if anyone has them (Do people attach debuggers to the kernel? Can I boot a custom kernel with extra ERR messages written in easily?). If possible, I'd like to try to fix things as I find them broken rather than avoid problems, but I'm a python programmer and good with devops, not yet C/C++!
As an aside, I also ordered a SlimPort branded dongle, in the case that the one I bought (a cheap third party brand) isn't up to the task of higher resolution monitors. I'll report back with info as I get it.
-
Quick update and resolution! The new slimport cable came yesterday, and all trace of errors regarding a connection to my monitors is gone!
I'm typing this post up now on a converged Nexus 5 with a wireless keyboard and mouse. Great stuff! Don't use crappy knockoff cables for video out!