reMarkable Cloud API

reMarkable Cloud API

This is an unofficial documentation for the cloud based sync service that comes with the reMarkable 1 tablet.

This document is based on an existing documentation 3, the existing implementation in rmapi 4 and observations made while implementing my own client 5.

The service is used to sync content from the tablet to a remote service and make it available on other devices. One can also upload new content to the cloud service and it will be synced to the device.

Read more…

MQTT Bridge with Mosquitto and nginx

MQTT Bridge with Mosquitto and nginx

author

akeil

date

2017-03-05

version

1

Set up a Mosquitto 1 MQTT broker which is available in the internet. nginx 2 is used as a reverse proxy and to handle SSL encryption. An additional Mosquitto instance on the local network is used as a bridge to forward MQTT messages from the local network to the internet and vice versa.

This allows to easily connect devices which do not support authentication or encryption on the local network with with other devices or services connected via the internet.

/images/mqtt-bridge-overview.png

Overview for an MQTT bridge scenario. Clients on the local network use an insecure connection to talk to the local MQTT broker while clients on the internet use a secure connection.

Read more…

Firefox Sync Server - Backup

Firefox Sync Server - Backup

author

akeil

date

2016-09-15

version

1

This is a follow up on a previous post. where I installed a Firefox Sync Server on a Raspberry Pi running piCore. After having the Sync Service basically running, it is time to set up regular backups.

Read more…

Firefox Sync Server on a Raspberry Pi

Firefox Sync Server on a Raspberry Pi

author

akeil

date

2016-09-14

version

1.2

updated

2016-09-15

The Firefox browser can use a Sync Service to synchronize settings, bookmarks and other stuff across multiple Firefox installations. By default, Mozilla's public sync server is used but it is possible to run your own sync server 1.

We will install piCore Linux and the Firefox Sync Server on a new Raspberry Pi.

Read more…

podfetch 0.4.3

podfetch 0.4.3

Changes in podfetch 0.4.3:

The ls and update commands accept shell wildcards for subscription names:

$ podfetch ls f?o ba*

Lists subscriptions foo, bar and baz but not something-else.

If the subscriptions directory contains files that are not podfetch subscriptions, a new config option ignore can be used to tell podfetch to ignore these:

[podfetch]
ignore = .* *.bak

The option expects a whitespace separated list of patterns that should be ignored.

See the podfetch main page.

Coordinate Scripts With systemd

Coordinate Scripts With systemd

author

akeil

date

2013-12-14

version

1

Use systemd to execute scripts, controlling the order of execution.

Assuming we have:
  • a single preparation unit - prep.service

  • multiple "task" units - task-N.service

  • a single cleanup script - done.service

We want to run the prep unit once, then run all our task units and finally the done unit once.

Defining dependencies between tasks is relatively simple when each task is represented by a systemd unit 1. Dependencies are defined using Requires= or Wants= and order of execution is defined with After= and Before=.

The only thing left is to make sure that the "preparation" and "finish" steps are executed only once, even if multiple tasks are run (and not once for each task).

To achieve this a .target is created and all tasks are associated to that target.

Read more…