Home

Awesome

Note: This only works for OS versions before 3.11 as 3.11 changes the upgrade mechanism that the device uses.

Simple Factory Reset (updater)

A hackish, quick and dirty update server implementation. For a more complete solution, check out codexctl.

Usage

  1. Clone this Repo

  2. Obtain an official release that you would like to upgrade (er, downgrade) to. A list of firmware releases can be found here.

  3. Put your firmware release in ./updates.

  4. Figure out the hostname of the computer you are connecting your remarkable to. If you are connecting to USB it will likely be 10.11.99.2. If your ReMarkable device is connected to your local wifi, it may also work to use a local IP address such as 192.168.1.25. The docs will use 10.11.99.2 as the hostname. If you have a different hostname, adjust accordingly.

  5. Start the mock upgrade server. (This assumes you are running python3)

    python serve.py 10.11.99.2
    
  6. SSH into your ReMarkable device and edit /usr/share/remarkable/update.conf:

    ssh root@10.11.99.1
    nano /usr/share/remarkable/update.conf
    
  7. Add the following line to the update.conf file:

    SERVER=http://10.11.99.2:8000
    
  8. Run an automatic update.

Via ReMarkable UI

  1. Go to Menu -> Settings -> General: click on the Software Version.

  2. Tap Check for Updates. It should download and install the update.

  3. Once it is complete, it should prompt you to tap to reboot your device.

Via the CLI

  1. In the ReMarkable Terminal, make sure update-engine is running:

    systemctl start update-engine
    
  2. Trigger the update:

    update_engine_client -check_for_update
    
  3. Observe the update progess.

    journalctl -u update-engine -f
    
  4. Once it is complete, reboot the device.

    reboot
    

To switch the partition i.e. boot the previous version

  1. Copy the switch.sh script to the device.

    scp switch.sh root@10.11.99.1:~
    
  2. SSH into reMarkable and run the script.

    ssh root@10.11.99.1
    ./switch.sh
    
  3. Reboot the device for changes to take effect.

    reboot
    

Beta

It seems that the update server address (SERVER) is defined in the /home/root/.config/xochitl.conf file Issue