<?xml version="1.0"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="zh-Hans-CN">
	<id>https://docs.bouffalolab.com/index.php?action=history&amp;feed=atom&amp;title=NethubUserManual_old</id>
	<title>NethubUserManual old - 版本历史</title>
	<link rel="self" type="application/atom+xml" href="https://docs.bouffalolab.com/index.php?action=history&amp;feed=atom&amp;title=NethubUserManual_old"/>
	<link rel="alternate" type="text/html" href="https://docs.bouffalolab.com/index.php?title=NethubUserManual_old&amp;action=history"/>
	<updated>2026-04-14T08:50:58Z</updated>
	<subtitle>本wiki上该页面的版本历史</subtitle>
	<generator>MediaWiki 1.43.1</generator>
	<entry>
		<id>https://docs.bouffalolab.com/index.php?title=NethubUserManual_old&amp;diff=237&amp;oldid=prev</id>
		<title>张良：​张良移动页面NethubUserManual至NethubUserManual old</title>
		<link rel="alternate" type="text/html" href="https://docs.bouffalolab.com/index.php?title=NethubUserManual_old&amp;diff=237&amp;oldid=prev"/>
		<updated>2026-03-13T09:26:13Z</updated>

		<summary type="html">&lt;p&gt;张良移动页面&lt;a href=&quot;/index.php?title=NethubUserManual&quot; class=&quot;mw-redirect&quot; title=&quot;NethubUserManual&quot;&gt;NethubUserManual&lt;/a&gt;至&lt;a href=&quot;/index.php?title=NethubUserManual_old&quot; title=&quot;NethubUserManual old&quot;&gt;NethubUserManual old&lt;/a&gt;&lt;/p&gt;
&lt;table style=&quot;background-color: #fff; color: #202122;&quot; data-mw=&quot;interface&quot;&gt;
				&lt;tr class=&quot;diff-title&quot; lang=&quot;zh-Hans-CN&quot;&gt;
				&lt;td colspan=&quot;1&quot; style=&quot;background-color: #fff; color: #202122; text-align: center;&quot;&gt;←上一版本&lt;/td&gt;
				&lt;td colspan=&quot;1&quot; style=&quot;background-color: #fff; color: #202122; text-align: center;&quot;&gt;2026年3月13日 (五) 09:26的版本&lt;/td&gt;
				&lt;/tr&gt;&lt;tr&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-notice&quot; lang=&quot;zh-Hans-CN&quot;&gt;&lt;div class=&quot;mw-diff-empty&quot;&gt;（没有差异）&lt;/div&gt;
&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;</summary>
		<author><name>张良</name></author>
	</entry>
	<entry>
		<id>https://docs.bouffalolab.com/index.php?title=NethubUserManual_old&amp;diff=232&amp;oldid=prev</id>
		<title>2026年3月6日 (五) 06:24 张良</title>
		<link rel="alternate" type="text/html" href="https://docs.bouffalolab.com/index.php?title=NethubUserManual_old&amp;diff=232&amp;oldid=prev"/>
		<updated>2026-03-06T06:24:56Z</updated>

		<summary type="html">&lt;p&gt;&lt;/p&gt;
&lt;table style=&quot;background-color: #fff; color: #202122;&quot; data-mw=&quot;interface&quot;&gt;
				&lt;col class=&quot;diff-marker&quot; /&gt;
				&lt;col class=&quot;diff-content&quot; /&gt;
				&lt;col class=&quot;diff-marker&quot; /&gt;
				&lt;col class=&quot;diff-content&quot; /&gt;
				&lt;tr class=&quot;diff-title&quot; lang=&quot;zh-Hans-CN&quot;&gt;
				&lt;td colspan=&quot;2&quot; style=&quot;background-color: #fff; color: #202122; text-align: center;&quot;&gt;←上一版本&lt;/td&gt;
				&lt;td colspan=&quot;2&quot; style=&quot;background-color: #fff; color: #202122; text-align: center;&quot;&gt;2026年3月6日 (五) 06:24的版本&lt;/td&gt;
				&lt;/tr&gt;&lt;tr&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot; id=&quot;mw-diff-left-l48&quot;&gt;第48行：&lt;/td&gt;
