当前文档版本为 v0.5.0,您可以访问当前页面的 开发中 版本以获取最近可能的更新。

更新日志

PAN1080 DK v0.5.0

PAN1080 Development Kit v0.5.0 (2022-09-26) 已发布:

1. SDK

Zephyr 平台

  • 新增 对 PAN108X-XB1/XB5 v2.0(黑色底板)/v3.0(黑色核心板)的支持

    • 对应 Zephyr Board:pan108xxb1_evbpan108xxb5_evb

  • 移除 对 PAN1080A AFX/AFLD EVB v1.0(绿色)底板/核心板的支持

    • 对应 Zephyr Board:pan1080a_afx_evbpan1080a_afld_evb

  • 更新 Zephyr ADC/I2C/SPI 等 Driver 的适配代码,增加对 DMA 传输的支持

  • 更新 Zephyr KSCAN Driver 的适配代码,以支持完整的 8 x 24 按键矩阵

  • 更新 中断默认优先级,在蓝牙开启的情况下,确保除 BLE Ctroller 用到的中断外,其他所有中断优先级(2/3)均低于蓝牙用到的优先级(0/1)

  • 新增 HLDO 根据温度自动校准的流程(CONFIG_SOC_LDO_CALIBRATION)

  • 优化 Bluetooth Host 部分代码,修改蓝牙 public 地址的获取策略

  • 优化 低功耗流程

Panchip HAL

  • 更新 Panchip ANT Library:

    • 解决了某些情况下的死机问题

  • 更新 Panchip BLE Controller Library:

    • 优化了蓝牙低功耗模式下的功耗

    • 蓝牙 Controller 由静态 LIB 库格式改为 HEX Image 格式

    • 优化了连接广播相关的稳定性

  • 更新 USB 底层 Driver 接口

例程

  • 演示例程:

    • basic/button: 新增按键例程,演示按键触发 GPIO 中断,打印 Log;并使用查询模式查询按键状态,点亮 LED

    • bluetooth/mult_roles: 修复 Scan 异常的问题

    • bluetooth/peripheral_hr: 重命名目录,并移除一些冗余的配置文件

    • drivers/adc_dma: 新增 ADC DMA 例程,演示 DMA 方式读取 ADC 数据

    • drivers/i2c_master: 新增 I2C Master DMA 传输的演示配置文件

    • drivers/i2c_slave: 新增 I2C Slave DMA 传输的演示配置文件

    • drivers/pw: 新增 SoC Standby Mode 0/1 的演示流程

    • drivers/spi_master: 适配新的 EVB 板的外部 SPI Flash 通信,并新增 SPI Master DMA 传输的演示配置文件

    • drivers/uart_fifo: 优化 Log 打印信息

  • 鼠标方案:

    • solutions/multi_model_mouse: 重构后的多模鼠标方案

    • solutions/prf_model_dongle: 重构后的 2.4G 接收器方案,用于配合多模鼠标的 2.4G 模式使用

  • ANT+ 方案:

    • ant_plus/ant_ble_bpwr: 新增 ANT 和 BLE 双模功率低功耗演示例程

    • ant_plus/ant_ble_bradar: 新增 ANT 和 BLE 双模雷达低功耗演示例程

    • ant_plus/ant_ble_bsc: 新增 ANT 和 BLE 双模踏频速度低功耗演示例程

测试用例

  • 新增用例:

    • benchmarks/app_kernel: 测试 Zephyr Microkernel Objects 的性能

    • benchmarks/footprints: 测试 Zephyr Kernel 一些底层机制的功能

    • benchmarks/latency_measure: 测试 Zephyr Kernel 与调度有关机制的时延

    • benchmarks/sys_kernel: 测试 Zephyr semaphore/lifo/fifo/stack/memslab 等 Kernel Objects 的性能

    • kernel/common: 测试 Zephyr Kernel 依赖的基础组件的功能

    • kernel/condvar/condvar_api: 测试 Zephyr Condition Variables 接口功能

    • kernel/context: 测试 Zephyr Kernel CPU / Context 接口功能

    • kernel/fatal/exception: 测试 Zephyr Kernel fatal error 处理流程

    • kernel/fatal/message_capture: 测试 Zephyr Kernel fatal error log 打印功能

    • kernel/fifo/fifo_api: 测试 Zephyr FIFO 接口基本功能

    • kernel/fifo/fifo_timeout: 测试 Zephyr FIFO 超时机制

    • kernel/fifo/fifo_usage: 测试 Zephyr FIFO 在不同使用场景下的功能是否正确

    • kernel/interrupt: 测试 Zephyr 中断机制

    • kernel/lifo/lifo_api: 测试 Zephyr LIFO 接口基本功能

    • kernel/lifo/lifo_usage: 测试 Zephyr LIFO 在不同使用场景下的功能是否正确

    • kernel/mbox/mbox_api: 测试 Zephyr Mailbox 接口基本功能

    • kernel/mbox/mbox_usage: 测试 Zephyr Mailbox 在不同使用场景下的功能是否正确

    • kernel/mem_heap/k_heap_api: 测试 Zephyr k_heap 接口基本功能

    • kernel/mem_heap/mheap_api_concept: 演示 Zephyr memory heap 接口基本概念

    • kernel/mem_protect/stack_random: 测试 Zephyr Stack Pointer Randomization 特性

    • kernel/mem_protect/stack_prot: 测试 Zephyr Stack Protection 特性

    • kernel/mem_slab/mslab: 测试 Zephyr Kernel Memory Slab 接口基本功能

    • kernel/mem_slab/mslab_api: 测试 Zephyr Kernel Memory Slab 接口更多功能

    • kernel/mem_slab/mslab_concept: 演示 Zephyr Memory Slab 接口基本概念

    • kernel/mem_slab/mslab_threadsafe: 测试 Zephyr Memory Slab 线程安全特性

    • kernel/msgq/msgq_api: 测试 Zephyr Message Queue 接口基本功能

    • kernel/msgq/msgq_usage: 测试 Zephyr Message Queue 在不同使用场景下的功能是否正确

    • kernel/mutex/mutex_api: 测试 Zephyr Mutex 接口基本功能

    • kernel/pending: 测试 Zephyr 可抢占线程的 Pendig 特性

    • kernel/pipe/pipe: 测试 Zephyr Pipe 接口基本功能

    • kernel/pipe/pipe_api: 测试 Zephyr Pipe 接口更多功能

    • kernel/poll: 测试 Zephyr Polling 接口基本功能

    • kernel/profiling/profiling_api: 测试 Zephyr Profiling 接口基本功能

    • kernel/queue: 测试 Zephyr Queue 接口基本功能

    • kernel/sched/deadline: 测试 Zephyr earliest-deadline-first scheduling 特性

    • kernel/sched/schedule_api: 测试 Zephyr Schedule 接口基本功能

    • kernel/semaphore/semaphore: 测试 Zephyr Semaphore 接口基本功能

    • kernel/sleep: 测试 Zephyr Cooperative Thread Sleep and Wakeup 特性

    • kernel/stack/stack: 测试 Zephyr Stack (k_stack) 接口在不同使用场景下的功能是否正确

    • kernel/threads/no-multithreading: 测试 Zephyr 不使用多线程的功能是否正确

    • kernel/threads/thread_apis: 测试 Zephyr 线程(Thread)相关接口基本功能

    • kernel/tickless/tickless_concept: 测试 Zephyr Tickless Kernel 特性

    • kernel/timer/starve: 测试 Zephyr Timer Starvation 特性

    • kernel/timer/timer_api: 测试 Zephyr Timer 接口基本功能

    • kernel/timer/timer_monotonic: 测试 Zephyr Timer 底层时钟测量接口基本功能

    • kernel/workq/critical: 测试 Zephyr Kernel Workqueue 功能

    • kernel/workq/work: 测试 Zephyr System Workqueue 功能

    • kernel/workq/work_queue: 测试 Zephyr Workqueue 接口的基本应用场景

2. HDK

  • 更新 Hardware Development Kit:

    • 更新 EVB 底板(v2.0)图纸

    • 更新 EVB 核心板(v3.0)图纸

    • 新增 EVB 底板(v2.0)设计源文件、生产文件

    • 新增 EVB 核心板(v3.0)设计源文件、生产文件

