openstf / stf

Control and manage Android devices from your browser.
https://openstf.io
Other
13.17k stars 2.71k forks source link

Screen sharing on some devices only shows grey #31

Open jonalmeida opened 8 years ago

jonalmeida commented 8 years ago

I have a Galaxy Nexus connected to an Ubuntu machine which doesn't seem to show the screen sharing at all (all I see is grey). Everything else about the device connect to OpenSTF, i.e. I can interact with the device with my mouse on the grey screen and I see it on my phone, adb connect, etc.

I realize this isn't much details to work on, but please let know what other details I can provide to help debug this.

sorccu commented 8 years ago

Hi, please let us know the following:

It would also help if you could provide the full output of stf local, although you might want to redact the IMEI and phone number that may be visible if we don't have the device in our device database. The log message should begin with a yellow WRN.

sorccu commented 8 years ago

Also, if you have any other device, it would be helpful if you can check if that one works.

jonalmeida commented 8 years ago

Which browser (and version) are you using?

  • Chrome: 44.0.2403.89 beta (64-bit)
  • Firefox Dev Edition: 41.0a2 (2015-07-18)

Which version of Android is your Galaxy Nexus running?

  • Stock Android, 4.3
  • Baseband I9250XXLJ1

The exact command you use to run STF (e.g. just stf local)

  • stf local
  • stf local --public-ip [ip_address_here]