&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot;&gt;第48行：&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;br&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;br&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&amp;lt;syntaxhighlight lang=&amp;quot;bash&amp;quot;&amp;gt;&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&amp;lt;syntaxhighlight lang=&amp;quot;bash&amp;quot;&amp;gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-side-deleted&quot;&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;+&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;cd examples/wifi/nethub&lt;/ins&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-side-deleted&quot;&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;+&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;&lt;/ins&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;# 编译命令形如&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;# 编译命令形如&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;make CHIP=&amp;lt;芯片名称&amp;gt; BOARD=&amp;lt;开发板名称&amp;gt;&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;make CHIP=&amp;lt;芯片名称&amp;gt; BOARD=&amp;lt;开发板名称&amp;gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;/table&gt;</summary>
		<author><name>张良</name></author>
	</entry>
	<entry>
		<id>https://docs.bouffalolab.com/index.php?title=NethubUserManual_old&amp;diff=230&amp;oldid=prev</id>
		<title>2026年3月3日 (二) 04:19 张良</title>
		<link rel="alternate" type="text/html" href="https://docs.bouffalolab.com/index.php?title=NethubUserManual_old&amp;diff=230&amp;oldid=prev"/>
		<updated>2026-03-03T04:19:36Z</updated>

		<summary type="html">&lt;p&gt;&lt;/p&gt;
&lt;a href=&quot;https://docs.bouffalolab.com/index.php?title=NethubUserManual_old&amp;amp;diff=230&amp;amp;oldid=229&quot;&gt;显示更改&lt;/a&gt;</summary>
		<author><name>张良</name></author>
	</entry>
	<entry>
		<id>https://docs.bouffalolab.com/index.php?title=NethubUserManual_old&amp;diff=229&amp;oldid=prev</id>
		<title>张良：​撤销张良（讨论）的修订版本228</title>
		<link rel="alternate" type="text/html" href="https://docs.bouffalolab.com/index.php?title=NethubUserManual_old&amp;diff=229&amp;oldid=prev"/>
		<updated>2026-03-03T03:13:46Z</updated>

		<summary type="html">&lt;p&gt;撤销&lt;a href=&quot;/index.php?title=%E7%89%B9%E6%AE%8A:%E7%94%A8%E6%88%B7%E8%B4%A1%E7%8C%AE/%E5%BC%A0%E8%89%AF&quot; title=&quot;特殊:用户贡献/张良&quot;&gt;张良&lt;/a&gt;（&lt;a href=&quot;/index.php?title=%E7%94%A8%E6%88%B7%E8%AE%A8%E8%AE%BA:%E5%BC%A0%E8%89%AF&amp;amp;action=edit&amp;amp;redlink=1&quot; class=&quot;new&quot; title=&quot;用户讨论:张良（页面不存在）&quot;&gt;讨论&lt;/a&gt;）的修订版本&lt;a href=&quot;/index.php?title=%E7%89%B9%E6%AE%8A:%E7%BC%96%E8%BE%91%E5%B7%AE%E5%BC%82/228&quot; title=&quot;特殊:编辑差异/228&quot;&gt;228&lt;/a&gt;&lt;/p&gt;
&lt;a href=&quot;https://docs.bouffalolab.com/index.php?title=NethubUserManual_old&amp;amp;diff=229&amp;amp;oldid=228&quot;&gt;显示更改&lt;/a&gt;</summary>
		<author><name>张良</name></author>
	</entry>
	<entry>
		<id>https://docs.bouffalolab.com/index.php?title=NethubUserManual_old&amp;diff=228&amp;oldid=prev</id>
		<title>2026年3月3日 (二) 03:10 张良</title>
		<link rel="alternate" type="text/html" href="https://docs.bouffalolab.com/index.php?title=NethubUserManual_old&amp;diff=228&amp;oldid=prev"/>
		<updated>2026-03-03T03:10:01Z</updated>

		<summary type="html">&lt;p&gt;&lt;/p&gt;
