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

更新日志

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参数未经调优,可能会有性能问题