pszafer / epson_projector

MIT License
25 stars 18 forks source link

LS500 not picking up color mode or setting source #15

Open wraeuk opened 2 years ago

wraeuk commented 2 years ago

My LS500 doesn't seem to show all the available features, namely color mode. It's correctly able to turn it off/on, manipulate the volume and it's able to "get" source but not able to "set" source.

Color Mode is changeable in the iProjection app, and openHAB is also playing ball with it so I don't think it's a particularly funky control on my end. I'm just using what's in core on HassOS so uh, if you think it should go in that issues register happy to copy it over.

pszafer commented 2 years ago

Maybe you can sniff what iProjection app is doing to set source?

wraeuk commented 2 years ago

So the meaty bit from a PCAP is the following. The Basic Auth seems to just decode to EPSONMOBILE:

GET /cgi-bin/directsend?SOURCE=30&_=1645997771275 HTTP/1.1 Host: 192.168.1.224 Connection: keep-alive Authorization: Basic RVBTT05NT0JJTEU6 Accept: / User-Agent: Mozilla/5.0 (Linux; Android 12; Pixel 5 Build/S2B3.220205.007.A1; wv) AppleWebKit/537.36 (KHTML, like Gecko) Version/4.0 Chrome/98.0.4758.101 Mobile Safari/537.36 X-Requested-With: XMLHttpRequest Referer: http://192.168.1.224/cgi-bin/webconf Accept-Encoding: gzip, deflate Accept-Language: en-AU,en-US;q=0.9,en;q=0.8

The SOURCE codes in my case are 30, A0, C0, 53 The second parameter appears to just be a sequence number/counter (each "GET" of this nature increments it by 1)

The CMODE stuff looks like this

GET /cgi-bin/directsend?CMODE=06&_=1645997878991 HTTP/1.1 Host: 192.168.1.224 Connection: keep-alive Authorization: Basic RVBTT05NT0JJTEU6 Accept: / User-Agent: Mozilla/5.0 (Linux; Android 12; Pixel 5 Build/S2B3.220205.007.A1; wv) AppleWebKit/537.36 (KHTML, like Gecko) Version/4.0 Chrome/98.0.4758.101 Mobile Safari/537.36 X-Requested-With: XMLHttpRequest Referer: http://192.168.1.224/cgi-bin/webconf Accept-Encoding: gzip, deflate Accept-Language: en-AU,en-US;q=0.9,en;q=0.8

The CMODEs I have are 06, 0C, 0D, 15

I can provide the full pcap if you'd like.

pszafer commented 2 years ago

Do you somehow enabled authorization in your projector?

wraeuk commented 2 years ago

No auth set! Remote and PJLink password is blank and "Security" is set to "no"

I tried to replicate this on my PC and the Windows apps are all doing TCP 3529 socket stuff, and don't let me set CMODE anyway. If I try to go directly to http://192.168.1.224/cgi-bin/webconf (with the "correct" auth) and http://192.168.1.224/webremote/ (where the Windows app points me to for "web control") both 404.

Curiously the LS500 manual says Default user name is EPSONREMOTE and default password is guest ... not that I've observed this.

pszafer commented 2 years ago

Next week I will try to find some time and check if my projector would work with authentication, then we might try to make PR with authorization header for everybody and wait for users to test.