Git Product home page Git Product logo

rmview's Introduction

rMview: a fast live viewer for reMarkable 1 and 2

Demo

Features

  • Demo ๐Ÿš€ here
  • Fast streaming of the screen of your reMarkable to a window in your computer
  • Support for reMarkable 1 and 2
  • Works with software version pre 2.8
  • Compatible with ScreenShare (post 2.9)
  • Supports colors (tablet is grayscale but original colors are preserved in rmview)
  • UI for zooming, panning, rotating, inverting colors
  • Pen tracking: a pointer follows the position of the pen when hovering on the reMarkable
  • Clone a frame into separate window for reference
  • Save screenshots as PNG

Compatibility

ScreenShare VNC Server rm2fb
RM1/2 < v2.9 โŒ โœ… โœ…
RM1/2 >= v2.9 โœ… โŒ โŒ

โš ๏ธ Update 2.9+ users โš ๏ธ: To use rmview with the ScreenShare feature you have to first start the ScreenShare from the tablet, and then start rmview.

Installation

The most efficient installation method is the semi-automatic one below, which requires a Python3 installation. If you are looking for a standalone executable, check the releases page for executable bundles. If there is no bundle for your operating system then follow the installation instructions below.

As a basic prerequisite you will need Python3 on your computer.

โš ๏ธ Please make sure pip is pointing to the Python3 version if your system has Python2 as well. If not, use pip3 instead of pip in what follows.

โš ๏ธ WARNING โš ๏ธ: If you use Anaconda, please install the dependencies via conda (and not pip) then run pip install ..

Semi-automatic installation

The easiest installation method is by using pip, from the root folder of this repository:

   pip install .

(please note the command ends with a dot) which will install all required dependencies and install a new rmview command. If you want to use the SSH tunnel feature, install with

pip install ".[tunnel]"

Then, from anywhere, you can execute rmview from the command line. The tool will ask for the connection parameters and then ask permission to install the VNC server on the tablet. Press Auto install to proceed.

If you plan to modify the source code, use pip install -e . so that when executing rmview you will be running your custom version.

Manual installation

Install the dependencies (PyQt5, Paramiko, Twisted, PyJWT) with pip or conda manually:

# install dependencies
pip install pyqt5 paramiko twisted pyjwt
pip install sshtunnel  # optional
# build resources file
pyrcc5 -o src/rmview/resources.py resources.qrc

Then you can run the program with python -m rmview from the src folder.

Using Docker

This project contains a Dockerfile so that rmview and all its dependencies can be installed and run inside a Docker container. Since rmview not only reads your local configuration but also needs an X11 display, you should run docker-run.sh which takes care of the host mappings. Please note that docker-run.sh is written for Unix-like OSes and expects your rmview configuration inside your local $HOME/.config/rmview/ folder.

Usage and configuration

Suggested first use: after installing run rmview, insert when prompted the IP of your tablet and the password, as found in the Menu / Settings / Help / Copyright and Licences menu of the tablet. Then, optionally, select "Settings..." from the context menu (or the error dialog) to open the default configuration file which you can edit according to the documentation below.

More generally, you can invoke the program with

rmview [-v|-q] [config]

The optional -v flag makes the console output verbose, -q makes it quiet (only errors). The optional config parameter is the filename of a json configuration file. If the parameter is not found, the program will look for a rmview.json file in the current directory, or, if not found, for the path stored in the environment variable RMVIEW_CONF. If none are found, or if the configuration is underspecified, the tool is going to prompt for address/password.

Configuration files

The supported configuration settings are below. Look in file example.json for an example configuration. All the settings are optional.

Setting key Values Default
ssh Connection parameters (see below) {}
backend "auto", "screenshare", "vncserver" "auto"
orientation "landscape", "portrait", "auto" "landscape"
pen_size diameter of pointer in px 15
pen_color color of pointer and trail "red"
pen_trail persistence of trail in ms 200
background_color color of window "white"
invert_colors if true, start the tablet with inverted colors false
hide_pen_on_press if true, the pointer is hidden while writing true
show_pen_on_lift if true, the pointer is shown when lifting the pen true
forward_mouse_events Send mouse events to tablet (see below) false