The exact URL you use do access STF (e.g. just http://localhost:7100)

  • If using plain "local": http://localhost:7100/#!/control/014691490A00D006
  • With "public-ip": http://[ip_used_in_command]:7100/#!/control/[device_id]

Yes, I forgot to mention that this happens with only two devices I've tried (Galaxy Nexus and Asus Transformer TF-101) I don't have the details on the Transformer on me at the moment; will update later.

With a Nexus 5 & Nexus 9, up-to-date on Lollipop, there are no issues as well as an Asus Transformer Prime.

sorccu commented 8 years ago

Turns out we do have the Japanese version of Galaxy Nexus somewhere (with 4.2.2), I'll try it ASAP. I'm pretty sure it will work on my computer, though.

jonalmeida commented 8 years ago

Referencing the comments in #36 , I wonder if there is a dependency on my setup that's missing..

I'll try using the docker container and see how that fairs, but I'm expecting the same results.

sorccu commented 8 years ago

From the logs you sent it looks like it does manage to open up the WebSocket just fine since minicap gets started and stopped as it should. So I don't think it's a network issue, unless something blocks the WebSocket binary frames.

Can I ask what specs you have on your computer (both the STF app server and your local client if different)?

Additionally, I would be interested in knowing at least the following:

If there's nothing in there either, we may have to resort to screen sharing if somebody's willing to let me do that.

jonalmeida commented 8 years ago

Can I ask what specs you have on your computer (both the STF app server and your local client if different)?

Right now, I'm testing this all locally on the same server machine which is a fresh install of Ubuntu 15.04. Processor: Intel Core i7 CPU 860 @ 2.80GHz Graphics: GeForce GTS 240 (default nouveau drivers)

Does the network panel show anything when the screen is grey?

There is some network i/o going on (comparing it to a working Nexus 5), but there isn't any change when interacting with the device while I can see the interactions taking place irl.

The full network log from before you control the device to you seeing the grey screen for the first time.

Here are the HAR logs with and without interaction with the device: https://www.dropbox.com/s/36zrssykcckvgn3/HAR%20logs.zip?dl=0

If there's nothing in there either, we may have to resort to screen sharing if somebody's willing to let me do that.

I'd be happy to help via screen sharing, if we can't figure out the issue otherwise!

sorccu commented 8 years ago

I'll be away until next Tuesday, but I'll take a look when I return.

On Wednesday, July 29, 2015, Jonathan Almeida notifications@github.com wrote:

Can I ask what specs you have on your computer (both the STF app server and your local client if different)?

Right now, I'm testing this all locally on the same server machine which is a fresh install of Ubuntu 15.04. Processor: Intel Core i7 CPU 860 @ 2.80GHz Graphics: GeForce GTS 240 (default nouveau drivers)

Does the network panel show anything when the screen is grey?

There is some network i/o going on (comparing it to a working Nexus 5), but there isn't any change when interacting with the device while I can see the interactions taking place irl.

The full network log from before you control the device to you seeing the grey screen for the first time.

Here are the HAR logs with and without interaction with the device: https://www.dropbox.com/s/36zrssykcckvgn3/HAR%20logs.zip?dl=0

If there's nothing in there either, we may have to resort to screen sharing if somebody's willing to let me do that.

I'd be happy to help via screen sharing, if we can't figure out the issue otherwise!

— Reply to this email directly or view it on GitHub https://github.com/openstf/stf/issues/31#issuecomment-125827104.

swarawan commented 8 years ago

is there any relation with Serial Number of the phone? Because i have same problem and I found something weird about Serial Number, it's 0123456789ABCDEF

gunta commented 8 years ago

@swarawan Do you happen to have more than one device connected with the same serial number?

swarawan commented 8 years ago

@gunta no, my another devices has different unique serial number. I don't know, is serial number is an unique id for android device? Oh ya for this issue, i found this on log:

INF/device:plugins:touch 12533 [0123456789ABCDEF] Launching screen service INF/device:plugins:touch 12533 [0123456789ABCDEF] Connecting to minitouch service INF/device:plugins:touch 12533 [0123456789ABCDEF] minitouch says: "Note: device /dev/input/mouse0 is not supported by libevdev" INF/device:plugins:touch 12533 [0123456789ABCDEF] minitouch says: "Note: device /dev/input/mice is not supported by libevdev" INF/device:plugins:touch 12533 [0123456789ABCDEF] minitouch says: "Note: type A device reports a max value of 0 for ABS_MT_TRACKING_ID. This means that the device is most likely reporting incorrect information. Guessing 9."

is there any relation about this issue?

jonalmeida commented 8 years ago

@swarawan I don't think there's any relation, but this might be a separate issue entirely. The serial for my device where I see this issue is correctly identified.

swarawan commented 8 years ago

@sorccu my team found that websocket is still direct to localhost even access from different ip (using --public-ip). what should i do then?

11pasted_image_at_2015_08_07_01_02_pm copy

sorccu commented 8 years ago

Works for me.

screen shot 2015-08-07 at 3 16 28 pm screen shot 2015-08-07 at 3 17 42 pm

Can you tell me how you installed STF? The exact commands you used? I would also like to see the exact command you use to launch STF.

swarawan commented 8 years ago

following doc, first install the requirements and its dependencies brew install rethinkdb graphicsmagick zeromq protobuf pkg-config then setting up ADB. Launch STF: Start rethinkdb using rethinkdb Start STF using stf local --public-ip 172.17.2.130 and for local stf local

is there something i missed?

sorccu commented 8 years ago

So you installed stf with npm install -g stf? If you run stf -V what does it show?

swarawan commented 8 years ago

oh ya, i forgot to write on my last comment, i'd installed with npm install -g stf . it shown version 1.0.9

sorccu commented 8 years ago

Well, I just tried it with the NPM version and it just works. The IP gets replaced like it's supposed to. Starting to get out of ideas, but what's your node version (node -v)?

swarawan commented 8 years ago

v0.12.7 is there nothing i should to edit somewhere?

sorccu commented 8 years ago

Mine's the same version. No, there really is nothing you have to edit. It should just work. If you can post the full output of stf local --public-ip 172.17.2.130 that might help, but other than that I'm not sure if there's anything I can do since I can't reproduce the issue.

jonalmeida commented 8 years ago

@sorccu were you able to look into this issue? I'd be happy to skype with you to help solve this.

sorccu commented 8 years ago

Yeah I think we'll have to do that. I'll PM you with details.

sorccu commented 8 years ago

Looks like the AT&T Galaxy Nexus (Android 4.3) is not sending any frames for some reason. Since our Galaxy Nexus works, I will try to update it to 4.3 to see if there's a difference there.

The other failing device, GT-P7510, is the first device I've ever seen that doesn't support NEON. This was confirmed with https://github.com/sorccu/smallfeat. Minicap uses libjpeg with NEON optimizations to improve encoding speed. We could potentially detect neon support at runtime, but I'm not sure if it's worth it - since the CPU is super old to start with, the capture rate would presumably be super slow.

yrguo commented 8 years ago

@swarawan , Our problems are the same,can you solve it ?

yrguo commented 8 years ago

@jonalmeida , Our problems are the same,can you solve it ?

marcoantoniomartin commented 8 years ago

Hi everyone!

I've been having the same issue but only in Google Chrome (Version 50.0.2661.75 m, which is the latest as of now) and in Opera. Whereas in Firefox the app is working just alright! I suspect there is a bug going on with this latest version of Chrome. Some colleagues with v. 49 could access STF successfully.

Here's a screenshot of the console output just to share with you all: chrome console errors

I'll be taking a further look on this issue, to see if I can come up with something. Please, let me know if you have encountered the same issue.

Cheers!

sorccu commented 8 years ago

That particular Chrome issue has been fixed, see #303. You'll have to build from master or use the latest docker images, though.

marcoantoniomartin commented 8 years ago

Seems that the following line did the trick :) could also work for other people with similar issues:

sudo apt-get update && sudo apt-get upgrade

Thanks for the ideas and support.