Everything about the reMarkable Paper Tablet

User Tools

Site Tools




USB Web Interface

reMarkable provides a web interface that needs to be turned on to access.

Enabling the service

The service can be turned on from the settings page:

  • Tap the “Menu” icon at the top left of the home page on the device
  • Tap “Settings” at the bottom of the left pane
  • Go to the “Storage” tab
  • Look for the “USB web interface” setting and toggle the switch on the right

Preventing the web interface from being disabled at boot

As of OS version the device disables the Web Interface setting at every device boot. To many users this may be an obnoxious implementation/flaw as a vast number of community reMarkable scripts rely on the web interface. As the web interface is handled by the xochitl binary, the only way as of now to “fix” this issue is to patch the function in the xochitl binary responsible for setting the web interface.

The webui_invincibility patcher will patch the xochitl binary to prevent the web interface from disabling at boot, although at cost of no longer being able to disable it from the settings menu, but only by setting the WebInterfaceEnabled property in /.config/remarkable/xochitl.conf to false. The patcher also offers an option to undo the patches.

Accessing files via a web browser

If you don't want to use the app for syncing files to your reMarkable, you can upload and download files via the USB web interface.

  • Open the page in your browser.
  • To upload, drag a file from your file explorer into the center section of the page and it will upload (it isn't quick and there is not much feedback as to progress).
    • The upload function doesn't seem to pay any attention to what folder you have browsed to in the UI and will always upload to the top “My Files” section on the reMarkable
    • The icon on the top right is a download icon, not an upload icon as described incorrectly in their recent tips & tricks document. I have not found an upload icon.
  • To download a file:
    • browse the folders to find it
    • select it (it goes white on black)
    • click the download icon in the top right.

Accessing files via curl

If you have curl available (or wget or similar), you can upload and download files via the command line.


chronos@localhost ~/Downloads $ curl '' -H 'Origin:' -H 'Accept: */*' -H 'Referer:' -H 'Connection: keep-alive' -F "file=@Get_started_with_reMarkable.pdf;filename=Get_started_with_reMarkable.pdf;type=application/pdf" 
Upload successfull
chronos@localhost ~/Downloads $


To download is a little more complex as you need to find the internal UUID (long hyphenated string of letters and numbers) that the reMarkable internally uses to refer to the file you want. You can see this UUID when you browse the Web UI if you select a file and then hover over the download icon and look at the URL it links to (something like The other way to get the UUIDs is to look in the filesystem on the device if you have access.

Once you have the UUID, you can get the filename associated using:

chronos@localhost ~/Downloads $ curl -I
HTTP/1.1 200 OK
Content-Disposition: attachment; filename='Get_started_with_reMarkable.pdf'
Content-Length: 4444023
Content-Type: application/pdf
Transfer-Encoding: chunked 

Unfortunately, the built in webservice is not smart, and so getting the HEAD data like this takes just as long as getting the whole file. I believe this is because it has to allow for those files where it has to render the lines into the file to get the final file size (Content-Length).

You can download the file using:

chronos@localhost ~/Downloads $ curl -o 'Get_started_with_reMarkable.pdf'
  % Total    % Received % Xferd  Average Speed   Time    Time     Time  Current
                                 Dload  Upload   Total   Spent    Left  Speed
100 4339k  100 4339k    0     0  57914      0  0:01:16  0:01:16 --:--:--  924k
This website uses cookies for visitor traffic analysis. By using the website, you agree with storing the cookies on your computer.More information
tech/webinterface.txt · Last modified: 2021/10/18 19:21 by matteodelabre