PLEASE NOTE: When backend is auto, if the tablet is using version 2.9 and above then screenshare is used; otherwise vncserver is selected. Note that currently screenshare is only compatible with version 2.9 and above, and vncserver with version 2.8 and below.

If forward_mouse_events is enabled, clicks and mouse drags on the main window will be sent to the tablet as touch events, mouse drags while pressing CTRL will be sent as pen events, allowing drawing. This option is only available if using "backend": "vncserver", which in turn is only supported for rM software version below 2.8.

Connection parameters are provided as a dictionary with the following keys (all optional):

Parameter Values Comments
address IP of remarkable tool prompts for it if missing
auth_method Either "password" or "key" defaults to password if key not given
username Username for ssh access on reMarkable default: "root"
password Password provided by reMarkable not needed if key provided
key Local path to key for ssh not needed if password provided
timeout Connection timeout in seconds default: 1
host_key_policy "ask", "ignore_new", "ignore_all", "auto_add" default: "ask" (description below)
tunnel True to connect to VNC server over a local SSH tunnel default: false (description below)
tunnel_compression True to enable compression for SSH tunnel default: false (description below)

The address parameter can be either:

  • a single string, in which case the address is used for connection
  • a list of strings, which will be presented at launch for selection

To establish a connection with the tablet, you can use any of the following:

  • Leave auth_method, password and key unspecified: this will ask for a password
  • Specify "auth_method": "key" to use a SSH key. In case an SSH key hasn't already been associated with the tablet, you can provide its path with the key setting. If key is password protected, you can specify key passphrase using password parameter.
  • Provide a password in settings

If auth_method is password but no password is specified, then the tool will ask for the password on connection.

As a security measure, the keys used by known hosts are checked at each connection to prevent man-in-the-middle attacks. The first time you connect to the tablet, it will not be among the known hosts. In this situation rMview will present the option to add it to the known hosts, which should be done in a trusted network. Updates to the tablet's firmware modify the key used by it, so the next connection would see the mismatch between the old key and the new. Again rMview would prompt the user in this case with the option to update the key. This should be done in a trusted network. The host_key_policy parameter controls this behaviour:

  • "ask" is the default behaviour and prompts the user with a choice when the host key is unknown or not matching.
  • "ignore_new" ignores unknown keys but reports mismatches.
  • "ignore_all" ignores both unknown and not matching keys. Use at your own risk.
  • "auto_add" adds unknown keys without prompting but reports mismatches.

The old "insecure_auto_add_host": true parameter is deprecated and equivalent to "ignore_all".

In case your ~/.ssh/known_hosts file contains the relevant key associations, rMview should pick them up. If you use the "Add/Update" feature when prompted by rMview (for example after a tablet update) then ~/.ssh/known_hosts will be ignored from then on.

โš ๏ธ Key format error: If you get an error when connect using a key, but the key seems ok when connecting manually with ssh, you probably need to convert the key to the PEM format (or re-generate it using the -m PEM option of ssh-keygen). See here for details.

NOTE: If you have a lot of known hosts in system known hosts file (~/.ssh/known_hosts), you are advised to add known host entry for remarkable to ~/.config/rmview_known_hosts because paramiko can be very slow when loading large known hosts file which slows down the whole connection routine.

If your user system known hosts file already contains entry for remarkable, you can add it to rmview specific hosts file using this command:

cat ~/.ssh/known_hosts | grep 10.11.99.1 >> ~/.config/rmview_known_hosts

You should of course replace IP with your remarkable IP.

Note on security and using an SSH tunnel

By default, this program will start VNC server on remarkable which listens on all the interfaces and doesn't expose any authentication mechanism or uses encryption.

This program will then connect to the VNC server over the IP specified in the config.

Not using any authentication and exposing VNC server on all the network interfaces may be OK when connecting to the remarkable over USB interface, but when you are connecting to remarkable over WLAN, you are strongly encouraged to use built-in SSH tunnel functionality.

When SSH tunnel functionality is used, VNC server which is started on remarkable will only listen on localhost, this program will create SSH tunnel to the remarkable and connect to the VNC server over the local SSH tunnel.

This means that the connection will be encrypted and existing SSH authentication will be used.

To Do

  • Settings dialog
  • About dialog
  • Pause stream of screen/pen
  • Binary bundles for Window, Linux and MacOs (PyInstaller?)
  • Add interaction for Lamy button? (1 331 1 down, 1 331 0 up)