&lt;a href=&quot;https://docs.bouffalolab.com/index.php?title=NethubUserManual_old&amp;amp;diff=228&amp;amp;oldid=227&quot;&gt;显示更改&lt;/a&gt;</summary>
		<author><name>张良</name></author>
	</entry>
	<entry>
		<id>https://docs.bouffalolab.com/index.php?title=NethubUserManual_old&amp;diff=227&amp;oldid=prev</id>
		<title>2026年3月2日 (一) 01:54 张良</title>
		<link rel="alternate" type="text/html" href="https://docs.bouffalolab.com/index.php?title=NethubUserManual_old&amp;diff=227&amp;oldid=prev"/>
		<updated>2026-03-02T01:54:23Z</updated>

		<summary type="html">&lt;p&gt;&lt;/p&gt;
&lt;table style=&quot;background-color: #fff; color: #202122;&quot; data-mw=&quot;interface&quot;&gt;
				&lt;col class=&quot;diff-marker&quot; /&gt;
				&lt;col class=&quot;diff-content&quot; /&gt;
				&lt;col class=&quot;diff-marker&quot; /&gt;
				&lt;col class=&quot;diff-content&quot; /&gt;
				&lt;tr class=&quot;diff-title&quot; lang=&quot;zh-Hans-CN&quot;&gt;
				&lt;td colspan=&quot;2&quot; style=&quot;background-color: #fff; color: #202122; text-align: center;&quot;&gt;←上一版本&lt;/td&gt;
				&lt;td colspan=&quot;2&quot; style=&quot;background-color: #fff; color: #202122; text-align: center;&quot;&gt;2026年3月2日 (一) 01:54的版本&lt;/td&gt;
				&lt;/tr&gt;&lt;tr&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot; id=&quot;mw-diff-left-l14&quot;&gt;第14行：&lt;/td&gt;
