Exploring Mesh APIs using light switch example The light switch example is meant to showcase the APIs for the provisioner and provisionee roles and how a simple Bluetooth Mesh network may be set up and configured. The network consists of one static p…
Light switch demo  灯开demo   Purpose This demo project consists of four sub examples - The light switch server with and without GATT proxy support, the light switch client and a provisioner example. It demonstrates the mesh eco system containing devic…
Getting started To get started, take a look at the Light switch demo. It shows how a simple application can use the mesh stack and serves as an introduction to the Bluetooth Mesh concepts and nRF5 SDK for Mesh features and APIs. Bluetooth Mesh introd…
官方文档教程编译源码: http://infocenter.nordicsemi.com/index.jsp?topic=%2Fcom.nordic.infocenter.sdk%2Fdita%2Fsdk%2Fmesh_sdk.html&cp=4_1 Building the mesh stack The mesh library and example applications can be built using either CMake or SEGGER Embedded Studio.…
一: 官网介绍地址:http://www.nordicsemi.com/Products/Bluetooth-low-energy/nRF5-SDK-for-Mesh Nordic offers a complete solution for the Bluetooth mesh specification with the nRF5 SDK for Mesh and the nRF51 and nRF52 Series SoCs. It provides a powerful solution…
Installing the mesh toolchain To build the example applications, a toolchain based on either CMake or SEGGER Embedded Studio is required. Install instructions are provided for Windows and Debian/Ubuntu. The steps should be similar for other platforms…
nRF5 SDK for Mesh(六) BLE MESH 的 基础概念 Basic Bluetooth Mesh concepts The Bluetooth Mesh is a profile specification developed and published by the Bluetooth SIG. This document explains the basic concepts of the Bluetooth Mesh and gives an overview of th…
Basic Bluetooth Mesh concepts The Bluetooth Mesh is a profile specification developed and published by the Bluetooth SIG. This document explains the basic concepts of the Bluetooth Mesh and gives an overview of the operation and capabilities of the p…
SDK和Softdevice的区别是什么?怎么选择SDK和softdevice版本?芯片,SDK和softdevice有没有版本兼容问题?怎么理解SDK目录结构?SDK帮助文档在哪里?Softdevice帮助文档在哪里?如何选择某个SDK例子 (example) 以开始我们的BLE开发之旅?本文将对以上问题进行解答. Nordic目前有2套完全独立的SDK:nRF5 SDK和nRF Connect SDK.一般来说,开发nRF51/52产品推荐使用nRF5 SDK,开发nRF91/nRF53等新…
本本针对Telink BLE MESH SDK  灯控的使用进行说明. 1.调整灯光的频率 默认情况下 SDK PWM波的频率是 600HZ的,有时我们需要将它调整频率,例如调整为4K,只需要更改参数 PMW_MAX_TICK_MULTI 为31 就好了. 计算 PWM 频率公式 freq = CLOCK_SYS_CLOCK_HZ / (PMW_MAX_TICK) PMW_MAX_TICK=PMW_MAX_TICK_BASE*PMW_MAX_TICK_MULTI PMW_MAX_TICK_BAS…
本文将介绍Nordic nRF5 SDK软件架构以及softdevice工作原理,以加深大家对Nordic产品开发的理解,这样开发过程中碰到问题时,大家也知道如何去调试. 如果你刚开始接触nRF5 SDK,建议先看一下这篇文章“Nordic nRF5 SDK和softdevice介绍”,以建立Nordic nRF5 SDK的一些基本知识. 首先说明一下,Nordic nRF5系列产品都是使用Flash存储器的,确切说,是嵌入式可执行代码的Flash存储器,也就是说,代码是可以直接在上面运行的,这…
本文将讲述Nordic nRF5 SDK的主要调试手段,以帮助大家快速定位问题,并解决问题.一般来说,你可以通过打log方式,IDE的debug模式,SDK自带的app_error_check函数,以及命令行方式等多种手段来调试你的代码. 1. 通过打log方式进行调试 nRF5 SDK支持UART和SWD J-Link(RTT)两种底层通信方式来打印日志,SDK14之后日志也可以通过蓝牙或者Flash进行输出和存储打印,一般来说,UART和SWD用得比较多,其中UART使用串口助手来查看日志,…
0 引言 自2012年蓝牙4.0规范推出之后,全新的蓝牙低功耗(BLE)技术由于其极低的运行和待机功耗.低成本和跨厂商互操作性,3 ms低延迟.AES-128加密等诸多特色,可以用于计步器.心律监视器.传感器物联网等众多领域,大大扩展蓝牙技术的应用范围[1-2]. 尽管BLE已经被广泛应用于物联网领域,但是仍然存在着点对点的拓扑结构的限制,以及传输距离短.组网能力差等问题.由于蓝牙4.1规范中说明,一个BLE设备既可以在一个网络中作为主设备,又可以在另一个网络中作为从设备[3].因此,Mesh网…
BLE MESH 学习 BLE MESH 是一种蓝牙(n:m)组网的技术. 本篇先介绍 BLE MESH 到使用 ESP32 的官方示例对其进行学习讲解. 后面会进一步学习 SIG 的 BLE MESH 协议和架构,以及 RTL8762C 使用. 一. BLE 和 经典蓝牙简介 1.1 SIG 简介 蓝牙技术现如今由蓝牙技术联盟(Bluetooth special interest group,简称Bluetooth SIG)制定,后面称 SIG.SIG 负责发布维护蓝牙的通信规格和标准. 1.…
The mesh architecture   The mesh stack consists of a number of subsystems that are interfaced through a set of API modules. The API modules hide the complexity of their subsystems. The functionality provided in the API is sufficient to make a functio…
FDS,全称Flash Data Storage,用来访问芯片内部Flash的.当你需要把数据存储在Flash中,或者读取Flash中的用户数据,或者更新或者删除Flash中的数据,那么FDS模块是你最好的选择.FDS采用文件和记录方式来组织Flash数据,也就是说,真正的数据是放在一条记录中,而多条记录组成一个文件.根据应用的需要,整个系统可以只有一个文件,也可以包含多个文件.文件采用文件ID来标示,文件ID为2个字节(注:不能取值为0xFFFF).一个文件下面可以放一条记录,也可以放多条记录…
在嵌入式操作系统中,BootLoader是在操作系统内核运行之前运行.可以初始化硬件设备.建立内存空间映射图,从而将系统的软硬件环境带到一个合适状态,以便为最终调用操作系统内核准备好正确的环境. 在嵌入式系统中,通常并没有像BIOS那样的固件程序(注,有的嵌入式CPU也会内嵌一段短小的启动程序),因此整个系统的加载启动任务就完全由BootLoader来完成.在一个基于ARM7TDMI core的嵌入式系统中,系统在上电或复位时通常都从地址0x00000000处开始执行,而在这个地址处安排的通常就…
app_timer是大家经常用到的一个库,app_timer的功能就是定时,也就是说,你在某一时刻启动一个app timer并设定超时时间,超时时间一到,app_timer就会回调timeout handler,然后执行你需要的工作.使用app_timer时有如下几点需要注意: app_timer底层使用的是RTC1,而不是timer1/2/3/4,所以app_timer的功耗非常低:0.1uA左右. app_timer计时精度为1ms,也就是说,app_timer只能计时毫秒的倍数,如果你的计…
DFU控制点特性用于控制DFU过程的状态. 通过写入该特征来请求所有DFU程序. 标记过程结束的响应将作为通知收到. BLE传输 Transfer of an init packet DFU控制器首先检查init数据包是否已成功传输. 如果没有,DFU控制器检查它是否已部分转移. 如果已经传输了一些数据,则继续传输. 否则,DFU控制器发送Create命令以创建新数据对象,然后传输init数据包. 当init数据包可用时,DFU控制器发出Execute命令以启动init数据包的验证. Trans…
镜像的验证 在执行设备固件更新之前,应验证新映像. 在传输实际固件(预验证)之前,可以检查某些信息(例如,兼容性). 其他信息,例如图像的散列,应在传输(验证后)后进行验证. Init packet 执行DFU时,必须提供包含固件映像的包(zip格式),init数据包和指示包格式的清单文件. init数据包包含有关用于验证映像的固件映像的信息,必须对其进行签名以确保更新来自受信任的源. init数据包的所需内容在协议缓冲文件dfu-cc.proto中定义. 在验证init数据包期间,将检查ini…
作者 陈智伟,腾讯 12 级后台专家工程师,现负责欢乐游戏工作室公共后台技术研发以及团队管理工作.在微服务分布式架构以及游戏后台运维研发有丰富的经验. 前言 欢乐游戏工作室后台是分布式微服务架构,目前稳定承载着多款游戏,数千万 DAU 以及数百万级在线.原有云下架构脱胎于 QQGame 后台,核心架构已有 10 多年的历史,其中使用了多套目的不同的自研开发框架,自研基础组件,并为适应繁杂的业务场景,衍生出不同的服务模型,最终积累了数百个微服务,整体简化架构如下所示: 在这种大规模平台化的后台系统…
整合Nacos组件,环境搭建和入门案例详解 1.Nacos基础简介 1.1 关键特性 1.2 专业术语解释 1.3 Nacos生态圈 2.SpringBoot整合Nacos 2.1 新建配置 2.2 核心依赖 2.3 Yml配置文件 2.4 启动类配置 2.5 核心配置类 2.6 基础API用例 1.Nacos基础简介 Nacos 是构建以"服务"为中心的现代应用架构,如微服务范式.云原生范式等服务基础设施.聚焦于发现.配置和管理微服务.Nacos提供一组简单易用的特性集,帮助开发者快…
我们先来看看效果: 这里我们主要使用了github上的一个开源项目,配置起来比较方便,下面解释一下该如何使用:首先是:Gradle文件当中进行配置: dependencies { implementation 'ch.ielse:switchbutton:1.0.1' } 当然如果是老版本的Android Studio则使用: dependencies { complie 'ch.ielse:switchbutton:1.0.1' } 二.activity import android.supp…
解密蓝牙mesh系列 https://mp.weixin.qq.com/s/KdVhkgcmHIboA0xPFqFCgQ 1.NRF52832 & NRF52840 BLE mesh 协议栈 已经 升级到v2.1.1 版本了, 源码下载 nRF5 SDK for Mesh,依赖包下载 nRF5 SDK 15.0.0 2.NRF 关于 MESH  的  APP  下载地址…
前言 ​ ⽬前,微服务的架构⽅式在企业中得到了极⼤的发展,主要原因是其解决了传统的单体架构中存在的问题.当单体架构拆分成微服务架构就可以⾼枕⽆忧了吗? 显然不是的.微服务架构体系中同样也存在很多的挑战, ​ ⽐如:原来的单个应⽤拆分成了许多分散的微服务,它们之间相互调⽤才能完成⼀个任务,而⼀旦某个过程出错(组件越多,出错的概率也就越⼤),就⾮常难以排查. ​ 如果⽤户请求的响应太慢,我们就需要知道到底哪些地⽅⽐较慢?整个链路的调⽤各阶段耗时是多少?哪些调⽤是并发执⾏的,哪些是串⾏的?这些问题需要…
SOFAMesh是蚂蚁金服在ServiceMesh方向上的探索,下面是它高级技术专家敖小剑在QCon上海2018上的演讲. Service Mesh 是一个 基础设施层,用于处理服务间通讯.现代云原生应用有着复杂的服务拓扑,服务网格负责在这些拓扑中 实现请求的可靠传递. 在实践中,服务网格通常实现为一组 轻量级网络代理,它们与应用程序部署在一起,而 对应用程序透明. 加粗部分是重点: 基础设施层:这是 Service Mesh 的定位,今天内容的最后一个部分我会和大家详细展开这个话题: 服务间通…
Nordic Semiconductor宣布推出nRF52833先进多协议系统级芯片(SoC),这是其广受欢迎且验证通过的nRF52系列的第五个新成员.nRF52833是一款功耗超低的低功耗蓝牙 (Bluetooth® Low Energy /Bluetooth LE).Thread.Zigbee和2.4 GHz私有无线连接解决方​​案,包含蓝牙5.1测向功能的无线电,并且可以在-40至105°C温度范围内有效运作.nRF52833采用具有FPU的64 MHz 32位 Arm® Cortex®-…
小蚂蚁说: 本文是基于在 Service Mesher Meetup 上海站的主题分享<蚂蚁金服 Service Mesh 渐进式迁移方案>内容整理,完整的分享 PPT 获取方式见文章底部. 敖小剑,蚂蚁金服高级技术专家,十六年软件开发经验,微服务专家,Service Mesh 布道师,Servicemesher 社区联合创始人:龙轼,阿里巴巴技术专家.前京东 Hadoop 负责人.Hadoop 代码贡献者.现负责UC 基于 Kubernetes 自研的 PaaS 平台整体的稳定性. 大家好,…
在mesh client示例中加入spi_slave接口(without IDE) 主要是理解cmake构建的过程,然后修改工程中的inlcude路径及c源文件. 1. 解压mesh_sdk unzip nrf5_SDK_for_Mesh_v1.0.0_src.zip -d mesh_sdk cd mesh_sdk 解压后的mesh_sdk文件包含如下内容 total 68K drwxr-xr-x 6 gexin gexin 4.0K Feb 6 11:42 bin drwxr-xr-x 7 g…
  1 背景   1.1 多语言   微服务理念是提倡不同业务使用最适合它的语言开发,现实情况也确实如此,尤其是AI的兴起,一般大型互联网公司存在 C/C++.Java.Golang.PHP.Python.NodeJs 等语言的项目,这就意味着每种语言都需要实现了相同功能服务框架.然而,服务框架的 SDK 通常实现都比较重,需要实现服务注册与发现.服务路由.负载均衡.服务鉴权.服务降级.服务限流.网络传输等功能,所以这块的成本不言而喻.   1.2 产品交付   在伴随着服务组件的功能升级,bu…