<?xml version="1.0" encoding="utf-8" standalone="yes"?>
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom">
  <channel>
    <title>Projects on Gurinder Sandhar</title>
    <link>https://sandhar.au/projects/</link>
    <description>Recent content in Projects on Gurinder Sandhar</description>
    <generator>Hugo</generator>
    <language>en</language>
    <lastBuildDate>Fri, 14 Aug 2026 20:00:00 +1100</lastBuildDate>
    <atom:link href="https://sandhar.au/projects/index.xml" rel="self" type="application/rss+xml" />
    <item>
      <title>TRMNL DIY E-Ink Dashboard</title>
      <link>https://sandhar.au/projects/trmnl-diy-eink-dashboard/</link>
      <pubDate>Fri, 14 Aug 2026 20:00:00 +1100</pubDate>
      <guid>https://sandhar.au/projects/trmnl-diy-eink-dashboard/</guid>
      <description>&lt;p&gt;Handy little dashboard that has been living on the fridge since May 2026 and saves me looking at the Sigenergy app every now and then. Today&amp;rsquo;s section for Calendar shows 4 events, tomorrow shows 2, Sat/Sun each shows 2 events. Built on the &lt;a href=&#34;https://wiki.seeedstudio.com/ogdiy_kit_works_with_esphome/&#34;  class=&#34;external-link&#34; target=&#34;_blank&#34; rel=&#34;noopener&#34;&gt;TRMNL 7.5&amp;quot; OG DIY Kit&lt;/a&gt;. Shows weather and refreshes every 60 minutes via deep sleep.&lt;/p&gt;&#xA;&lt;p&gt;&lt;img alt=&#34;Dashboard Screenshot&#34; src=&#34;../projects/trmnl-diy-eink-dashboard/dashboard.jpeg&#34;&gt;&lt;/p&gt;&#xA;&lt;h2 id=&#34;how-it-works&#34;&gt;&#xA;  How It Works&#xA;  &lt;a class=&#34;heading-link&#34; href=&#34;#how-it-works&#34;&gt;&#xA;    &lt;i class=&#34;fa-solid fa-link&#34; aria-hidden=&#34;true&#34; title=&#34;Link to heading&#34;&gt;&lt;/i&gt;&#xA;    &lt;span class=&#34;sr-only&#34;&gt;Link to heading&lt;/span&gt;&#xA;  &lt;/a&gt;&#xA;&lt;/h2&gt;&#xA;&lt;ol&gt;&#xA;&lt;li&gt;ESP32 wakes from deep sleep (every 60 min)&lt;/li&gt;&#xA;&lt;li&gt;Connects to WiFi, fetches sensor/text states from Home Assistant&lt;/li&gt;&#xA;&lt;li&gt;Renders the layout to the e-ink framebuffer&lt;/li&gt;&#xA;&lt;li&gt;E-ink updates (~10 seconds)&lt;/li&gt;&#xA;&lt;li&gt;Enters deep sleep to save battery&lt;/li&gt;&#xA;&lt;/ol&gt;&#xA;&lt;div class=&#34;highlight&#34;&gt;&lt;pre tabindex=&#34;0&#34; class=&#34;chroma&#34;&gt;&lt;code class=&#34;language-fallback&#34; data-lang=&#34;fallback&#34;&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;┌──────────────────────────────────────────────────────────┐&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;│  Tuesday, 27 May                              [DevBat]  │&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;├──────────────────────┬───────────────────────────────────┤&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;│ Today                │         ☀️ (weather icon)         │&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;│ ─────────            │           22°C                    │&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;│ 14:30 Meeting        │         ▼12°  ▲24°                │&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;│ All-day Birthday     │                                   │&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;│                      │ ─────────────────────────────     │&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;│ Tomorrow             │         🔋 (battery icon)         │&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;│ ─────────            │           87%                     │&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;│ 09:00 Standup        │         Discharging               │&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;│                      │                                   │&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;│ Weekend              │                                   │&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;│ ─────────            │                                   │&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;│ Sat 31 May           │                                   │&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;│  All-day BBQ         │                                   │&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;│ Sun 1 Jun            │                                   │&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;│  No events           │                                   │&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;├──────────────────────┴───────────────────────────────────┤&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;│ Built with ESPHome                    Refreshed at 08:15 │&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;└──────────────────────────────────────────────────────────┘&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;h2 id=&#34;home-assistant-setup&#34;&gt;&#xA;  Home Assistant Setup&#xA;  &lt;a class=&#34;heading-link&#34; href=&#34;#home-assistant-setup&#34;&gt;&#xA;    &lt;i class=&#34;fa-solid fa-link&#34; aria-hidden=&#34;true&#34; title=&#34;Link to heading&#34;&gt;&lt;/i&gt;&#xA;    &lt;span class=&#34;sr-only&#34;&gt;Link to heading&lt;/span&gt;&#xA;  &lt;/a&gt;&#xA;&lt;/h2&gt;&#xA;&lt;h3 id=&#34;integrations&#34;&gt;&#xA;  Integrations&#xA;  &lt;a class=&#34;heading-link&#34; href=&#34;#integrations&#34;&gt;&#xA;    &lt;i class=&#34;fa-solid fa-link&#34; aria-hidden=&#34;true&#34; title=&#34;Link to heading&#34;&gt;&lt;/i&gt;&#xA;    &lt;span class=&#34;sr-only&#34;&gt;Link to heading&lt;/span&gt;&#xA;  &lt;/a&gt;&#xA;&lt;/h3&gt;&#xA;&lt;p&gt;Ensure these are enabled in Home Assistant:&lt;/p&gt;</description>
    </item>
  </channel>
</rss>
