Hello! 👋

After-Sales Support Is the Real Product

I recently bought a ceiling fan from Kuhl which came with "free installation". The experience was simple: Wait 4 days Nobody comes No installation No accountability Ultimately I returned the fan - it took around 15 minutes over a phone call with Amazon's customer care to initiate the return process. This time could have been better spent on something else… Now yes - I can install a ceiling fan myself. ...

May 13, 2026 Â· 2 min Â· 225 words Â· Dhiru Kholia

Minimal Kernels, Reduced Attack Surface, and Why Linux Optimization Still Matters

"While minimal kernels cannot prevent every vulnerability, reducing attack surface by removing unnecessary kernel features, drivers, and services can proactively mitigate many classes of security issues and reduce exploitability." For a long time, Linux optimization work was seen mostly as a performance exercise. Faster boot times. Smaller images. Lower RAM usage. Better cache behavior. But over the years, something interesting became increasingly obvious: Optimization and security are often deeply related. ...

May 10, 2026 Â· 5 min Â· 866 words Â· Dhiru Kholia

Pocket Chaos: Coding (and Decoding) on the R36S

Intro There's something slightly absurd about turning a tiny retro handheld into both an app development platform and a weak-signal radio decoder. The R36S - cheap, hackable, and rough around the edges - wasn't built for any of this. That's exactly why it works. The Constraint Advantage Modern development hides inefficiency. The R36S exposes it. With limited CPU, RAM, and screen space, you're forced to: Write tighter code Design simpler interfaces Think in constraints, not abstractions That same constraint-driven thinking applies perfectly to signal processing tasks like FT8. ...

May 5, 2026 Â· 9 min Â· 1809 words Â· Dhiru Kholia

HAM Radio Is NOT Just for Talking

It's a Training Ground for Engineers (And We've Been Ignoring It) Let's drop the nostalgia and say something uncomfortable: If you think ham radio is just people talking into microphones, you're not just wrong - you're overlooking one of the most hands-on, intellectually rigorous engineering playgrounds still accessible to individuals. Because amateur radio isn't about conversation. It's about understanding how information survives reality. And reality is hostile. Signals Don't Care About Your Abstractions Modern software engineers live in a world of clean abstractions: APIs work (until they don't), packets arrive (until they don't), networks are "just there." ...

May 4, 2026 Â· 4 min Â· 815 words Â· Dhiru Kholia

Easy Dual WAN Failover using hEX S (2025) router

Initial setup Initially, I had set up a TP-Link ER605 (TL-R605) V2 router to handle the dual WANs - on paper, it checked all the boxes: load balancing, failover, and a relatively affordable price point. But in practice, it turned out to be a frustrating experience. The biggest issue was how excruciatingly slow the device was to boot and handle failover. In a setup where uptime actually matters, waiting around for the router to recover or switch links defeats the whole purpose of having redundancy in the first place. Failover should feel seamless - this felt anything but. ...

April 30, 2026 Â· 4 min Â· 839 words Â· Dhiru Kholia

Urban EDC Is Just Consumerism in Your Pocket

'Rant' Urban EDC used to be about utility; now it's often curated consumption dressed up as identity. What started as practicality has turned into a cycle of buying and upgrading - less about need, more about filling a vague psychological gap. At some point, this stops being a hobby and starts looking like a loop that's hard to justify. I am sure that most of us DO NOT NEED that ~1L INR Koenig Mini Goblin Flipper knife ;) ...

April 23, 2026 Â· 2 min Â· 379 words Â· Dhiru Kholia

Modding Debian binary packages

The problem Debian binary packages often require dependency patching, especially when installing on different Linux distributions. The script #!/bin/bash if [ "$#" -ne 1 ]; then echo "Usage: $0 <package.deb>" exit 1 fi INPUT_DEB="$1" if [ ! -f "$INPUT_DEB" ]; then echo "Error: File $INPUT_DEB not found." exit 1 fi PACKAGE_NAME=$(basename "$INPUT_DEB" .deb) TMP_DIR=$(mktemp -d) OUTPUT_DEB="${PACKAGE_NAME}_no-deps.deb" # Ensure cleanup on exit trap 'rm -rf "$TMP_DIR"' EXIT echo "Extracting $INPUT_DEB..." dpkg-deb -R "$INPUT_DEB" "$TMP_DIR" || exit 1 echo "Zapping dependencies..." # Remove the Depends line. # We use a regex that matches 'Depends:' at the start of the line. sed -i '/^Depends:/d' "$TMP_DIR/DEBIAN/control" echo "Repackaging to $OUTPUT_DEB..." dpkg-deb --root-owner-group -b "$TMP_DIR" "$OUTPUT_DEB" || exit 1 echo "Done! Created $OUTPUT_DEB" Usage $ ./zap-deps.sh wsjtx_3.1.0_improved_PLUS_260418_amd64.deb Extracting wsjtx_3.1.0_improved_PLUS_260418_amd64.deb... Zapping dependencies... Repackaging to wsjtx_3.1.0_improved_PLUS_260418_amd64_no-deps.deb... dpkg-deb: building package 'wsjtx' in 'wsjtx_3.1.0_improved_PLUS_260418_amd64_no-deps.deb'. Done! Created wsjtx_3.1.0_improved_PLUS_260418_amd64_no-deps.deb Notes Before installing the modded package run the following command. ...

April 21, 2026 Â· 1 min Â· 165 words Â· Dhiru Kholia

Easy and Quick Thermal Simulation of PCBs

I could NOT get the Open-Source Thermal Simulation of PCBs technique to work with my 4-layer PCB board at all, even after spending some days on it. To make things worse, I was NOT able to get useful debugging feedback from the involved patchy toolchain. Getting access to the TRM software by ADAM Research turned out to be a sort of very bureaucratic and slow process - I never ended up using it. ...

April 11, 2026 Â· 2 min Â· 361 words Â· Dhiru Kholia

Avoid Gazon ISP: A Frustrating Experience for Developers

Avoid Gazon ISP: A Frustrating Experience for Developers If you're a developer, engineer, or even a moderately technical user, internet reliability is not optional - it's foundational. Unfortunately, my experience with Gazon ISP has been consistently frustrating, to the point where I would strongly advise others to avoid it. Critical Sites Simply Don't Work One of the most alarming issues is that even essential websites like kernel.org and lwn.net fail to load reliably. This isn't some obscure or niche service - kernel.org is a cornerstone of the open-source ecosystem, hosting the Linux kernel and related resources. ...

March 30, 2026 Â· 2 min Â· 299 words Â· Dhiru Kholia

Voltage Glitching for Fun and Profit (MCU Fault Injection)

Why This Post Exists I wanted to learn practical voltage fault injection on low-cost MCUs like WCH CH32V003 and Puya PY32. What is Voltage Glitching? Voltage glitching is a form of hardware fault injection where very short disturbances are introduced into a device's power supply. These disturbances can cause the CPU to skip instructions, misread memory, or bypass security checks. Researchers commonly use voltage glitching to study the robustness of microcontrollers and secure boot implementations. ...

March 8, 2026 Â· 8 min Â· 1560 words Â· Dhiru Kholia