xhackerustc 发表于 2024-5-2 19:28

[FireBeetle 2 ESP32C6开发板] SoftAP初尝试

<div class='showpostmsg'> 本帖最后由 xhackerustc 于 2024-5-3 16:37 编辑

<p>ESP32C6 datasheet对于802.11ax(所谓wifi6)明确提及支持仅非接入点工作模式 (20MHz-only non-AP mode),但对于802.11b/g/n没有这么说,所以猜测它在802.11b/g/n时可以当ap用。今天就来试试ESP32C6的softap功能。</p>

<p>&nbsp;</p>

<p><strong>softap配置</strong></p>

<p>esp-idf做得真好啊,它的example非常全,这不softap也有,直接用了</p>

<pre>
<code class="language-bash">cd examples/wifi/getting_started/softAP
idf.py set-target esp32c6
idf.py menuconfig
</code></pre>

<p>在menuconfig界面注意改下flash设置:qio和4MB;以及console output设为usb,可参见笔者第一篇测试贴<a href="https://bbs.eeworld.com.cn/thread-1280164-1-1.html" target="_blank">linux下开发环境搭建</a>,后续不再赘述。另配置下softap的ssid和密码(笔者配置的ssid是esp32c6<img height="48" src="https://bbs.eeworld.com.cn/static/editor/plugins/hkemoji/sticker/facebook/loveliness.gif" width="48" />),后面测试时其它wifi终端连接时要用,另密码必须不能少于8位,否则会跑起来后会ASSERT,ASSERT现场如下图所示</p>

<div style="text-align: center;"></div>

<p>&nbsp;</p>

<p><strong>编译&amp;烧录</strong></p>

<pre>
<code class="language-bash">idf.py build
esptool.py -p /dev/ttyACM0 --chip esp32c6 -b 460800 --before default_reset --after hard_reset write_flash --flash_mode qio --flash_size 4MB --flash_freq 80m 0x10000 build/wifi_softAP.bin</code></pre>

<p><strong>测试</strong></p>

<p>为提升测试覆盖率,一共用了四台不同OS设备来测试:一台windows笔记本电脑,一台linux笔记本电脑,一部android手机,一部ipad平板电脑。首先这四个不同设备都能看到softap的ssid,其中linux笔记本电脑iw dev wlan0 scan结果如下:</p>

<div style="text-align: center;"></div>

<p>但是只有windows笔记本电脑能连上softap,其它三设备都连不上,搜索后发现至少有人在linux下碰到同样问题<a href="https://superuser.com/questions/1839385/buildroot-wpa-supplicant-cannot-connect-to-esp32-softap" target="_blank">Buildroot: wpa_supplicant cannot connect to ESP32 SoftAP</a>,他用的应该和笔者一样esp-idf的master分支最新HEAD,巧的是笔者测试用linux笔记本电脑也是用wpa_supplicant, 后续可能去esp-idf发个issue来。windows笔记本电脑连上时,usb cdc串口的打印如图所示:</p>

<div style="text-align: center;"></div>

<p>在windows笔记本电脑中查看wifi获得的ip地址确实就是192.168.4.2, 网关是192.168.4.1,ping网关也能ping通。</p>
</div><script>                                        var loginstr = '<div class="locked">查看本帖全部内容,请<a href="javascript:;"   style="color:#e60000" class="loginf">登录</a>或者<a href="https://bbs.eeworld.com.cn/member.php?mod=register_eeworld.php&action=wechat" style="color:#e60000" target="_blank">注册</a></div>';
                                       
                                        if(parseInt(discuz_uid)==0){
                                                                                                (function($){
                                                        var postHeight = getTextHeight(400);
                                                        $(".showpostmsg").html($(".showpostmsg").html());
                                                        $(".showpostmsg").after(loginstr);
                                                        $(".showpostmsg").css({height:postHeight,overflow:"hidden"});
                                                })(jQuery);
                                        }                </script><script type="text/javascript">(function(d,c){var a=d.createElement("script"),m=d.getElementsByTagName("script"),eewurl="//counter.eeworld.com.cn/pv/count/";a.src=eewurl+c;m.parentNode.insertBefore(a,m)})(document,523)</script>
页: [1]
查看完整版本: [FireBeetle 2 ESP32C6开发板] SoftAP初尝试