stackyuan b7044a405c [fix] fullfill StorageInfo for External FlashAlog, solved stlink/stcubeprogrammer/cubeIDE download problems due to firmware upgrade to latest ST's version. 2 ani în urmă
..
.settings 6d87e885ca [UPD]删除无效代码和文件 4 ani în urmă
applications 6d87e885ca [UPD]删除无效代码和文件 4 ani în urmă
board b7044a405c [fix] fullfill StorageInfo for External FlashAlog, solved stlink/stcubeprogrammer/cubeIDE download problems due to firmware upgrade to latest ST's version. 2 ani în urmă
figures e3767112a3 [ADD]art_pi_ble_mesh_gateway project 4 ani în urmă
modules 6d87e885ca [UPD]删除无效代码和文件 4 ani în urmă
packages 932240f895 [UPD]ld3320软件包修改为release版本 4 ani în urmă
.config 932240f895 [UPD]ld3320软件包修改为release版本 4 ani în urmă
.cproject 1440ca5c12 [update] readme 4 ani în urmă
.gitattributes e3767112a3 [ADD]art_pi_ble_mesh_gateway project 4 ani în urmă
.gitignore 6d87e885ca [UPD]删除无效代码和文件 4 ani în urmă
.project e55962e135 [UPD]support studio 4 ani în urmă
Kconfig e3767112a3 [ADD]art_pi_ble_mesh_gateway project 4 ani în urmă
README.md 6b9f57ba5b [FXI]readme 错别字 4 ani în urmă
SConscript e3767112a3 [ADD]art_pi_ble_mesh_gateway project 4 ani în urmă
SConstruct e3767112a3 [ADD]art_pi_ble_mesh_gateway project 4 ani în urmă
cconfig.h e3767112a3 [ADD]art_pi_ble_mesh_gateway project 4 ani în urmă
makefile.targets e55962e135 [UPD]support studio 4 ani în urmă
mklinks.bat e55962e135 [UPD]support studio 4 ani în urmă
project.uvprojx e3767112a3 [ADD]art_pi_ble_mesh_gateway project 4 ani în urmă
rtconfig.h 932240f895 [UPD]ld3320软件包修改为release版本 4 ani în urmă
rtconfig.py e3767112a3 [ADD]art_pi_ble_mesh_gateway project 4 ani în urmă
rtconfig_preinc.h e3767112a3 [ADD]art_pi_ble_mesh_gateway project 4 ani în urmă
template.uvoptx e3767112a3 [ADD]art_pi_ble_mesh_gateway project 4 ani în urmă
template.uvprojx e3767112a3 [ADD]art_pi_ble_mesh_gateway project 4 ani în urmă

README.md

蓝牙MESH语音扩展板DEMO

简介

本例程基于mesh蓝牙网关扩展板开发,需要对应的扩展板和nrf52模块才可以运行。

需要用到的硬件部分已开源,点击查看

硬件说明

扩展板主要部分:

  • LD3320语音识别芯片
  • JR6001语音播报模块引出
  • LAN8720A网口
  • nRF52串口引出

引脚如下:

WIFI-OTA

在不使用语音功能情况下,可以用ART-PI用杜邦线直接连接nRF模块使用WEB API,要运行例程至少需要两个nRF模块。

软件说明

本例程在出产例程ART_PI_FACTORY基础上进行软件开发,并且保留了出产例程的小程序蓝牙配网功能。

nRF模块需要刷写固件,源码在:https://gitee.com/jiy/n-rf5-sdk-for-mesh/tree/master/examples/serial_control

nRF模块的client端通过串口协议连接到开发板,默认RX为P26, TX为P25;server直接控制对应的设备或连接到传感器,示例程序为电灯。

项目软件架构: WIFI-OTA

WEB接口:

查找Mesh节点:

POST /cgi-bin/board_control HTTP/1.1
Host: 192.168.1.211
cache-control: no-cache
{
    "opcode": 193
}

获取节点列表:

GET /cgi-bin/basic_info HTTP/1.1
Host: 192.168.1.211
cache-control: no-cache

设置节点:

POST /cgi-bin/board_control HTTP/1.1
Host: 192.168.1.211
Content-Type: application/json
cache-control: no-cache
{"address": 79, "opcode": 195, "data":"01"}

读取节点数据:

POST /cgi-bin/board_control HTTP/1.1
Host: 192.168.1.211
Content-Type: application/json
cache-control: no-cache
{"address": 57, "opcode": 195}

注:

  • address:设备单播地址
  • opcode:操作码
  • data:数据(1~8byte)

操作码定义:

typedef enum
{
    COMMAND_OPCODE_FIND = 0xC1,     // 网关寻找设备
    COMMAND_OPCODE_REGISTER = 0xC2, // 设备向网关提交注册
    COMMAND_OPCODE_SET = 0xC3,      // 设置设备
    COMMAND_OPCODE_STATUS = 0xC4,   // 设备状态
    COMMAND_OPCODE_GET = 0xC5,      // 读取设备
    COMMAND_OPCODE_DATA = 0xC6      // 设备数据
} command_opcode_t;

运行

编译&下载

为ART-Pi编译烧录本项目例程,nRF模块Client、Server端分别烧录对应固件,将烧录Client端的nRF模块通过串口连接到开发板。

配网

使用msh或小程序为ART-Pi配网,过程参考ART-PI-FACTORY项目,也可以通过网线直接连接扩展板。

使用nRF Mesh APP搜索nRF模块进行mesh配网和设置:

  • 静态OBB验证密码为6E6F726469635F6578616D706C655F31
  • 配网成功后为Client端和Server端绑定同一AppKey,并绑定到Element1Vendor Model
  • 然后创建一个地址为0xC023的组,将Element1里面的Vendor Model的发布地址和订阅地址都添加该组。

设置完成,接下来就可以使用WEB API访问和控制Mesh节点了。

许可声明

This package contains a snapshot of the BTstack Bluetooth Stack by BlueKitchen GmbH. It is free for non-commercial use. For commercial use, please contact BlueKitchen at contact@bluekitchen-gmbh.com。


本例程中包含了BTstack Bluetooth Stack,需要注意的是,BTstack 非商业用途是免费的。但是,对于商业用途,请联系BTstack官方以获得商业合作。