TRMNL

Note: Since writing this, there is an official Notion Plugin, but it still may be desirable to create your own if you really want to customize it.

I picked up this thing recently: https://usetrmnl.com/

I dug that it was e-ink, having previously been an e-ink dumb phone user, and the documentation on building custom plugins made it seem super easy, so I was intrigued.

The design system is really pleasing, and the simplicity of it is really nice. I’m not a big fan of screens being all over the home. We have one of those frame tvs that appears pretty convincingly to be a framed picture when the tv isn’t in use, and other than our laptops floating away from our desks on occasion, we don’t have any screens that are just on and sitting around.

I liked the idea of a little display to show our shared calendar, some to-do lists, and maybe a few other fun little things, but a full color screen on constant rotation felt like the kind of noise we typically try to avoid in our house. So this seemed great!

And so far, it is! Much like my Light Phone, it took a little getting used to its limitations, but after that it becomes pretty enjoyable. In the case of TRMNL it’s main limitation is that it isn’t interactive at all. It’s just a display. There aren’t even any physical buttons to push to rotate through screens—you set intervals for screens in a web-based portal.

The other great thing about it is how easy they made creating custom plugins. In TRMNL land a plugin is the whole thing. It’s what you choose to be displayed on the device. They have a ton to choose from in their marketplace, but making your own is pretty dang easy if you’re at least a little bit of a programmer.

I haven’t spent too much time exploring the possibilities, but I did make my own plugin to display a list of to-dos from a database in Notion, and it was super easy. After creating a new private plugin in the TRMNL portal all you really need to do is the following:

  1. Go to your Notion profile and create a new internal integration
  2. Grab the API secret for that integration
  3. Find the database ID of the Notion databse you want to read and display in your plugin. If you copy the link to your database in Notion it will be the long string in the URL after your username (ex: notion.so/username/XXXXXXXXXXXXXXXXXXXXXXXXXXX)
  4. In your TRMNL plugin settings add the URL (with the database ID you just grabbed) https://api.notion.com/v1/databases/XXXXXXXXXXXXXXXXXXXXXXXXXXX/query to the "Polling URL(s)" field
  5. Add authorization=Bearer YOUR_NOTION_INTEGRATION_API_SECRET to the "Polling Headers" field
  6. Save, and go to "Edit Markup" to edit how you want to display your Notion data

I know that last one is pretty vague, but TRMNL has a really nice editor (pictured below) that shows you exactly what variables you have access to from TRMNL, and if you've connected to the Notion API correctly, the data it's getting back from Notion. They also have extensive documentation on their very nice design system.

The TRMNL plugin markup editor in action

And that's pretty much it! Even if I don't get too much more creative than this, it's already been a really nice thing to have up on the fridge. If I do end up doing anything else interesting with it, I'll make another post about it and link to it here.