Custom Backgrounds on the reMarkable 2 Tablet

I’ve been fawning over the reMarkable 2 tablet for a while as I’ve always had fidelity issues with lab books, note books, and note pads. Upon receipt of this fine (hackable!!!!) device. I decided to make it my Christmas mission to allow the reMarkable to have custom backgrounds that cycle. With a little help from chatGPT I’ve written a service (reMarkable doesn’t have crontab installed), timer, and installer that does all the heavy lifting.

Step 1: SSH Into Your Remarkable 2 and Download Backgrounds + Installer

Go to Settings->General->Help->Copyrights and Licenses. Clicking this will bring up a whole bunch of text. Mainly, the ip address and password are at the bottom of this first page (no scrolling necessary). It should look something like this

using the information above you would ssh in using the following command:

ssh [email protected]

It’ll prompt for the password (blacked out above) and you’ll type that in and hit enter. After login you’ll be greeted with this:

Next create a “backgrounds” directory in your current directory with the following command and navigate into that directory.

mkdir backgrounds
cd backgrounds

From there, you’ll use wget to download my installer and a few backgrounds.

After the file is downloaded, unzip the archive.

wget https://github.com/Radacon/reMarkable_Background_Shuffler/raw/main/BG_Shuffler_Release_2023.tar.xz
tar –xvzf BG_Shuffler_Release_2023.tar.xz –C /home/root/backgrounds

After unzipping is complete double check to make sure all files are inside of your backgrounds folder as such (use the ls command).

Next, get the installer ready to execute and run the installer.

chmod +x install.sh
./install.sh

It should output something like this once its installed

Thank goodness systemd-tmpfiles-clean.timer was already running as a service. It served as a bit of a guide for some of the nuances of getting this working. Either way, the script is designed to run once per hour. This shouldn’t effect battery life much, as the remarkable never really goes into “sleep”.

Step 2: Mod Away

The changebg.timer can be edited with

nano /var/systemd/system/changebg.timer

Currently the timer is set to change the background every hour but you can uncomment a line to change the background every minute or once per day.

I also included 18 sample images (that I took) that you can use outright or replace with your own. Keep in mind the images you use must be SEQUENTIALLY numbered from suspend_opt00.png-suspend_optxx.png for the randomizer script to work.

reMarkable automatically places owner’s information OVER the image. I would recommend adding your name/contact information manually to each image to avoid a black text on black background issue where nobody would be able to see your name/contact info. You can also remove a chunk of the images and replace them with white but I think that’s hideous. Keep in mind you should disable that feature in settings->security->personal information to keep redundant info from showing up.

I would also recommend turning off automatic updates for the remarkable. Keep in mind each time the device is updates your backgrounds will disappear and you will need to repeat these steps again! I don’t know of any locations that are safe from the update process just yet.

The github repo is here: https://github.com/Radacon/reMarkable_Background_Shuffler/tree/main

Merry Christmas!

UPDATES

I was told on reddit that all files in the /home/ directory are preserved during a firmware update. If you have automatic updates enabled, your background will change back to its default. All you need to do when that happens is to re-run the install script as it is preserved in your /home/root/backgrounds directory.

It’s also not important to have the images in sequential order. They do need to have the same name “suspend_optxx.png” though.