&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot;&gt;第14行：&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;br&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;br&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;=== 1.1 组件说明 ===&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;=== 1.1 组件说明 ===&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-side-deleted&quot;&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;+&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;相关代码参考 bsp/common/msg_router/linux_host &lt;/ins&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;{| class=&amp;quot;wikitable&amp;quot;&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;{| class=&amp;quot;wikitable&amp;quot;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;!组件&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;!组件&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;/table&gt;</summary>
		<author><name>张良</name></author>
	</entry>
	<entry>
		<id>https://docs.bouffalolab.com/index.php?title=NethubUserManual_old&amp;diff=226&amp;oldid=prev</id>
		<title>张良：​创建页面，内容为“基于BL616C/BL618M/BL618DG/BL616CL 的 Linux 主机通信方案，提供内核模块和用户态控制工具。  == 目录 ==  * 1. 系统架构 * 2. 快速开始 * 3. 开发指南 * 4. 常见问题  == 1. 系统架构 == 800px  &#039;&#039;&#039;说明&#039;&#039;&#039;：当前控制通道通过 tty 传…”</title>
		<link rel="alternate" type="text/html" href="https://docs.bouffalolab.com/index.php?title=NethubUserManual_old&amp;diff=226&amp;oldid=prev"/>
		<updated>2026-02-28T07:27:21Z</updated>

		<summary type="html">&lt;p&gt;创建页面，内容为“基于BL616C/BL618M/BL618DG/BL616CL 的 Linux 主机通信方案，提供内核模块和用户态控制工具。  == 目录 ==  * &lt;a href=&quot;/index.php?title=Nethub%E7%94%A8%E6%88%B7%E6%89%8B%E5%86%8C#1._系统架构&quot; title=&quot;Nethub用户手册&quot;&gt;1. 系统架构&lt;/a&gt; * &lt;a href=&quot;/index.php?title=Nethub%E7%94%A8%E6%88%B7%E6%89%8B%E5%86%8C#2._快速开始&quot; title=&quot;Nethub用户手册&quot;&gt;2. 快速开始&lt;/a&gt; * &lt;a href=&quot;/index.php?title=Nethub%E7%94%A8%E6%88%B7%E6%89%8B%E5%86%8C#3._开发指南&quot; title=&quot;Nethub用户手册&quot;&gt;3. 开发指南&lt;/a&gt; * &lt;a href=&quot;/index.php?title=Nethub%E7%94%A8%E6%88%B7%E6%89%8B%E5%86%8C#4._常见问题&quot; title=&quot;Nethub用户手册&quot;&gt;4. 常见问题&lt;/a&gt;  == 1. 系统架构 == &lt;a href=&quot;/index.php?title=%E6%96%87%E4%BB%B6:Arch_host_device.png&quot; title=&quot;文件:Arch host device.png&quot;&gt;800px&lt;/a&gt;  &amp;#039;&amp;#039;&amp;#039;说明&amp;#039;&amp;#039;&amp;#039;：当前控制通道通过 tty 传…”&lt;/p&gt;
&lt;p&gt;&lt;b&gt;新页面&lt;/b&gt;&lt;/p&gt;&lt;div&gt;基于BL616C/BL618M/BL618DG/BL616CL 的 Linux 主机通信方案，提供内核模块和用户态控制工具。&lt;br /&gt;
&lt;br /&gt;
== 目录 ==&lt;br /&gt;
&lt;br /&gt;
* [[Nethub用户手册#1. 系统架构|1. 系统架构]]&lt;br /&gt;
* [[Nethub用户手册#2. 快速开始|2. 快速开始]]&lt;br /&gt;
* [[Nethub用户手册#3. 开发指南|3. 开发指南]]&lt;br /&gt;
* [[Nethub用户手册#4. 常见问题|4. 常见问题]]&lt;br /&gt;
&lt;br /&gt;
== 1. 系统架构 ==&lt;br /&gt;
[[文件:Arch_host_device.png|800px]]&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;说明&amp;#039;&amp;#039;&amp;#039;：当前控制通道通过 tty 传输，后续将支持通过 VirtualChannel 传输 AT 命令。&lt;br /&gt;
&lt;br /&gt;
=== 1.1 组件说明 ===&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
!组件&lt;br /&gt;
!类型&lt;br /&gt;
!说明&lt;br /&gt;
|-&lt;br /&gt;
|bflbwifictrl&lt;br /&gt;
|用户态&lt;br /&gt;
|命令行工具，通过 Unix Socket 与守护进程通信&lt;br /&gt;
|-&lt;br /&gt;
|bflbwifid&lt;br /&gt;
|用户态&lt;br /&gt;
|守护进程，负责设备通信和 WiFi 连接管理&lt;br /&gt;
|-&lt;br /&gt;
|libbflbwifi&lt;br /&gt;
|用户态&lt;br /&gt;
|静态库，提供 WiFi 控制 API&lt;br /&gt;
|-&lt;br /&gt;
|nethub_vchan_app&lt;br /&gt;
|用户态&lt;br /&gt;
|VirtualChannel 通信程序，提供私有数据通道（消息包传输，非流式）&lt;br /&gt;
|-&lt;br /&gt;
|mr_sdio.ko&lt;br /&gt;
|内核态&lt;br /&gt;
|内核驱动模块，支持 SDIO 接口&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
=== 1.2 数据流向 ===&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;text&amp;quot;&amp;gt;&lt;br /&gt;
用户命令：&lt;br /&gt;
bflbwifictrl → bflbwifid → libbflbwifi → /dev/ttyAT → 内核驱动 → 设备&lt;br /&gt;
&lt;br /&gt;
URC事件：&lt;br /&gt;
设备 → 内核驱动 → /dev/ttyAT → bflbwifid → 解析处理 → 网卡配置&lt;br /&gt;
&lt;br /&gt;
工作流程：&lt;br /&gt;
加载内核模块 → 启动守护进程 → TTY 通信建立 → 准备就绪&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== 2. 快速开始 ==&lt;br /&gt;
&lt;br /&gt;
本演示展示了完整的操作流程：编译 → 加载内核模块 → 启动守护进程 → WiFi 连接 → 网络通信 → 消息收发。&lt;br /&gt;
&lt;br /&gt;
[[文件:Nethub_sdio_quickstart_demo.gif]]&lt;br /&gt;
&lt;br /&gt;
=== 2.1 编译和加载内核模块 ===&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;bash&amp;quot;&amp;gt;&lt;br /&gt;
cd nethub/&lt;br /&gt;
./build.sh build&lt;br /&gt;
sudo ./build.sh load&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== 2.2 运行 WiFi 守护进程 ===&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;bash&amp;quot;&amp;gt;&lt;br /&gt;
# 启动守护进程（默认使用 /dev/ttyAT0）&lt;br /&gt;
sudo ./output/bflbwifid -p /dev/ttyAT0&lt;br /&gt;
&lt;br /&gt;
# 或查看帮助&lt;br /&gt;
sudo ./output/bflbwifid -h&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== 2.3 使用 WiFi 控制工具 ===&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;bash&amp;quot;&amp;gt;&lt;br /&gt;
# 扫描 AP&lt;br /&gt;
sudo ./output/bflbwifictrl scan&lt;br /&gt;
&lt;br /&gt;
# 连接 AP（无密码）&lt;br /&gt;
sudo ./output/bflbwifictrl connect_ap &amp;quot;SSID&amp;quot;&lt;br /&gt;
&lt;br /&gt;
# 连接 AP（有密码）&lt;br /&gt;
sudo ./output/bflbwifictrl connect_ap &amp;quot;SSID&amp;quot; &amp;quot;password&amp;quot;&lt;br /&gt;
&lt;br /&gt;
# 查看状态&lt;br /&gt;
sudo ./output/bflbwifictrl status&lt;br /&gt;
&lt;br /&gt;
# 断开连接&lt;br /&gt;
sudo ./output/bflbwifictrl disconnect&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== 3. 开发指南 ==&lt;br /&gt;
&lt;br /&gt;
=== 3.1 系统要求 ===&lt;br /&gt;
&lt;br /&gt;
* &amp;#039;&amp;#039;&amp;#039;内核版本&amp;#039;&amp;#039;&amp;#039;：Linux 3.7+（内核模块需要）&lt;br /&gt;
* &amp;#039;&amp;#039;&amp;#039;架构&amp;#039;&amp;#039;&amp;#039;：x86_64、ARMv7（树莓派）、ARMv8（树莓派 4/5）&lt;br /&gt;
* &amp;#039;&amp;#039;&amp;#039;依赖&amp;#039;&amp;#039;&amp;#039;：gcc、make、libc、pthread&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;兼容性说明&amp;#039;&amp;#039;&amp;#039;：&lt;br /&gt;
&lt;br /&gt;
* ✅ 用户空间程序（bflbwifid/bflbwifictrl）：无内核版本限制&lt;br /&gt;
* ✅ 内核模块（mr_sdio.ko）：支持 Linux 3.7+&lt;br /&gt;
* ✅ 已测试：Linux raspberrypi 6.12.25+rpt-rpi-v8&lt;br /&gt;
&lt;br /&gt;
=== 3.2 命令参考 ===&lt;br /&gt;
&lt;br /&gt;
==== build.sh 命令 ====&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
!命令&lt;br /&gt;
!说明&lt;br /&gt;
|-&lt;br /&gt;
|&amp;lt;code&amp;gt;build&amp;lt;/code&amp;gt;&lt;br /&gt;
|编译内核模块、virtualchan 和 bflbwifictrl&lt;br /&gt;
|-&lt;br /&gt;
|&amp;lt;code&amp;gt;clean&amp;lt;/code&amp;gt;&lt;br /&gt;
|清理所有编译产物&lt;br /&gt;
|-&lt;br /&gt;
|&amp;lt;code&amp;gt;load&amp;lt;/code&amp;gt;&lt;br /&gt;
|加载内核模块 &amp;lt;code&amp;gt;mr_sdio.ko&amp;lt;/code&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
|&amp;lt;code&amp;gt;unload&amp;lt;/code&amp;gt;&lt;br /&gt;
|卸载内核模块&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
==== bflbwifictrl 命令 ====&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
!命令&lt;br /&gt;
!说明&lt;br /&gt;
|-&lt;br /&gt;
|&amp;lt;code&amp;gt;scan&amp;lt;/code&amp;gt;&lt;br /&gt;
|扫描附近 AP&lt;br /&gt;
|-&lt;br /&gt;
|&amp;lt;code&amp;gt;connect_ap &amp;amp;#x3C;SSID&amp;amp;#x3E; [密码]&amp;lt;/code&amp;gt;&lt;br /&gt;
|连接到 AP&lt;br /&gt;
|-&lt;br /&gt;
|&amp;lt;code&amp;gt;disconnect&amp;lt;/code&amp;gt;&lt;br /&gt;
|断开连接&lt;br /&gt;
|-&lt;br /&gt;
|&amp;lt;code&amp;gt;status&amp;lt;/code&amp;gt;&lt;br /&gt;
|查看连接状态&lt;br /&gt;
|-&lt;br /&gt;
|&amp;lt;code&amp;gt;version&amp;lt;/code&amp;gt;&lt;br /&gt;
|查看固件版本&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
=== 3.3 功能特性 ===&lt;br /&gt;
&lt;br /&gt;
==== bflbwifid（守护进程） ====&lt;br /&gt;
&lt;br /&gt;
* &amp;#039;&amp;#039;&amp;#039;TTY 通信&amp;#039;&amp;#039;&amp;#039;：与 WiFi 模块通过串口通信&lt;br /&gt;
* &amp;#039;&amp;#039;&amp;#039;AT 协议&amp;#039;&amp;#039;&amp;#039;：解析和封装 AT 指令&lt;br /&gt;
* &amp;#039;&amp;#039;&amp;#039;状态管理&amp;#039;&amp;#039;&amp;#039;：维护 WiFi 连接状态&lt;br /&gt;
* &amp;#039;&amp;#039;&amp;#039;Unix Socket&amp;#039;&amp;#039;&amp;#039;：提供 IPC 通信接口&lt;br /&gt;
* &amp;#039;&amp;#039;&amp;#039;GOTIP 自动配置&amp;#039;&amp;#039;&amp;#039;（可选）：收到 IP 后自动配置 Linux 网卡&lt;br /&gt;
&lt;br /&gt;
==== bflbwifictrl（命令行工具） ====&lt;br /&gt;
&lt;br /&gt;
* &amp;#039;&amp;#039;&amp;#039;CLI 接口&amp;#039;&amp;#039;&amp;#039;：通过 Unix Socket 与守护进程通信&lt;br /&gt;
* &amp;#039;&amp;#039;&amp;#039;简洁易用&amp;#039;&amp;#039;&amp;#039;：提供常用 WiFi 操作命令&lt;br /&gt;
* &amp;#039;&amp;#039;&amp;#039;状态查询&amp;#039;&amp;#039;&amp;#039;：实时显示连接信息&lt;br /&gt;
&lt;br /&gt;
==== GOTIP 自动配置功能（默认启用） ====&lt;br /&gt;
当 WiFi 模块获取 IP 后，会自动：&lt;br /&gt;
&lt;br /&gt;
# 解析 URC：&amp;lt;code&amp;gt;+CW:GOTIP,IP:xxx,gw:xxx,mask:xxx,dns:xxx&amp;lt;/code&amp;gt;&lt;br /&gt;
# 配置网卡：&amp;lt;code&amp;gt;ip addr add&amp;lt;/code&amp;gt;、&amp;lt;code&amp;gt;ip route add default&amp;lt;/code&amp;gt;&lt;br /&gt;
# 配置 DNS：写入 &amp;lt;code&amp;gt;/etc/resolv.conf&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;注意事项&amp;#039;&amp;#039;&amp;#039;：&lt;br /&gt;
&lt;br /&gt;
* 部分host需要禁用 NetworkManager：&amp;lt;code&amp;gt;sudo systemctl disable --now NetworkManager&amp;lt;/code&amp;gt;&lt;br /&gt;
* 需要禁用 dhcpcd：&amp;lt;code&amp;gt;sudo systemctl disable --now dhcpcd&amp;lt;/code&amp;gt;&lt;br /&gt;
* 默认网卡名为 &amp;lt;code&amp;gt;mr_eth0&amp;lt;/code&amp;gt;（可在代码中修改）&lt;br /&gt;
&lt;br /&gt;
=== 3.4 代码修改与编译 ===&lt;br /&gt;
&lt;br /&gt;
==== 修改代码后重新编译 ====&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;bash&amp;quot;&amp;gt;&lt;br /&gt;
# 只编译 bflbwifictrl&lt;br /&gt;
cd bflbwifictrl&lt;br /&gt;
make clean &amp;amp;&amp;amp; make&lt;br /&gt;
&lt;br /&gt;
# 或使用 build.sh 编译所有&lt;br /&gt;
cd ..&lt;br /&gt;
./build.sh build&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==== 重新加载内核模块 ====&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;bash&amp;quot;&amp;gt;&lt;br /&gt;
sudo ./build.sh unload&lt;br /&gt;
sudo ./build.sh load&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== 4. 常见问题 ==&lt;br /&gt;
&lt;br /&gt;
=== 4.1 找不到串口设备 ===&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;bash&amp;quot;&amp;gt;&lt;br /&gt;
# 查看可用串口&lt;br /&gt;
ls /dev/ttyACM* /dev/ttyUSB*&lt;br /&gt;
&lt;br /&gt;
# 添加用户到 dialout 组（避免每次都用 sudo）&lt;br /&gt;
sudo usermod -aG dialout $USER&lt;br /&gt;
# 然后重新登录&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== 4.2 IP 配置后自动消失 ===&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;原因&amp;#039;&amp;#039;&amp;#039;：NetworkManager 或 dhcpcd 覆盖了手动配置。&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;解决&amp;#039;&amp;#039;&amp;#039;：&amp;lt;syntaxhighlight lang=&amp;quot;bash&amp;quot;&amp;gt;&lt;br /&gt;
# 禁用 NetworkManager&lt;br /&gt;
sudo systemctl stop NetworkManager&lt;br /&gt;
sudo systemctl disable NetworkManager&lt;br /&gt;
&lt;br /&gt;
# 禁用 dhcpcd&lt;br /&gt;
sudo systemctl stop dhcpcd&lt;br /&gt;
sudo systemctl disable dhcpcd&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== 4.3 查看调试日志 ===&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;bash&amp;quot;&amp;gt;&lt;br /&gt;
# 查看守护进程日志&lt;br /&gt;
tail -f /var/log/bflbwifi.log&lt;br /&gt;
&lt;br /&gt;
# 查看内核日志&lt;br /&gt;
dmesg -w&lt;br /&gt;
&lt;br /&gt;
# 守护进程前台运行（查看实时输出）&lt;br /&gt;
sudo ./output/bflbwifid -p /dev/ttyAT0 --foreground&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== 4.4 编译错误 ===&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;bash&amp;quot;&amp;gt;&lt;br /&gt;
# 确保安装必要的开发包&lt;br /&gt;
sudo apt-get install build-essential libc-dev-i386&lt;br /&gt;
&lt;br /&gt;
# 树莓派需要安装 32 位兼容库&lt;br /&gt;
sudo apt-get install libc6:i386 libstdc++6:i386&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;/div&gt;</summary>
		<author><name>张良</name></author>
	</entry>
</feed>