idf版本:V5.0.2
开发板:esp-32
问题描述:
我使用两台esp32,不断重复以下步骤:连接wifi--》创建TCP server --》作为TCP client向另一台esp32发送数据 --》 断开 wifi
经过五轮左右循环后出现以下两个报错:
TCP SERVER: Unable to create socket: errno 23
TCP client: Unable to create socket: errno 23
TCP client与TCP server 具体代码如下:
/**
* @brief 发送 wifi 数据, wifi ...
Search found 10 matches
- Wed Sep 13, 2023 9:04 am
- Forum: ESP-IDF 中文讨论版
- Topic: 不断重连wifi后,无法创建socket求助
- Replies: 0
- Views: 2902
- Wed Sep 13, 2023 8:16 am
- Forum: ESP-IDF 中文讨论版
- Topic: 修改TCP client例程时产生严重错误
- Replies: 3
- Views: 6356
Re: 修改TCP client例程时产生严重错误
问题1:SO_SNDTIMEO 只能用于 connect 之后调用 send/write 才有效,如果你想进行 connect 的连接超时设置的话,你需要先将 socket 设置为非阻塞的,然后通过 select 进行超时处理,具体细节你可以参考 https://github.com/espressif/esp-idf/blob/master/components/esp-tls/esp_tls.c#L332
问题2:这个是必现的吗?你反汇编看下 PC 地址是哪个函数,加点日志定位下。
问题3:你把 SO_LINGER 的设置放到 connect 之后。
感谢您的回复,关于问题2 ...
- Tue Sep 12, 2023 9:35 am
- Forum: ESP-IDF 中文讨论版
- Topic: 修改TCP client例程时产生严重错误
- Replies: 3
- Views: 6356
Re: 修改TCP client例程时产生严重错误
再补充一个问题:
问题3:
添加SO_LINGER相关代码后。出现以下log:
I (661399) wifi:bcn_timeout,ap_probe_send_start
I (663899) wifi:ap_probe_send over, resett wifi status to disassoc
I (663899) wifi:state: run -> init (c800)
I (663899) wifi:pm stop, total sleep time: 592585542 us / 653377789 us
I (663909) wifi:new:<6,0 ...
问题3:
添加SO_LINGER相关代码后。出现以下log:
I (661399) wifi:bcn_timeout,ap_probe_send_start
I (663899) wifi:ap_probe_send over, resett wifi status to disassoc
I (663899) wifi:state: run -> init (c800)
I (663899) wifi:pm stop, total sleep time: 592585542 us / 653377789 us
I (663909) wifi:new:<6,0 ...
- Tue Sep 12, 2023 6:24 am
- Forum: ESP-IDF 中文讨论版
- Topic: 修改TCP client例程时产生严重错误
- Replies: 3
- Views: 6356
修改TCP client例程时产生严重错误
idf版本:V5.0.2
开发板:esp-32
问题描述:
重复连接WiFi时,会无法创建socket,因此,我使用 SO_LINGER 参数,希望tcp断开时立马释放socket;同时,我希望发送tcp的等待超时时间为5秒,为此使用 SO_SNDTIMEO 参数,这里我遇到了两个问题:
问题1:
SO_SNDTIMEO 似乎未正常生效,我设置connect超时时间为5秒,超过五秒connect并没有结束,是我使用方法出现问题了吗?
menuconfig已做如下设置:LWIP_SO_LINGER(=y) "Enable SO_LINGER processing"
问题2 ...
开发板:esp-32
问题描述:
重复连接WiFi时,会无法创建socket,因此,我使用 SO_LINGER 参数,希望tcp断开时立马释放socket;同时,我希望发送tcp的等待超时时间为5秒,为此使用 SO_SNDTIMEO 参数,这里我遇到了两个问题:
问题1:
SO_SNDTIMEO 似乎未正常生效,我设置connect超时时间为5秒,超过五秒connect并没有结束,是我使用方法出现问题了吗?
menuconfig已做如下设置:LWIP_SO_LINGER(=y) "Enable SO_LINGER processing"
问题2 ...
- Tue Sep 12, 2023 6:09 am
- Forum: ESP-ADF
- Topic: 关于hfp_ag例程的gpio配置问题
- Replies: 5
- Views: 44169
Re: 关于hfp_ag例程的gpio配置问题
感谢您的指导,此问题已按你的方式解决。顺便请问一下,与wifi共存时音质降低是正常现象吗?我看文档说只有一个RF模块。声音听不清楚,是不是有明显的加速现象?猜测您是 I2S 配置问题
在 8311 的初始化和 example 中, i2s 的配置值是 16K, 双通道的,但是 ag 的默认模式是 CVSD, 8k 单通道, 过改为 msbc 的话也是 16k 单通道,所以需要改一下 i2s 的配置
- Mon Sep 04, 2023 9:20 am
- Forum: ESP-IDF 中文讨论版
- Topic: hfp ag初始化失败问题求助
- Replies: 1
- Views: 4141
hfp ag初始化失败问题求助
esf-idf版本:V5.0.2
开发板型号:ESP32-WROOM-32UE、ESP32-WROVER-E
问题描述:结合蓝牙扫描与hfp ag例程时,使用esp32开发板作为hfp ag端,在ESP32-WROVER-E运行正常,但是程序烧到ESP32-WROOM-32UE后,发现ESP32-WROOM-32UE扫描到蓝牙耳机后,蓝牙耳机无法连接开发板。
连接耳机代码如下:
static void bt_app_gap_cb(esp_bt_gap_cb_event_t event, esp_bt_gap_cb_param_t *param)
{
switch (event ...
开发板型号:ESP32-WROOM-32UE、ESP32-WROVER-E
问题描述:结合蓝牙扫描与hfp ag例程时,使用esp32开发板作为hfp ag端,在ESP32-WROVER-E运行正常,但是程序烧到ESP32-WROOM-32UE后,发现ESP32-WROOM-32UE扫描到蓝牙耳机后,蓝牙耳机无法连接开发板。
连接耳机代码如下:
static void bt_app_gap_cb(esp_bt_gap_cb_event_t event, esp_bt_gap_cb_param_t *param)
{
switch (event ...
- Mon Jul 03, 2023 1:20 am
- Forum: ESP-ADF
- Topic: 关于hfp_ag例程的gpio配置问题
- Replies: 5
- Views: 44169
Re: 关于hfp_ag例程的gpio配置问题
请问hfp ag例程怎么运行呢?为什么听不到清晰的声音?
- Tue Jun 27, 2023 2:08 pm
- Forum: ESP-ADF
- Topic: 关于hfp_ag例程的gpio配置问题
- Replies: 5
- Views: 44169
关于hfp_ag例程的gpio配置问题
开发板:ESP32-LyraT-Mini_V1.2
idf版本:esp-idf_v5.02
项目需求:esp32开发板作为hfp-ag网关,与蓝牙耳机连接,通过es8311连接有线麦克风与扬声器,对着有线麦克风呼叫的话音数据能传输到蓝牙耳机;对着蓝牙耳机上的麦克风呼叫的话音数据能传输到有线扬声器,实现类似于蓝牙对讲机的效果。
目前遇到的问题:
1.我是用hfp_ag的hci模式时,无论是蓝牙回调得到的蓝牙传来的声音写入i2s,或是从i2s得到的es8311传来的麦克风数据传给蓝牙耳机,声音均非常不清晰。
2.使用hfp_ag的pcm模式时,完全无法发出声音,我怀疑是我对readme ...
idf版本:esp-idf_v5.02
项目需求:esp32开发板作为hfp-ag网关,与蓝牙耳机连接,通过es8311连接有线麦克风与扬声器,对着有线麦克风呼叫的话音数据能传输到蓝牙耳机;对着蓝牙耳机上的麦克风呼叫的话音数据能传输到有线扬声器,实现类似于蓝牙对讲机的效果。
目前遇到的问题:
1.我是用hfp_ag的hci模式时,无论是蓝牙回调得到的蓝牙传来的声音写入i2s,或是从i2s得到的es8311传来的麦克风数据传给蓝牙耳机,声音均非常不清晰。
2.使用hfp_ag的pcm模式时,完全无法发出声音,我怀疑是我对readme ...
- Fri Jun 16, 2023 8:57 am
- Forum: ESP-IDF 中文讨论版
- Topic: esp32作为主机与蓝牙耳机耳麦进行双向通信的
- Replies: 2
- Views: 4637
Re: esp32作为主机与蓝牙耳机耳麦进行双向通信的
使用的开发版是esp32-Lyrat-mini, idf版本是 v5.02,思路是使用 A2DP 与 AVRCP库
esp_a2d_sink_connect 和 esp_a2d_source_connect均返回ESP_OK,但是只能程序只能从蓝牙耳机发出声音,无法获取蓝牙耳麦。esp_a2d_sink_register_data_callback注册的回调没有调用。
esp_a2d_sink_connect 和 esp_a2d_source_connect均返回ESP_OK,但是只能程序只能从蓝牙耳机发出声音,无法获取蓝牙耳麦。esp_a2d_sink_register_data_callback注册的回调没有调用。
- Fri Jun 16, 2023 2:48 am
- Forum: ESP-IDF 中文讨论版
- Topic: esp32作为主机与蓝牙耳机耳麦进行双向通信的
- Replies: 2
- Views: 4637
esp32作为主机与蓝牙耳机耳麦进行双向通信的
新人求教,我的需求是esp32作为主机,连接蓝牙耳机,能够向蓝牙耳机发送音乐,并且能够接收蓝牙耳机上的麦克风的音频,实现双向音频的数据传输。
我的思路是将经典蓝牙例程的a2dp_source与a2dp_sink结合,但是目前无论是收还是发,都只能单向通信,我猜测sink或source的data call back无法同时使用,请问我的猜测正确吗,要实现我的需求还有什么方法呢?
蓝牙初始化、sink\source初始化 -> esp_a2d_sink\source_register_data_callback -> 连接蓝牙耳机 -> sink\source_data_callbackb被调用 ...
我的思路是将经典蓝牙例程的a2dp_source与a2dp_sink结合,但是目前无论是收还是发,都只能单向通信,我猜测sink或source的data call back无法同时使用,请问我的猜测正确吗,要实现我的需求还有什么方法呢?
蓝牙初始化、sink\source初始化 -> esp_a2d_sink\source_register_data_callback -> 连接蓝牙耳机 -> sink\source_data_callbackb被调用 ...