0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
会员中心
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

如果在Zephyr内如何使用ESP32蓝牙

ZephyrProject 来源:ZephyrProject 作者:ZephyrProject 2021-06-07 16:42 次阅读
加入交流群
微信小助手二维码

扫码添加小助手

加入工程师交流群

在Zephyr ESP32 蓝牙驱动简析一文中简要分析了esp32 蓝牙如何集成进Zephyr,本文接着说明如果在Zephyr内使用ESP32蓝牙。

在Zepher中使用ESP32蓝牙比WIFI还要简单只要基于esp32 board编译的APP配置了CONFIG_BT=y就会默认打开ESP32蓝牙的配置CONFIG_BT_ESP32,详细可见boardsxtensaesp32Kconfig.defconfig.

之后就直接使用zephyr提供的蓝牙API进行应用编程即可。

本文不说明如何进行蓝牙编程,试跑一个Zephyr的蓝牙例程eddystone,这是Google BLE Beacon,用于蓝牙定位。

例程的配置文件如下

1

2

3

4

CONFIG_BT=y

CONFIG_BT_DEBUG_LOG=y

CONFIG_BT_PERIPHERAL=y

CONFIG_BT_DEVICE_NAME=“Zephyr Eddystone”

应用主程序如下, 实际的各种流程都在bt_ready中展开

void main(void)

{

int err;

bt_conn_cb_register(&conn_callbacks);

k_work_init_delayable(&idle_work, idle_timeout);

/* Initialize the Bluetooth Subsystem */

err = bt_enable(bt_ready);

if (err) {

printk(“Bluetooth init failed (err %d)

”, err);

}

}

编译并下载

1

2

west build -p -b esp32 zephyrproject/zephyr/samples/bluetooth/eddystone

west flash --esp-device /dev/ttyS11

运行log如下:

1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

▒▒*** Booting Zephyr OS build v2.6.0-rc1-300-g6ce0f2ee6606 ***

phy_version: 4500, 0cd6843, Sep 17 2020, 1507, 0, 2

Coex register schm btdm cb faild

Bluetooth initialized

Initial advertising as C457F8:DE (public)

Configuration mode: waiting connections.。。

[0000.911,000] 《dbg》 bt_hci_driver_esp32.hci_esp_host_rcv_pkt: Calling bt_recv(0x3fff4c28)

--- 98 messages dropped ---

[0000.911,000] 《inf》 bt_hci_core: Identity: C457F8:DE (public)

[0000.911,000] 《inf》 bt_hci_core: HCI: version 4.2 (0x08) revision 0x030e, manufacturer 0x0060

[0000.911,000] 《inf》 bt_hci_core: LMP: version 4.2 (0x08) subver 0x030e

[0000.911,000] 《dbg》 bt_hci_driver_esp32.bt_esp32_send: buf 0x3fff4c28 type 0 len 18

[0000.911,000] 《dbg》 bt_hci_driver_esp32: Final HCI buffer:

01 06 20 0f a0 00 f0 00 00 00 00 00 00 00 00 00 |。。 。。.。。 。。.。。.。。

00 07 00 |。。.

手机上通过nrf connect可以看到”Zephyr Eddystone”

从上面可以看到zephyr上面使用ESP32蓝牙完全可以不用关心驱动,是单纯应用层的编程。

编辑:jq

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • 蓝牙
    +关注

    关注

    119

    文章

    6226

    浏览量

    177568
  • API
    API
    +关注

    关注

    2

    文章

    2158

    浏览量

    66250
  • 编程
    +关注

    关注

    90

    文章

    3708

    浏览量

    96768
  • Zephyr
    +关注

    关注

    0

    文章

    47

    浏览量

    6514

原文标题:Zephyr ESP32 蓝牙试用

文章出处:【微信号:ZephyrProject,微信公众号:ZephyrProject】欢迎添加关注!文章转载请注明出处。

收藏 人收藏
加入交流群
微信小助手二维码

扫码添加小助手

