<?xml version="1.0" encoding="UTF-8"?>
<rss xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:atom="http://www.w3.org/2005/Atom" xmlns:media="http://search.yahoo.com/mrss/" version="2.0"><channel><title>火阳的小站</title><link>https://maomao.autos/</link><atom:link href="https://maomao.autos/rss.xml" rel="self" type="application/rss+xml"/><description>软件、硬件与结构的工作笔记</description><generator>Halo v2.24.0</generator><language>zh-cn</language><image><url>https://maomao.autos/themes/theme-Joe3/assets/img/momo-avatar-background-only.png</url><title>火阳的小站</title><link>https://maomao.autos/</link></image><lastBuildDate>Fri, 4 Sep 2026 06:59:44 GMT</lastBuildDate><item><title><![CDATA[不只写代码，也想把生活里的小事留在这里]]></title><link>https://maomao.autos/archives/beyond-code-life-notes</link><description><![CDATA[<img src="https://maomao.autos/plugins/feed/assets/telemetry.gif?title=%E4%B8%8D%E5%8F%AA%E5%86%99%E4%BB%A3%E7%A0%81%EF%BC%8C%E4%B9%9F%E6%83%B3%E6%8A%8A%E7%94%9F%E6%B4%BB%E9%87%8C%E7%9A%84%E5%B0%8F%E4%BA%8B%E7%95%99%E5%9C%A8%E8%BF%99%E9%87%8C&amp;url=/archives/beyond-code-life-notes" width="1" height="1" alt="" style="opacity:0;">技术仍然是这个博客的一部分，但生活、音乐、影像、阅读和偶尔冒出的灵感，也应该有自己的位置。]]></description><guid isPermaLink="false">/archives/beyond-code-life-notes</guid><dc:creator>火阳</dc:creator><enclosure url="https://maomao.autos/apis/api.storage.halo.run/v1alpha1/thumbnails/-/via-uri?uri=https%3A%2F%2Fmaomao.autos%2Fthemes%2Ftheme-Joe3%2Fassets%2Fimg%2Fanime-life-workspace-banner.webp&amp;size=m" type="image/jpeg" length="163292"/><category>生活随笔</category><pubDate>Thu, 3 Sep 2026 05:20:00 GMT</pubDate></item><item><title><![CDATA[把夜晚还给自己：一份不需要打卡的桌面重启清单]]></title><link>https://maomao.autos/archives/an-unhurried-evening-desk-reset</link><description><![CDATA[<img src="https://maomao.autos/plugins/feed/assets/telemetry.gif?title=%E6%8A%8A%E5%A4%9C%E6%99%9A%E8%BF%98%E7%BB%99%E8%87%AA%E5%B7%B1%EF%BC%9A%E4%B8%80%E4%BB%BD%E4%B8%8D%E9%9C%80%E8%A6%81%E6%89%93%E5%8D%A1%E7%9A%84%E6%A1%8C%E9%9D%A2%E9%87%8D%E5%90%AF%E6%B8%85%E5%8D%95&amp;url=/archives/an-unhurried-evening-desk-reset" width="1" height="1" alt="" style="opacity:0;">关掉一个窗口、收起几件工具、换一种输入，再给明天留一句足够小的提示。]]></description><guid isPermaLink="false">/archives/an-unhurried-evening-desk-reset</guid><dc:creator>火阳</dc:creator><enclosure url="https://maomao.autos/apis/api.storage.halo.run/v1alpha1/thumbnails/-/via-uri?uri=https%3A%2F%2Fmaomao.autos%2Fthemes%2Ftheme-Joe3%2Fassets%2Fimg%2Fanime-life-workspace-banner.webp&amp;size=m" type="image/jpeg" length="163292"/><category>生活随笔</category><pubDate>Thu, 3 Sep 2026 05:10:00 GMT</pubDate></item><item><title><![CDATA[从工程现场到本地工作台：我如何做出 火阳 信息记录系统 Pro]]></title><link>https://maomao.autos/archives/momo-local-engineering-workbench</link><description><![CDATA[<img src="https://maomao.autos/plugins/feed/assets/telemetry.gif?title=%E4%BB%8E%E5%B7%A5%E7%A8%8B%E7%8E%B0%E5%9C%BA%E5%88%B0%E6%9C%AC%E5%9C%B0%E5%B7%A5%E4%BD%9C%E5%8F%B0%EF%BC%9A%E6%88%91%E5%A6%82%E4%BD%95%E5%81%9A%E5%87%BA%20%E7%81%AB%E9%98%B3%20%E4%BF%A1%E6%81%AF%E8%AE%B0%E5%BD%95%E7%B3%BB%E7%BB%9F%20Pro&amp;url=/archives/momo-local-engineering-workbench" width="1" height="1" alt="" style="opacity:0;">一套服务于软件、硬件与结构项目的本地 Windows 工程工作台：从项目记录、附件和待办，到 SQLite/WAL、局域网 API 与可恢复交付。]]></description><guid isPermaLink="false">/archives/momo-local-engineering-workbench</guid><dc:creator>火阳</dc:creator><enclosure url="https://maomao.autos/apis/api.storage.halo.run/v1alpha1/thumbnails/-/via-uri?uri=https%3A%2F%2Fmaomao.autos%2Fthemes%2Fhalo-theme-chirpy%2Fassets%2Fmomo%2Fmomo-main-ui.webp&amp;size=m" type="image/jpeg" length="149206"/><category>项目复盘</category><pubDate>Thu, 3 Sep 2026 03:50:00 GMT</pubDate></item><item><title><![CDATA[火阳 架构拆解：PyQt5、SQLite/WAL、SSE 与可恢复数据]]></title><link>https://maomao.autos/archives/momo-architecture-sqlite-wal-sse</link><description><![CDATA[<img src="https://maomao.autos/plugins/feed/assets/telemetry.gif?title=%E7%81%AB%E9%98%B3%20%E6%9E%B6%E6%9E%84%E6%8B%86%E8%A7%A3%EF%BC%9APyQt5%E3%80%81SQLite%2FWAL%E3%80%81SSE%20%E4%B8%8E%E5%8F%AF%E6%81%A2%E5%A4%8D%E6%95%B0%E6%8D%AE&amp;url=/archives/momo-architecture-sqlite-wal-sse" width="1" height="1" alt="" style="opacity:0;">从启动生命周期、桌面模块和 SQLite/WAL，到受控局域网 API、幂等写入与 SSE 更新，复盘 火阳 当前的状态边界。]]></description><guid isPermaLink="false">/archives/momo-architecture-sqlite-wal-sse</guid><dc:creator>火阳</dc:creator><enclosure url="https://maomao.autos/apis/api.storage.halo.run/v1alpha1/thumbnails/-/via-uri?uri=https%3A%2F%2Fmaomao.autos%2Fthemes%2Fhalo-theme-chirpy%2Fassets%2Fmomo%2Fmomo-requirements.webp&amp;size=m" type="image/jpeg" length="192752"/><category>软件工程</category><pubDate>Thu, 3 Sep 2026 03:40:00 GMT</pubDate></item><item><title><![CDATA[167 次提交之后：火阳 的七天迭代、测试与交付复盘]]></title><link>https://maomao.autos/archives/momo-seven-day-iteration-testing-packaging</link><description><![CDATA[<img src="https://maomao.autos/plugins/feed/assets/telemetry.gif?title=167%20%E6%AC%A1%E6%8F%90%E4%BA%A4%E4%B9%8B%E5%90%8E%EF%BC%9A%E7%81%AB%E9%98%B3%20%E7%9A%84%E4%B8%83%E5%A4%A9%E8%BF%AD%E4%BB%A3%E3%80%81%E6%B5%8B%E8%AF%95%E4%B8%8E%E4%BA%A4%E4%BB%98%E5%A4%8D%E7%9B%98&amp;url=/archives/momo-seven-day-iteration-testing-packaging" width="1" height="1" alt="" style="opacity:0;">167 次提交、26,474 行核心与测试工具代码、16 项测试和一个 71.02 MiB 单文件构建，数字背后是桌面交互与稳定性成本。]]></description><guid isPermaLink="false">/archives/momo-seven-day-iteration-testing-packaging</guid><dc:creator>火阳</dc:creator><enclosure url="https://maomao.autos/apis/api.storage.halo.run/v1alpha1/thumbnails/-/via-uri?uri=https%3A%2F%2Fmaomao.autos%2Fthemes%2Fhalo-theme-chirpy%2Fassets%2Fmomo%2Fmomo-stats-ui.webp&amp;size=m" type="image/jpeg" length="134468"/><category>项目复盘</category><pubDate>Thu, 3 Sep 2026 03:30:00 GMT</pubDate></item><item><title><![CDATA[从 HTTP 到 HTTPS：证书部署与代理访问排查记录]]></title><link>https://maomao.autos/archives/https-certificate-and-proxy-access-notes</link><description><![CDATA[<img src="https://maomao.autos/plugins/feed/assets/telemetry.gif?title=%E4%BB%8E%20HTTP%20%E5%88%B0%20HTTPS%EF%BC%9A%E8%AF%81%E4%B9%A6%E9%83%A8%E7%BD%B2%E4%B8%8E%E4%BB%A3%E7%90%86%E8%AE%BF%E9%97%AE%E6%8E%92%E6%9F%A5%E8%AE%B0%E5%BD%95&amp;url=/archives/https-certificate-and-proxy-access-notes" width="1" height="1" alt="" style="opacity:0;">为 Halo 站点配置免费证书、HTTP 跳转与自动续期，并记录 Clash 代理下域名可达而裸 IP 异常的排查思路。]]></description><guid isPermaLink="false">/archives/https-certificate-and-proxy-access-notes</guid><dc:creator>火阳</dc:creator><enclosure url="https://maomao.autos/apis/api.storage.halo.run/v1alpha1/thumbnails/-/via-uri?uri=data%3Aimage%2Fsvg%2Bxml%3Bbase64%2CPHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSIxMjAwIiBoZWlnaHQ9IjY3NSIgdmlld0JveD0iMCAwIDEyMDAgNjc1Ij48ZGVmcz48bGluZWFyR3JhZGllbnQgaWQ9ImciIHgxPSIwIiB5MT0iMCIgeDI9IjEiIHkyPSIxIj48c3RvcCBzdG9wLWNvbG9yPSIjMDUyZTE2Ii8%2BPHN0b3Agb2Zmc2V0PSIxIiBzdG9wLWNvbG9yPSIjMGYxNzJhIi8%2BPC9saW5lYXJHcmFkaWVudD48cGF0dGVybiBpZD0icCIgd2lkdGg9IjQ4IiBoZWlnaHQ9IjQ4IiBwYXR0ZXJuVW5pdHM9InVzZXJTcGFjZU9uVXNlIj48cGF0aCBkPSJNNDggMEgwVjQ4IiBmaWxsPSJub25lIiBzdHJva2U9IiNmZmYiIHN0cm9rZS1vcGFjaXR5PSIuMDYiLz48L3BhdHRlcm4%2BPC9kZWZzPjxyZWN0IHdpZHRoPSIxMjAwIiBoZWlnaHQ9IjY3NSIgZmlsbD0idXJsKCNnKSIvPjxyZWN0IHdpZHRoPSIxMjAwIiBoZWlnaHQ9IjY3NSIgZmlsbD0idXJsKCNwKSIvPjxnIGZpbGw9Im5vbmUiIHN0cm9rZT0iIzRhZGU4MCIgc3Ryb2tlLXdpZHRoPSI4IiBzdHJva2UtbGluZWNhcD0icm91bmQiPjxwYXRoIGQ9Ik0wIDEyMGgyMzBsNzAgNzBoMTYwTTEyMDAgNTU1SDk3MGwtNzAtNzBINzQwIi8%2BPHJlY3QgeD0iNzk1IiB5PSIxMzAiIHdpZHRoPSIyNjAiIGhlaWdodD0iMjYwIiByeD0iNDgiLz48cGF0aCBkPSJNODU1IDIzMGwtNTQgMzAgNTQgMzBtMTQwLTYwbDU0IDMwLTU0IDMwbS01NS0xMDRsLTQ4IDE0OCIvPjwvZz48ZyBmb250LWZhbWlseT0idWktbW9ub3NwYWNlLENvbnNvbGFzLG1vbm9zcGFjZSI%2BPHRleHQgeD0iOTAiIHk9IjMwNSIgZm9udC1zaXplPSI5MiIgZm9udC13ZWlnaHQ9IjgwMCIgZmlsbD0iI2Y4ZmFmYyI%2BU0VMRi1IT1NURUQ8L3RleHQ%2BPHRleHQgeD0iOTQiIHk9IjM3OCIgZm9udC1zaXplPSIzNCIgZm9udC13ZWlnaHQ9IjYwMCIgZmlsbD0iIzRhZGU4MCI%2BSEFMTyDCtyBOR0lOWCDCtyBEQjwvdGV4dD48dGV4dCB4PSI5NCIgeT0iNDcwIiBmb250LXNpemU9IjI0IiBmaWxsPSIjY2JkNWUxIj5NJ3MgZW5naW5lZXJpbmcgbm90ZWJvb2s8L3RleHQ%2BPC9nPjxjaXJjbGUgY3g9IjIzMCIgY3k9IjEyMCIgcj0iMTUiIGZpbGw9IiM0YWRlODAiLz48Y2lyY2xlIGN4PSI5NzAiIGN5PSI1NTUiIHI9IjE1IiBmaWxsPSIjNGFkZTgwIi8%2BPC9zdmc%2B&amp;size=m" type="image/jpeg" length="0"/><category>自托管与运维</category><pubDate>Wed, 2 Sep 2026 12:50:00 GMT</pubDate></item><item><title><![CDATA[恢复 Halo 博客：一次双实例事故复盘]]></title><link>https://maomao.autos/archives/halo-dual-instance-recovery-postmortem</link><description><![CDATA[<img src="https://maomao.autos/plugins/feed/assets/telemetry.gif?title=%E6%81%A2%E5%A4%8D%20Halo%20%E5%8D%9A%E5%AE%A2%EF%BC%9A%E4%B8%80%E6%AC%A1%E5%8F%8C%E5%AE%9E%E4%BE%8B%E4%BA%8B%E6%95%85%E5%A4%8D%E7%9B%98&amp;url=/archives/halo-dual-instance-recovery-postmortem" width="1" height="1" alt="" style="opacity:0;">同一台服务器上出现新旧两套 Halo，反向代理指向空实例后网站像被清空。本文记录识别、备份、切换与验证过程。]]></description><guid isPermaLink="false">/archives/halo-dual-instance-recovery-postmortem</guid><dc:creator>火阳</dc:creator><enclosure url="https://maomao.autos/apis/api.storage.halo.run/v1alpha1/thumbnails/-/via-uri?uri=data%3Aimage%2Fsvg%2Bxml%3Bbase64%2CPHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSIxMjAwIiBoZWlnaHQ9IjY3NSIgdmlld0JveD0iMCAwIDEyMDAgNjc1Ij48ZGVmcz48bGluZWFyR3JhZGllbnQgaWQ9ImciIHgxPSIwIiB5MT0iMCIgeDI9IjEiIHkyPSIxIj48c3RvcCBzdG9wLWNvbG9yPSIjMDUyZTE2Ii8%2BPHN0b3Agb2Zmc2V0PSIxIiBzdG9wLWNvbG9yPSIjMGYxNzJhIi8%2BPC9saW5lYXJHcmFkaWVudD48cGF0dGVybiBpZD0icCIgd2lkdGg9IjQ4IiBoZWlnaHQ9IjQ4IiBwYXR0ZXJuVW5pdHM9InVzZXJTcGFjZU9uVXNlIj48cGF0aCBkPSJNNDggMEgwVjQ4IiBmaWxsPSJub25lIiBzdHJva2U9IiNmZmYiIHN0cm9rZS1vcGFjaXR5PSIuMDYiLz48L3BhdHRlcm4%2BPC9kZWZzPjxyZWN0IHdpZHRoPSIxMjAwIiBoZWlnaHQ9IjY3NSIgZmlsbD0idXJsKCNnKSIvPjxyZWN0IHdpZHRoPSIxMjAwIiBoZWlnaHQ9IjY3NSIgZmlsbD0idXJsKCNwKSIvPjxnIGZpbGw9Im5vbmUiIHN0cm9rZT0iIzRhZGU4MCIgc3Ryb2tlLXdpZHRoPSI4IiBzdHJva2UtbGluZWNhcD0icm91bmQiPjxwYXRoIGQ9Ik0wIDEyMGgyMzBsNzAgNzBoMTYwTTEyMDAgNTU1SDk3MGwtNzAtNzBINzQwIi8%2BPHJlY3QgeD0iNzk1IiB5PSIxMzAiIHdpZHRoPSIyNjAiIGhlaWdodD0iMjYwIiByeD0iNDgiLz48cGF0aCBkPSJNODU1IDIzMGwtNTQgMzAgNTQgMzBtMTQwLTYwbDU0IDMwLTU0IDMwbS01NS0xMDRsLTQ4IDE0OCIvPjwvZz48ZyBmb250LWZhbWlseT0idWktbW9ub3NwYWNlLENvbnNvbGFzLG1vbm9zcGFjZSI%2BPHRleHQgeD0iOTAiIHk9IjMwNSIgZm9udC1zaXplPSI5MiIgZm9udC13ZWlnaHQ9IjgwMCIgZmlsbD0iI2Y4ZmFmYyI%2BU0VMRi1IT1NURUQ8L3RleHQ%2BPHRleHQgeD0iOTQiIHk9IjM3OCIgZm9udC1zaXplPSIzNCIgZm9udC13ZWlnaHQ9IjYwMCIgZmlsbD0iIzRhZGU4MCI%2BSEFMTyDCtyBOR0lOWCDCtyBEQjwvdGV4dD48dGV4dCB4PSI5NCIgeT0iNDcwIiBmb250LXNpemU9IjI0IiBmaWxsPSIjY2JkNWUxIj5NJ3MgZW5naW5lZXJpbmcgbm90ZWJvb2s8L3RleHQ%2BPC9nPjxjaXJjbGUgY3g9IjIzMCIgY3k9IjEyMCIgcj0iMTUiIGZpbGw9IiM0YWRlODAiLz48Y2lyY2xlIGN4PSI5NzAiIGN5PSI1NTUiIHI9IjE1IiBmaWxsPSIjNGFkZTgwIi8%2BPC9zdmc%2B&amp;size=m" type="image/jpeg" length="0"/><category>自托管与运维</category><pubDate>Sun, 30 Aug 2026 10:40:00 GMT</pubDate></item><item><title><![CDATA[把技术写下来，把产品做出来]]></title><link>https://maomao.autos/archives/ba-ji-shu-xie-xia-lai-ba-chan-pin-zuo-chu-lai</link><description><![CDATA[<img src="https://maomao.autos/plugins/feed/assets/telemetry.gif?title=%E6%8A%8A%E6%8A%80%E6%9C%AF%E5%86%99%E4%B8%8B%E6%9D%A5%EF%BC%8C%E6%8A%8A%E4%BA%A7%E5%93%81%E5%81%9A%E5%87%BA%E6%9D%A5&amp;url=/archives/ba-ji-shu-xie-xia-lai-ba-chan-pin-zuo-chu-lai" width="1" height="1" alt="" style="opacity:0;">null]]></description><guid isPermaLink="false">/archives/ba-ji-shu-xie-xia-lai-ba-chan-pin-zuo-chu-lai</guid><dc:creator>火阳</dc:creator><enclosure url="https://maomao.autos/apis/api.storage.halo.run/v1alpha1/thumbnails/-/via-uri?uri=data%3Aimage%2Fsvg%2Bxml%3Bbase64%2CPHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSIxMjAwIiBoZWlnaHQ9IjY3NSIgdmlld0JveD0iMCAwIDEyMDAgNjc1Ij48ZGVmcz48bGluZWFyR3JhZGllbnQgaWQ9ImciIHgxPSIwIiB5MT0iMCIgeDI9IjEiIHkyPSIxIj48c3RvcCBzdG9wLWNvbG9yPSIjNDMxNDA3Ii8%2BPHN0b3Agb2Zmc2V0PSIxIiBzdG9wLWNvbG9yPSIjMGYxNzJhIi8%2BPC9saW5lYXJHcmFkaWVudD48cGF0dGVybiBpZD0icCIgd2lkdGg9IjQ4IiBoZWlnaHQ9IjQ4IiBwYXR0ZXJuVW5pdHM9InVzZXJTcGFjZU9uVXNlIj48cGF0aCBkPSJNNDggMEgwVjQ4IiBmaWxsPSJub25lIiBzdHJva2U9IiNmZmYiIHN0cm9rZS1vcGFjaXR5PSIuMDYiLz48L3BhdHRlcm4%2BPC9kZWZzPjxyZWN0IHdpZHRoPSIxMjAwIiBoZWlnaHQ9IjY3NSIgZmlsbD0idXJsKCNnKSIvPjxyZWN0IHdpZHRoPSIxMjAwIiBoZWlnaHQ9IjY3NSIgZmlsbD0idXJsKCNwKSIvPjxnIGZpbGw9Im5vbmUiIHN0cm9rZT0iI2ZiOTIzYyIgc3Ryb2tlLXdpZHRoPSI4IiBzdHJva2UtbGluZWNhcD0icm91bmQiPjxwYXRoIGQ9Ik0wIDEyMGgyMzBsNzAgNzBoMTYwTTEyMDAgNTU1SDk3MGwtNzAtNzBINzQwIi8%2BPHJlY3QgeD0iNzk1IiB5PSIxMzAiIHdpZHRoPSIyNjAiIGhlaWdodD0iMjYwIiByeD0iNDgiLz48cGF0aCBkPSJNODU1IDIzMGwtNTQgMzAgNTQgMzBtMTQwLTYwbDU0IDMwLTU0IDMwbS01NS0xMDRsLTQ4IDE0OCIvPjwvZz48ZyBmb250LWZhbWlseT0idWktbW9ub3NwYWNlLENvbnNvbGFzLG1vbm9zcGFjZSI%2BPHRleHQgeD0iOTAiIHk9IjMwNSIgZm9udC1zaXplPSI5MiIgZm9udC13ZWlnaHQ9IjgwMCIgZmlsbD0iI2Y4ZmFmYyI%2BTE9HQk9PSzwvdGV4dD48dGV4dCB4PSI5NCIgeT0iMzc4IiBmb250LXNpemU9IjM0IiBmb250LXdlaWdodD0iNjAwIiBmaWxsPSIjZmI5MjNjIj5CVUlMRCDCtyBURVNUIMK3IExFQVJOPC90ZXh0Pjx0ZXh0IHg9Ijk0IiB5PSI0NzAiIGZvbnQtc2l6ZT0iMjQiIGZpbGw9IiNjYmQ1ZTEiPk0ncyBlbmdpbmVlcmluZyBub3RlYm9vazwvdGV4dD48L2c%2BPGNpcmNsZSBjeD0iMjMwIiBjeT0iMTIwIiByPSIxNSIgZmlsbD0iI2ZiOTIzYyIvPjxjaXJjbGUgY3g9Ijk3MCIgY3k9IjU1NSIgcj0iMTUiIGZpbGw9IiNmYjkyM2MiLz48L3N2Zz4%3D&amp;size=m" type="image/jpeg" length="0"/><category>航行记录</category><pubDate>Thu, 4 Jun 2026 06:21:57 GMT</pubDate></item><item><title><![CDATA[自动化脚本怎样做到失败也说人话]]></title><link>https://maomao.autos/archives/automation-scripts-with-actionable-errors</link><description><![CDATA[<img src="https://maomao.autos/plugins/feed/assets/telemetry.gif?title=%E8%87%AA%E5%8A%A8%E5%8C%96%E8%84%9A%E6%9C%AC%E6%80%8E%E6%A0%B7%E5%81%9A%E5%88%B0%E5%A4%B1%E8%B4%A5%E4%B9%9F%E8%AF%B4%E4%BA%BA%E8%AF%9D&amp;url=/archives/automation-scripts-with-actionable-errors" width="1" height="1" alt="" style="opacity:0;">从一个沉默失败的部署脚本出发，整理自动化工具的输入校验、幂等、退出码、日志、试运行和回滚约定。]]></description><guid isPermaLink="false">/archives/automation-scripts-with-actionable-errors</guid><dc:creator>火阳</dc:creator><enclosure url="https://maomao.autos/apis/api.storage.halo.run/v1alpha1/thumbnails/-/via-uri?uri=data%3Aimage%2Fsvg%2Bxml%3Bbase64%2CPHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSIxMjAwIiBoZWlnaHQ9IjY3NSIgdmlld0JveD0iMCAwIDEyMDAgNjc1Ij48ZGVmcz48bGluZWFyR3JhZGllbnQgaWQ9ImciIHgxPSIwIiB5MT0iMCIgeDI9IjEiIHkyPSIxIj48c3RvcCBzdG9wLWNvbG9yPSIjMjQwMDQ2Ii8%2BPHN0b3Agb2Zmc2V0PSIxIiBzdG9wLWNvbG9yPSIjMGYxNzJhIi8%2BPC9saW5lYXJHcmFkaWVudD48cGF0dGVybiBpZD0icCIgd2lkdGg9IjQ4IiBoZWlnaHQ9IjQ4IiBwYXR0ZXJuVW5pdHM9InVzZXJTcGFjZU9uVXNlIj48cGF0aCBkPSJNNDggMEgwVjQ4IiBmaWxsPSJub25lIiBzdHJva2U9IiNmZmYiIHN0cm9rZS1vcGFjaXR5PSIuMDYiLz48L3BhdHRlcm4%2BPC9kZWZzPjxyZWN0IHdpZHRoPSIxMjAwIiBoZWlnaHQ9IjY3NSIgZmlsbD0idXJsKCNnKSIvPjxyZWN0IHdpZHRoPSIxMjAwIiBoZWlnaHQ9IjY3NSIgZmlsbD0idXJsKCNwKSIvPjxnIGZpbGw9Im5vbmUiIHN0cm9rZT0iI2M3N2RmZiIgc3Ryb2tlLXdpZHRoPSI4IiBzdHJva2UtbGluZWNhcD0icm91bmQiPjxwYXRoIGQ9Ik0wIDEyMGgyMzBsNzAgNzBoMTYwTTEyMDAgNTU1SDk3MGwtNzAtNzBINzQwIi8%2BPHJlY3QgeD0iNzk1IiB5PSIxMzAiIHdpZHRoPSIyNjAiIGhlaWdodD0iMjYwIiByeD0iNDgiLz48cGF0aCBkPSJNODU1IDIzMGwtNTQgMzAgNTQgMzBtMTQwLTYwbDU0IDMwLTU0IDMwbS01NS0xMDRsLTQ4IDE0OCIvPjwvZz48ZyBmb250LWZhbWlseT0idWktbW9ub3NwYWNlLENvbnNvbGFzLG1vbm9zcGFjZSI%2BPHRleHQgeD0iOTAiIHk9IjMwNSIgZm9udC1zaXplPSI5MiIgZm9udC13ZWlnaHQ9IjgwMCIgZmlsbD0iI2Y4ZmFmYyI%2BQUkgLyBBVVRPPC90ZXh0Pjx0ZXh0IHg9Ijk0IiB5PSIzNzgiIGZvbnQtc2l6ZT0iMzQiIGZvbnQtd2VpZ2h0PSI2MDAiIGZpbGw9IiNjNzdkZmYiPkFQSSDCtyBKU09OIMK3IFJFVFJZPC90ZXh0Pjx0ZXh0IHg9Ijk0IiB5PSI0NzAiIGZvbnQtc2l6ZT0iMjQiIGZpbGw9IiNjYmQ1ZTEiPk0ncyBlbmdpbmVlcmluZyBub3RlYm9vazwvdGV4dD48L2c%2BPGNpcmNsZSBjeD0iMjMwIiBjeT0iMTIwIiByPSIxNSIgZmlsbD0iI2M3N2RmZiIvPjxjaXJjbGUgY3g9Ijk3MCIgY3k9IjU1NSIgcj0iMTUiIGZpbGw9IiNjNzdkZmYiLz48L3N2Zz4%3D&amp;size=m" type="image/jpeg" length="0"/><category>AI 与自动化</category><pubDate>Sat, 2 May 2026 09:35:00 GMT</pubDate></item><item><title><![CDATA[让 AI 自动化脚本可重试、可验证、可回滚]]></title><link>https://maomao.autos/archives/retriable-verifiable-rollback-ai-automation</link><description><![CDATA[<img src="https://maomao.autos/plugins/feed/assets/telemetry.gif?title=%E8%AE%A9%20AI%20%E8%87%AA%E5%8A%A8%E5%8C%96%E8%84%9A%E6%9C%AC%E5%8F%AF%E9%87%8D%E8%AF%95%E3%80%81%E5%8F%AF%E9%AA%8C%E8%AF%81%E3%80%81%E5%8F%AF%E5%9B%9E%E6%BB%9A&amp;url=/archives/retriable-verifiable-rollback-ai-automation" width="1" height="1" alt="" style="opacity:0;">把一次 LLM API 调用扩展成可靠自动化任务：区分可重试错误、校验结构化输出、保存检查点，并为写操作准备回滚。]]></description><guid isPermaLink="false">/archives/retriable-verifiable-rollback-ai-automation</guid><dc:creator>火阳</dc:creator><enclosure url="https://maomao.autos/apis/api.storage.halo.run/v1alpha1/thumbnails/-/via-uri?uri=data%3Aimage%2Fsvg%2Bxml%3Bbase64%2CPHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSIxMjAwIiBoZWlnaHQ9IjY3NSIgdmlld0JveD0iMCAwIDEyMDAgNjc1Ij48ZGVmcz48bGluZWFyR3JhZGllbnQgaWQ9ImciIHgxPSIwIiB5MT0iMCIgeDI9IjEiIHkyPSIxIj48c3RvcCBzdG9wLWNvbG9yPSIjMjQwMDQ2Ii8%2BPHN0b3Agb2Zmc2V0PSIxIiBzdG9wLWNvbG9yPSIjMGYxNzJhIi8%2BPC9saW5lYXJHcmFkaWVudD48cGF0dGVybiBpZD0icCIgd2lkdGg9IjQ4IiBoZWlnaHQ9IjQ4IiBwYXR0ZXJuVW5pdHM9InVzZXJTcGFjZU9uVXNlIj48cGF0aCBkPSJNNDggMEgwVjQ4IiBmaWxsPSJub25lIiBzdHJva2U9IiNmZmYiIHN0cm9rZS1vcGFjaXR5PSIuMDYiLz48L3BhdHRlcm4%2BPC9kZWZzPjxyZWN0IHdpZHRoPSIxMjAwIiBoZWlnaHQ9IjY3NSIgZmlsbD0idXJsKCNnKSIvPjxyZWN0IHdpZHRoPSIxMjAwIiBoZWlnaHQ9IjY3NSIgZmlsbD0idXJsKCNwKSIvPjxnIGZpbGw9Im5vbmUiIHN0cm9rZT0iI2M3N2RmZiIgc3Ryb2tlLXdpZHRoPSI4IiBzdHJva2UtbGluZWNhcD0icm91bmQiPjxwYXRoIGQ9Ik0wIDEyMGgyMzBsNzAgNzBoMTYwTTEyMDAgNTU1SDk3MGwtNzAtNzBINzQwIi8%2BPHJlY3QgeD0iNzk1IiB5PSIxMzAiIHdpZHRoPSIyNjAiIGhlaWdodD0iMjYwIiByeD0iNDgiLz48cGF0aCBkPSJNODU1IDIzMGwtNTQgMzAgNTQgMzBtMTQwLTYwbDU0IDMwLTU0IDMwbS01NS0xMDRsLTQ4IDE0OCIvPjwvZz48ZyBmb250LWZhbWlseT0idWktbW9ub3NwYWNlLENvbnNvbGFzLG1vbm9zcGFjZSI%2BPHRleHQgeD0iOTAiIHk9IjMwNSIgZm9udC1zaXplPSI5MiIgZm9udC13ZWlnaHQ9IjgwMCIgZmlsbD0iI2Y4ZmFmYyI%2BQUkgLyBBVVRPPC90ZXh0Pjx0ZXh0IHg9Ijk0IiB5PSIzNzgiIGZvbnQtc2l6ZT0iMzQiIGZvbnQtd2VpZ2h0PSI2MDAiIGZpbGw9IiNjNzdkZmYiPkFQSSDCtyBKU09OIMK3IFJFVFJZPC90ZXh0Pjx0ZXh0IHg9Ijk0IiB5PSI0NzAiIGZvbnQtc2l6ZT0iMjQiIGZpbGw9IiNjYmQ1ZTEiPk0ncyBlbmdpbmVlcmluZyBub3RlYm9vazwvdGV4dD48L2c%2BPGNpcmNsZSBjeD0iMjMwIiBjeT0iMTIwIiByPSIxNSIgZmlsbD0iI2M3N2RmZiIvPjxjaXJjbGUgY3g9Ijk3MCIgY3k9IjU1NSIgcj0iMTUiIGZpbGw9IiNjNzdkZmYiLz48L3N2Zz4%3D&amp;size=m" type="image/jpeg" length="0"/><category>AI 与自动化</category><pubDate>Sat, 21 Mar 2026 11:15:00 GMT</pubDate></item><item><title><![CDATA[为什么重新开始写技术博客]]></title><link>https://maomao.autos/archives/why-i-started-writing-a-technical-blog-again</link><description><![CDATA[<img src="https://maomao.autos/plugins/feed/assets/telemetry.gif?title=%E4%B8%BA%E4%BB%80%E4%B9%88%E9%87%8D%E6%96%B0%E5%BC%80%E5%A7%8B%E5%86%99%E6%8A%80%E6%9C%AF%E5%8D%9A%E5%AE%A2&amp;url=/archives/why-i-started-writing-a-technical-blog-again" width="1" height="1" alt="" style="opacity:0;">技术笔记散落在聊天、提交记录和临时文件里；重新写博客，是为了给决策、失败与可复现实验一个稳定入口。]]></description><guid isPermaLink="false">/archives/why-i-started-writing-a-technical-blog-again</guid><dc:creator>火阳</dc:creator><enclosure url="https://maomao.autos/apis/api.storage.halo.run/v1alpha1/thumbnails/-/via-uri?uri=data%3Aimage%2Fsvg%2Bxml%3Bbase64%2CPHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSIxMjAwIiBoZWlnaHQ9IjY3NSIgdmlld0JveD0iMCAwIDEyMDAgNjc1Ij48ZGVmcz48bGluZWFyR3JhZGllbnQgaWQ9ImciIHgxPSIwIiB5MT0iMCIgeDI9IjEiIHkyPSIxIj48c3RvcCBzdG9wLWNvbG9yPSIjNDMxNDA3Ii8%2BPHN0b3Agb2Zmc2V0PSIxIiBzdG9wLWNvbG9yPSIjMGYxNzJhIi8%2BPC9saW5lYXJHcmFkaWVudD48cGF0dGVybiBpZD0icCIgd2lkdGg9IjQ4IiBoZWlnaHQ9IjQ4IiBwYXR0ZXJuVW5pdHM9InVzZXJTcGFjZU9uVXNlIj48cGF0aCBkPSJNNDggMEgwVjQ4IiBmaWxsPSJub25lIiBzdHJva2U9IiNmZmYiIHN0cm9rZS1vcGFjaXR5PSIuMDYiLz48L3BhdHRlcm4%2BPC9kZWZzPjxyZWN0IHdpZHRoPSIxMjAwIiBoZWlnaHQ9IjY3NSIgZmlsbD0idXJsKCNnKSIvPjxyZWN0IHdpZHRoPSIxMjAwIiBoZWlnaHQ9IjY3NSIgZmlsbD0idXJsKCNwKSIvPjxnIGZpbGw9Im5vbmUiIHN0cm9rZT0iI2ZiOTIzYyIgc3Ryb2tlLXdpZHRoPSI4IiBzdHJva2UtbGluZWNhcD0icm91bmQiPjxwYXRoIGQ9Ik0wIDEyMGgyMzBsNzAgNzBoMTYwTTEyMDAgNTU1SDk3MGwtNzAtNzBINzQwIi8%2BPHJlY3QgeD0iNzk1IiB5PSIxMzAiIHdpZHRoPSIyNjAiIGhlaWdodD0iMjYwIiByeD0iNDgiLz48cGF0aCBkPSJNODU1IDIzMGwtNTQgMzAgNTQgMzBtMTQwLTYwbDU0IDMwLTU0IDMwbS01NS0xMDRsLTQ4IDE0OCIvPjwvZz48ZyBmb250LWZhbWlseT0idWktbW9ub3NwYWNlLENvbnNvbGFzLG1vbm9zcGFjZSI%2BPHRleHQgeD0iOTAiIHk9IjMwNSIgZm9udC1zaXplPSI5MiIgZm9udC13ZWlnaHQ9IjgwMCIgZmlsbD0iI2Y4ZmFmYyI%2BTE9HQk9PSzwvdGV4dD48dGV4dCB4PSI5NCIgeT0iMzc4IiBmb250LXNpemU9IjM0IiBmb250LXdlaWdodD0iNjAwIiBmaWxsPSIjZmI5MjNjIj5CVUlMRCDCtyBURVNUIMK3IExFQVJOPC90ZXh0Pjx0ZXh0IHg9Ijk0IiB5PSI0NzAiIGZvbnQtc2l6ZT0iMjQiIGZpbGw9IiNjYmQ1ZTEiPk0ncyBlbmdpbmVlcmluZyBub3RlYm9vazwvdGV4dD48L2c%2BPGNpcmNsZSBjeD0iMjMwIiBjeT0iMTIwIiByPSIxNSIgZmlsbD0iI2ZiOTIzYyIvPjxjaXJjbGUgY3g9Ijk3MCIgY3k9IjU1NSIgcj0iMTUiIGZpbGw9IiNmYjkyM2MiLz48L3N2Zz4%3D&amp;size=m" type="image/jpeg" length="0"/><category>航行记录</category><pubDate>Sat, 10 Jan 2026 12:20:00 GMT</pubDate></item><item><title><![CDATA[自托管服务清单与备份策略：恢复才是验收]]></title><link>https://maomao.autos/archives/self-hosted-inventory-and-backup-strategy</link><description><![CDATA[<img src="https://maomao.autos/plugins/feed/assets/telemetry.gif?title=%E8%87%AA%E6%89%98%E7%AE%A1%E6%9C%8D%E5%8A%A1%E6%B8%85%E5%8D%95%E4%B8%8E%E5%A4%87%E4%BB%BD%E7%AD%96%E7%95%A5%EF%BC%9A%E6%81%A2%E5%A4%8D%E6%89%8D%E6%98%AF%E9%AA%8C%E6%94%B6&amp;url=/archives/self-hosted-inventory-and-backup-strategy" width="1" height="1" alt="" style="opacity:0;">为小型自托管环境建立服务清单、分层备份、保留策略和定期恢复演练，避免“有备份”成为未经验证的安慰。]]></description><guid isPermaLink="false">/archives/self-hosted-inventory-and-backup-strategy</guid><dc:creator>火阳</dc:creator><enclosure url="https://maomao.autos/apis/api.storage.halo.run/v1alpha1/thumbnails/-/via-uri?uri=data%3Aimage%2Fsvg%2Bxml%3Bbase64%2CPHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSIxMjAwIiBoZWlnaHQ9IjY3NSIgdmlld0JveD0iMCAwIDEyMDAgNjc1Ij48ZGVmcz48bGluZWFyR3JhZGllbnQgaWQ9ImciIHgxPSIwIiB5MT0iMCIgeDI9IjEiIHkyPSIxIj48c3RvcCBzdG9wLWNvbG9yPSIjMDUyZTE2Ii8%2BPHN0b3Agb2Zmc2V0PSIxIiBzdG9wLWNvbG9yPSIjMGYxNzJhIi8%2BPC9saW5lYXJHcmFkaWVudD48cGF0dGVybiBpZD0icCIgd2lkdGg9IjQ4IiBoZWlnaHQ9IjQ4IiBwYXR0ZXJuVW5pdHM9InVzZXJTcGFjZU9uVXNlIj48cGF0aCBkPSJNNDggMEgwVjQ4IiBmaWxsPSJub25lIiBzdHJva2U9IiNmZmYiIHN0cm9rZS1vcGFjaXR5PSIuMDYiLz48L3BhdHRlcm4%2BPC9kZWZzPjxyZWN0IHdpZHRoPSIxMjAwIiBoZWlnaHQ9IjY3NSIgZmlsbD0idXJsKCNnKSIvPjxyZWN0IHdpZHRoPSIxMjAwIiBoZWlnaHQ9IjY3NSIgZmlsbD0idXJsKCNwKSIvPjxnIGZpbGw9Im5vbmUiIHN0cm9rZT0iIzRhZGU4MCIgc3Ryb2tlLXdpZHRoPSI4IiBzdHJva2UtbGluZWNhcD0icm91bmQiPjxwYXRoIGQ9Ik0wIDEyMGgyMzBsNzAgNzBoMTYwTTEyMDAgNTU1SDk3MGwtNzAtNzBINzQwIi8%2BPHJlY3QgeD0iNzk1IiB5PSIxMzAiIHdpZHRoPSIyNjAiIGhlaWdodD0iMjYwIiByeD0iNDgiLz48cGF0aCBkPSJNODU1IDIzMGwtNTQgMzAgNTQgMzBtMTQwLTYwbDU0IDMwLTU0IDMwbS01NS0xMDRsLTQ4IDE0OCIvPjwvZz48ZyBmb250LWZhbWlseT0idWktbW9ub3NwYWNlLENvbnNvbGFzLG1vbm9zcGFjZSI%2BPHRleHQgeD0iOTAiIHk9IjMwNSIgZm9udC1zaXplPSI5MiIgZm9udC13ZWlnaHQ9IjgwMCIgZmlsbD0iI2Y4ZmFmYyI%2BU0VMRi1IT1NURUQ8L3RleHQ%2BPHRleHQgeD0iOTQiIHk9IjM3OCIgZm9udC1zaXplPSIzNCIgZm9udC13ZWlnaHQ9IjYwMCIgZmlsbD0iIzRhZGU4MCI%2BSEFMTyDCtyBOR0lOWCDCtyBEQjwvdGV4dD48dGV4dCB4PSI5NCIgeT0iNDcwIiBmb250LXNpemU9IjI0IiBmaWxsPSIjY2JkNWUxIj5NJ3MgZW5naW5lZXJpbmcgbm90ZWJvb2s8L3RleHQ%2BPC9nPjxjaXJjbGUgY3g9IjIzMCIgY3k9IjEyMCIgcj0iMTUiIGZpbGw9IiM0YWRlODAiLz48Y2lyY2xlIGN4PSI5NzAiIGN5PSI1NTUiIHI9IjE1IiBmaWxsPSIjNGFkZTgwIi8%2BPC9zdmc%2B&amp;size=m" type="image/jpeg" length="0"/><category>自托管与运维</category><pubDate>Sun, 23 Nov 2025 13:00:00 GMT</pubDate></item><item><title><![CDATA[PyInstaller 发布包：体积、启动速度与可诊断性]]></title><link>https://maomao.autos/archives/pyinstaller-size-startup-diagnostics</link><description><![CDATA[<img src="https://maomao.autos/plugins/feed/assets/telemetry.gif?title=PyInstaller%20%E5%8F%91%E5%B8%83%E5%8C%85%EF%BC%9A%E4%BD%93%E7%A7%AF%E3%80%81%E5%90%AF%E5%8A%A8%E9%80%9F%E5%BA%A6%E4%B8%8E%E5%8F%AF%E8%AF%8A%E6%96%AD%E6%80%A7&amp;url=/archives/pyinstaller-size-startup-diagnostics" width="1" height="1" alt="" style="opacity:0;">一次 Python 桌面工具发布流程优化：分析依赖、选择目录模式、延迟导入，并把版本与崩溃日志真正放进交付物。]]></description><guid isPermaLink="false">/archives/pyinstaller-size-startup-diagnostics</guid><dc:creator>火阳</dc:creator><enclosure url="https://maomao.autos/apis/api.storage.halo.run/v1alpha1/thumbnails/-/via-uri?uri=data%3Aimage%2Fsvg%2Bxml%3Bbase64%2CPHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSIxMjAwIiBoZWlnaHQ9IjY3NSIgdmlld0JveD0iMCAwIDEyMDAgNjc1Ij48ZGVmcz48bGluZWFyR3JhZGllbnQgaWQ9ImciIHgxPSIwIiB5MT0iMCIgeDI9IjEiIHkyPSIxIj48c3RvcCBzdG9wLWNvbG9yPSIjMTQyMTNkIi8%2BPHN0b3Agb2Zmc2V0PSIxIiBzdG9wLWNvbG9yPSIjMGYxNzJhIi8%2BPC9saW5lYXJHcmFkaWVudD48cGF0dGVybiBpZD0icCIgd2lkdGg9IjQ4IiBoZWlnaHQ9IjQ4IiBwYXR0ZXJuVW5pdHM9InVzZXJTcGFjZU9uVXNlIj48cGF0aCBkPSJNNDggMEgwVjQ4IiBmaWxsPSJub25lIiBzdHJva2U9IiNmZmYiIHN0cm9rZS1vcGFjaXR5PSIuMDYiLz48L3BhdHRlcm4%2BPC9kZWZzPjxyZWN0IHdpZHRoPSIxMjAwIiBoZWlnaHQ9IjY3NSIgZmlsbD0idXJsKCNnKSIvPjxyZWN0IHdpZHRoPSIxMjAwIiBoZWlnaHQ9IjY3NSIgZmlsbD0idXJsKCNwKSIvPjxnIGZpbGw9Im5vbmUiIHN0cm9rZT0iIzRjYzlmMCIgc3Ryb2tlLXdpZHRoPSI4IiBzdHJva2UtbGluZWNhcD0icm91bmQiPjxwYXRoIGQ9Ik0wIDEyMGgyMzBsNzAgNzBoMTYwTTEyMDAgNTU1SDk3MGwtNzAtNzBINzQwIi8%2BPHJlY3QgeD0iNzk1IiB5PSIxMzAiIHdpZHRoPSIyNjAiIGhlaWdodD0iMjYwIiByeD0iNDgiLz48cGF0aCBkPSJNODU1IDIzMGwtNTQgMzAgNTQgMzBtMTQwLTYwbDU0IDMwLTU0IDMwbS01NS0xMDRsLTQ4IDE0OCIvPjwvZz48ZyBmb250LWZhbWlseT0idWktbW9ub3NwYWNlLENvbnNvbGFzLG1vbm9zcGFjZSI%2BPHRleHQgeD0iOTAiIHk9IjMwNSIgZm9udC1zaXplPSI5MiIgZm9udC13ZWlnaHQ9IjgwMCIgZmlsbD0iI2Y4ZmFmYyI%2BREVTS1RPUDwvdGV4dD48dGV4dCB4PSI5NCIgeT0iMzc4IiBmb250LXNpemU9IjM0IiBmb250LXdlaWdodD0iNjAwIiBmaWxsPSIjNGNjOWYwIj5QWVRIT04gwrcgU1RBVEUgwrcgVUk8L3RleHQ%2BPHRleHQgeD0iOTQiIHk9IjQ3MCIgZm9udC1zaXplPSIyNCIgZmlsbD0iI2NiZDVlMSI%2BTSdzIGVuZ2luZWVyaW5nIG5vdGVib29rPC90ZXh0PjwvZz48Y2lyY2xlIGN4PSIyMzAiIGN5PSIxMjAiIHI9IjE1IiBmaWxsPSIjNGNjOWYwIi8%2BPGNpcmNsZSBjeD0iOTcwIiBjeT0iNTU1IiByPSIxNSIgZmlsbD0iIzRjYzlmMCIvPjwvc3ZnPg%3D%3D&amp;size=m" type="image/jpeg" length="0"/><category>软件工程</category><pubDate>Sat, 9 Aug 2025 07:10:00 GMT</pubDate></item><item><title><![CDATA[蓝牙上位机的状态机设计：连接只是第一步]]></title><link>https://maomao.autos/archives/bluetooth-desktop-app-state-machine</link><description><![CDATA[<img src="https://maomao.autos/plugins/feed/assets/telemetry.gif?title=%E8%93%9D%E7%89%99%E4%B8%8A%E4%BD%8D%E6%9C%BA%E7%9A%84%E7%8A%B6%E6%80%81%E6%9C%BA%E8%AE%BE%E8%AE%A1%EF%BC%9A%E8%BF%9E%E6%8E%A5%E5%8F%AA%E6%98%AF%E7%AC%AC%E4%B8%80%E6%AD%A5&amp;url=/archives/bluetooth-desktop-app-state-machine" width="1" height="1" alt="" style="opacity:0;">把蓝牙上位机从按钮回调重构为明确状态机，覆盖扫描、连接、握手、同步、升级、断线和恢复。]]></description><guid isPermaLink="false">/archives/bluetooth-desktop-app-state-machine</guid><dc:creator>火阳</dc:creator><enclosure url="https://maomao.autos/apis/api.storage.halo.run/v1alpha1/thumbnails/-/via-uri?uri=data%3Aimage%2Fsvg%2Bxml%3Bbase64%2CPHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSIxMjAwIiBoZWlnaHQ9IjY3NSIgdmlld0JveD0iMCAwIDEyMDAgNjc1Ij48ZGVmcz48bGluZWFyR3JhZGllbnQgaWQ9ImciIHgxPSIwIiB5MT0iMCIgeDI9IjEiIHkyPSIxIj48c3RvcCBzdG9wLWNvbG9yPSIjMTQyMTNkIi8%2BPHN0b3Agb2Zmc2V0PSIxIiBzdG9wLWNvbG9yPSIjMGYxNzJhIi8%2BPC9saW5lYXJHcmFkaWVudD48cGF0dGVybiBpZD0icCIgd2lkdGg9IjQ4IiBoZWlnaHQ9IjQ4IiBwYXR0ZXJuVW5pdHM9InVzZXJTcGFjZU9uVXNlIj48cGF0aCBkPSJNNDggMEgwVjQ4IiBmaWxsPSJub25lIiBzdHJva2U9IiNmZmYiIHN0cm9rZS1vcGFjaXR5PSIuMDYiLz48L3BhdHRlcm4%2BPC9kZWZzPjxyZWN0IHdpZHRoPSIxMjAwIiBoZWlnaHQ9IjY3NSIgZmlsbD0idXJsKCNnKSIvPjxyZWN0IHdpZHRoPSIxMjAwIiBoZWlnaHQ9IjY3NSIgZmlsbD0idXJsKCNwKSIvPjxnIGZpbGw9Im5vbmUiIHN0cm9rZT0iIzRjYzlmMCIgc3Ryb2tlLXdpZHRoPSI4IiBzdHJva2UtbGluZWNhcD0icm91bmQiPjxwYXRoIGQ9Ik0wIDEyMGgyMzBsNzAgNzBoMTYwTTEyMDAgNTU1SDk3MGwtNzAtNzBINzQwIi8%2BPHJlY3QgeD0iNzk1IiB5PSIxMzAiIHdpZHRoPSIyNjAiIGhlaWdodD0iMjYwIiByeD0iNDgiLz48cGF0aCBkPSJNODU1IDIzMGwtNTQgMzAgNTQgMzBtMTQwLTYwbDU0IDMwLTU0IDMwbS01NS0xMDRsLTQ4IDE0OCIvPjwvZz48ZyBmb250LWZhbWlseT0idWktbW9ub3NwYWNlLENvbnNvbGFzLG1vbm9zcGFjZSI%2BPHRleHQgeD0iOTAiIHk9IjMwNSIgZm9udC1zaXplPSI5MiIgZm9udC13ZWlnaHQ9IjgwMCIgZmlsbD0iI2Y4ZmFmYyI%2BREVTS1RPUDwvdGV4dD48dGV4dCB4PSI5NCIgeT0iMzc4IiBmb250LXNpemU9IjM0IiBmb250LXdlaWdodD0iNjAwIiBmaWxsPSIjNGNjOWYwIj5QWVRIT04gwrcgU1RBVEUgwrcgVUk8L3RleHQ%2BPHRleHQgeD0iOTQiIHk9IjQ3MCIgZm9udC1zaXplPSIyNCIgZmlsbD0iI2NiZDVlMSI%2BTSdzIGVuZ2luZWVyaW5nIG5vdGVib29rPC90ZXh0PjwvZz48Y2lyY2xlIGN4PSIyMzAiIGN5PSIxMjAiIHI9IjE1IiBmaWxsPSIjNGNjOWYwIi8%2BPGNpcmNsZSBjeD0iOTcwIiBjeT0iNTU1IiByPSIxNSIgZmlsbD0iIzRjYzlmMCIvPjwvc3ZnPg%3D%3D&amp;size=m" type="image/jpeg" length="0"/><category>软件工程</category><pubDate>Sat, 24 May 2025 06:30:00 GMT</pubDate></item><item><title><![CDATA[2024 年度复盘：少做演示，多做工具]]></title><link>https://maomao.autos/archives/2024-review-build-tools-not-demos</link><description><![CDATA[<img src="https://maomao.autos/plugins/feed/assets/telemetry.gif?title=2024%20%E5%B9%B4%E5%BA%A6%E5%A4%8D%E7%9B%98%EF%BC%9A%E5%B0%91%E5%81%9A%E6%BC%94%E7%A4%BA%EF%BC%8C%E5%A4%9A%E5%81%9A%E5%B7%A5%E5%85%B7&amp;url=/archives/2024-review-build-tools-not-demos" width="1" height="1" alt="" style="opacity:0;">整理 2024 年在嵌入式、蓝牙和桌面工具上的得失：从追求一次性演示，转向可重复、可诊断、可交接的小工具。]]></description><guid isPermaLink="false">/archives/2024-review-build-tools-not-demos</guid><dc:creator>火阳</dc:creator><enclosure url="https://maomao.autos/apis/api.storage.halo.run/v1alpha1/thumbnails/-/via-uri?uri=data%3Aimage%2Fsvg%2Bxml%3Bbase64%2CPHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSIxMjAwIiBoZWlnaHQ9IjY3NSIgdmlld0JveD0iMCAwIDEyMDAgNjc1Ij48ZGVmcz48bGluZWFyR3JhZGllbnQgaWQ9ImciIHgxPSIwIiB5MT0iMCIgeDI9IjEiIHkyPSIxIj48c3RvcCBzdG9wLWNvbG9yPSIjNDMxNDA3Ii8%2BPHN0b3Agb2Zmc2V0PSIxIiBzdG9wLWNvbG9yPSIjMGYxNzJhIi8%2BPC9saW5lYXJHcmFkaWVudD48cGF0dGVybiBpZD0icCIgd2lkdGg9IjQ4IiBoZWlnaHQ9IjQ4IiBwYXR0ZXJuVW5pdHM9InVzZXJTcGFjZU9uVXNlIj48cGF0aCBkPSJNNDggMEgwVjQ4IiBmaWxsPSJub25lIiBzdHJva2U9IiNmZmYiIHN0cm9rZS1vcGFjaXR5PSIuMDYiLz48L3BhdHRlcm4%2BPC9kZWZzPjxyZWN0IHdpZHRoPSIxMjAwIiBoZWlnaHQ9IjY3NSIgZmlsbD0idXJsKCNnKSIvPjxyZWN0IHdpZHRoPSIxMjAwIiBoZWlnaHQ9IjY3NSIgZmlsbD0idXJsKCNwKSIvPjxnIGZpbGw9Im5vbmUiIHN0cm9rZT0iI2ZiOTIzYyIgc3Ryb2tlLXdpZHRoPSI4IiBzdHJva2UtbGluZWNhcD0icm91bmQiPjxwYXRoIGQ9Ik0wIDEyMGgyMzBsNzAgNzBoMTYwTTEyMDAgNTU1SDk3MGwtNzAtNzBINzQwIi8%2BPHJlY3QgeD0iNzk1IiB5PSIxMzAiIHdpZHRoPSIyNjAiIGhlaWdodD0iMjYwIiByeD0iNDgiLz48cGF0aCBkPSJNODU1IDIzMGwtNTQgMzAgNTQgMzBtMTQwLTYwbDU0IDMwLTU0IDMwbS01NS0xMDRsLTQ4IDE0OCIvPjwvZz48ZyBmb250LWZhbWlseT0idWktbW9ub3NwYWNlLENvbnNvbGFzLG1vbm9zcGFjZSI%2BPHRleHQgeD0iOTAiIHk9IjMwNSIgZm9udC1zaXplPSI5MiIgZm9udC13ZWlnaHQ9IjgwMCIgZmlsbD0iI2Y4ZmFmYyI%2BTE9HQk9PSzwvdGV4dD48dGV4dCB4PSI5NCIgeT0iMzc4IiBmb250LXNpemU9IjM0IiBmb250LXdlaWdodD0iNjAwIiBmaWxsPSIjZmI5MjNjIj5CVUlMRCDCtyBURVNUIMK3IExFQVJOPC90ZXh0Pjx0ZXh0IHg9Ijk0IiB5PSI0NzAiIGZvbnQtc2l6ZT0iMjQiIGZpbGw9IiNjYmQ1ZTEiPk0ncyBlbmdpbmVlcmluZyBub3RlYm9vazwvdGV4dD48L2c%2BPGNpcmNsZSBjeD0iMjMwIiBjeT0iMTIwIiByPSIxNSIgZmlsbD0iI2ZiOTIzYyIvPjxjaXJjbGUgY3g9Ijk3MCIgY3k9IjU1NSIgcj0iMTUiIGZpbGw9IiNmYjkyM2MiLz48L3N2Zz4%3D&amp;size=m" type="image/jpeg" length="0"/><category>航行记录</category><pubDate>Sun, 29 Dec 2024 14:00:00 GMT</pubDate></item><item><title><![CDATA[ST7789 屏幕初始化踩坑记录（补档）]]></title><link>https://maomao.autos/archives/st7789-display-initialization-notes</link><description><![CDATA[<img src="https://maomao.autos/plugins/feed/assets/telemetry.gif?title=ST7789%20%E5%B1%8F%E5%B9%95%E5%88%9D%E5%A7%8B%E5%8C%96%E8%B8%A9%E5%9D%91%E8%AE%B0%E5%BD%95%EF%BC%88%E8%A1%A5%E6%A1%A3%EF%BC%89&amp;url=/archives/st7789-display-initialization-notes" width="1" height="1" alt="" style="opacity:0;">白屏、偏色、错位和偶发花屏并不是同一个问题；这篇补档按供电、时序、初始化表和像素格式逐层定位。]]></description><guid isPermaLink="false">/archives/st7789-display-initialization-notes</guid><dc:creator>火阳</dc:creator><enclosure url="https://maomao.autos/apis/api.storage.halo.run/v1alpha1/thumbnails/-/via-uri?uri=data%3Aimage%2Fsvg%2Bxml%3Bbase64%2CPHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSIxMjAwIiBoZWlnaHQ9IjY3NSIgdmlld0JveD0iMCAwIDEyMDAgNjc1Ij48ZGVmcz48bGluZWFyR3JhZGllbnQgaWQ9ImciIHgxPSIwIiB5MT0iMCIgeDI9IjEiIHkyPSIxIj48c3RvcCBzdG9wLWNvbG9yPSIjMDczYjRjIi8%2BPHN0b3Agb2Zmc2V0PSIxIiBzdG9wLWNvbG9yPSIjMGYxNzJhIi8%2BPC9saW5lYXJHcmFkaWVudD48cGF0dGVybiBpZD0icCIgd2lkdGg9IjQ4IiBoZWlnaHQ9IjQ4IiBwYXR0ZXJuVW5pdHM9InVzZXJTcGFjZU9uVXNlIj48cGF0aCBkPSJNNDggMEgwVjQ4IiBmaWxsPSJub25lIiBzdHJva2U9IiNmZmYiIHN0cm9rZS1vcGFjaXR5PSIuMDYiLz48L3BhdHRlcm4%2BPC9kZWZzPjxyZWN0IHdpZHRoPSIxMjAwIiBoZWlnaHQ9IjY3NSIgZmlsbD0idXJsKCNnKSIvPjxyZWN0IHdpZHRoPSIxMjAwIiBoZWlnaHQ9IjY3NSIgZmlsbD0idXJsKCNwKSIvPjxnIGZpbGw9Im5vbmUiIHN0cm9rZT0iIzA2ZDZhMCIgc3Ryb2tlLXdpZHRoPSI4IiBzdHJva2UtbGluZWNhcD0icm91bmQiPjxwYXRoIGQ9Ik0wIDEyMGgyMzBsNzAgNzBoMTYwTTEyMDAgNTU1SDk3MGwtNzAtNzBINzQwIi8%2BPHJlY3QgeD0iNzk1IiB5PSIxMzAiIHdpZHRoPSIyNjAiIGhlaWdodD0iMjYwIiByeD0iNDgiLz48cGF0aCBkPSJNODU1IDIzMGwtNTQgMzAgNTQgMzBtMTQwLTYwbDU0IDMwLTU0IDMwbS01NS0xMDRsLTQ4IDE0OCIvPjwvZz48ZyBmb250LWZhbWlseT0idWktbW9ub3NwYWNlLENvbnNvbGFzLG1vbm9zcGFjZSI%2BPHRleHQgeD0iOTAiIHk9IjMwNSIgZm9udC1zaXplPSI5MiIgZm9udC13ZWlnaHQ9IjgwMCIgZmlsbD0iI2Y4ZmFmYyI%2BRU1CRURERUQ8L3RleHQ%2BPHRleHQgeD0iOTQiIHk9IjM3OCIgZm9udC1zaXplPSIzNCIgZm9udC13ZWlnaHQ9IjYwMCIgZmlsbD0iIzA2ZDZhMCI%2BRVNQMzIgwrcgQkxFIMK3IEkyQzwvdGV4dD48dGV4dCB4PSI5NCIgeT0iNDcwIiBmb250LXNpemU9IjI0IiBmaWxsPSIjY2JkNWUxIj5NJ3MgZW5naW5lZXJpbmcgbm90ZWJvb2s8L3RleHQ%2BPC9nPjxjaXJjbGUgY3g9IjIzMCIgY3k9IjEyMCIgcj0iMTUiIGZpbGw9IiMwNmQ2YTAiLz48Y2lyY2xlIGN4PSI5NzAiIGN5PSI1NTUiIHI9IjE1IiBmaWxsPSIjMDZkNmEwIi8%2BPC9zdmc%2B&amp;size=m" type="image/jpeg" length="0"/><category>嵌入式与硬件</category><pubDate>Sat, 14 Sep 2024 12:05:00 GMT</pubDate></item><item><title><![CDATA[把一次难复现故障变成可重复实验（旧记录整理）]]></title><link>https://maomao.autos/archives/turn-an-intermittent-bug-into-an-experiment</link><description><![CDATA[<img src="https://maomao.autos/plugins/feed/assets/telemetry.gif?title=%E6%8A%8A%E4%B8%80%E6%AC%A1%E9%9A%BE%E5%A4%8D%E7%8E%B0%E6%95%85%E9%9A%9C%E5%8F%98%E6%88%90%E5%8F%AF%E9%87%8D%E5%A4%8D%E5%AE%9E%E9%AA%8C%EF%BC%88%E6%97%A7%E8%AE%B0%E5%BD%95%E6%95%B4%E7%90%86%EF%BC%89&amp;url=/archives/turn-an-intermittent-bug-into-an-experiment" width="1" height="1" alt="" style="opacity:0;">一次传感器偶发零值故障的完整排查笔记：冻结变量、建立事件时间线、设计故障注入，并用最小实验关闭猜测空间。]]></description><guid isPermaLink="false">/archives/turn-an-intermittent-bug-into-an-experiment</guid><dc:creator>火阳</dc:creator><enclosure url="https://maomao.autos/apis/api.storage.halo.run/v1alpha1/thumbnails/-/via-uri?uri=data%3Aimage%2Fsvg%2Bxml%3Bbase64%2CPHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSIxMjAwIiBoZWlnaHQ9IjY3NSIgdmlld0JveD0iMCAwIDEyMDAgNjc1Ij48ZGVmcz48bGluZWFyR3JhZGllbnQgaWQ9ImciIHgxPSIwIiB5MT0iMCIgeDI9IjEiIHkyPSIxIj48c3RvcCBzdG9wLWNvbG9yPSIjMDczYjRjIi8%2BPHN0b3Agb2Zmc2V0PSIxIiBzdG9wLWNvbG9yPSIjMGYxNzJhIi8%2BPC9saW5lYXJHcmFkaWVudD48cGF0dGVybiBpZD0icCIgd2lkdGg9IjQ4IiBoZWlnaHQ9IjQ4IiBwYXR0ZXJuVW5pdHM9InVzZXJTcGFjZU9uVXNlIj48cGF0aCBkPSJNNDggMEgwVjQ4IiBmaWxsPSJub25lIiBzdHJva2U9IiNmZmYiIHN0cm9rZS1vcGFjaXR5PSIuMDYiLz48L3BhdHRlcm4%2BPC9kZWZzPjxyZWN0IHdpZHRoPSIxMjAwIiBoZWlnaHQ9IjY3NSIgZmlsbD0idXJsKCNnKSIvPjxyZWN0IHdpZHRoPSIxMjAwIiBoZWlnaHQ9IjY3NSIgZmlsbD0idXJsKCNwKSIvPjxnIGZpbGw9Im5vbmUiIHN0cm9rZT0iIzA2ZDZhMCIgc3Ryb2tlLXdpZHRoPSI4IiBzdHJva2UtbGluZWNhcD0icm91bmQiPjxwYXRoIGQ9Ik0wIDEyMGgyMzBsNzAgNzBoMTYwTTEyMDAgNTU1SDk3MGwtNzAtNzBINzQwIi8%2BPHJlY3QgeD0iNzk1IiB5PSIxMzAiIHdpZHRoPSIyNjAiIGhlaWdodD0iMjYwIiByeD0iNDgiLz48cGF0aCBkPSJNODU1IDIzMGwtNTQgMzAgNTQgMzBtMTQwLTYwbDU0IDMwLTU0IDMwbS01NS0xMDRsLTQ4IDE0OCIvPjwvZz48ZyBmb250LWZhbWlseT0idWktbW9ub3NwYWNlLENvbnNvbGFzLG1vbm9zcGFjZSI%2BPHRleHQgeD0iOTAiIHk9IjMwNSIgZm9udC1zaXplPSI5MiIgZm9udC13ZWlnaHQ9IjgwMCIgZmlsbD0iI2Y4ZmFmYyI%2BRU1CRURERUQ8L3RleHQ%2BPHRleHQgeD0iOTQiIHk9IjM3OCIgZm9udC1zaXplPSIzNCIgZm9udC13ZWlnaHQ9IjYwMCIgZmlsbD0iIzA2ZDZhMCI%2BRVNQMzIgwrcgQkxFIMK3IEkyQzwvdGV4dD48dGV4dCB4PSI5NCIgeT0iNDcwIiBmb250LXNpemU9IjI0IiBmaWxsPSIjY2JkNWUxIj5NJ3MgZW5naW5lZXJpbmcgbm90ZWJvb2s8L3RleHQ%2BPC9nPjxjaXJjbGUgY3g9IjIzMCIgY3k9IjEyMCIgcj0iMTUiIGZpbGw9IiMwNmQ2YTAiLz48Y2lyY2xlIGN4PSI5NzAiIGN5PSI1NTUiIHI9IjE1IiBmaWxsPSIjMDZkNmEwIi8%2BPC9zdmc%2B&amp;size=m" type="image/jpeg" length="0"/><category>嵌入式与硬件</category><pubDate>Sat, 22 Jun 2024 10:20:00 GMT</pubDate></item><item><title><![CDATA[ESP32 项目目录如何长大而不失控（补档）]]></title><link>https://maomao.autos/archives/esp32-project-structure-that-scales</link><description><![CDATA[<img src="https://maomao.autos/plugins/feed/assets/telemetry.gif?title=ESP32%20%E9%A1%B9%E7%9B%AE%E7%9B%AE%E5%BD%95%E5%A6%82%E4%BD%95%E9%95%BF%E5%A4%A7%E8%80%8C%E4%B8%8D%E5%A4%B1%E6%8E%A7%EF%BC%88%E8%A1%A5%E6%A1%A3%EF%BC%89&amp;url=/archives/esp32-project-structure-that-scales" width="1" height="1" alt="" style="opacity:0;">记录一个 ESP32 原型从单文件扩展到多组件工程时的目录、依赖边界、配置分层和测试约定。]]></description><guid isPermaLink="false">/archives/esp32-project-structure-that-scales</guid><dc:creator>火阳</dc:creator><enclosure url="https://maomao.autos/apis/api.storage.halo.run/v1alpha1/thumbnails/-/via-uri?uri=data%3Aimage%2Fsvg%2Bxml%3Bbase64%2CPHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSIxMjAwIiBoZWlnaHQ9IjY3NSIgdmlld0JveD0iMCAwIDEyMDAgNjc1Ij48ZGVmcz48bGluZWFyR3JhZGllbnQgaWQ9ImciIHgxPSIwIiB5MT0iMCIgeDI9IjEiIHkyPSIxIj48c3RvcCBzdG9wLWNvbG9yPSIjMDczYjRjIi8%2BPHN0b3Agb2Zmc2V0PSIxIiBzdG9wLWNvbG9yPSIjMGYxNzJhIi8%2BPC9saW5lYXJHcmFkaWVudD48cGF0dGVybiBpZD0icCIgd2lkdGg9IjQ4IiBoZWlnaHQ9IjQ4IiBwYXR0ZXJuVW5pdHM9InVzZXJTcGFjZU9uVXNlIj48cGF0aCBkPSJNNDggMEgwVjQ4IiBmaWxsPSJub25lIiBzdHJva2U9IiNmZmYiIHN0cm9rZS1vcGFjaXR5PSIuMDYiLz48L3BhdHRlcm4%2BPC9kZWZzPjxyZWN0IHdpZHRoPSIxMjAwIiBoZWlnaHQ9IjY3NSIgZmlsbD0idXJsKCNnKSIvPjxyZWN0IHdpZHRoPSIxMjAwIiBoZWlnaHQ9IjY3NSIgZmlsbD0idXJsKCNwKSIvPjxnIGZpbGw9Im5vbmUiIHN0cm9rZT0iIzA2ZDZhMCIgc3Ryb2tlLXdpZHRoPSI4IiBzdHJva2UtbGluZWNhcD0icm91bmQiPjxwYXRoIGQ9Ik0wIDEyMGgyMzBsNzAgNzBoMTYwTTEyMDAgNTU1SDk3MGwtNzAtNzBINzQwIi8%2BPHJlY3QgeD0iNzk1IiB5PSIxMzAiIHdpZHRoPSIyNjAiIGhlaWdodD0iMjYwIiByeD0iNDgiLz48cGF0aCBkPSJNODU1IDIzMGwtNTQgMzAgNTQgMzBtMTQwLTYwbDU0IDMwLTU0IDMwbS01NS0xMDRsLTQ4IDE0OCIvPjwvZz48ZyBmb250LWZhbWlseT0idWktbW9ub3NwYWNlLENvbnNvbGFzLG1vbm9zcGFjZSI%2BPHRleHQgeD0iOTAiIHk9IjMwNSIgZm9udC1zaXplPSI5MiIgZm9udC13ZWlnaHQ9IjgwMCIgZmlsbD0iI2Y4ZmFmYyI%2BRU1CRURERUQ8L3RleHQ%2BPHRleHQgeD0iOTQiIHk9IjM3OCIgZm9udC1zaXplPSIzNCIgZm9udC13ZWlnaHQ9IjYwMCIgZmlsbD0iIzA2ZDZhMCI%2BRVNQMzIgwrcgQkxFIMK3IEkyQzwvdGV4dD48dGV4dCB4PSI5NCIgeT0iNDcwIiBmb250LXNpemU9IjI0IiBmaWxsPSIjY2JkNWUxIj5NJ3MgZW5naW5lZXJpbmcgbm90ZWJvb2s8L3RleHQ%2BPC9nPjxjaXJjbGUgY3g9IjIzMCIgY3k9IjEyMCIgcj0iMTUiIGZpbGw9IiMwNmQ2YTAiLz48Y2lyY2xlIGN4PSI5NzAiIGN5PSI1NTUiIHI9IjE1IiBmaWxsPSIjMDZkNmEwIi8%2BPC9zdmc%2B&amp;size=m" type="image/jpeg" length="0"/><category>嵌入式与硬件</category><pubDate>Sat, 16 Mar 2024 13:10:00 GMT</pubDate></item><item><title><![CDATA[蓝牙连接为什么总在最需要时断开（旧记录整理）]]></title><link>https://maomao.autos/archives/why-bluetooth-disconnects-under-load</link><description><![CDATA[<img src="https://maomao.autos/plugins/feed/assets/telemetry.gif?title=%E8%93%9D%E7%89%99%E8%BF%9E%E6%8E%A5%E4%B8%BA%E4%BB%80%E4%B9%88%E6%80%BB%E5%9C%A8%E6%9C%80%E9%9C%80%E8%A6%81%E6%97%B6%E6%96%AD%E5%BC%80%EF%BC%88%E6%97%A7%E8%AE%B0%E5%BD%95%E6%95%B4%E7%90%86%EF%BC%89&amp;url=/archives/why-bluetooth-disconnects-under-load" width="1" height="1" alt="" style="opacity:0;">从连接参数、主线程阻塞、通知拥塞和电源波动四条线索，复盘一次 BLE 设备在压力测试中间歇断连的问题。]]></description><guid isPermaLink="false">/archives/why-bluetooth-disconnects-under-load</guid><dc:creator>火阳</dc:creator><enclosure url="https://maomao.autos/apis/api.storage.halo.run/v1alpha1/thumbnails/-/via-uri?uri=data%3Aimage%2Fsvg%2Bxml%3Bbase64%2CPHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSIxMjAwIiBoZWlnaHQ9IjY3NSIgdmlld0JveD0iMCAwIDEyMDAgNjc1Ij48ZGVmcz48bGluZWFyR3JhZGllbnQgaWQ9ImciIHgxPSIwIiB5MT0iMCIgeDI9IjEiIHkyPSIxIj48c3RvcCBzdG9wLWNvbG9yPSIjMDczYjRjIi8%2BPHN0b3Agb2Zmc2V0PSIxIiBzdG9wLWNvbG9yPSIjMGYxNzJhIi8%2BPC9saW5lYXJHcmFkaWVudD48cGF0dGVybiBpZD0icCIgd2lkdGg9IjQ4IiBoZWlnaHQ9IjQ4IiBwYXR0ZXJuVW5pdHM9InVzZXJTcGFjZU9uVXNlIj48cGF0aCBkPSJNNDggMEgwVjQ4IiBmaWxsPSJub25lIiBzdHJva2U9IiNmZmYiIHN0cm9rZS1vcGFjaXR5PSIuMDYiLz48L3BhdHRlcm4%2BPC9kZWZzPjxyZWN0IHdpZHRoPSIxMjAwIiBoZWlnaHQ9IjY3NSIgZmlsbD0idXJsKCNnKSIvPjxyZWN0IHdpZHRoPSIxMjAwIiBoZWlnaHQ9IjY3NSIgZmlsbD0idXJsKCNwKSIvPjxnIGZpbGw9Im5vbmUiIHN0cm9rZT0iIzA2ZDZhMCIgc3Ryb2tlLXdpZHRoPSI4IiBzdHJva2UtbGluZWNhcD0icm91bmQiPjxwYXRoIGQ9Ik0wIDEyMGgyMzBsNzAgNzBoMTYwTTEyMDAgNTU1SDk3MGwtNzAtNzBINzQwIi8%2BPHJlY3QgeD0iNzk1IiB5PSIxMzAiIHdpZHRoPSIyNjAiIGhlaWdodD0iMjYwIiByeD0iNDgiLz48cGF0aCBkPSJNODU1IDIzMGwtNTQgMzAgNTQgMzBtMTQwLTYwbDU0IDMwLTU0IDMwbS01NS0xMDRsLTQ4IDE0OCIvPjwvZz48ZyBmb250LWZhbWlseT0idWktbW9ub3NwYWNlLENvbnNvbGFzLG1vbm9zcGFjZSI%2BPHRleHQgeD0iOTAiIHk9IjMwNSIgZm9udC1zaXplPSI5MiIgZm9udC13ZWlnaHQ9IjgwMCIgZmlsbD0iI2Y4ZmFmYyI%2BRU1CRURERUQ8L3RleHQ%2BPHRleHQgeD0iOTQiIHk9IjM3OCIgZm9udC1zaXplPSIzNCIgZm9udC13ZWlnaHQ9IjYwMCIgZmlsbD0iIzA2ZDZhMCI%2BRVNQMzIgwrcgQkxFIMK3IEkyQzwvdGV4dD48dGV4dCB4PSI5NCIgeT0iNDcwIiBmb250LXNpemU9IjI0IiBmaWxsPSIjY2JkNWUxIj5NJ3MgZW5naW5lZXJpbmcgbm90ZWJvb2s8L3RleHQ%2BPC9nPjxjaXJjbGUgY3g9IjIzMCIgY3k9IjEyMCIgcj0iMTUiIGZpbGw9IiMwNmQ2YTAiLz48Y2lyY2xlIGN4PSI5NzAiIGN5PSI1NTUiIHI9IjE1IiBmaWxsPSIjMDZkNmEwIi8%2BPC9zdmc%2B&amp;size=m" type="image/jpeg" length="0"/><category>嵌入式与硬件</category><pubDate>Sat, 27 Jan 2024 11:40:00 GMT</pubDate></item><item><title><![CDATA[从串口日志到可视化：第一版设备调试台（旧记录整理）]]></title><link>https://maomao.autos/archives/serial-log-to-visual-debug-console</link><description><![CDATA[<img src="https://maomao.autos/plugins/feed/assets/telemetry.gif?title=%E4%BB%8E%E4%B8%B2%E5%8F%A3%E6%97%A5%E5%BF%97%E5%88%B0%E5%8F%AF%E8%A7%86%E5%8C%96%EF%BC%9A%E7%AC%AC%E4%B8%80%E7%89%88%E8%AE%BE%E5%A4%87%E8%B0%83%E8%AF%95%E5%8F%B0%EF%BC%88%E6%97%A7%E8%AE%B0%E5%BD%95%E6%95%B4%E7%90%86%EF%BC%89&amp;url=/archives/serial-log-to-visual-debug-console" width="1" height="1" alt="" style="opacity:0;">补记第一版设备调试台的诞生过程：把无法检索的串口文本整理成带时间轴、过滤器和可复现实验记录的桌面工具。]]></description><guid isPermaLink="false">/archives/serial-log-to-visual-debug-console</guid><dc:creator>火阳</dc:creator><enclosure url="https://maomao.autos/apis/api.storage.halo.run/v1alpha1/thumbnails/-/via-uri?uri=data%3Aimage%2Fsvg%2Bxml%3Bbase64%2CPHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSIxMjAwIiBoZWlnaHQ9IjY3NSIgdmlld0JveD0iMCAwIDEyMDAgNjc1Ij48ZGVmcz48bGluZWFyR3JhZGllbnQgaWQ9ImciIHgxPSIwIiB5MT0iMCIgeDI9IjEiIHkyPSIxIj48c3RvcCBzdG9wLWNvbG9yPSIjMTQyMTNkIi8%2BPHN0b3Agb2Zmc2V0PSIxIiBzdG9wLWNvbG9yPSIjMGYxNzJhIi8%2BPC9saW5lYXJHcmFkaWVudD48cGF0dGVybiBpZD0icCIgd2lkdGg9IjQ4IiBoZWlnaHQ9IjQ4IiBwYXR0ZXJuVW5pdHM9InVzZXJTcGFjZU9uVXNlIj48cGF0aCBkPSJNNDggMEgwVjQ4IiBmaWxsPSJub25lIiBzdHJva2U9IiNmZmYiIHN0cm9rZS1vcGFjaXR5PSIuMDYiLz48L3BhdHRlcm4%2BPC9kZWZzPjxyZWN0IHdpZHRoPSIxMjAwIiBoZWlnaHQ9IjY3NSIgZmlsbD0idXJsKCNnKSIvPjxyZWN0IHdpZHRoPSIxMjAwIiBoZWlnaHQ9IjY3NSIgZmlsbD0idXJsKCNwKSIvPjxnIGZpbGw9Im5vbmUiIHN0cm9rZT0iIzRjYzlmMCIgc3Ryb2tlLXdpZHRoPSI4IiBzdHJva2UtbGluZWNhcD0icm91bmQiPjxwYXRoIGQ9Ik0wIDEyMGgyMzBsNzAgNzBoMTYwTTEyMDAgNTU1SDk3MGwtNzAtNzBINzQwIi8%2BPHJlY3QgeD0iNzk1IiB5PSIxMzAiIHdpZHRoPSIyNjAiIGhlaWdodD0iMjYwIiByeD0iNDgiLz48cGF0aCBkPSJNODU1IDIzMGwtNTQgMzAgNTQgMzBtMTQwLTYwbDU0IDMwLTU0IDMwbS01NS0xMDRsLTQ4IDE0OCIvPjwvZz48ZyBmb250LWZhbWlseT0idWktbW9ub3NwYWNlLENvbnNvbGFzLG1vbm9zcGFjZSI%2BPHRleHQgeD0iOTAiIHk9IjMwNSIgZm9udC1zaXplPSI5MiIgZm9udC13ZWlnaHQ9IjgwMCIgZmlsbD0iI2Y4ZmFmYyI%2BREVTS1RPUDwvdGV4dD48dGV4dCB4PSI5NCIgeT0iMzc4IiBmb250LXNpemU9IjM0IiBmb250LXdlaWdodD0iNjAwIiBmaWxsPSIjNGNjOWYwIj5QWVRIT04gwrcgU1RBVEUgwrcgVUk8L3RleHQ%2BPHRleHQgeD0iOTQiIHk9IjQ3MCIgZm9udC1zaXplPSIyNCIgZmlsbD0iI2NiZDVlMSI%2BTSdzIGVuZ2luZWVyaW5nIG5vdGVib29rPC90ZXh0PjwvZz48Y2lyY2xlIGN4PSIyMzAiIGN5PSIxMjAiIHI9IjE1IiBmaWxsPSIjNGNjOWYwIi8%2BPGNpcmNsZSBjeD0iOTcwIiBjeT0iNTU1IiByPSIxNSIgZmlsbD0iIzRjYzlmMCIvPjwvc3ZnPg%3D%3D&amp;size=m" type="image/jpeg" length="0"/><category>软件工程</category><pubDate>Sat, 18 Nov 2023 12:30:00 GMT</pubDate></item></channel></rss>