<?xml version="1.0" encoding="utf-8" standalone="yes"?><rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom"><channel><title>ESP32 on Mi&amp;Bee Blog</title><link>/en/tags/esp32/</link><description>Recent content in ESP32 on Mi&amp;Bee Blog</description><generator>Hugo -- gohugo.io</generator><language>en</language><managingEditor>蓝宝石的傻话</managingEditor><lastBuildDate>Wed, 06 May 2026 00:00:00 +0000</lastBuildDate><atom:link href="/en/tags/esp32/rss.xml" rel="self" type="application/rss+xml"/><item><title>MiBeeNvr: A Lightweight Home NVR System I Built</title><link>/en/posts/iot/mibee-nvr-introduction/</link><pubDate>Wed, 06 May 2026 00:00:00 +0000</pubDate><guid>/en/posts/iot/mibee-nvr-introduction/</guid><description>&lt;p&gt;I have several cameras at home — a few Xiaomi cameras, some DIY ESP32 cameras, and multiple Raspberry Pi CSI cameras. I&amp;rsquo;d been using cloud storage solutions, but I was never comfortable with them: vendor lock-in, network dependency, and the costs add up. So I decided to build my own NVR system, called MiBeeNvr.&lt;/p&gt;
&lt;h2 id="why-build-mibeenvr"&gt;Why Build MiBeeNvr&lt;/h2&gt;
&lt;p&gt;To be honest, I was never satisfied with existing cloud storage solutions. Take Xiaomi cameras, for example. By default, you can only view them through the Mi Home app. Recordings are either stored on an SD card (limited capacity, frequent plugging/unplugging) or in the cloud. Cloud storage costs tens of dollars per month, and there&amp;rsquo;s the privacy concern — you never know when the manufacturer might use your video data for AI training or sell it to third parties. Not to mention vendor lock-in — switching platforms is nearly impossible.&lt;/p&gt;</description></item><item><title>Replacing VMs with ESP32 for Network Probing — esp32-blackbox Project in Action</title><link>/en/posts/iot/esp32-blackbox/</link><pubDate>Thu, 23 Apr 2026 00:00:00 +0000</pubDate><guid>/en/posts/iot/esp32-blackbox/</guid><description>&lt;h2 id="why"&gt;Why&lt;/h2&gt;
&lt;p&gt;I have several LANs in different locations around the city, roughly 10 km apart. To make these networks talk to each other, I used tools like NetBird, ZeroTier, and Cloudflare Tunnel to set up a cross-region virtual LAN.&lt;/p&gt;
&lt;p&gt;The network was set up, but how to ensure stability? After all, these tunnels traverse the public internet with varying link quality. The most direct approach is to use Prometheus&amp;rsquo;s blackbox_exporter for probing — periodic HTTP requests, Pings, DNS queries — feeding results into a time-series database with alert rules, so problems are detected immediately.&lt;/p&gt;</description></item></channel></rss>