<?xml version="1.0" encoding="utf-8" standalone="yes"?><rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom"><channel><title>Posts · ArchWorks</title><link>https://archworks.co/posts/</link><description>Workshop notes, build logs, reverse engineering, and other rabbit holes.</description><language>en</language><lastBuildDate>Tue, 12 May 2026 00:00:00 +0000</lastBuildDate><atom:link href="https://archworks.co/posts/index.xml" rel="self" type="application/rss+xml"/><item><title>Decoding Creality's locked Klipper fork</title><link>https://archworks.co/posts/decoding-the-k2-plus/</link><pubDate>Tue, 12 May 2026 00:00:00 +0000</pubDate><guid isPermaLink="true">https://archworks.co/posts/decoding-the-k2-plus/</guid><description>The K2 Plus runs a Klipper fork with a 1.88 MB Cython binary at the core of it. What is inside, how I got there, and what surprised me along the way.</description></item><item><title>MeshCore on Heltec and nRF52: off-grid, encrypted, solar-powered</title><link>https://archworks.co/posts/meshcore-heltec-nrf52-solar/</link><pubDate>Fri, 08 May 2026 00:00:00 +0000</pubDate><guid isPermaLink="true">https://archworks.co/posts/meshcore-heltec-nrf52-solar/</guid><description>A LoRa mesh that does not need cell towers, ISPs, or anyone's permission. End-to-end encrypted, kilometre range, runs on a battery the size of a credit card. Plus what it lets me extend into: server comms, sensor telemetry, Home Assistant feeds.</description></item><item><title>Sharing port 443 between a real website and a VLESS+Reality tunnel</title><link>https://archworks.co/posts/one-ip-one-port-vless-reality/</link><pubDate>Sun, 03 May 2026 00:00:00 +0000</pubDate><guid isPermaLink="true">https://archworks.co/posts/one-ip-one-port-vless-reality/</guid><description>A real public website and a VLESS+Reality tunnel on the same machine, the same address, the same TCP port. DPI cannot tell them apart, because neither of them is lying.</description></item><item><title>Handing my only GPU to a VM, and getting it back</title><link>https://archworks.co/posts/handing-my-gpu-to-a-vm/</link><pubDate>Tue, 28 Apr 2026 00:00:00 +0000</pubDate><guid isPermaLink="true">https://archworks.co/posts/handing-my-gpu-to-a-vm/</guid><description>Single-GPU passthrough on Linux is the constrained-hardware path. It works. Plasma does not survive it. Here is the trade-off.</description></item><item><title>Ansible-Bootstrap: declarative Linux hosts across any distro and hypervisor</title><link>https://archworks.co/posts/ansible-clean-bootstrap/</link><pubDate>Wed, 22 Apr 2026 00:00:00 +0000</pubDate><guid isPermaLink="true">https://archworks.co/posts/ansible-clean-bootstrap/</guid><description>A bootstrap that takes a host described as YAML and gives back a configured running server. Eleven distros, five hypervisors, one playbook, deterministic end state. Source on git.archworks.co/sandwich/Ansible-Bootstrap.</description></item><item><title>Three-layer GitOps on K3s, in production</title><link>https://archworks.co/posts/kubernetes-gitops-layers/</link><pubDate>Sat, 18 Apr 2026 00:00:00 +0000</pubDate><guid isPermaLink="true">https://archworks.co/posts/kubernetes-gitops-layers/</guid><description>How I run a 6-node Kubernetes cluster as one git repo, pushed to master, picked up by ArgoCD, and never touched with kubectl in anger.</description></item><item><title>Public services from a residential line, without publishing the home IP</title><link>https://archworks.co/posts/reverse-tunnel-public-without-exposed/</link><pubDate>Tue, 14 Apr 2026 00:00:00 +0000</pubDate><guid isPermaLink="true">https://archworks.co/posts/reverse-tunnel-public-without-exposed/</guid><description>A tiny VPS, a WireGuard tunnel, and an OPNsense at home. The architecture that lets a residential IP host public services without ever being the public IP.</description></item><item><title>Self-hosted LLMs and the context discipline that makes them work</title><link>https://archworks.co/posts/self-hosted-llms-subagents-skills/</link><pubDate>Sun, 12 Apr 2026 00:00:00 +0000</pubDate><guid isPermaLink="true">https://archworks.co/posts/self-hosted-llms-subagents-skills/</guid><description>Three concrete layers on top of a local model: model tiering, subagents with isolated context, and skills that wrap APIs as one tool call. The discipline matters more than the model size.</description></item><item><title>Learning FreeCAD 1.x by designing hobby rockets</title><link>https://archworks.co/posts/freecad-and-amateur-rocketry/</link><pubDate>Wed, 08 Apr 2026 00:00:00 +0000</pubDate><guid isPermaLink="true">https://archworks.co/posts/freecad-and-amateur-rocketry/</guid><description>Parametric CAD from scratch through one project: nosecones, fin sections, motor mounts, recovery bays. The YouTube channel that made FreeCAD click. The amateur-rocketry hobby it landed me in.</description></item><item><title>Building an ESP32 quadcopter from a public project, and what flight control actually feels like</title><link>https://archworks.co/posts/esp32-quadcopter-from-flix/</link><pubDate>Mon, 30 Mar 2026 00:00:00 +0000</pubDate><guid isPermaLink="true">https://archworks.co/posts/esp32-quadcopter-from-flix/</guid><description>Forking okalachev/flix as a starting point, printing the frame, learning the IMU pipeline, and getting humbled by every step between 'motor spins' and 'thing hovers'.</description></item><item><title>Hijacking the display header to embed a Pi Zero inside an Ender 3 V2 Neo</title><link>https://archworks.co/posts/ender3-v2-neo-pi-zero-internal/</link><pubDate>Sun, 22 Mar 2026 00:00:00 +0000</pubDate><guid isPermaLink="true">https://archworks.co/posts/ender3-v2-neo-pi-zero-internal/</guid><description>Klipper on a Pi Zero 2W living inside the printer base, powered and serial-fed from the stock display header. Plus direct-drive conversion, dual Z, custom heatbreaks, and the rest of the modding rabbit hole.</description></item></channel></rss>