Legacy reStreamer-like version

There are two versions of rMview, presenting the same interface but using different back-ends (thus requiring different setups on the reMarkable):

  • The "VNC-based" version, in the vnc branch (default)
  • The "reStreamer-like" version, in the ssh branch

In my tests, the VNC version is a clear winner. The ssh branch of this repo hosts the reStreamer-like version for those who prefer it, but it should be considered unmaintained.

Credits

The VNC server running on the tablet is developed by @pl-semiotics:

Support for the ScreenSharing feature is based on @ddvk's reverse-engineering of the authentication protocol.

I took inspiration from the following projects:

Icons adapted from designs by Freepik, xnimrodx from www.flaticon.com

Thanks to @adem, @ChrisPattison, and @jlbas for their PRs.

Disclaimer

This project is not affiliated to, nor endorsed by, reMarkable AS. I assume no responsibility for any damage done to your device due to the use of this software.

Licence

GPLv3

rmview's People

Contributors

adem avatar adoy avatar bennofs avatar benthor avatar bordaigorl avatar chrispattison avatar ddvk avatar eeems avatar jlbas avatar kami avatar kjyager avatar larsblumberg avatar ljungberg avatar maunke avatar rafael-genes avatar vale981 avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

rmview's Issues

Unable to connect

When using a password, I get the following error:

Searching configuration in rmview.json
{'ssh': {'address': '10.11.99.1', 'password': 'ZHHCfCoNbC'}}
Connecting...
Could not connect to None: Server '10.11.99.1' not found in known_hosts
Please check your remarkable is connected and retry.
Server '10.11.99.1' not found in known_hosts

when using an SSH key, I get a different error:

Searching configuration in ./config.json, rmview.json
Fetching configuration from ./config.json
{'ssh': {'address': '10.11.99.1', 'username': 'root', 'key': '~/.ssh/id_rsa', 'timeout': 1}}
name 'QInputDialog' is not defined

I am otherwise able to ssh into the device.

Invalid private key

Today I tried to use rmview and was unable to connect due to an invalid private key. The error persisted also after pulling the newest version.

The key I'm specifying in the config works fine when connecting to the rM via the ssh command.

Output of rmview is below:

