Giter Club home page Giter Club logo

remarkablesync's Introduction

reMarkable OneNote Addin

This is an OneNote AddIn for importing digitized notes from the reMarkable tablet.

New in Version 3

Version 3 is a major version update that adds support for the new (2022) reMarkable cloud API.

Big shoutout to juruen/rmapi for working out all the nitty gritty of the new API.

Please note that while the new cloud API is now supported, due to the way it works, it is SIGNIFICANTLY slower than the previous cloud API. For example, getting the whole document tree using the previous API required only a single HTTPS request, regardless of how many documents are in the tree. Using the new API, it now requires 4 HTTPS requests for EACH document/folder (i.e. if your device has 200 document, 800 HTTPS requests are now needed to build up the document tree). While optimizations such as caching and multithreaded requests are used, it is still much much slower to populate the document tree, especially the first time the AddIn syncs to the device using the new API.

Installation

Latest release installer available at https://github.com/jamesf91/RemarkableSync/releases/latest

Choose either the 32-bit or the 64-bit Windows installer depending on whether the OneNote version is 32-bit or 64-bits:
In OneNote, go to File menu -> Account -> About OneNote. The first line in the About window should say something like "Microsoft OneNote ... 64-bit or 32-bit"

Once the installer completed, start OneNote. You should see a new tab in the ribbon bar called "reMarkable".

Setup

Before using the addin, there is a one time setup to link the addin to your reMarkable table and configure the hand writing recognition service.

Linking reMarkable tablet

Go to the reMarkable tab in the OneNote ribbon and click on the Settings icon. The Settings window should appear.
Go to https://my.remarkable.com/device/desktop/connect for a new desktop client one-time code. Copy it into the "One Time Code" field in Settings window and click Apply. This will link OneNote as a new desktop client to your reMarkable Cloud account.

Configure hand writing recognition

