bordaigorl / rmview

A live viewer for reMarkable written in PyQt5
GNU General Public License v3.0
742 stars 61 forks source link

support rm's 2.9 vnc server #87

Closed ddvk closed 2 years ago

ddvk commented 2 years ago

here are the changes needed to get the 2.9 share working.

there are some things missing: broadcast detection and like correct challenge calculation

macoj commented 2 years ago

I couldn't make it work; still having twisted.internet.error.ConnectionRefusedError when try to connect.

I am on 2.9.0.153.

By the way, this patch required me to pip3 install pyOpenSSL.

ddvk commented 2 years ago

you have to start the sharing on the tablet

macoj commented 2 years ago

Great. It works now!

rottweilertje commented 2 years ago

you have to start the sharing on the tablet

Do you mean by using the buildin Present with Screen Share option? I'm on 2.9.0.210 the option to start sharing is disabled if you are not logged on to your cloud account.

I'm not on the beta program and got it pushed today.

delaere commented 2 years ago

Hi, I have a rM1 running 2.9.0.210 since yesterday. rmView is running fine with the patch and the native ScreenShare feature activated.

bordaigorl commented 2 years ago

@ddvk is there any way to circumvent the need for a cloud account? Is there any way (better if programmatic) to force the server to start? (my hopes are not high since it looks like they embedded it into xochitl...)

andresakle commented 2 years ago

@delaere What patch are you referring to? I have tried to run rmView with the native ScreenShare function and get the following message:

Connecting...
Connected to 192.168.1.14
peek: Input/output error

Starting VNC server

The screen remains white.

delaere commented 2 years ago

@andresakle : I just mean using the branch proposed in this PR (ddvk:vnc29). I had an existing clone of the base repo (vnc branch), so I simply did the following in the existing directory:

git pull
git remote add fork1 https://github.com/ddvk/rmview.git
git pull fork1 vnc29
pip install .

Then, you need to start the ScreenShare on the reMarkable before rmview, which require a cloud connection, as discussed above.

The behavior of the share slightly differs from the native VNC implementation in that you can only share documents. The system will not update the display if you navigate in between documents or open the settings page. I sort of like it (I use to share the rmview windows for teaching purposes and students don't have to see the list of docs if I realize that I have to navigate to another document during the lesson).

gustaphe commented 2 years ago

Works flawlessly for me.

A note for Arch users: editing the PKGBUILD of aur/rmview-git to have

source=("${pkgname}"::'git+https://github.com/ddvk/rmview.git#branch=vnc29')

does it.

yujikiriki commented 2 years ago

hey @gustaphe, when you write "flawlessly" is using the new ScreenShare functionality or using the rM2-vnc-server-standalone?

gustaphe commented 2 years ago

ScreenShare.

bordaigorl commented 2 years ago

I incorporated this PR in the now merged devel branch, which now supports both the old server and the new ScreenShare. If I have time I will even add the reStreamer-style method as a backend so that if something breaks one has a failsafe (although that method broke in the past too).

Thanks @ddvk so much for your contribution!