> ## Content Index
> Fetch the complete content index at: https://heptner.dev/llms.txt
> Use this file to discover other available public pages before exploring further.

# From picture frame to weather station: Open-Meteo on your Paperlesspaper display
- URL: https://heptner.dev/blog/from-picture-frame-to-weather-station-open-meteo-on-you-paperlesspaper-display/
- Published: 2026-09-24T14:36:17.000Z
- Updated: 2026-10-14T11:32:07.000Z
- Description: Some people buy an e-paper picture frame to display family photos or cute dog pictures. But some e-paper devices are completely open source and customizable, so you can display anything your heart desires. This guide describes how to convert your OpenPaper into a weather station.
- Author: Tim Heptner
- Tags: Open Source, Projects

I check the weather several times a day, especially when I going outside and try to decide what to wear. So I always struggle with the question does it rain, do I need an umbrella? That means unlocking my phone, opening an app and often ending up somewhere else entirely. An E-Paper frame on the wall gives me the same information at a glance, and the display draws almost no power between updates.

I couldn't find an integration that showed the weather the way I wanted on my Paperlesspaper frame, so I wrote one. As I described in my post [More Than Just Code](https://heptner.dev/blog/more-than-just-code-open-source-as-a-mindset/), I like to fix problems I run into myself. The result is an new [open source integration](https://github.com/infinityofspace/paperlesspaper%5Fopen-meteo) that turns your picture frame into a configurable weather station.

## What is Paperlesspaper OpenPaper?

Paperlesspaper makes E-Paper picture frame. I got my hands on one of the first batches of the new OpenPaper L from Paperlesspaper and immediately tried out all possibilities. Besides photos, the frames can show content from Open Integration: small web services that the Paperlesspaper app calls to render an image for your device. This means everything you want to be shown on your display is up to you. There is no limitation. You can build and host your own integration, and this project is one of them.

****Disclosure:** I'm not affiliated with Paperlesspaper or Open-Meteo, and neither of them sponsors this post or the project. I bought my frame myself wrote the integration in my free time.

## What the integration does

The integration pulls weather data from [Open-Meteo](https://open-meteo.com/), a free weather API that works without an API key. You don't have to register anywhere or manage credentials. It supports multiple weather metrics and models all around the world.

You can display two kinds of weather data:

- current weather data: such as temperature, humidity or wind speed, shown as large tiles
- forecast weather data: in 15-minute, hourly or daily resolution, shown as charts

There is also special tiles for a weather icon, the location, sunrise and sunset, and the daily temperature range as min and max values.. You place all of them on a grid with a custom layout of your choice.

## What you need

1. A Paperlesspaper OpenPaper frame
2. An account for the [Paperlesspaper web app](https://web.paperlesspaper.de)
3. A server that is publicly reachable from the internet

Pay attention to the third point. The Paperlesspaper app has to be able to reach your integration, so a service that only runs on your local network won't work. If you don't have a server, use the Vercel on click option below.

### Step 1: Deploy the integration

You can run the integration in three ways.

#### Option A: Docker

If you run a server with docker already. simply start the prebuild Docker image:

```bash
docker run \
  --rm \
  -p 8080:4300 \
  ghcr.io/infinityofspace/paperlesspaper_open-meteo:latest

```

You can put it behind your existing reverse proxy. You should not add any kind of authentication in front, otherwise the Paperlesspaper app can not access your deployed integration.

#### Option B: One-click deploy with Vercel

This option needs no server of your own. Click the Vercel deploy link in the [Readme](https://github.com/infinityofspace/paperlesspaper%5Fopen-meteo#one-click-install), follow the steps, and Vercel gives you a public URL for your integration.

#### Option C: Node.js

With Node.js 20.6 or newer installed:

```bash
git clone https://github.com/infinityofspace/paperlesspaper_open-meteo.git
cd paperlesspaper_open-meteo
npm ci
npm run build
npm start

```

The server then runs on port 4300\. You can change the port, host and proxy settings with environment variables, listed in the [Readme](https://github.com/infinityofspace/paperlesspaper%5Fopen-meteo/blob/main/Readme.md).

### Step 2: Connect it to Paperlesspaper

#### 

Open the [Paperlesspaper web app](https://web.paperlesspaper.de) and login in.

1. Go to the *Library* tab and click *New picture*

![](https://heptner.dev/content/images/2026/09/Paperlesspaper-App-Tabs-Overview.png)

1. Select *Integration Plugin*

![](https://heptner.dev/content/images/2026/09/New-Integration-Search.png)

1. Enter the URL of your integrations's *config.json*, for example *https://myserver.example.com/config.json*
2. Click *Load integration*

![](https://heptner.dev/content/images/2026/09/Successfully-Loaded-Integration.png)

If everything works well, the setup window shows a "Integration loaded successfully" message. You are now ready to configure your weather data layout.

#### Step 3: Design your weather station

In the settings you pick your location, the number of rows and columns, and the content of each cell, starting with row 1, column 1.

##### Cell configuration

Each weather variable needs a prefix for its data source, the prefix and the data value is separated by a semicolon:

- *current*: for current value, e.g. *current;temperature\_2m*
- *minutely\_15*: for 15-minute forecasts charts, e.g.
- hourly: for hourly forecasts, e.g. *hourly;precipitation\_probability*
- daily: for daily forecasts, e.g. *daily;temperature\_2m\_max*

##### Merging cells

You can merge cells next to each other by enter the same variable configuration to stretch a chart or tile across them. For example put *daily;temperature\_2m\_mean* in the row 2, column 1, row 2, column 2, row 3, column 1 and row 3, column 2 you get a chart spanning over two rows and columns.

![](https://heptner.dev/content/images/2026/09/chart_merge_example.png)

Merged cells for daily mean temperature (rows 2 to 3 and columns 1 to 2) and precipitation (rows 2 to 3 and columns 3 to 4) in a 4 row x 3 column grid layout.

##### Custom text, icons and special tiles

There are some special tiles, which can be used to customize the your layout:

- A cell can also be a static text. Add your own labels with the *text* Prefix, for example "*text:Good morning*".
- Weather icon of current weather conditions with "*icon"*
- Location name and coordinates of the selected location with *"location"*
- Current wind speed and direction with *"wind"*
- Current sunrise and sunset times in one cell *"sun"*
- Current min and max temperature of the day in one cell with *"range"*

---

💡

If you build a layout you like, feel free to share it in the [Github Issues](https://github.com/infinityofspace/paperlesspaper%5Fopen-meteo/issues/new/choose). Moreover, open an issue if something breaks, and leave a star if the project helps you.