3. DOC

  • 更新 快速入门 文档:

    • 01_quick_start/quick_start_pan1080_sdk: SDK 快速入门 文档,完善了对 ZAL 工具的入门介绍,并移除了 quick build 脚本相关的介绍

    • 01_quick_start/sdk_develop_environment_intro: SDK 开发环境介绍 文档,更新了各个命令使用的 board 名称,并修复了一些错误的描述

    • 01_quick_start/sdk_framework: SDK 整体框架介绍 文档,更新了目录结构,并移除了 quick build 脚本相关的介绍

  • 更新 硬件资料 文档:

    • 02_hardware/evaluation_board_introduction/pan108x_evb_intro: PAN108x EVB 介绍 文档,更新了新的 EVB 底板(v2.0)和核心板(v3.0)介绍

    • 02_hardware/hardware_reference_design/pan108x_hw_reference_design: PAN108x 硬件参考设计 文档,更新了原理图、PCB、天线等设计建议

  • 更新 演示例程 文档:

    • 03_samples/ant_plus/ant_ble_bpwr: 新增 ANT&BLE: ANT BLE BPWR 文档,介绍 ANT 和 BLE 双模功率低功耗演示例程

    • 03_samples/ant_plus/ant_ble_bradar: 新增 ANT&BLE: ANT BLE BRADAR 文档,介绍 ANT 和 BLE 双模雷达低功耗演示例程

    • 03_samples/ant_plus/ant_ble_bsc: 新增 ANT&BLE: ANT BLE BSC 文档,介绍 ANT 和 BLE 双模踏频速度低功耗演示例程

    • 03_samples/ant_plus/ant_ble_hrm: ANT&BLE: ANT BLE HRM 文档,新增了一些细节 Config 介绍(电量检测、OTA 等)

    • 03_samples/basic/button: 新增 Basic: Button 文档,介绍 Button 按键使用的演示例程

    • 03_samples/solutions/multi_model_mouse: Solution: Multi Model Mouse 文档,介绍了多模鼠标方案支持的最新特性

    • 03_samples/solutions/prf_model_dongle: Solution: PRF Model Dongle 文档,介绍了多模鼠标方案 2.4G 模式对应的 USB Dongle 支持的最新特性

    • 文档整体结构:

      • 更新 编译和烧录 小节,移除了 quick build 脚本相关的描述,改为建议使用 ZAL 工具进行编译和烧录

      • 新增 RAM/Flash资源使用情况 小节,介绍各个例程的存储空间使用情况

  • 更新 开发指南 文档:

    • 04_dev_guides/general_app_dev_notes: SoC App 开发指南 文档,将 快速上手 SoC App 开发 文档合并至此文档,并更新了一些描述

    • 04_dev_guides/hardware_level_driver_guidance: 新增 SoC 底层驱动使用指南 文档,介绍如何在 Zephyr App 中直接使用 MCU 底层 Driver

    • 04_dev_guides/zephyr_board_guidance: Zephyr Board 配置指南 文档,更新了一些细节,以匹配最新版本的 EVB (v2.0/v3.0) 配置

    • 04_dev_guides/zephyr_configuration_guidance: Zephyr Devicetree 与 Kconfig 配置指南 文档,更新了一些细节,以匹配最新版本的 EVB (v2.0/v3.0) 配置

  • 更新 量产测试 文档:

    • 05_manufacturing_and_testing/rf_test: RF TEST 文档,增加了测试步骤等细节介绍

  • 新增 开发工具 文档:

    • 06_dev_tools/app_launcher_tool_intro: App Launcher for PAN108x 文档,从 开发指南 一章中移至此处,并更新了工具最新版本对应的介绍

    • 06_dev_tools/pan108x_toolbox_intro: 新增 PAN108x Toolbox 工具箱 文档,介绍 PAN108x Toolbox 工具箱的基本功能

  • 更新 其他文档

    • 07_others/PAN108x-User-Manual.pdf: SoC User Manual 文档,更新版本至 v1.2-draft

    • 07_others/PAN108x-产品说明书.pdf: PAN108x 产品说明书 文档(Datasheet 中文版),更新版本至 v1.7

  • 新增 MCU 底层驱动接口文档(PAN1080 Peripheral API Documentation)

4. TOOLS

  • 更新 Zephyr App Launcher 工具至 v1.3.1

    • 新增 Cancel 功能,在执行 Build/Rebuild 操作后,按钮会立刻变为 Cancel 按钮,点击后可以取消当前的 Build/Rebuild 流程

    • 新增 Open Build Output Folder 按钮,点击后可以直接打开编译输出目录

    • 优化 状态栏 Message 显示逻辑,增加 3s 显示超时,超时后会清空状态栏消息

    • 新增 PAN108x-DK 与 Toolchain 版本匹配检查,匹配错误时会弹出提示

    • 修复 PAN108x-DK 目录在某些情况下识别错误的问题

    • 更新 工具发布方式,将多个文件压缩打包成一个可执行文件,双击即可运行

    • 优化 工具目录及可执行文件命名规则,带上版本号

    • 更新 软件 LOGO

    • 更新 一些显示文本

  • 更新 RF测试固件

    • 更新 PAN1080 RF测试固件

    • 新增 PAN1080 PRF 收包率测试固件

    • 新增 PAN1080 RSSI VIEWER测试固件

  • 移除 Typora 工具安装包,目前 SDK Toolchain 自带的 VS Code 已经支持 Markdown 格式文本的预览功能

5. ISSUES

已解决问题

  • BUG #313: mult_roles测试—设备作为Slave与3个手机保持长时间连接出现异常, bt_hci_core,断链后无法再次重连

  • BUG #342: eddystone测试—不可连接广播包测试–偶现复位板卡30s之后,仍然可以连接板卡现象

  • BUG #396: ble-only模式下,鼠标配对后重连,上报率不达标

  • BUG #409: ANT双模长时间运行会出现死机或者蓝牙断连问题

  • BUG #410: peripheral_hids测试—兼容性测试–HUAWEI Mate40 Pro NOH-AN01与设备进行重连时失败

遗留问题

  • ISSUE #22: sample: mesh_speaker在小度音响上工作异常

  • BUG #301: Amazon Echo音箱测试-Echo Plus2-2个音箱入网之后,不做任何操作,出现Halting system且灯控不可操作

  • BUG #318: 手机NRF Mesh测试-烧录mesh_panhip的sample,在nRF Mesh界面上搜索设备进行连接时,有很多名称为panchip的设备显示且无法连接成功

  • BUG #319: Friend-LPN,多个Friend,一个LPN,查看Friend切换流程,切换到新Friend时,不稳定,发送开关灯命令不生效

  • BUG #320: Heartbeat Publish—查看Heart beat的打印间隔为4s,丢包的概率13/39为33%

  • BUG #323: 手机NRF Mesh测试-对mesh设备Models进行入网绑定App Key验证开关灯功能出现几点问题

  • BUG #329: mesh_panchip会烧录后复位板卡会出现异常,且复位后信息不会刷新,经过较久时间仍然记得上次复位次数

  • BUG #344: iot_wechat测试—Android手机与设备连接测试AirSync微信蓝牙协议第二次测试时AUTH失败

  • BUG #371: mult_roles测试—配置3主0从,实际上central只能连接2个外设,第3个外设无法连接

  • BUG #372: central测试—Central设备和从设备连接异常

  • BUG #373: central_ht测试—central和peripheral_ht连接后,多次复位peripheral_ht会出现连接central和外设均异常卡着,并且不上报数据

新增问题

  • BUG #421: ant_ble_hrm测试—-双模蓝牙断连

  • BUG #427: central_hr测试—连接功能–主设备可以与从设备在连接中多次复位central_hr出现hard fault

  • BUG #428: central_hr测试—连接功能–central_hr连接peripheral_hr的连接性较差,出现连接7、8次成功1次,概率较低

  • BUG #429: central_hr测试—连接功能–central_hr搜索过程中停止搜索

  • BUG #430: peripheral_hids测试—兼容测试中有些手机的重连性能不好

  • BUG #432: 键鼠测试—multi_model_mouse测试开启蓝牙模式时,配对后设备显示在“其他设备”中,滑动鼠标没有反应

  • BUG #433: 键鼠测试—multi_model_mouse测试开启蓝牙模式时,配对重连后出现异常

  • BUG #434: 键鼠测试—multi_model_mouse测试开启蓝牙模式时,打开自动画圈的宏后,画圈数据不稳定,在80-130之间循环且概率识别错误

  • BUG #447: ant_ble_hrm测试–ant和ble双模手动模式,连接蓝牙和ant码表,按键快的情况下,会导致手机频繁断链(0x08)

PAN1080 DK v0.4.1

PAN1080 Development Kit v0.4.1 (2022-08-18) 已发布:

  • 此版本新增了 ANT+ 支持;

  • 此版本更新了产品说明书(V1.6),介绍了最新版本芯片信息(调整了SoC封装的某些引脚位置),但目前的文档和 HDK 仍然是基于旧版本芯片的开发板(PAN1080A AFLD/AFX EVB V1.0)介绍的,我们将会在后续的 DK 版本中更新这些内容;