Fetching configuration from remarkable/software/rmview/rmview.json
{'ssh': {'address': 'remarkable', 'username': 'root', 'key': '~/.ssh/id_rsa', 'timeout': 1}, 'orientation': 'landscape', 'pen_size': 15, 'pen_color': 'black', 'pen_trail': 0, 'background_color': 'black', 'fetch_frame_delay': 0.03, 'lz4_path_on_remarkable': '/usr/opt/lz4', 'hide_pen_on_press': False}
('Invalid private key', [_OpenSSLErrorWithText(code=67764350, lib=4, func=160, reason=126, reason_text=b'error:040A007E:rsa routines:RSA_check_key_ex:iqmp not inverse of
q')])

`str.join(config_files)` fails if `RMVIEW_CONF` is not set

If the RMVIEW_CONF environment variable is not set, it will still be added as None to config_files. This crashes the program when calling str.join(config_files) with the following stack trace:

Traceback (most recent call last):
  File ".\src\rmview.py", line 183, in <module>
    rMViewApp(sys.argv)
  File ".\src\rmview.py", line 38, in __init__
    log.info("Searching configuration in " + ', '.join(config_files))
TypeError: sequence item 2: expected str instance, NoneType found

Connection refused on RM2

Hello,

I am running nixos 20.09 and I installed the rmview dependencies through conda, then I built the rmview.whl and installed it with pip. I tried to connect with the example config but here is what I got:
2020-12-08-181430_520x203_escrotum

Unfortunately when I typed, nothing appeared on the screen. Since I wasn't able to write my passphrase, I edited the config to provide my password, this time it didn't ask me anything but I got this error:
2020-12-08-181642_1920x1080_escrotum

Thank you for your help,
Thomas

rmview stops updating its view

after document is set to landscape view.

Steps to reproduce:

  1. open a notebook in portrait mode on rm2
  2. start rmview and connect to rm2
  3. set notebook to landscape view

Incorrect instructions for Manually Closing VNC server

When stopping the rmview service when the reMarkable device is sleeping, rmview can't stop the VNC service on the device.
Good news: It tells you this, and gives you instructions on how to stop the service manually.
Bad news: It gives you incorrect instructions on how to stop the service manually.

What it says:
You can manually terminate it by running ssh {IP address of device} killall rM-vnc-server-standalone.

Why this is a problem:
Unless your username is root, this will not work, as the default username for ssh is your username.

What it should say:
You can manually terminate it by running ssh root@{IP address of device} killall rM-vnc-server-standalone.

Branch used is version2.6

not picking up rmview.json or RMVIEW_CONF

I've tried with both of these and rmview.py still requires the IP and password. I'm running with
python3 rmview.py rmview.json

the contents of my rmview.json is

{ "ssh": { "address": "XXXXXXXX", "username": "root", "password": "XXXXXXXX" "timeout": 1 }, "orientation": "portrait", "pen_size": 10, "pen_color": "red", "fetch_frame_delay": 0.03 "lz4_path_on_remarkable": "/usr/opt/lz4" }

But if I misspell rmview.json it doesn't through an error, so I'm guessing it's ignoring the argument.

Support for RM2

Hi, thanks a lot for rmview, I think it's really great! I recently got a remarkable 2, and tried to use both branches. The vnc branch didn't connect at all, but the ssh branch showed me a black screen that just flickered every time something on the screen changed. Do you know what could be causing the problem?

Auto-install of rM1-vnc-server broken on macOS

$ ./result/bin/rmview config-usb.json
Searching configuration in config-usb.json, rmview.json, /Users/siraben/Library/Preferences/rmview.json
Fetching configuration from config-usb.json
{'ssh': {'address': '10.11.99.1', 'username': 'root', 'key': '~/.ssh/id_rsa', 'timeout': 2}, 'orientation': 'portrait', 'pen_size': 10, 'pen_color': 'red', 'pen_trail': 200, 'background_color': 'black', 'hide_pen_on_press': False}
Connecting...
Connected to 10.11.99.1
1
Installing...
QIODevice::read (QFile, ":bin/rM1-vnc-server-standalone"): device not open
<class 'TypeError'> object of type 'NoneType' has no len()

Bye!

key parameter

Hi Emanuele,
thank you indeed for this fantastic tool.
I just mention that I cannot get the following example.json parameter to work
"key": "~/.ssh/id_rsa"
The conf.json file works fine when I use the parameter
"password": "xxxxxx",
The message is '... not a valid RSA private key'. But the key is valid: ssh root@ip_address works with no password.
Roberto

RM2 seems to be in pen tracking mode only

First of all, great product. It seems to be very responsive. However, when the pen is in contact with the screen, the rmview thinks that it is hovering and doesn't apply ink to the canvas.

Package on PyPI

Packaging on PyPI allows users to easily install rmview and encourages packaging for distros

Install Remarkable VNC files if not present

Paramiko supports file transfers so rmview could check if mxc_epdc_fb_damage.ko and rM-vnc-server are present beforehand and transfer them if they are not. They could be included in the python package and even transferred to a temp directory every time. This would make setup as simple as pip installing rmview.

I like the latter option of transferring the files every time to a temp directory out of the python package installation directory since it wouldn't require any setup on the side of the remarkable and doesn't leave any permanent changes

Change the background canvas color

Absolutely superb job with this tool - thank you. I'm trying to use it with OBS and Chroma Key to superimpose Remarkable drawings real-time onto a video stream (Zoom call in this case). I can't get the Chroma Key working with a white background - can the background canvas color on rmview be changed? I was hoping that the bg_color option would do this but it doesn't seem to.

rmview asks for ssh passphrase despite the public key on remarkable and active ssh-agent

As per title; the passphrase is the one used to access identity of my laptop device, not the one used to connect to Remarkable. rmview.json is pretty much unmodified, and I don't have any particular notes from the build of dependencies.
I am able to authenticate succesfully, without passphrase query, via just ssh.
I have a rM1, and software is updated to the latest release (2.5.0.27).

Suggestion: Add a fading trail

I really like this project and I intend to use it in my remote teaching.

There is something that I like in Google Jamboard that I think will be a fine addition to this project: It is the ability to show a fading trail following the pen when you hover (but not press) over the screen. It is great for pointing/circling things while explaining. Ideally, a parameter in config would control for the length/duration of this trial.

Rmview for IOS

Would it be possible to create an IOS app with this functionality?
I'm sure it would be very popular.

Installation instruction missing

Hi,

I'm probably stupid, but I can't find the instructions for installation of the vnc branch. In the readme, it just says to use 'pip install .'...I've unsuccessfully tried 'pip install rmview'. Could you specify the correct name of the package ?

Thanks,

Marc.

Any ideas on how to increase the overall rendering resolution ?

Hi,
Thanks for your great work ! I've enjoyed a lot your script when you were using lz4, but it's way more quicker with VNC now and offers the possibility to really stream my writing. I'm planning on using it for remote lessons in this pandemia time...
However, I still find the resolution quite poor. Saddly, I think this is the native resolution of rM png export... but do you think there could be a way to have a better rendering ? More like the one of svg and pdf export files, where you don't see the pixels, but every thing is rounded thanks to svg-like paths ?

highlight the difference to LiveView offical client

As someone who came to this project through Google search, the question mark I had in mind was what's the difference between this and the official LiveView client and I didn't find it mentioned in the README.

Amending this information improves the chance the searcher downloads this to try.

The First difference I can think of is this one runs on Linux desktop.

It helps to mention of this uses the same protocol as LiveView (i.e. it's considered a LiveView client from the tablet's prospective)

Unsupported device error: "Device is reMarkable Prototype 1"

Hi, I have an rM1 but when launching rmview from the command line after connecting to the device an 'Unsupported Device' error appears stating "The detected device is reMarkable Prototype 1" - see below.

UnsupportedDevice

I bought my rM1 well after it was launched so I'd be surprised if it was a prototype. Do you think there anything I can do to get rmview to work on my remarkable?

FYI, just in case it may be relevant, I'm still on update 2.1.1.3.

Thanks,

Dom

hide the pointer for a short time after writing

When I'm writing, the red pointer shows up immediately after the pen tip stops touching the screen, and so it shows up during writing (unless it's an uninterrupted line). It would be nice to have an option for showing the pointer only after some predefined short time since the last tip touch.

rmview window doesn't refresh/redraw if hidden

I experimented with sharing the rmView window in an online meeting room via the browser's screen sharing. This works wonderfully so far, with one small exception. The window content is only updated as long as at least a small window area remains visible. As soon as another window completely overlaps the rmView window, the window is no longer redrawn. As I am on macOS and Apple does something similar with Safari to save battery power, it could be specific to QT under macOS. Perhaps the behaviour can be influenced, so a shared rmView window could be moved into the background in an online meeting?

Duplicate frames close when writing on tablet

I report a problem that occurred recently on rmview for rM2, although it seems to be happening also for rM1 (but not as severely).

After duplicating a frame, the duplicate is often closed by the very act of writing or tracing the pen on the tablet.
The rubber tip seems to also trigger this.
This does not happen very regularly: sometimes I can go on and keep writing with even more than one duplicated frames, but the frames anyway last for not more than a few minutes, before they all close due to a pen stroke.

It is very strange because it only appeared recently. Last week I could clone frames and keep writing without issues for hours. I do not remember updating anything on my machine, and this happened before the problematic update to rM 2.6.

I take advantage of this to suggest that upgrading the frame-cloning feature to target a bipartite or tripartite window would be very useful. For example one could select to have rmview show a number of windows (labeled by an index) at all times. When cloning a new frame the user could then direct the frame to window number j.
Just an idea.

Thanks!

VNC binary needs update for system software version 2.6

Apparently, the VNC server binaries need to be recompiled to work with the new reMarkable software version 2.6, since some shared libraries were updated to new versions in this update. (At least libcrypto.so was updated; Iโ€™m not sure about others.)
I have already opened a corresponding issue at the rM-vnc-server repo.

Unable to Initalize Application and Issues with Settings Initialization

I am on a Windows 64-bit laptop. I had to install the dependencies manually with Python 3.9, but also ran the automatic install command afterwards. When I try to run the program, I am unable to connect to the RM2 because it cannot find the SSH host key. Glancing at the source code, it appears to only be looking in UNIX directories - which is obviously an issue on a Windows laptop. When I tried to enable the "insecure_auto_add_host" option, the program crashes because the JSON settings file is not created. Thusfar, it is completely worthless on my PC and I would very much appreciate an explanation how the author got it to work on a Windows machine.

rMView Win64 Exectuable Bundle

Hello, i've downloaded the Win64 exectuable bundle and have encountered an issue.
image

I have entered my devices IP, password and have re-installed several times.

I have factory reset the rM2, connected to the appropiate cloud services and have updated the software to version 2.7.0.51

Has this issue been encountered before?

Thank you for your time

Python window does not open

Hello everyone,

thank you for developing review. Its been really helpful so far!

Recently however I had an issue with the python window. From one day to the other it wasn't opening anymore. The computer seems to connect the Remarkable.

(base) Johanness-MacBook-Pro:rmview Johannes$ rmview
Searching configuration in rmview.json, /Users/Johannes/Documents/Remarkable/rmview-vnc/rmview.json
Fetching configuration from rmview.json
{'ssh': {'address': '10.11.99.1', 'username': 'root', 'key': '~/.ssh/id_rsa', 'timeout': 2}, 'orientation': 'auto', 'pen_size': 10, 'pen_color': 'red', 'pen_trail': 1000, 'background_color': 'black', 'hide_pen_on_press': False}
Connecting...
Connected to 10.11.99.1

And the icon also does appear...
Screenshot 2020-12-18 at 14 55 12

I have the anaconda installation of python.

Thank you for your help in advance!

White screen on Windows

It seems that at least for me, only a white screen is displayed on Windows. I'm planning on taking a look at the issue (very little Python, no Qt experience) and preparing a patch in case I succeed, but I'd like to hear from others and their experience on Windows?

Thanks!

Incompatibility with new rM update?

Hi! Let me first say: thanks a lot for your work: rmview is an essential feature that makes using the remarkable a competitive option w.r.t. other tablets (and a much better one in my opinion).

Unfortunately, my remarkable 2 updated on its own today (my bad for not blocking auto updates), and it now seems impossible to restore a connection using rmview.
I have tried everything: from reinstalling rmview to removing all ssh keys associated to the old rM and adding new ones, to tweaking the settings... Nothing seems to work, and I keep getting

Connection failed: [Failure instance: Traceback (failure with no frames): <class 'twisted.internet.error.ConnectionRefusedError'>: Connection was refused by other side: 61: Connection refused.

I do manage to connect using manual ssh.

Now this is critical because I am currently using rM and rmview for work, so any help will be greatly appreciated.

Thank you!

Bad pen trail performance

The performance seems to go down significantly (updates maybe 1-2 times a second) when hovering with the pen (and the CPU usage hovers around 80%). I am using settings "pen_size": 30, "pen_color": "red", "pen_trail": 200. This even happens if pen_trail is zero (i.e. if I just want to see a red dot).

While writing (without pen trail) the viewer updates much smoother.

Feature request: Customize binary location

Hi, first off, thanks for this software, it's great and very fast! :)

I'd like to make a request to use a non-default binary location on the remarkable tablet. Currently for the RM2 the binary path appears to be hardcoded to /home/root/rM-vnc-server-standalone. I'd like to customize that to /home/root/bin/rM-vnc-server-standalone as part of an effort to keep my /home/root directory clean and uncluttered.

I see two main options for this:

  1. Add a binary_path option to the host computer's ~/.config/rmview.json file
  2. Add /home/root/bin/rM-vnc-server-standalone as a path for rmview to look for the binary, and use it if found

If either of those approaches (or a third one) appeals to you, then I could look into preparing a PR.

lz4 path

FrameBufferWorker assumes that lz4 is in $HOME rather than the more standard $PATH; maybe this should be a configurable option?

Program stopped working from one day to the next

I am sorry if this is not the right place to discuss this, still pretty new to all of it.
I have installed rmview successfully and it was working perfectly. However not anymore.
The steps I take to set up the server and connect with remarkable are the same, but for some reason the device refuses the connection.
I have tried replacing the rM-vnc-server script and its dependent, but I am stuck with the same result.

Any help?
Thank you

IP address changing

Today I went to use rmview and it no longer worked. Turns out the IP address of the remarkable had changed on my local network. What's the simplest way to work around this?

Thanks!

rmview with rm2fb installed makes the UI freeze

As soon as I start rmview, it straight up makes the tablet go icicle, I have to reboot it. Nothing interesting via journalctl -f on the device. After uninstalling rm2fb, no more issues.

rmview stopped working

after installing rmview it worked flawless on both of my windows devices.
After installing toltec/remux the screen appears in rm view when write or push an action the screen flickers onetime and after that the remarkable doesn't respond anymore.

Unable to connect on Windows

When executing rmview and typing in the IP address, this is the resulting error diagnostic:

Unknown host key for server '192.168.0.210': got 'AAAAB3NzaC1yc2EAAAADAQABAAABAQCtM8uAkB0w5jj23/5YxlPQjk3rYBR8FQm3M6qF7n7aYtH8uBZw2TihEwHejM9ClfaJZGuJwQWNoaOyfOyT3NfqDjC3VflkDbMxuTPHMr003qIBU3NY7/BLeQdqUNM752KtVtKu+PumAYlvLjQrqq03FB8OT11xJ1tK7jKeBbG19wQvqjO1SFjr4ll03M137uv+XvXQtQRmYbcwlo8VenlDLU586buupyodG6if65XWm0W105dMlB9p4IVu46o2L+OZMUpoM/0XK3WCxajQuwDVIcGlmcPX3i97Ccln2AKxZJ9m1WRtM5X1lFK9F8ZIqrQxKN6UpeSNQW4zmMYWSAV/'

image

Any ideas on how to debug? There is no password for the remarkable so I just pressed enter for it.

Automatically connect on `rmview` command, rather than having to press enter twice?

rmview is incredible and has changed all my zoom meetings!!! Thank you!!!

Had a quick question that I couldn't find an answer to in the README:

How can I switch the popup from coming up every time I run rmview? Right now I need to press enter twice, but it seems like it should be possible to have it automatically connect to the IP.

This is the popup where I need to press enter twice:

image

Connection failed

While packaging up rmview using Nix, I encountered the following error when I run it. The IP is live and SSH works. What could be the cause?

Please check your reMarkable is properly configured, see the documentation for instructions.

Connection failed: [Failure instance: Traceback (failure with no frames): <class 'twisted.internet.error.ConnectionRefusedError'>: Connection was refused by other side: 61: Connection refused.
]

Closing application/window with CTRL+Q/CRTL+W on Linux

Hi,

First of all, thanks a lot for rmview! It's been super useful to turn my remarkable into a little whiteboard I can use on Zoom calls. I have been using it succesfully on my RM1 and, more recently, RM2.

Anyway, here is a small issue I've been experiencing, in case you find the feedback useful.

I am on Ubuntu 18.04, and I use a tiling window manager (i3wm), which by default doesn't show window frames. This means that I don't have a "close" button to click to terminate the application when I'm done with rmview (II imagine that e.g. on gnome one is expected to close rmview by clicking on the usual 'x' in the upper right corner). Most applications will close the current window/tab (or terminate altogether) when receiving the CTRL+W (or CTRL+Q) keyboard shortcut (for instance, it is listed as a standard application shortcut in the GNOME guidelines: https://developer.gnome.org/hig/stable/keyboard-input.html.en), and that's how I usually close GUIs. This doesn't seem to work with rmview, so I am typically left to kill the application when I'm done with it. This is of course not a problem at all, but still I thought it'd be useful to flag it as something you may potentially look into at some point in the future. Unless I've overlooked something, in which case I apologise in advance!

Can't execute rmview.py

When I execute python src/rmview.py it reports

File "src/rmview.py", line 156
  rmConnect(**self.config.get('ssh'),
                                                       ^
SyntaxError: invalid syntax

Without any real overview of the code, I've tried setting manualy rmview.json (since it never asked me to, because it didn't execute), but it had no effect. I followed the pyrcc5 step beforehand.
The system is an openSUSE, I've installed the paramiko package.

Syntax error in rmview.py?

rmview.py would not run, telling me that there is a syntax error on line 171

File "/Downloads/rmview-vnc/src/rmview/rmview.py", line 171
rMConnect(**self.config.get('ssh'),
^
SyntaxError: invalid syntax

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.