加入工程师交流群

    评论

    相关推荐
    热点推荐

    如何备份复制拷贝出ESP32/8266的固件程序

    通过esptool命令和flash_download_tool,我们了解到如何读取备份一个ESP32/8266中falash的固件程序。可以看到flash_download_tool方式方面快捷。
    的头像 发表于 11-30 15:52 1364次阅读
    如何备份复制拷贝出<b class='flag-5'>ESP32</b>/8266<b class='flag-5'>内</b>的固件程序

    ESP32­WROOM­32 技术规格书

    电子发烧友网站提供《ESP32­WROOM­32 技术规格书.pdf》资料免费下载
    发表于 11-11 17:27 0次下载

    乐鑫ESP32-C6和ESP32-C61究竟该如何选择?一文读懂本质区别

    乐鑫科技推出的ESP32-C6和ESP32-C61均支持Wi-Fi6,但定位不同。ESP32-C6是多协议枢纽,集成Wi-Fi6、蓝牙5、Zigbee和Thread,适合智能家居网关和
    的头像 发表于 10-28 14:17 1295次阅读
    乐鑫<b class='flag-5'>ESP32</b>-C6和<b class='flag-5'>ESP32</b>-C61究竟该如何选择?一文读懂本质区别

    如果在FMC执行“程序”或“擦除”时发生中断事件,是否会处理中断事件?

    如果在FMC执行“程序”或“擦除”时发生中断事件,是否会处理中断事件?
    发表于 08-27 08:01

    如果在FMC执行“程序”或“擦除”时发生中断事件,是否会处理中断事件呢?

    如果在FMC执行“程序”或“擦除”时发生中断事件,是否会处理中断事件?
    发表于 08-22 06:58

    ESP32开发板元件资料

    ESP32开发板元件
    发表于 07-21 14:47 14次下载

    如果在WL_REG_ON/BT_REG_ON为低时输入PCIe REFCLK,会有什么问题吗?

    如果在WL_REG_ON/BT_REG_ON为低时输入PCIe REFCLK,会有什么问题吗? 我想知道当 VBAT/VDDIO 处于开启状态且 WL_REG_ON/BT_REG_ON 处于低电平时哪个电源域处于开启状态。 谢谢。
    发表于 07-17 07:34

    ESP32用作经典蓝牙串口透传模块与手机进行串口通信

    本文介绍了如何把ESP32用作一个蓝牙串口透传设备使用,其功能和常用的HC-05/06串口蓝牙设备一样。并与手机蓝牙串口APP进行双向蓝牙
    的头像 发表于 06-20 17:45 2109次阅读
    <b class='flag-5'>ESP32</b>用作经典<b class='flag-5'>蓝牙</b>串口透传模块与手机进行串口通信

    乐鑫ESP32-C5全面进入量产

    乐鑫信息科技 (688018.SH) 宣布,ESP32-C5 现已全面进入量产。
    的头像 发表于 05-06 16:50 1059次阅读

    STM32和ESP32应该学哪个

    等等,市场占有率也很高。 ESP32相对年轻了不少,满打满算也不到 10 岁,他的前身,还得从 ESP8266 说起,都属于乐鑫科技的产品。 如果你用单片机做过一些物联网产品,那多多少少应该听过
    的头像 发表于 02-18 09:52 1123次阅读

    THS1209扫描工作模式下,如果在第一个CONV_CLK周期进行读操作,读出的数据虽然无效,但是否是允许的?

    沿自动出现在数据总线上? 2、如果在第一个CONV_CLK 周期进行读操作,读出的数据虽然无效,但是否是允许的? 3、如果在最后一个CONV_CLK时钟周期结束时停止读操作,很明显还有4个转换好的数据
    发表于 02-10 08:36

    esp32如何接入豆包

    要在 ESP32 上接入豆包工具,本质上是让 ESP32 设备与豆包的 API 进行通信,以获取相关服务
    的头像 发表于 02-05 13:40 2859次阅读
    <b class='flag-5'>esp32</b>如何接入豆包

    THS1209如果在第一个CONV_CLK 周期进行读操作,读出的数据虽然无效,但是否是允许的?

    沿自动出现在数据总线上? 2、如果在第一个CONV_CLK 周期进行读操作,读出的数据虽然无效,但是否是允许的? 3、如果在最后一个CONV_CLK时钟周期结束时停止读操作,很明显还有4个转换
    发表于 02-05 07:45

    如果在ldc1000evm上只更换电容,我并联了一个0.1微法的电容,在GUI上如何设置参数?

    求大神帮忙,如果在ldc1000evm上只更换电容,我并联了一个0.1微法的电容,在GUI上如何设置参数?
    发表于 12-26 06:12

    【AI技术支持】ESP32-S3模组EspBleOTA搜索不到ble_ota例程的蓝牙问题处理

    启明云端/01问题描述在智能标识牌上使用ESP32-S3-WROOM-1U模组,ESP-IDF版本为idf5.0.2时,客户在ESP32-S3模组烧录运行
    的头像 发表于 12-13 18:06 2885次阅读
    【AI技术支持】<b class='flag-5'>ESP32</b>-S3模组EspBleOTA搜索不到ble_ota例程的<b class='flag-5'>蓝牙</b>问题处理