1. SDK

Zephyr 平台

  • 新增 Panchip BLE/2.4G/ANT Library 版本号信息打印

  • 修复 Rebuild/Pristine 操作会将 VS Code Workspace 文件先删除再重建的问题

  • 更新 DMA Driver 代码,优化一些接口实现,并修复一些潜在的风险

  • 更新 UART Driver 代码,支持 Async API

  • 更新 Idle 线程调度策略,当发现 DMA 正在传输数据时,不允许进入低功耗状态

  • 更新 Clock Control Driver 代码,支持在 Devicetree 中配置系统/蓝牙的低速时钟

  • 修复 ACT32K 低功耗时会被其他外设中断影响 32K 计数的问题

  • 新增 宏开关控制是否启用 ACT32K 时钟转换

  • 移除 Zephyr 低功耗流程与 BLE Controller Library 的依赖

Panchip HAL

  • 新增 Panchip ANT Library,用于支持 ANT+ 相关应用

  • 更新 Panchip BLE Controller Library

    • 移除代码中与 Zephyr 低功耗流程的依赖

例程

  • 新增例程

    • ant_plus/ant_ble_hrm: ANT 和 BLE 双模心率低功耗演示例程

    • ant_plus/ant_bsc: ANT 踏频速度演示例程

    • ant_plus/ant_bpwr: ANT 自行车功率演示例程

    • ant_plus/ant_bradar: ANT 自行车雷达演示例程

    • ant_plus/ant_hrm: ANT 心率演示例程

    • ant_plus/ant_pm: ANT 心率低功耗演示例程

测试用例

  • 新增用例:

    • drivers/uart/uart_async_api: 测试 Zephyr Uart Async API

  • 问题修复或优化:

    • drivers/counter/counter_basic_api: 修复 测试用例执行失败的问题

    • drivers/gpio/gpio_basic_api: 修复 测试用例执行失败的问题

    • subsys/pm/power_mgmt_soc: 修复 测试用例执行失败的问题

2. HDK

3. DOC

  • 新增文档

    • 03_samples/ant_plus/ant_ble_hrm: 新增 ANT 和 BLE 双模心率低功耗例程说明文档

    • 03_samples/ant_plus/ant_bsc: 新增 ANT 踏频速度例程说明文档

    • 03_samples/ant_plus/ant_bpwr: 新增 ANT 自行车功率例程说明文档

    • 03_samples/ant_plus/ant_bradar: 新增 ANT 自行车雷达例程说明文档

    • 03_samples/ant_plus/ant_hrm: 新增 ANT 心率例程说明文档

    • 03_samples/ant_plus/ant_pm: 新增 ANT 心率低功耗例程说明文档

    • 04_dev_guides/ant_add_profile_guidance: 新增 如何添加一个 ANT+ Profile 说明文档

    • 04_dev_guides/ant_develop_guidance: 新增 ANT 开发说明文档

    • 04_dev_guides/zephyr_encrypt_guidance: 新增 zephyr encrypt 说明文档

    • 06_others/PAN108x-User-Manual.pdf: 新增 PAN108x User Manual v1.1 Draft Version

  • 命名更改:

    • 06_others/PAN1080-Datasheet.pdf 重命名为 06_others/PAN108x-Datasheet.pdf

    • 06_others/PAN1080-产品说明书.pdf 重命名为 PAN108x-产品说明书.pdf

  • 更新文档:

    • 06_others/PAN108x-产品说明书.pdf: 更新PAN1080产品说明书至 V1.6,调整了SoC封装的某些引脚位置

4. TOOLS

  • PAN1080 量产烧录工具升级至V0.2.004版本

5. ISSUES

已解决问题

  • BUG #309: 2.4G发送端信号tx和接收端信号rx,设置不同的频点和不同的CRC搭配时,成功率偏低,丢包偏多

  • BUG #310: 蓝牙作为 central 时,与其它设备建立连接时,会异常断开连接

  • BUG #316: central_multilink测试—Central设备可以连接从设备,但是连接不稳定,连接上会发生断链

  • BUG #324: ble-only模式下,压力测试蓝牙配对、连接操作,鼠标在断链后无法实现自动重连

  • BUG #337: central_ht测试—扫描设备peripheral_ht后,无相应广播数据

  • BUG #348: central_multilink测试—Central设备无法连接从设备

  • BUG #362: 跳频模式下,Mouse和usb dongle均连接usb,运行大概4分钟左右就会出现掉0

遗留问题

  • ISSUE #22: sample: mesh_speaker在小度音响上工作异常

  • BUG #301: Amazon Echo音箱测试-Echo Plus2-2个音箱入网之后,不做任何操作,出现Halting system且灯控不可操作

  • BUG #313: mult_roles测试—设备作为Slave与3个手机保持长时间连接出现异常, bt_hci_core,断链后无法再次重连

  • BUG #318: 手机NRF Mesh测试-烧录mesh_panhip的sample,在nRF Mesh界面上搜索设备进行连接时,有很多名称为panchip的设备显示且无法连接成功

  • BUG #319: Friend-LPN,多个Friend,一个LPN,查看Friend切换流程,切换到新Friend时,不稳定,发送开关灯命令不生效

  • BUG #320: Heartbeat Publish—查看Heart beat的打印间隔为4s,丢包的概率13/39为33%

  • BUG #323: 手机NRF Mesh测试-对mesh设备Models进行入网绑定App Key验证开关灯功能出现几点问题

  • BUG #329: mesh_panchip会烧录后复位板卡会出现异常,且复位后信息不会刷新,经过较久时间仍然记得上次复位次数

  • BUG #342: eddystone测试—不可连接广播包测试–偶现复位板卡30s之后,仍然可以连接板卡现象

  • BUG #344: iot_wechat测试—Android手机与设备连接测试AirSync微信蓝牙协议第二次测试时AUTH失败

  • BUG #371: mult_roles测试—配置3主0从,实际上central只能连接2个外设,第3个外设无法连接

  • BUG #373: central_ht测试—central和peripheral_ht连接后,多次复位peripheral_ht会出现连接central和外设均异常卡着,并且不上报数据

  • BUG #396: ble-only模式下,鼠标配对后重连,上报率不达标

新增问题

  • BUG #409: ANT双模长时间运行会出现死机或者蓝牙断连问题

  • BUG #410: peripheral_hids测试—兼容性测试–HUAWEI Mate40 Pro NOH-AN01与设备进行重连时失败

PAN1080 DK v0.4.0

PAN1080 Development Kit v0.4.0 (2022-07-21) 已发布:

1. SDK

