<?xml version="1.0" encoding="utf-8" standalone="yes"?>
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom">
  <channel>
    <title>Cavelab</title>
    <link>https://www.cavelab.dev/</link>
    <description>Recent content on Cavelab</description>
    <generator>Hugo</generator>
    <language>en-us</language>
    <copyright>Thomas Jensen</copyright>
    <lastBuildDate>Wed, 01 Jul 2026 09:00:00 +0200</lastBuildDate>
	  <atom:link href="https://www.cavelab.dev/index.xml" rel="self" type="application/rss+xml" />
    <item>
      <title>Hero Camper exterior lights</title>
      <link>https://www.cavelab.dev/posts/hero-camper-exterior-lights/</link>
      <pubDate>Wed, 01 Jul 2026 09:00:00 +0200</pubDate>
      <guid>https://www.cavelab.dev/posts/hero-camper-exterior-lights/</guid>
      <description>&lt;img src=&#34;https://www.cavelab.dev/posts/hero-camper-exterior-lights/cover.jpg&#34;/&gt; &lt;p&gt;When we bought the Hero Camper we opted for having exterior lights installed, one in each corner of the roof-rack, with a simple controller inside the cabin.&lt;/p&gt;&#xA;&lt;p&gt;The two rear lights were facing backwards, while the two in the front were facing out to each side. This left a dark area in front of the camper.&lt;/p&gt;&#xA;&lt;p&gt;So far we have mostly used the red (the lights have red and yellow in addition to regular lights) to find the camper when parked at a dark campsite. Having a &amp;ldquo;blind-spot&amp;rdquo; in front was a bit annoying.&lt;/p&gt;&#xA;&lt;p&gt;I initially planned to get two more lights and face them forwards, but that left me with a dilemma. There are only four channels on the controller, how to wire two additional lights?&lt;/p&gt;&#xA;&lt;p&gt;It turned out I didn&amp;rsquo;t actually need more lights, I just needed to adjust the ones I have differently 🙂&lt;/p&gt;</description>
    </item>
    <item>
      <title>Fitting a wine cabinet in my home office</title>
      <link>https://www.cavelab.dev/posts/home-office-wine-cabinet/</link>
      <pubDate>Wed, 24 Jun 2026 22:00:31 +0200</pubDate>
      <guid>https://www.cavelab.dev/posts/home-office-wine-cabinet/</guid>
      <description>&lt;img src=&#34;https://www.cavelab.dev/posts/home-office-wine-cabinet/cover.jpg&#34;/&gt; &lt;p&gt;A home office can&amp;rsquo;t just be all fun and games; there needs to be some wine too.&lt;/p&gt;&#xA;&lt;p&gt;I&amp;rsquo;ve wanted a wine cabinet for a while. I often pick up a few bottles of red wine when I&amp;rsquo;m out travelling but have had no good place to store them.&lt;/p&gt;&#xA;&lt;p&gt;The basement is typically an ideal place to store wine, but our basement is warm all year round, as it has my home office and homelab rack.&lt;/p&gt;&#xA;&lt;p&gt;A wine cabinet was the obvious choice, but how to fit one? My home office is already pretty crammed&amp;hellip;&lt;/p&gt;</description>
    </item>
    <item>
      <title>Securing Home Assistant API access for Dakboard — with Caddy</title>
      <link>https://www.cavelab.dev/posts/secure-home-assistant-api-caddy/</link>
      <pubDate>Tue, 16 Jun 2026 22:54:21 +0200</pubDate>
      <guid>https://www.cavelab.dev/posts/secure-home-assistant-api-caddy/</guid>
      <description>&lt;img src=&#34;https://www.cavelab.dev/posts/secure-home-assistant-api-caddy/cover.jpg&#34;/&gt; &lt;p&gt;Back in 2021 I added &lt;a href=&#34;https://www.cavelab.dev/posts/dakboard-data-from-home-assistant/&#34;&gt;Home Assistant sensor data&lt;/a&gt; to our &lt;a href=&#34;https://www.cavelab.dev/posts/raspberry-pi-dakboard-display/&#34;&gt;Dakboard monitor&lt;/a&gt;. But I did so using a long-lived access token directly on the Dakboard blocks — which is not great for a couple of reasons:&lt;/p&gt;&#xA;&lt;ul&gt;&#xA;&lt;li&gt;Tokens have no access scope, meaning they grant full admin access to everything&lt;/li&gt;&#xA;&lt;li&gt;The token was stored on Dakboard&amp;rsquo;s servers&lt;/li&gt;&#xA;&lt;/ul&gt;&#xA;&lt;p&gt;I want Dakboard to be able to pull data from my locally hosted Home Assistant, but I&amp;rsquo;d like to restrict access.&lt;/p&gt;&#xA;&lt;p&gt;I did this using Caddy as a reverse proxy 🤓&lt;/p&gt;</description>
    </item>
    <item>
      <title>Monitoring Proxmox hosts using Healthchecks.io</title>
      <link>https://www.cavelab.dev/posts/proxmox-health-ping/</link>
      <pubDate>Wed, 10 Jun 2026 00:01:20 +0200</pubDate>
      <guid>https://www.cavelab.dev/posts/proxmox-health-ping/</guid>
      <description>&lt;img src=&#34;https://www.cavelab.dev/posts/proxmox-health-ping/og.png&#34;/&gt;
         &lt;p&gt;I use &lt;a href=&#34;https://beszel.dev&#34;&gt;Beszel&lt;/a&gt; to monitor all my hosts — Raspberry Pi&amp;rsquo;s, hypervisors, VMs and containers. But a problem arises if the Proxmox host running the Beszel container stops working.&lt;/p&gt;&#xA;&lt;p&gt;There are two mechanisms in place that makes sure I get notified in case there is a problem with a Proxmox host or Beszel itself. The first is &lt;a href=&#34;https://beszel.dev/guide/heartbeat&#34;&gt;heartbeat monitoring&lt;/a&gt; within Beszel itself, should Beszel stop sending out pings to &lt;a href=&#34;https://healthchecks.io&#34;&gt;Healthchecks.io&lt;/a&gt; — I get notified.&lt;/p&gt;&#xA;&lt;p&gt;The second method is a health pulse script regularly executed on the Proxmox hosts themselves. Let&amp;rsquo;s have a look.&lt;/p&gt;</description>
    </item>
    <item>
      <title>Installing the Hero Camper nested drawer</title>
      <link>https://www.cavelab.dev/posts/hero-camper-nested-drawer/</link>
      <pubDate>Tue, 02 Jun 2026 23:50:18 +0200</pubDate>
      <guid>https://www.cavelab.dev/posts/hero-camper-nested-drawer/</guid>
      <description>&lt;img src=&#34;https://www.cavelab.dev/posts/hero-camper-nested-drawer/cover.jpg&#34;/&gt; &lt;p&gt;Hero camper recently announced their new &lt;em&gt;&lt;a href=&#34;https://herocamper.com/products/nested-drawer&#34;&gt;Nested Drawer&lt;/a&gt;&lt;/em&gt; — it&amp;rsquo;s a small drawer that gets mounted above the cooler and holds the gas hob parts safely.&lt;/p&gt;&#xA;&lt;p&gt;Which is pretty genius; the pan support is cast iron and quite heavy. Having all parts for the gas hob safely stored and easily available is a win 🎉&lt;/p&gt;&#xA;&lt;p&gt;It was straightforward to install, but needed a little modification to improve the stability of the gas hob parts. Getting the cooler back in and connected afterwards was a bit of a challenge.&lt;/p&gt;</description>
    </item>
    <item>
      <title>Making a drawer divider for the Hero Camper kitchen</title>
      <link>https://www.cavelab.dev/posts/hero-camper-kitchen-drawer-divider/</link>
      <pubDate>Sat, 30 May 2026 23:10:25 +0200</pubDate>
      <guid>https://www.cavelab.dev/posts/hero-camper-kitchen-drawer-divider/</guid>
      <description>&lt;img src=&#34;https://www.cavelab.dev/posts/hero-camper-kitchen-drawer-divider/cover.jpg&#34;/&gt; &lt;p&gt;The kitchen space on our Hero Camper is limited — well, actually all space on the camper is limited, but this post is about the kitchen.&lt;/p&gt;&#xA;&lt;p&gt;So we need to make the most of the three drawers in the kitchen — the top drawer is for cutlery and misc kitchen utilities. We looked at store-bought drawer dividers, but didn&amp;rsquo;t find anything that fit.&lt;/p&gt;&#xA;&lt;p&gt;The dimensions of the drawer are probably somewhat unusual at 45.8 × 43.2 cm, meaning every divider we found left lots of unused space around it and just didn&amp;rsquo;t seem like a good solution. We didn&amp;rsquo;t want a plastic divider moving around as we were driving.&lt;/p&gt;&#xA;&lt;p&gt;So we figured: we&amp;rsquo;ll make one — and so we did 😀&lt;/p&gt;</description>
    </item>
    <item>
      <title>Optimizing EPEVER Tracer settings for LiFePO4 in the Hero Camper</title>
      <link>https://www.cavelab.dev/posts/epever-tracer-lifepo4-camper-settings/</link>
      <pubDate>Wed, 27 May 2026 23:16:37 +0200</pubDate>
      <guid>https://www.cavelab.dev/posts/epever-tracer-lifepo4-camper-settings/</guid>
      <description>&lt;img src=&#34;https://www.cavelab.dev/posts/epever-tracer-lifepo4-camper-settings/cover.jpg&#34;/&gt; &lt;p&gt;When we first got the camper I was confused by the low charge rate of the solar charger. In bulk it would charge just fine, but when in float — it would let the battery discharge to ~13V before re-entering bulk charging. That is far too low for a camper solar setup.&lt;/p&gt;&#xA;&lt;p&gt;I found an &lt;a href=&#34;https://diysolarforum.com/threads/struggling-with-basic-lifepo4-settings-in-epever-tracer.17785/&#34;&gt;online discussion regarding the EPEVER Tracer&lt;/a&gt; that explained the behavior. The settings are not well optimized for a solar system on a camper, where you want to utilize the sun as much as possible.&lt;/p&gt;</description>
    </item>
    <item>
      <title>Simplicity is king</title>
      <link>https://www.cavelab.dev/posts/simplicity-is-king/</link>
      <pubDate>Sun, 10 May 2026 18:51:06 +0200</pubDate>
      <guid>https://www.cavelab.dev/posts/simplicity-is-king/</guid>
      <description>&lt;img src=&#34;https://www.cavelab.dev/posts/simplicity-is-king/og.png&#34;/&gt;
         &lt;p&gt;Keep it simple, stupid — less is more, or as Albert Einstein didn&amp;rsquo;t actually say:&lt;/p&gt;&#xA;&#xA;&#xA;&#xA;  &lt;blockquote&gt;&#xA;    &lt;p&gt;Make everything as simple as possible, but not simpler.&lt;/p&gt;&#xA;&#xA;  &lt;/blockquote&gt;&#xA;&#xA;&lt;p&gt;What he actually said, according to &lt;a href=&#34;https://quoteinvestigator.com/2011/05/13/einstein-simple/&#34;&gt;Quote Investigator&lt;/a&gt;:&lt;/p&gt;&#xA;&#xA;&#xA;&#xA;  &lt;blockquote&gt;&#xA;    &lt;p&gt;It can scarcely be denied that the supreme goal of all theory is to make the irreducible basic elements as simple and as few as possible without having to surrender the adequate representation of a single datum of experience.&lt;/p&gt;&#xA;&#xA;  &lt;/blockquote&gt;&#xA;&#xA;&lt;p&gt;But I digress&amp;hellip; It&amp;rsquo;s not lost on me that I sometimes end up making things more complex than they have to be. Often without it adding any value. Like entropy — slowly increasing the state of disorder.&lt;/p&gt;</description>
    </item>
    <item>
      <title>Rulle Ranger — Our new Hero Camper</title>
      <link>https://www.cavelab.dev/posts/rulle-ranger/</link>
      <pubDate>Wed, 06 May 2026 22:39:15 +0200</pubDate>
      <guid>https://www.cavelab.dev/posts/rulle-ranger/</guid>
      <description>&lt;img src=&#34;https://www.cavelab.dev/posts/rulle-ranger/cover.jpg&#34;/&gt; &lt;p&gt;For the past two years we, meaning all five of us, have taken a two-week road trip in the summer. Driving around our beautiful country that is &lt;a href=&#34;https://en.wikipedia.org/wiki/Norway&#34;&gt;Norway&lt;/a&gt; 🙂&lt;/p&gt;&#xA;&lt;p&gt;First year we rented Airbnb&amp;rsquo;s — comfortable, but expensive and required a lot of planning. Then we tried tenting — cheaper, more flexible but took a lot of time to make camp.&lt;/p&gt;&#xA;&lt;p&gt;So we bought a teardrop camper, or more precisely, a &lt;a href=&#34;https://www.herocamper.no/omherocamper&#34;&gt;Hero Camper&lt;/a&gt; Ranger edition. We named it Rulle (Norwegian for Rolly) Ranger.&lt;/p&gt;</description>
    </item>
    <item>
      <title>New keypad for my RPi DIY security alarm</title>
      <link>https://www.cavelab.dev/posts/rpi-alarm-keypads/</link>
      <pubDate>Thu, 01 Jan 2026 13:18:48 +0100</pubDate>
      <guid>https://www.cavelab.dev/posts/rpi-alarm-keypads/</guid>
      <description>&lt;img src=&#34;https://www.cavelab.dev/posts/rpi-alarm-keypads/cover.jpg&#34;/&gt; &lt;p&gt;The keypad, or alarm panel, is an important part of a security alarm system. When I first got started building mine — I settled for a cheap and simple Zigbee keypad.&lt;/p&gt;&#xA;&lt;p&gt;I&amp;rsquo;ve since replaced it with a better, and more advanced device. Let&amp;rsquo;s have a look…&lt;/p&gt;</description>
    </item>
    <item>
      <title>A short update on my Raspberry Pi security alarm project</title>
      <link>https://www.cavelab.dev/posts/rpi-diy-alarm-update/</link>
      <pubDate>Tue, 16 Dec 2025 23:39:11 +0100</pubDate>
      <guid>https://www.cavelab.dev/posts/rpi-diy-alarm-update/</guid>
      <description>&lt;img src=&#34;https://www.cavelab.dev/posts/rpi-diy-alarm-update/cover.jpg&#34;/&gt; &lt;p&gt;&lt;em&gt;Quick recap: I&amp;rsquo;m building a DIY security alarm using a Raspberry Pi, hardwired PIR sensors, and MQTT integration with Home Assistant.&lt;/em&gt;&lt;/p&gt;&#xA;&lt;p&gt;Hello again — it seems to be close to a year since I last managed to get some words published on this blog. And almost three years since I last wrote about my Raspberry Pi security alarm project &amp;#x1f62e;&lt;/p&gt;&#xA;&lt;p&gt;But the project is still alive and well. We use it every night and whenever we are away, and it just works &amp;#x1f603; Development usually happens in bulk, with very little happening in between.&lt;/p&gt;</description>
    </item>
    <item>
      <title>Zeta is back!</title>
      <link>https://www.cavelab.dev/posts/zeta-is-back/</link>
      <pubDate>Wed, 29 Jan 2025 22:41:20 +0100</pubDate>
      <guid>https://www.cavelab.dev/posts/zeta-is-back/</guid>
      <description>&lt;img src=&#34;https://www.cavelab.dev/posts/zeta-is-back/cover.jpg&#34;/&gt; &lt;p&gt;In the fall of 2022 I &lt;a href=&#34;https://www.cavelab.dev/posts/reducing-energy-usage/#homelab&#34;&gt;turned off Zeta&lt;/a&gt;, &lt;a href=&#34;https://www.cavelab.dev/computers/zeta/&#34;&gt;my file server&lt;/a&gt;, due to the extreme price of electricity. I migrated all the data to a 3x18 TB raidz1 pool on &lt;a href=&#34;https://www.cavelab.dev/computers/alpha/&#34;&gt;Alpha&lt;/a&gt; instead.&lt;/p&gt;&#xA;&lt;p&gt;But last year I brought it back — and used the opportunity to add some more memory, and rebuild the main storage pool &amp;#x1f913;&lt;/p&gt;</description>
    </item>
    <item>
      <title>Netdata warnings — tracking down dropped packets</title>
      <link>https://www.cavelab.dev/posts/netdata-warnings/</link>
      <pubDate>Mon, 27 Jan 2025 21:27:05 +0100</pubDate>
      <guid>https://www.cavelab.dev/posts/netdata-warnings/</guid>
      <description>&lt;img src=&#34;https://www.cavelab.dev/posts/netdata-warnings/cover.jpg&#34;/&gt; &lt;p&gt;When I was trying out &lt;a href=&#34;https://www.netdata.cloud/&#34;&gt;Netdata&lt;/a&gt; last year — I noticed I had lots of &lt;code&gt;inbound_packets_dropped_ratio&lt;/code&gt; warnings, on multiple nodes.&lt;/p&gt;&#xA;&lt;p&gt;Time to investigate &amp;#x1f447;&lt;/p&gt;</description>
    </item>
    <item>
      <title>Moving videos to Bunny Stream</title>
      <link>https://www.cavelab.dev/posts/bunny-stream/</link>
      <pubDate>Thu, 16 Jan 2025 22:44:11 +0100</pubDate>
      <guid>https://www.cavelab.dev/posts/bunny-stream/</guid>
      <description>&lt;img src=&#34;https://www.cavelab.dev/posts/bunny-stream/cover.png&#34;/&gt; &lt;p&gt;I&amp;rsquo;ve looked into different &lt;a href=&#34;https://www.cavelab.dev/posts/video-solutions-for-blog/&#34;&gt;video solution for this blog&lt;/a&gt; before — and, at the time, settled on using Coconut.co for encoding, AWS S3 for hosting, and Video.js for playing.&lt;/p&gt;&#xA;&lt;p&gt;Bunny Stream was on the table back then, but I wanted a more &lt;em&gt;hands on solution&lt;/em&gt;. Well — this time around I wanted a &lt;em&gt;hands off solution&lt;/em&gt;, where the videos just work without me having to worry about it &amp;#x1f642;&lt;/p&gt;&#xA;&lt;p&gt;And for that — Bunny Stream is pretty awesome, so that&amp;rsquo;s what I&amp;rsquo;m using now &amp;#x1f44d;&lt;/p&gt;</description>
    </item>
    <item>
      <title>Finally getting fiber between the house and garage</title>
      <link>https://www.cavelab.dev/posts/fiber-to-garage/</link>
      <pubDate>Tue, 14 Jan 2025 21:34:36 +0100</pubDate>
      <guid>https://www.cavelab.dev/posts/fiber-to-garage/</guid>
      <description>&lt;img src=&#34;https://www.cavelab.dev/posts/fiber-to-garage/cover.jpg&#34;/&gt; &lt;p&gt;Getting network to the garage is a story with many chapters. I started out with Wi-Fi mesh, then CAT6 — and now, finally, fiber!&lt;/p&gt;</description>
    </item>
    <item>
      <title>Using the Shelly Plus Plug S to measure homelab power</title>
      <link>https://www.cavelab.dev/posts/shelly-plus-plug-s/</link>
      <pubDate>Wed, 08 Jan 2025 20:44:24 +0100</pubDate>
      <guid>https://www.cavelab.dev/posts/shelly-plus-plug-s/</guid>
      <description>&lt;img src=&#34;https://www.cavelab.dev/posts/shelly-plus-plug-s/cover.jpg&#34;/&gt; &lt;p&gt;I&amp;rsquo;m using a Shelly Plus Plug S smart plug to measure the power usage of my &lt;a href=&#34;https://www.cavelab.dev/homelab/&#34;&gt;homelab&lt;/a&gt;. I added it as a device in Home Assistant — and the power readings began! Kind of…&lt;/p&gt;&#xA;&lt;p&gt;Within a few days; I noticed something strange with the graph history — there were long periods of time where the graph was completely flat.&#xA;Logging into the Shelly web interface, I could see the watt reading changing — without this being reflected in Home Assistant.&lt;/p&gt;</description>
    </item>
    <item>
      <title>Implementing series navigation buttons — in Hugo</title>
      <link>https://www.cavelab.dev/posts/hugo-navigate-series/</link>
      <pubDate>Tue, 07 Jan 2025 21:38:45 +0100</pubDate>
      <guid>https://www.cavelab.dev/posts/hugo-navigate-series/</guid>
      <description>&lt;img src=&#34;https://www.cavelab.dev/posts/hugo-navigate-series/cover.png&#34;/&gt; &lt;p&gt;As I have written before; I like the concept of blog post series. Break a large topic, or ongoing project, into multiple posts — while maintaining the chronological order.&lt;/p&gt;&#xA;&lt;p&gt;But one key factor for a successful series implementation is the ease at which the read can navigate through the posts. And orient themselves within the series — meaning; understand where in the series they are currently reading.&lt;/p&gt;&#xA;&lt;p&gt;My latest improvement on my series implementation is navigation buttons, for the previous and next post &amp;#x1f44d;&lt;/p&gt;</description>
    </item>
    <item>
      <title>Making a pub table — with an old oak tabletop</title>
      <link>https://www.cavelab.dev/posts/pub-table/</link>
      <pubDate>Sat, 04 Jan 2025 08:41:52 +0100</pubDate>
      <guid>https://www.cavelab.dev/posts/pub-table/</guid>
      <description>&lt;img src=&#34;https://www.cavelab.dev/posts/pub-table/cover.jpg&#34;/&gt; &lt;p&gt;Sometimes, when I&amp;rsquo;m not too busy with my homelab or some other electronics project — I pretend to be a woodworker or carpenter.&lt;/p&gt;&#xA;&lt;p&gt;This time I made a pub table, using an old kitchen tabletop of oak. I got it for free from a good friend, he had stored it in his barn for a number of years, and before that it was a desk.&lt;/p&gt;&#xA;&lt;p&gt;It wasn&amp;rsquo;t in great condition, with lots of scratches and dents — even some black spray paint. But it was oak, and it was free &amp;#x1f642;&lt;/p&gt;</description>
    </item>
    <item>
      <title>Optimizing WireGuard on MikroTik CHR</title>
      <link>https://www.cavelab.dev/posts/optimizing-wireguard-on-chr/</link>
      <pubDate>Fri, 03 Jan 2025 17:09:24 +0100</pubDate>
      <guid>https://www.cavelab.dev/posts/optimizing-wireguard-on-chr/</guid>
      <description>&lt;img src=&#34;https://www.cavelab.dev/posts/optimizing-wireguard-on-chr/cover.jpg&#34;/&gt; &lt;p&gt;I&amp;rsquo;ve been having a strange problem with outgoing WireGuard traffic, the problem has probably always been there — I just haven&amp;rsquo;t noticed, until now. Outgoing WireGuard traffic is very slow, while incoming is what I&amp;rsquo;d except with my 750/750 fiber internet connection.&lt;/p&gt;&#xA;&lt;p&gt;This lead me down a rabbit hole of testing performance internally, which I &lt;a href=&#34;https://www.cavelab.dev/posts/mikrotik-chr-bottleneck/&#34;&gt;documented in a previous blog post&lt;/a&gt;. That turned out to be a queue issue on the SFP+ port on my MikroTik CHR router. Could this also be queue related?&lt;/p&gt;</description>
    </item>
    <item>
      <title>Underground conduits to garage and shed</title>
      <link>https://www.cavelab.dev/posts/underground-conduits/</link>
      <pubDate>Wed, 01 Jan 2025 19:37:03 +0100</pubDate>
      <guid>https://www.cavelab.dev/posts/underground-conduits/</guid>
      <description>&lt;img src=&#34;https://www.cavelab.dev/posts/underground-conduits/cover.jpg&#34;/&gt; &lt;p&gt;Two years ago we dug and laid three conduits from the house to the garage, and from the garage to the shed. Primarily to get more power to the garage — and any power to the shed.&lt;/p&gt;&#xA;&lt;p&gt;I used the opportunity to put in an additional conduit for fiber, and lots of conduits from the main switch board down into the basement.&lt;/p&gt;</description>
    </item>
    <item>
      <title>My homelab rack — a 20 year history</title>
      <link>https://www.cavelab.dev/posts/homelab-rack-history/</link>
      <pubDate>Thu, 19 Dec 2024 20:24:29 +0100</pubDate>
      <guid>https://www.cavelab.dev/posts/homelab-rack-history/</guid>
      <description>&lt;img src=&#34;https://www.cavelab.dev/posts/homelab-rack-history/cover.jpg&#34;/&gt; &lt;p&gt;I built a rack out of wood in 2004 — it was at home, and a lab, of sorts, so I guess that makes it a homelab &amp;#x1f642;&lt;/p&gt;&#xA;&lt;p&gt;Let&amp;rsquo;s take a trip down memory lane and look at 20 years&amp;rsquo; worth of homelabbing &amp;#x2764;&amp;#xfe0f;&lt;/p&gt;</description>
    </item>
    <item>
      <title>Chasing MikroTik CHR bottleneck</title>
      <link>https://www.cavelab.dev/posts/mikrotik-chr-bottleneck/</link>
      <pubDate>Wed, 18 Dec 2024 20:25:45 +0100</pubDate>
      <guid>https://www.cavelab.dev/posts/mikrotik-chr-bottleneck/</guid>
      <description>&lt;img src=&#34;https://www.cavelab.dev/posts/mikrotik-chr-bottleneck/cover.jpg&#34;/&gt; &lt;p&gt;While doing some WireGuard testing between local peers; I noticed weird performance issues on my virtual MikroTik router. This lead me down a rabbit hole of testing the layer 3 throughput on my virtual CHR.&lt;/p&gt;&#xA;&lt;p&gt;The bit rate started at close to 10 Gbit/s, but then dropped to 3-4 — only in one direction &amp;#x1f937; Time to investigate…&lt;/p&gt;</description>
    </item>
    <item>
      <title>Upcoming homelab projects</title>
      <link>https://www.cavelab.dev/posts/homelab-projects/</link>
      <pubDate>Mon, 16 Dec 2024 21:26:29 +0100</pubDate>
      <guid>https://www.cavelab.dev/posts/homelab-projects/</guid>
      <description>&lt;img src=&#34;https://www.cavelab.dev/posts/homelab-projects/cover.jpg&#34;/&gt; &lt;p&gt;My homelab rack has been running as is for a while now — it&amp;rsquo;s time for a few new projects.&lt;/p&gt;&#xA;&lt;p&gt;I&amp;rsquo;m rearranging stuff to better utilize the space, looking into 25 Gbit networking, and putting a HP Z440 server to good use &amp;#x1f642;&lt;/p&gt;</description>
    </item>
    <item>
      <title>Measuring outdoor temperature with a Raspberry Pi and DS18B20 probe</title>
      <link>https://www.cavelab.dev/posts/rpi-outdoor-temperature/</link>
      <pubDate>Fri, 29 Nov 2024 16:23:02 +0100</pubDate>
      <guid>https://www.cavelab.dev/posts/rpi-outdoor-temperature/</guid>
      <description>&lt;img src=&#34;https://www.cavelab.dev/posts/rpi-outdoor-temperature/cover.jpg&#34;/&gt; &lt;p&gt;We have a &lt;a href=&#34;https://www.cavelab.dev/tags/dakboard/&#34;&gt;Dakboard&lt;/a&gt; digital calendar in our kitchen — showing lots of house and temperature data. So naturally; it must show the actual outdoor temperature as well.&lt;/p&gt;&#xA;&lt;p&gt;To do this I used a &lt;a href=&#34;https://www.cavelab.dev/tags/raspberry-pi/&#34;&gt;Raspberry Pi&lt;/a&gt; 2, and a &lt;a href=&#34;https://www.cavelab.dev/posts/rpi-ds18b20-temp-sensors/&#34;&gt;DS18B20 HAT&lt;/a&gt; I made some years back.&lt;/p&gt;</description>
    </item>
    <item>
      <title>(Re)set the time on our Komfovent ventilation system</title>
      <link>https://www.cavelab.dev/posts/set-komfovent-time/</link>
      <pubDate>Tue, 26 Nov 2024 17:10:52 +0100</pubDate>
      <guid>https://www.cavelab.dev/posts/set-komfovent-time/</guid>
      <description>&lt;img src=&#34;https://www.cavelab.dev/posts/set-komfovent-time/cover.jpg&#34;/&gt; &lt;p&gt;Our Komfovent &lt;a href=&#34;https://www.cavelab.dev/tags/balanced-ventilation/&#34;&gt;balanced ventilation&lt;/a&gt; system is pretty bad at accurate timekeeping — the time drifts several minutes over the course of a few months. This is a bit annoying as the operator panel is prominently located on the second floor, and we use it to tell time.&lt;/p&gt;&#xA;&lt;p&gt;Luckily; the time can be set using the &lt;a href=&#34;https://en.wikipedia.org/wiki/Modbus&#34;&gt;Modbus&lt;/a&gt; interface.&lt;/p&gt;</description>
    </item>
  </channel>
</rss>