The reMarkable OneNote addin uses MyScript (https://www.myscript.com/) as an external service to convert the handwritten stroke from reMarkable tablet into text. It is the same service used by the reMarkable device itself when selecting "Convert to text and send".

Luckily MyScript provides 2000 free conversions a month, which is plenty for normal usage. All we have to do is register for a free account at https://sso.myscript.com/register. Once registered and logged in, go to https://developer.myscript.com/getting-started/web, select Web platform and click "Send email" to receive your private application key via email. In the email you should receive 2 keys: the application key and the HMAC key. Copy each key into the corresponding field in the Settings windows of the addin and hit Apply to save the configuration.

Troubleshooting

This addin does not produce any log by default. To generate log for troubleshooting, open up Windows Registry and navigate to the following key:

  • "Computer\HKEY_CURRENT_USER\SOFTWARE\Microsoft\Office\OneNote\AddInsData\RemarkableSync.OnenoteAddin" for 64 bit-install or,
  • "Computer\HKEY_CURRENT_USER\SOFTWARE\Wow6432Node\Microsoft\Office\OneNote\AddInsData\RemarkableSync.OnenoteAddin" for 32-bit install

Then add a new string-valued entry named "LogFile". The value should be a full file path to the log file to be generated, e.g. "C:\temp\remarkable_sync_log.txt". Once OneNote is restarted, the addin will start generating log.

Technical details

Since OneNote only supports out of process COM addin, this addin was created as a C# local server COM class. While this addin is loaded, you will see an instance of RemarkableSync.OnenoteAddin.exe process running at the same time as OneNote.exe.

When the Fetch window is opened, the addin will retrieve all the notebooks that have been synced to reMarkable cloud and show them in a tree structure according to the folder they are in. Selecting a notebook in the tree and clicking Enter will download the .lines files for all the pages in that notebook, parse these files into individual pen strokes and send them to MyScript for conversion into plain text. The converted text is then inserted as a new page into the current OneNote notebook and tab.

Acknowledgement

This is a personal project of mine that was created out of what to me was a missing piece in the overall workflow of using reMarkable tablet for taking work and study notes.

I'd like to thanks for following people and/or sites for inspiration, information and help:

remarkablesync's People

Contributors

jamesf91 avatar nicolailang 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

remarkablesync's Issues

reMarkableSync not downloading Template layer

Hi, got my rm2 today. Trying to import some notes with template layers I failed. The template layer is not downloaded, only the handwriting.
Works as designed or did I miss a step?

ssh by wifi

Is it possible to acces the remarkable by wifi ssh acces. Is there a way that i can point to my ip adress (with wifi) of the tablet instead of the usb ip adress?

GetAllItems request failed with status code Unauthorized

When attempting to fetch items using the latest installer and OneNote from 365 build 16.0.14026.20270 (64-bit) I receive the error below-

remarkable

I've attempted to resolve by re-installing the addin and a fresh OneNote install, along with re-generating a new cloud code. When registering in the web I still only see '1 Connected' Desktop App that should be the reMarkable app.

Dark mode import graphics import

When importing graphics while OneNote is in dark mode the graphics come in as black and its on a dark grey background so its not really visible. I could not figure out how to change the color of the graphics in OneNote. Could you have a color choice on the settings menu for graphics import?

Remarkable Addin Error with Tablet Version 3.0.4.1305 Software Update

Everything was working great with table 2.xx software. Love this Addin. The tablet updated to 3.0.4.1305 today. OneNote wouldn't sync. I tried using a new one-time code and entered under OneNote reMarkableSync Addin and received "Error registering new reMarkable device". Tried to reinstall Addin but received same error message.

Import without text conversion?

Would it be possible to implement this add-on without the text conversion so that the lines are imported as lines into OneNote (best scenario would be for these do be editable in OneNote, but adding as an image is also sufficient)?

[Feature Request] Graphics and Text fetch in one click

With 2.0.4 welcome feature of "Adding option to the download dialog to import pages as image rather than text.", I find myself always Fetching twice, one in Graphics and one in Text mode, and then copy-paste them in the same OneNote sheet... is it possible to add an option to Fetch both in "Graphics and Text" mode and place them in a single OneNote sheet?

Feature Request - COM Add-in

Install as COM Add-In (File > Options > Add-ins) rather than .msi. My company blocks executing the .msi installer but does allow COM Add-Ins.

[Feature Request] Set default image width size on Fetch

Is it possible to add an option to import the Graphics format as XYZ pixels wide? The current import is very wide (and super-readable of course) but requires more scrolling. Default should be the current pixel width of course, for those that prefer it in this size

Non-Installation

Completed installation of 64bit version (verified 64bit OneNote). Install completes but OneNote does not show the add-in. Looking at the Add-ins under OneNote Options shows nothing, nothing in the COM Add-ins. Also registry doesn't contain an "AddInsData" node. It has "AddIns" (which has no keys) but not "AddInsData".

v2.0.5 64bit

Is there a 64 bit version available of v2.0.5?

Error importing document from reMarkable error.

Hi, I have just installed version 2.0.4 (64 bit version) and I have followed the one off set up instructions. However whenever I try to import a notebook from my remarkable I get the above error. This is a great concept and I hope you can help me in getting it to work.

OneNote on Mac OS

Hi, will there be an option to use the Plugin for OneOne on Mac too ?

Add ability to have text next to image in table layout

V3.0 update is fabulous. This has my biggest request which was to have ability to have text and image.

It would be very useful if the output could be a table where you two columns:

  • Text extracted from image
  • The image.

Can't fetch. Error getting notebook structure.

Hello,

I have a Remarkable 2 and it was sync with Onenote. Recently the remarkable updated to the new version 3.12.4.4
And since then it cannot sync anymore wiht Onenote and delivers always the same error.

"error getting notebook structure from Remarkable. Unable to get document tree from cloud"

image

Any help?

Digitising Failed

Note sure why but i've started getting this error from yesterday. Any ideas or information required from me to help debug?

Hint to overcome slowness of new API

To reduce fetch time, why not to have "Pinned notebooks" whose contents is always fetched and add a new button/command "Fetch all" if user needs other notebooks?

Feature Request

Select multiple notebooks for import. I am using the SSH connection and would like to import a 'folder' but also just select a set of notebooks, each becoming a 'page' on the current folder in OneNote

Internal Server Error when registering the reMarkable in OneNote

Hello, I have followed the instructions for installing and configuring the OneNote reMarkable Plugin, but when registering with reMarkable I am getting an error. This is wat the log says:

23-1-2023 19:57:01 AddIn.GetCustomUI(76) - called
23-1-2023 19:57:16 SettingsForm.setRmConnectionMethod(162) - Setting connection method to RmCloud
23-1-2023 19:57:23 RmCloudDataSource.RegisterWithOneTimeCode(70) - registring with code: cxifedmh
23-1-2023 19:57:23 RmCloudDataSource.Request(173) - url is: https://webapp-production-dot-remarkable-production.appspot.com/token/json/2/device/new
23-1-2023 19:57:23 RmCloudDataSource.RegisterWithOneTimeCode(86) - response code: InternalServerError

Using Enterprise Apps for Business, Windows 10 and a 64-bit version of OneNote

Won't start and write logs in Win11/OneNote 365

What a wonderful addin idea! Thanls a lot for your work!
Too bad that it does not start at my OneNote instancde. Addin keeps disabled in Options->Addins stating a runtime exception. Enabling loggin in registry does not produce any output.
Do have an idea how to fix?

Feature Requests

  • Default import type

LOVE the new Text and Graphic import, minor, but remembering the last pick would be cool.

  • Multi import

This app is amazing, and why I keep the reMarkable. Having the ability to multi-select and import more than one at a time would be excellent.

  • Import PDF with background?

I create a PDF for my Friday meeting, that I drop to reMarkable, then edit, adding pages as needed. When importing I do not get the original PDF just the markup on it.

Select Myscript Language

Hi, I am trying to have my notes recognized by Myscript service. In your interface I understand tha you can select the language to tell myscript which one to use when called. I need to translate notes from Italian but i do not understand if this is an option I should set somewhere. I tried to write Italian in the select form, but it seems not to work. I thought it could be my bad calligraphy, but if I write in english, the recognition works flawlessy. Any help would be appreciated! thanks for yout work
fabrizio

Importing Notes Error

Just installed for the first time and I'm trying to import notes from the Tablet into OneNote.

I get the error message: "Error importing documents from Remarkable. Object reference not set to an instance of an object"

The only installation step I didn't follow to to the letter was the LogFile creation. When I did, the Remarkable add-in would auto-disable and not work until I deleted the Data field for the LogFile. Note sure if this is what caused it.

Any fixes?

Installation not working v2.0.4

The installer runs without issue but the add-in does not show up in OneNote (no add-ins in the option menu and nothing in the toolbar). Using the x86 installer in 64-bit OneNote. Also tried the x64 installer but this didn't work either.

I uninstalled the previous version within OneNote to update (remove COM-addin) and then removed the installer through Windows, so perhaps that caused the plug-in to no longer be recognized by OneNote upon reinstallation.

Intergration broken when using Remarkable beta?

Plugin yesterday complained that a new integration was needed.
I installed latest version and followed instruction.
When I insert the one-time code provided by Remarkable web site, integration is apparently successful ("new device added", etc. etc.)
However, when I try to fetch the contents of my Remarkable I'm always getting the attached error message.
image
I'm also attaching a log file with some attempts done yesterday.
remarkable_sync_log.txt
Do you happen to know if Remarkable beta version (I'm on 2.12.3.606) are blocked from integrating with 3rd party software?

  • Carlo

No remarkable tab

Hi
the installer runs w/o issues, but neither OneNote nor OneNote for Windows 10 has a remarkable tab.

any ideas why?

best
Obelix

onenote for windows 10

Hi does this work for onenote for windows 10?
Ive tried installing it and although I get no error messages during the install process it does not give a remarkable tab?

Error importing document

I'm getting an error after fetch when trying to import documents - any suggestions? USB Connection via SSH.

2/26/2024 10:00:57 AM RmDownloadForm.ImportDocument(278) - Saving settings: zoom: 50, language: en_US
2/26/2024 10:00:57 AM RmDownloadForm.btnOk_Click(268) - Error importing document from reMarkable. Err: Value cannot be null.
Parameter name: source

[Feature Request] Import in color?

Would it be possible to implement importing labeled layers as colored ink when using the image option (equivalent to the feature existing in the RemaPy Explorer)? e.g. Layer name: #red is imported as red ink in OneNote.

French text conversion does'nt work well

Hello,
Is possible to add french text conversion ? Remarkable use the same APi from Myscript and works well for French conversion. A stand-alone app for conversion will be nice too.
Many Thanks !

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.