Zephyr 平台

  • 修改 build 输出目录自动生成的 VS Code Wordspace 文件名称(与当前目录名称一致)

  • 新增 Zephyr Clock Control Driver 适配

  • 新增 Zephyr DMA Driver 适配

  • 新增 Zephyr KSCAN Driver 适配

  • 新增 Zephyr USB Subsystem 适配

  • 新增 Zephyr Watchdog Driver 适配

  • 新增 通过 Devicetree 的方式配置系统时钟

  • 修改 各个 Peripheral 外设时钟的开启时机,由 默认开启所有外设时钟 修改为 仅开启使用到的外设时钟

  • 更新 PAN1080 Flash FLM 文件及名称(需要同时更新 Toolchain 至 v0.1.0 版本

  • 修改 pan1080a_afld_evb 与 pan1080a_afx_evb 默认的 I2C 引脚

  • 优化 低功耗流程

Panchip HAL

  • 新增 Panchip 2.4G Library

  • 更新 Panhcip BLE Library

    • 修改射频配置,支持 RSSI

    • 修改发射功率配置,支持调整功率范围 -45 到 7dBm

    • 低功耗下默认使能 Active 32K 特性

  • 新增 Panchip USB Driver for Zephyr USB Device

  • 修复 Panchip Peripheral Driver 的一些问题

  • 更新 Panchip Peripheral Driver 注释

  • 新增 PAN1080 Peripheral API 文档(位于01_SDK\modules\hal\panchip\panplat\pan1080\bsp\doc目录下)

例程

  • 新增例程:

    • drivers/clock_control: Clock Control 功能演示例程

    • drivers/dma_m2m: DMA Memory-to-Memory 演示例程

    • drivers/dma_m2p2m: DMA Memory-to-Peripheral & Peripheral-to-Memory 演示例程

    • drivers/kscan: Key Scan 功能演示例程

    • drivers/watchdog: Watchdog 功能演示例程

    • subsys/usb/dfu: USB DFU 功能演示例程

    • subsys/usb/hid-mouse: USB HID-Mouse 功能演示例程

    • solutions/dongle_entity: 实体 2.4G Dongle 方案

    • solutions/mouse_entity: 实体鼠标方案

  • 问题修复或优化:

    • bluetooth/peripheral: 关闭 auto phy update & data length update 功能,开启 bt keys overwrite 功能

    • bluetooth/peripheral_csc: 默认开启 BT Debug Log

    • bluetooth/peripheral_dis: 默认开启 BT Debug Log

    • bluetooth/peripheral_esp: 默认开启 BT Debug Log

    • bluetooth/peripheral_identity: 默认开启 BT Debug Log

    • bluetooth/peripheral_hr: 新增宏开关用于修改连接参数,并更新了低功耗配置文件prj_lp_rcl.confprj_lp_xtl.conf

    • drivers/counter: 修复计数错误的问题,并优化了 Log 打印内容

    • proprietary_radio/prf_io_pulse_rx: 使用新的 2.4G Lib

    • proprietary_radio/prf_io_pulse_tx: 使用新的 2.4G Lib

    • proprietary_radio/prf_sample_rx: 使用新的 2.4G Lib

    • proprietary_radio/prf_sample_tx: 使用新的 2.4G Lib

    • solutions/ble_hid_selfie: 开启 bt keys overwrite 功能

    • solutions/model_mouse: 优化跳频算法、新增对码功能、更新数据包结构、增大Payload长度至11字节、外围设备驱动适配、并修复了一些问题

    • solutions/usb_dongle: 优化跳频算法、新增对码功能、更新数据包结构、增大Payload长度至11字节、并修复了一些问题

  • 命名更改:

    • bluetooth/audio_client 重命名为 bluetooth/central_audio

    • bluetooth/audio_server 重命名为 bluetooth/peripheral_audio

  • 已知问题:

    • bluetooth/central_audio (peripheral_audio): 收发数据时可能因为环境等问题导致阻塞

测试用例

  • 新增用例:

    • drivers/dma/dma_chan_blen_transfer: 测试 DMA 对不同 Burst Length 的支持情况

    • drivers/dma/dma_loop_transfer: 测试 Zephyr DMA API,循环传输多次

    • drivers/kscan/kscan_api: 测试 Zephyr KSCAN API

    • drivers/watchdog/wdt_basic_api: 测试 Zephyr Watchdog API

2. HDK

3. DOC

04_DOC 目录下的所有文档均由 Markdown 格式修改为 html 格式

  • 新增文档:

    • 03_samples/bluetooth/shell_pdt: 新增 bluetooth shell_pdt 例程说明文档

    • 03_samples/drivers/clock_control: 新增 clock_control 例程说明文档

    • 03_samples/drivers/dma_m2m: 新增 DMA Memory-to-Memory 例程说明文档

    • 03_samples/drivers/dma_m2p2m: 新增 DMA Memory-to-Peripheral-to-Memory 例程说明文档

    • 03_samples/drivers/kscan: 新增 kscan 例程说明文档

    • 03_samples/drivers/watchdog: 新增 watchdog 例程说明文档

    • 03_samples/subsys/usb_hid_mouse: 新增 usb hid mouse 例程说明文档

    • 03_samples/subsys/usb_dfu: 新增 usb dfu 例程说明文档

    • 04_dev_guides/zephyr_tracing_guidance: 新增 zephyr tracing 机制说明文档

    • 05_manufacturing_and_testing/manufacture: 新增产侧说明文档

    • 05_manufacturing_and_testing/rf_test: 新增 RF 测试说明文档

    • 06_others/PAN1080-BQB-Test-Report-185353.pdf: 新增 BQB 测试报告

  • 更新文档:

    • 01_quick_start/quick_start_pan1080_sdk: 更新获取PAN1080 DK 及编译工具链的方法

    • 03_samples/drivers/counter: 更新打印 LOG

    • 03_samples/drivers/i2c_master: 更新连接引脚说明

    • 03_samples/drivers/i2c_slave: 更新连接引脚说明

    • 03_samples/solutions/model_mouse: 新增实体鼠标与 Dongle 配置说明及 API 说明

    • 04_dev_guides/app_launcher_tool_inro: 更新 ZAL Tool (基于v1.2.1) 功能介绍

    • 04_dev_guides/ble_app_dev_notes: 添加功耗和 RSSI 测试数据,并合并蓝牙开发文档

    • 06_others/PAN1080 产品说明书.pdf: 更新PAN1080产品说明书至 V1.5

  • 命名更改:

    • 05_soc_manual 目录重命名为 06_others

4. TOOLS

  • 更新 Zephyr App Launcher 工具至 v1.2.2

    • 新增 Erase 按钮,用于擦除全部 Flash

    • 更新 Help/Document 菜单弹出对话框的显示内容,新增 DK&Toolchain 下载链接

  • 移除 PAN1080 量产烧录工具 PAN1080 Tool 可执行文件,添加最新版本的下载链接

  • 新增 RF 测试工具下载链接及测试固件

5. ISSUES

已解决问题

  • BUG #309: 2.4G发送端信号tx和接收端信号rx,设置不同的频点和不同的CRC搭配时,成功率偏低,丢包偏多

  • BUG #310: 蓝牙作为 central 时,与其它设备建立连接时,会异常断开连接

  • BUG #316: central_multilink测试—Central设备可以连接从设备,但是连接不稳定,连接上会发生断链

  • BUG #324: ble-only模式下,压力测试蓝牙配对、连接操作,鼠标在断链后无法实现自动重连

  • BUG #337: central_ht测试—扫描设备peripheral_ht后,无相应广播数据

  • BUG #348: central_multilink测试—Central设备无法连接从设备

  • BUG #362: 跳频模式下,Mouse和usb dongle均连接usb,运行大概4分钟左右就会出现掉0

遗留问题

  • ISSUE #22: sample: mesh_speaker在小度音响上工作异常

  • BUG #301: Amazon Echo音箱测试-Echo Plus2-2个音箱入网之后,不做任何操作,出现Halting system且灯控不可操作

  • BUG #313: mult_roles测试—设备作为Slave与3个手机保持长时间连接出现异常, bt_hci_core,断链后无法再次重连

  • BUG #318: 手机NRF Mesh测试-烧录mesh_panhip的sample,在nRF Mesh界面上搜索设备进行连接时,有很多名称为panchip的设备显示且无法连接成功

  • BUG #319: Friend-LPN,多个Friend,一个LPN,查看Friend切换流程,切换到新Friend时,不稳定,发送开关灯命令不生效

  • BUG #320: Heartbeat Publish—查看Heart beat的打印间隔为4s,丢包的概率13/39为33%

  • BUG #323: 手机NRF Mesh测试-对mesh设备Models进行入网绑定App Key验证开关灯功能出现几点问题

  • BUG #329: mesh_panchip会烧录后复位板卡会出现异常,且复位后信息不会刷新,经过较久时间仍然记得上次复位次数

  • BUG #342: eddystone测试—不可连接广播包测试–偶现复位板卡30s之后,仍然可以连接板卡现象

  • BUG #344: iot_wechat测试—Android手机与设备连接测试AirSync微信蓝牙协议第二次测试时AUTH失败

  • BUG #371: mult_roles测试—配置3主0从,实际上central只能连接2个外设,第3个外设无法连接

  • BUG #373: central_ht测试—central和peripheral_ht连接后,多次复位peripheral_ht会出现连接central和外设均异常卡着,并且不上报数据

新增问题

  • BUG #396: ble-only模式下,鼠标配对后重连,上报率不达标

PAN1080 DK v0.3.0

PAN1080 Development Kit v0.3.0 (2022-06-03) 已发布:

1. SDK

Zephyr平台

  • 适配 Zephyr ACC Driver (新增非标准接口)

  • 修复 Zephyr ADC Driver 适配问题

  • 修复 Zephyr GPIO Driver 适配问题

  • 适配 Zephyr I2C Driver (支持master和部分slave特性)

  • 调整 Zephyr PINMUX Driver 适配接口

  • 适配 Zephyr QDEC Driver (新增非标准接口)

  • 适配 Zephyr SPI Driver (目前只支持master模式)

  • 调整 Zephyr默认编译优化选项,由 Size Optimize 改为 Speed Optimize

  • 调整 CONFIG_MAIN_STACK_SIZE,从1024增加至1280

  • 关闭 CONFIG_DYNAMIC_INTERRUPTS 使能

  • 修改 PAN1080 SoC 的命名,并新增一些SoC型号

  • 新增 SoC FW Encryption 的底层框架支持

  • 优化 Zephyr 低功耗流程

  • 优化 PAN1080 HAL层 Driver,并修复一些问题

协议栈

  • 更新libble_controller,支持动态修改发射功率(目前仅支持 -45dBm, 0dBm to 7dBm)

  • 修复 Bluetooth Central 无法正确建立连接的问题

  • 修复 长时间连接异常断开连接的问题

  • 支持 Bluetooth & Proprietary Radio 2.4G 双模同时工作

  • 优化 功耗

  • 恢复 net_buf alloc 超时配置, 避免申请失败导致的异常

  • 调整 堆栈大小

  • 修改 BT_CTLR_SLEEP_CLOCK_SOURCE 的描述

例程

  • 新增例程:

    • drivers/acc:ACC 功能演示例程

    • drivers/adc:ADC 功能演示例程

    • drivers/counter:Counter (HW Timer) 功能演示例程

    • drivers/flash_shell:Flash 功能演示例程

    • drivers/gpio:GPIO 功能演示例程

    • drivers/i2c_master:I2C master 功能演示例程

    • drivers/i2c_slave:I2C slave 功能演示例程

    • drivers/pinmux: PINMUX 功能演示例程

    • drivers/pm: Zephyr Power Management(低功耗)功能演示例程

    • drivers/pwm_rgb: PWM 功能演示例程

    • drivers/qdec_pwm: QDEC 功能演示例程

    • drivers/spi_master: SPI master 通信演示例程

    • drivers/uart_fifo:UART 功能演示例程

    • bluetooth/peripheral_ota:BLE OTA功能演示例程

  • 问题修复或优化:

    • bluetooth/mult_roles: 解决 central 只能连接一次的问题

    • bluetooth/peripheral_identity: 解决运行时的堆栈溢出

    • bluetooth/peripheral_hids: 修改默认配置,支持与多个设备配对,支持保留2组配对信息

    • bluetooth/peripheral_ota: 新增例程,用于演示 通过蓝牙连接方式进行OTA

    • solutions/model_mouse:增加同步流程,增加软件buffer缓存机制,修改payload为动态payload方式

    • solutions/usb_dongle:增加同步流程,增加软件buffer缓存机制,修改payload为动态payload方式

    • 更新一些例程的config文件名

  • 已知问题:

    • bluetooth/audio_client (audio_server): 收发数据时可能因为环境等问题导致阻塞

测试用例

  • 新增用例:

    • drivers/acc/acc_api: 测试 Zephyr ACC API

    • drivers/acc/i2c_api: 测试 Zephyr I2C API

    • drivers/spi/spi_loopback: 测试 Zephyr SPI API

  • 问题修复或优化:

    • drivers/gpio/gpio_api_1pin: 优化 测试流程

    • subsys/settings/nvs/raw: 修复 编译失败的问题

2. HDK

3. DOC

  • 新增文档:

    • 02_hardware/hardware_reference_design/pan1080_hw_reference_design.md: 新增 硬件设计参考文档

    • 03_samples/basic/blinky.md: 新增 blinky 例程说明文档,演示GPIO控制LED灯闪烁

    • 03_samples/basic/synchronization.md: 新增 synchronization 例程说明文档,演示zephyr多线程调度

    • 03_samples/bluetooth/central.md: 新增 bluetooth central 例程说明文档

    • 03_samples/bluetooth/central_hr.md: 新增 bluetooth central_hr 例程说明文档

    • 03_samples/bluetooth/central_ht.md: 新增 bluetooth central_ht 例程说明文档

    • 03_samples/bluetooth/central_multilink.md: 新增 bluetooth central_multilink 例程说明文档

    • 03_samples/bluetooth/eddystone.md: 新增 bluetooth eddystone 例程说明文档

    • 03_samples/bluetooth/ibeacon.md: 新增 bluetooth ibeacon 例程说明文档

    • 03_samples/bluetooth/peripheral.md: 新增 bluetooth peripheral 例程说明文档

    • 03_samples/bluetooth/peripheral_csc.md: 新增 bluetooth peripheral_csc 例程说明文档

    • 03_samples/bluetooth/peripheral_dis.md: 新增 bluetooth peripheral_dis 例程说明文档

    • 03_samples/bluetooth/peripheral_esp.md: 新增 bluetooth peripheral_esp 例程说明文档

    • 03_samples/bluetooth/peripheral_hids.md: 新增 bluetooth peripheral_hids 例程说明文档

    • 03_samples/bluetooth/peripheral_hr.md: 新增 bluetooth peripheral_hr 例程说明文档

    • 03_samples/bluetooth/peripheral_ota.md: 新增 bluetooth peripheral_ota 例程说明文档

    • 03_samples/drivers/acc.md: 新增 acc 例程说明文档

    • 03_samples/drivers/adc.md: 新增 adc 例程说明文档

    • 03_samples/drivers/counter.md: 新增 counter 例程说明文档

    • 03_samples/drivers/flash_shell.md: 新增 flash_shell 例程说明文档

    • 03_samples/drivers/gpio.md: 新增 gpio 例程说明文档

    • 03_samples/drivers/i2c_master.md: 新增 i2c master 例程说明文档

    • 03_samples/drivers/i2c_slave.md: 新增 i2c slave 例程说明文档

    • 03_samples/drivers/pinmux.md: 新增 pinmux 例程说明文档

    • 03_samples/drivers/pm.md: 新增 pm (power management) 例程说明文档

    • 03_samples/drivers/pwm_rgb.md: 新增 pwm_rgb 例程说明文档

    • 03_samples/drivers/qdec_pwm.md: 新增 qdec_pwm 例程说明文档

    • 03_samples/drivers/spi_master.md:新增 spi master 例程说明文档

    • 03_samples/drivers/uart_fifo.md:新增 uart_fifo 例程说明文档

    • 03_samples/solutions/ble_hid_selfie.md:新增 bluetooth hid selfie 方案说明文档

    • 03_samples/solutions/usb_dongle.md: 新增 usb dongle 方案说明文档

    • 04_dev_guides/zephyr_board_guidance.md: 新增 zephyr board 配置指南文档

    • 04_dev_guides/zephyr_configuration_guidance.md: 新增 zephyr 配置系统指南文档

  • 更新文档:

    • 01_quick_start/quick_start_pan1080_sdk.md: 修复一些描述错误

    • 01_quick_start/sdk_framework.md: 补充sdk目录框架说明

    • 02_hardware/evaluation_board_introduction/pan1080_evb_intro.md: 修改文档路径

    • 03_samples/bluetooth/mult_roles.md: 更新注意事项描述

    • 03_samples/bluetooth/peripheral_ht.md: 更新图片

    • 03_samples/solutions/model_mouse.md: 更新图片,修改文档名称

    • 03_samples/README-internal.md: 更新例程文档总目录,新增driver例程说明

    • 04_dev_guides/Developing Bluetooth Mesh Applications.md: 更新部分描述

    • 04_dev_guides/faqs.md: 新增一些常见问题的解答

    • 04_dev_guides/how_to_develop_soc_app.md: 更新部分参考文档

    • 05_soc_manual/PAN1080 产品说明书.pdf: 更新PAN1080产品说明书

    • README-internal.md: 更新文档总目录

4. TOOLS

  • 更新 Zephyr App Launcher 工具至 v1.1.1

    • 修复 Build / OpenIDE 等按钮功能无效的问题

    • 新增 更新board和project列表的按钮

    • 优化 列表显示,将project与config拆分到两个列表中显示

    • 修复 无法正确识别 Overlay Config文件的问题

    • 优化 界面显示,为按钮增加 Tooltip 快捷帮助信息

5. ISSUES

已解决问题

  • ISSUE #41: Zephyr App Launcher for PAN1080问题

  • BUG #288: central测试—Central设备主动扫描功能,扫描到对端设备连接之后立即断链

  • BUG #289: 蓝牙多角色功能实际支持的连接个数比配置的个数少一个

  • BUG #290: peripheral_identity测试—测试设备支持的最大连接个数时,出现设备发不出广播的情况

  • BUG #295: mult_roles测试—配置0主8从-链路超时连接失败

  • BUG #299: peripheral_hids测试—多次进行连接、测试、重连操作、会出现断链后但是设备仍然处于连接状态

  • BUG #311: central_ht测试—主设备central_ht无法与peripheral_ht建立连接,也无温度数据上报

  • BUG #312: mult_roles测试—配置3主0从-设备作为Master,验证设备可以支持的最大链路数失败,建立一条链路,建立第二条时,会强制把第一条链路断开

  • BUG #314: peripheral测试—连接、断链、重连测试中,出现连接一次成功后,第2次连接异常,无法再次连接现象

  • BUG #315: prf-2.4g测试—点对点通信,过一段时间会偶现接收端rx data crc err

  • BUG #317: peripheral_hids测试—苹果手机iphone6s和华为nova手机均不能与设备进行正常连接、断链、重连

  • BUG #321: testcase中counter和gpio测试失败

  • BUG #322: rf-only带内模式,鼠标烧录异常

  • BUG #325: rf-only带内模式下,复位dongle后鼠标不发起画圈

  • BUG #354: rf-enhance带重传跳频模式下,RF上报率最大976hz,不太稳定,偶现速率掉0

  • BUG #355: rf-only带内模式下,RF模式下上报率最大为960hz

  • BUG #328: central_hr和central_ht运行时间超过2分钟时,就会出现halting system,且复位不可恢复,只能重烧

  • BUG #336: peripheral测试—软件编译正常,打印信息异常bt_settings未设置成功ID,IRK,Database Hash

  • BUG #337: central_ht测试—扫描设备peripheral_ht后,无相应广播数据

  • BUG #338: central_hr测试—扫描广播数据异常,且与heartrate-server app无法连接,无心率数据上报

  • BUG #339: peripheral_identity测试—无蓝牙广播包

  • BUG #349: mult_roles测试—设备连接功能异常

  • BUG #354: rf-enhance带重传跳频模式下,RF上报率最大976hz,不太稳定,偶现速率掉0(目前掉0问题已解)

  • BUG #356: peripheral_hr测试—低功耗XTL32768软件由于build_name过长导致编译失败

  • BUG #358: ZephyrAppLauncher.exe工具在build、flash后不能open IDE

  • BUG #359: ZephyrAppLauncher.exe工具编译usb_only_mode_test.conf失败

  • BUG #360: qdec_pwm测试—qdec_pwm功能异常,log没有打印

  • BUG #367: peripheral_ota可以正常进行升级,升级异常

  • BUG #368: peripheral_hr低功耗测试 ——XTL32768有广播无法连接和RCL32000 无广播

遗留问题

  • ISSUE #22: sample: mesh_speaker在小度音响上工作异常

  • BUG #301: Amazon Echo音箱测试-Echo Plus2-2个音箱入网之后,不做任何操作,出现Halting system且灯控不可操作

  • BUG #309: 2.4G发送端信号tx和接收端信号rx,设置不同的频点和不同的CRC搭配时,成功率偏低,丢包偏多

  • BUG #310: 蓝牙作为 central 时,与其它设备建立连接时,会异常断开连接

  • BUG #313: mult_roles测试—设备作为Slave与3个手机保持长时间连接出现异常, bt_hci_core,断链后无法再次重连

  • BUG #316: central_multilink测试—Central设备可以连接从设备,但是连接不稳定,连接上会发生断链

  • BUG #318: 手机NRF Mesh测试-烧录mesh_panhip的sample,在nRF Mesh界面上搜索设备进行连接时,有很多名称为panchip的设备显示且无法连接成功

  • BUG #319: Friend-LPN,多个Friend,一个LPN,查看Friend切换流程,切换到新Friend时,不稳定,发送开关灯命令不生效

  • BUG #320: Heartbeat Publish—查看Heart beat的打印间隔为4s,丢包的概率13/39为33%

  • BUG #323: 手机NRF Mesh测试-对mesh设备Models进行入网绑定App Key验证开关灯功能出现几点问题

  • BUG #324: ble-only模式下,压力测试蓝牙配对、连接操作,鼠标在断链后无法实现自动重连

  • BUG #329: mesh_panchip会烧录后复位板卡会出现异常,且复位后信息不会刷新,经过较久时间仍然记得上次复位次数

  • BUG #337: central_ht测试—扫描设备peripheral_ht后,无相应广播数据

  • BUG #342: eddystone测试—不可连接广播包测试–偶现复位板卡30s之后,仍然可以连接板卡现象

  • BUG #344: iot_wechat测试—Android手机与设备连接测试AirSync微信蓝牙协议第二次测试时AUTH失败

  • BUG #348: central_multilink测试—Central设备无法连接从设备

新增问题

  • BUG #371: mult_roles测试—配置3主0从,实际上central只能连接2个外设,第3个外设无法连接

  • BUG #362: 跳频模式下,Mouse和usb dongle均连接usb,运行大概4分钟左右就会出现掉0

  • BUG #373: central_ht测试—central和peripheral_ht连接后,多次复位peripheral_ht会出现连接central和外设均异常卡着,并且不上报数据

PAN1080 DK v0.2.0

PAN1080 Development Kit v0.2.0 (2022-3-17) 已发布:

1. SDK

Zephyr 平台

  • 移除了对PN108C/PN108MP两个板子的支持,新增了对PAN1080 EVB板的支持,请使用新的EVB板进行测试验证

  • 增加DCDC控制流程,使用DCDC模式会降低运行功耗

  • 修改flash工作模式为4线enhance模式,加速运行速度

  • 增加private radio通用库

协议栈

  • 更新了libble_controller,更新射频配置, 提高接收性能

  • 适配低功耗流程

例程

  • 问题修复:

    • samples: mult_roles: 解决 central 只能连接一次的问题

  • 优化:

    • quick build脚本已更新,且sample文档中的编译不再使用west build命令,而是以quick build脚本为基础进行说明

    • samples_panchip/bluetooth: Use public addr for Mesh samples

    • solutions/mouse: prf-only mode 下新增 private radio 增强型工作流程,并默认关闭Log

    • solutions/mouse: prf-only mode 下新增 private radio 调频工作流程,并默认关闭Log

测试用例

工具

  • 新增Zephyr App Launcher可视化开发工具

2. DOC

  • 新增文档:

    • documentation/01_quick_start: 新增zephyr_introduction文档

    • documentation/04_dev_guides: 新增app launcher工具介绍及faq

    • documentation/02_hardware: 新增硬件介绍文档

    • 新增EVB底板、核心板设计图及相关设计文档

  • 更新文档:

    • solutions/mouse_solution: 更新测试流程,使用quick build脚本代替编译命令

    • samples_panchip/bluetooth: 更新文档格式及图片,新增了蓝牙例程的quick build脚本

    • samples_panchip/basic: 更新文档格式及图片,新增了基础例程的quick build脚本

    • samples_panchip/proprietary_radio: 更新测试流程,新增了private radio例程的quick build脚本

    • 其他: 修正文档中的图片显示、描述及格式

3. ISSUES

已解决问题

  • ISSUE #152: 解决settings功能异常

  • BUG #151: 系统64M下clktrim校准失败

  • BUG #343: hci_uart 在一些场景下工作异常

  • BUG #287: central_ht测试—查看设备串口显示的从机温湿度信息

遗留问题

  • ISSUE #22: sample: mesh_speaker在小度音响上工作异常

  • ISSUE #27: sample: mouse_solution例程在一些设备上工作异常

  • BUG #288: central测试—Central设备主动扫描功能,扫描到对端设备连接之后立即断链

  • BUG #289: 蓝牙多角色功能实际支持的连接个数比配置的个数少一个

  • BUG #290: peripheral_identity测试—测试设备支持的最大连接个数时,出现设备发不出广播的情况

  • BUG #299: peripheral_hids测试—多次进行连接、测试、重连操作、会出现断链后但是设备仍然处于连接状态

  • BUG #309: 2.4G发送端信号tx和接收端信号rx,设置不同的频点和不同的CRC搭配时,成功率偏低,丢包偏多

  • BUG #310: 蓝牙作为 central 时,与其它设备建立连接时,会异常断开连接

  • mesh dev UUID多设备显示为同一个,多设备烧录需要代码内修改

  • BUG #337: central_ht测试—扫描设备peripheral_ht后,无相应广播数据

  • BUG #312: mult_roles测试—配置3主0从-设备作为Master,验证设备可以支持的最大链路数失败,建立一条链路,建立第二条时,会强制把第一条链路断开

  • BUG #313: mult_roles测试—设备作为Slave与3个手机保持长时间连接出现异常, bt_hci_core,断链后无法再次重连

  • BUG #314: peripheral测试—连接、断链、重连测试中,出现连接一次成功后,第2次连接异常,无法再次连接现象

  • BUG #315: prf-2.4g测试—点对点通信,过一段时间会偶现接收端rx data crc err

  • BUG #316: central_multilink测试—Central设备可以连接从设备,但是连接不稳定,连接上会发生断链

  • BUG #317: peripheral_hids测试—苹果手机iphone6s和华为nova手机均不能与设备进行正常连接、断链、重连

  • BUG #318: 手机NRF Mesh测试-烧录mesh_panhip的sample,在nRF Mesh界面上搜索设备进行连接时,有很多名称为panchip的设备显示且无法连接成功

  • BUG #319: Friend-LPN,多个Friend,一个LPN,查看Friend切换流程,切换到新Friend时,不稳定,发送开关灯命令不生效

  • BUG #320: Heartbeat Publish—查看Heart beat的打印间隔为4s,丢包的概率13/39为33%

  • BUG #321: testcase中counter和gpio测试失败

  • BUG #323: 手机NRF Mesh测试-对mesh设备Models进行入网绑定App Key验证开关灯功能出现几点问题

  • BUG #324: ble-only模式下,压力测试蓝牙配对、连接操作,鼠标在断链后无法实现自动重连

  • BUG #328: central_hr和central_ht运行时间超过2分钟时,就会出现halting system,且复位不可恢复,只能重烧

  • BUG #329: mesh_panchip会烧录后复位板卡会出现异常,且复位后信息不会刷新,经过较久时间仍然记得上次复位次数

  • BUG #338 central_hr测试—扫描广播数据异常,且与heartrate-server app无法连接,无心率数据上报

  • BUG #339 peripheral_identity测试—无蓝牙广播包

  • BUG #342 eddystone测试—不可连接广播包测试–偶现复位板卡30s之后,仍然可以连接板卡现象

  • BUG #344 iot_wechat测试—Android手机与设备连接测试AirSync微信蓝牙协议第二次测试时AUTH失败

  • BUG #348 central_multilink测试—Central设备无法连接从设备

  • BUG #349 mult_roles测试—设备连接功能异常

新增问题

  • BUG #356 peripheral_hr测试—低功耗XTL32768软件由于build_name过长导致编译失败

  • BUG #358 ZephyrAppLauncher.exe工具在build、flash后不能open IDE

  • BUG #359 ZephyrAppLauncher.exe工具编译usb_only_mode_test.conf失败

  • BUG #354 rf-enhance带重传跳频模式下,RF上报率最大976hz,不太稳定,偶现速率掉0(目前掉0问题已解)

PAN1080 DK v0.1.0

PAN1080 Development Kit v0.1.0 (2022-1-20) 已发布:

1. SDK

Zephyr 平台

  • 新增 低功耗流程 (HW Deep Sleep)

  • 修改 mcuboot,支持通过PAN1080完成跳转升级流程,验证签名升级流程

  • 删除一些无用的文件

协议栈

  • 修改 LL ISR 初始化方式,支持 BLE、PR 2.4G 动态切换(双模切换的 sample 还没有)

  • 修改 BT_COMPANY_ID

  • 修改 一些默认Stack大小

  • 支持 通过 Kconfig 配置 Sleep Clock,统一 libble

  • 支持 通过 Kconfig 配置 libble 支持的并发状态机个数,优化 SRAM

  • 修改 API: bt_static_address_init: Bluetooth Device Address 高 2 bits 强制配为 b00

  • 修复 某些安卓BLE4.0不支持DLE功能,当不开DLE时,l2cap len异常导致入网时失败的问题

  • 修复 mesh pb remote指定uuid设备连接的问题(sdk V0.0为方便测试做的限制)

例程

  • 问题修复:

    • samples: mult_roles: 解决 central 只能连接一次的问题

    • samples: ble_hid_selfie/peripheral_hids: 解决配对绑定后重连的问题

    • samples: ble_hid_selfie: iphone手机hid无响应问题

    • samples: audio: 修改噪声问题

  • 优化:

    • mesh_echo: 修正打印log与注释

    • mesh_provisioner: prj.conf文件增加描述

    • mesh_speaker: prj.conf内默认关闭LOG,关闭friend feature

    • mesh_panchip: prj.conf内:

      • 默认开启LOG,默认关闭SIG OTA,增加描述,增加Stack调试宏

      • IO DTS灯控修正为可读

      • 优化stack大小,为后续开发提供足够RAM

    • solutions/mouse: usb-only mode 下新增 usb remote wakeup flow,并默认开启Log

  • 新增例程:

    • proprietary_radio/prf_sample_rx: 2.4G 收基础例程

    • proprietary_radio/prf_sample_tx: 2.4G 发基础例程

    • bluetooth/mesh_demo: 演示自组网例程,adv情况下的Feature展示(Friend-LPN,heartbeat publish)

    • hello_world: 简单串口打印例程,可以通过with或者without mcuboot的方式进行启动,展示版本信息

测试用例

  • 新增用例:

    • drivers:

      • adc/adc_api: 测试 Zephyr ADC API

      • counter/counter_basic_api: 测试 Zephyr Counter API

      • flash: 测试 Zephyr Flash 基本读写擦API

      • gpio/gpio_api_1pin: 测试 Zephyr GPIO API,只使用1根pin脚

      • gpio/gpio_basic_api: 测试 Zephyr GPIO API,使用2根pin脚对测

      • pwm/pwm_api: 测试 Zephyr PWM API

      • uart/uart_basic_api: 测试 Zephyr UART API

    • subsys/pm:

      • power_mgmt_soc: 测试 Zephyr Power Management(电源管理/低功耗)功能

      • power_states_api: 测试 Zephyr Power States API

    • subsys/settings:

      • settings/functional/nvs: 测试 Zephyr NVS 基本功能

      • settings/nvs/raw: 测试 Zephyr Settings 功能(使用NVS作为Backend)

    • subsys/storage:

      • flash_map: 测试 Zephyr Flash Map API

      • stream/stream_flash: 测试 Zephyr Flash Stream API

2. DOC

  • 新增文档:

    • proprietary_radio/prf_sample_rx: 新增, 2.4G 收发例程

    • proprietary_radio/prf_sample_tx: 新增, 2.4G 收发例程

    • dev_guides/Zephyr Mcuboot Guidance.md: 新增作为mcuboot的应用操作指南

    • dev_guides/Zephyr RAM Analysis Guidance.md:新增作为RAM相关分析操作指南文档

    • samples/bluetooth/mesh_demo.md: 新增作为测试自组网,验证adv feature(Friend-LPN,heartbeat)的文档

  • 更新文档:

    • proprietary_radio/prf_io_pulse_rx: 修改了代码说明和配置说明等

    • proprietary_radio/prf_io_pulse_tx: 修改了代码说明和配置说明等

    • solutions/mouse_solution: 更新测试流程

    • dev_guides/Developing Bluetooth Mesh Applications.md: 更新增加补充了配置原理方面的细节,完善作为Mesh用户指南

    • samples/bluetooth/mesh_speaker.md: 更新文档描述,补充log截图

    • samples/bluetooth/mesh_echo.md: 更正文档描述

    • samples/solution/mesh_panchip.md: 更新文档描述,修正DK0.0反馈的文档错误

    • Developing Bluetooth Applications: 修改了静态地址相关的说明和参考代码, 补充了 GATT Service 的配置和说明

3. ISSUES

已解决问题

  • ISSUE #19: 静态地址设置失败

  • ISSUE #23: sample: mesh_echo在某些手机上工作异常

  • ISSUE #24: sample: ble_hid_selfie例程重连和控制异常

  • ISSUE #25: proprietary_radio 与 xn24l01 通信时丢包

  • ISSUE #26: sample: iot_wechat例程测试不通

  • BUG #294: sample: mult_roles 作为 central 与其它设备建立连接时,只能连接一次

遗留问题

  • ISSUE #22: sample: mesh_speaker在小度音响上工作异常

  • ISSUE #27: sample: mouse_solution例程在一些设备上工作异常

  • BUG #286: settings 可能存在问题,烧录不同的例程时,建议先对芯片进行擦除

  • BUG #287: central_ht测试—查看设备串口显示的从机温湿度信息

  • BUG #288: central测试—Central设备主动扫描功能,扫描到对端设备连接之后立即断链

  • BUG #289: 蓝牙多角色功能实际支持的连接个数比配置的个数少一个

  • BUG #290: peripheral_identity测试—测试设备支持的最大连接个数时,出现设备发不出广播的情况

  • BUG #299: peripheral_hids测试—多次进行连接、测试、重连操作、会出现断链后但是设备仍然处于连接状态

  • BUG #309: 2.4G发送端信号tx和接收端信号rx,设置不同的频点和不同的CRC搭配时,成功率偏低,丢包偏多

  • BUG #310: 蓝牙作为 central 时,与其它设备建立连接时,会异常断开连接

  • BUG #324: ble-only模式下,压力测试蓝牙配对、连接操作,鼠标在断链后无法实现自动重连

  • mesh dev UUID多设备显示为同一个,多设备烧录需要代码内修改

新增问题

  • BUG #312: mult_roles测试—配置3主0从-设备作为Master,验证设备可以支持的最大链路数失败,建立一条链路,建立第二条时,会强制把第一条链路断开

  • BUG #313: mult_roles测试—设备作为Slave与3个手机保持长时间连接出现异常, bt_hci_core,断链后无法再次重连

  • BUG #314: peripheral测试—连接、断链、重连测试中,出现连接一次成功后,第2次连接异常,无法再次连接现象

  • BUG #315: prf-2.4g测试—点对点通信,过一段时间会偶现接收端rx data crc err

  • BUG #316: central_multilink测试—Central设备可以连接从设备,但是连接不稳定,连接上会发生断链

  • BUG #317: peripheral_hids测试—苹果手机iphone6s和华为nova手机均不能与设备进行正常连接、断链、重连

  • BUG #318: 手机NRF Mesh测试-烧录mesh_panhip的sample,在nRF Mesh界面上搜索设备进行连接时,有很多名称为panchip的设备显示且无法连接成功

  • BUG #319: Friend-LPN,多个Friend,一个LPN,查看Friend切换流程,切换到新Friend时,不稳定,发送开关灯命令不生效

  • BUG #320: Heartbeat Publish—查看Heart beat的打印间隔为4s,丢包的概率13/39为33%

  • BUG #321: testcase中counter和gpio测试失败

  • BUG #323: 手机NRF Mesh测试-对mesh设备Models进行入网绑定App Key验证开关灯功能出现几点问题

  • BUG #328: central_hr和central_ht运行时间超过2分钟时,就会出现halting system,且复位不可恢复,只能重烧

  • BUG #329: mesh_panchip会烧录后复位板卡会出现异常,且复位后信息不会刷新,经过较久时间仍然记得上次复位次数

PAN1080 DK v0.0.0

PAN1080 Development Kit v0.0.0 (2021-12-17) 已发布:

1. SDK

  • 基于开源操作系统 Zephyr 的软件集成开发环境(SDK CLI + IDE)

  • Panchip 为 PAN1080 定制的交叉编译工具链(Toolchain)

  • 支持 PN108C QFN40 测试板

  • Panchip 为 PAN1080 提供了多个演示功能的 APP 例程:

基础例程

  • blinky: 演示LED闪灯,led0 以一秒为周期亮灭。

蓝牙例程

  • audio_client: 演示蓝牙语音传输主机端。

  • audio_server: 演示蓝牙语音传输从机端。

  • beacon: 演示蓝牙 beacon。

  • central: 演示蓝牙主机功能,发现设备并与设备建立连接和断连。

  • central_hr: 演示蓝牙主机功能,主要是HR(heart-rate)服务相关,包括:发现设备, 解析广播数据并与包含HR服务的设备建立连接;查找并订阅HR服务。

  • central_ht: 演示蓝牙主机功能,主要是HT(health thermometer)服务相关,包括:发现设备, 解析广播数据并与包含HT服务的设备建立连接;查找并订阅HT服务。

  • central_multilink: 演示主机多连接功能,可以发现设备并与最多8个从机设备建立连接。

  • eddystone: 演示 Google Eddystone Configuration ServiceEddystone beacon功能。

  • hci_uart: 单 BLE Controller,可以通过串口发送HCI命令,用于 DTM,或者配合外部 Host 使用。

  • ibeacon: 演示 Apple iBeacon功能,在支持iBeacon的应用上,可以粗略的显示距离信息。

  • iot_wechat: 演示微信硬件开发平台的AirSync协议。

  • mesh_echo: 演示蓝牙MESH功能,可与 Google ECHO 音响进行绑定,并进行开关灯控制。

  • mesh_provisioner: 演示蓝牙MESH Provisioner 功能,先进行自我配置netkey,存储,然后通过pb adv对其他待入网设备广播进行扫描,建立link,入网的流程,并包括后续的配置流程。

  • mesh_speaker: 演示蓝牙MESH功能,可与 天猫精灵、百度小度 音响进行绑定,并进行开关灯控制。

  • multi_roles: 演示蓝牙多角色(主从一体)功能,可以通过 shell 进行广播、扫描和连接,支持最多8组连接。

  • peripheral: 演示蓝牙从机功能,包含 GATT服务: CTS/BAS/HRS。

  • peripheral_csc: 演示蓝牙从机功能,包含 GATT服务:CSC (Cycling Speed and Cadence)。

  • peripheral_dis: 演示蓝牙从机功能,包含 GATT服务: DIS (Device Information) 。

  • peripheral_esp: 演示蓝牙从机功能,包含 GATT服务: ESP (Environmental Sensing Profile) 。

  • peripheral_hids: 演示蓝牙从机功能,包含 GATT服务:HID,通用鼠标。

  • peripheral_hr: 演示蓝牙从机功能,包含 GATT服务:HR (Heart Rate),连接订阅服务后,会上报虚拟的心率值。

  • peripheral_ht: 演示蓝牙从机功能,包含 GATT服务:HT (Health Thermometer),连接订阅服务后,会上报虚拟的温度数据。

  • peripheral_identity: 演示从机多连接功能,可以与最多8个主机设备建立连接。

  • scan_adv: 演示蓝牙广播和扫描功能,将扫描到的设备个数,放在特定的广播数据中发出去。

私有2.4G例程

  • prf_io_pulse_rx: 演示脉冲传输功能,接收发送端的2.4G信号,并恢复出波形,通过IO口输出。

  • prf_io_pulse_tx: 演示脉冲传输功能,通过IO口接收将外部的PWM波形,并通过2.4G传输给接收端设备。

解决方案

  • ble_google_light: 谷歌灯解决方案,通过谷歌音响控制灯。

  • ble_hid_selfie: 自拍解决方案,通过蓝牙HID控制手机拍照。

  • ble_pcte_beacon: 磐启定位标签解决方案,通过广播发送特定的定位数据。

  • ble_rgb_light: 蓝牙RGB三色灯解决方案,可以用小程序连接并进行控制。

  • mesh_panchip: 蓝牙MESH解决方案,支持远程入网,OTA灯。

  • mouse_solution: 鼠标解决方案,支持BLE、2.4G、USB三中模式。

  • usb_dongle: dongle解决方案,支持BLE、2.4G。

其它

  • synchronization: 演示内核基本功能,系统启动两个线程交替向Console打印消息。

2. HDK

目前版本提供了如下硬件相关资料:

  • PAN1080 QFN32开发参考原理图

  • PN108C QFN40测试板原理图

3. DOC

目前版本提供了如下开发文档:

  • SDK快速入门

  • SDK开发环境介绍

  • SDK架构介绍

  • PN108C QFN40测试板介绍

  • 例程介绍

  • Zephyr APP开发指南

  • BLE开发指南

  • Mesh开发指南

  • PAN1080产品说明书(中文)

  • PAN1080 Datasheet(EN)

4. TOOLS

目前版本提供了如下工具:

  • 量产烧录工具(PC工具)

  • 鼠标上报率测试工具(PC工具)

  • 串口工具(PC工具)

  • nRF Connect(手机测试软件安卓APK)

  • Google Home(手机测试软件安卓APK)

  • nRF Mesh(手机测试软件安卓APK)

  • Siliconlabs Bluetooth Mesh(手机测试软件安卓APK)

5. 已知问题

  • ble_rgb_lightiot_wechat 两个例程中,广播数据中的地址字段未匹配,可能会影响扫描

  • Beacon:抓包工具查看广播间隔为100ms-150ms,但是实际抓包间隔小于100且不断变化

  • central_hr:主设备可以与从设备正常进行连接,但是没有心率数据上报

  • central_ht:查看设备串口显示的从机温湿度信息

  • central:Central设备主动扫描功能,扫描到对端设备连接之后立即断链

  • peripheral_identity:测试设备支持的最大连接个数时,测试过程中链路非正常断链

  • peripheral_identity:测试设备支持的最大连接个数时,出现设备发不出广播的情况

  • mult_roles:设备连接功能正常,ble conn create某个设备后会立即断链,然后剩下的可连接设备均无法连接成功

  • mult_roles:配置0主8从-设备作为Slave,验证设备可以支持的最大链路数8个

  • peripheral_hids:多次进行连接、测试、重连操作、会出现断链后但是设备仍然处于连接状态

  • mesh_panchip直接编译无法通过(原因是此Sample只支持1MB大小Flash的测试板,不支持在512KB的QFN40测试板上运行)

  • 其他:芯片RF参数未经调优,可能会有性能问题