|
|
dcef9664ae
|
fix(spotlight): 优化PWM调光算法解决低亮度抖动
1. 修改PWM频率为4000Hz,与80MHz基准时钟形成整数倍关系(20000 ticks),消除计算取整导致的物理层抖动。
2. 实现基于时间轴的渐变算法替代原有的步进累加逻辑,消除累积误差,确保渐变时长精确且不受系统负载影响。
3. 调整渐变刷新间隔为8ms,提升视觉平滑度。
|
2025-11-22 13:43:45 +08:00 |
|
|
|
46cdd963a9
|
重构渐变控制(第一阶段):引入配网互斥与开关/属性抢占策略
- 增加 is_in_breath_mode() 工具,明确配网(BREATHING)期间禁止普通渐变的取消与启动,避免干扰配网呼吸。
- set_light:
* 未指定字段保持不变的策略保留。
* 在关灯渐变期间,属性/模式变更不取消渐变,仅更新目标。
* 开灯(非配网)打断关灯渐变时,从当前即时亮度起步反向渐变,避免黑场;真正关→开或上电仍从0渐变。
* 配网期的开/关/改模式/改属性:仅更新目标与上报,不启动普通渐变。
- cancel_current_light_fade:补充清理 is_fading/is_closing_fade/fade_completed,杜绝过期回调收尾副作用。
- fade_task:关灯渐变完成时,如已被开灯抢占且非配网,跳过 PWM 关断收尾,避免‘先黑一下’。
覆盖场景:开关灯、场景模式、颜色模式、单独色温/亮度变更、各类中途打断;同时不影响配网呼吸。
|
2025-11-17 08:04:38 +08:00 |
|
|
|
7013b0949a
|
回滚:撤销‘优化开关与渐变的无缝衔接’修改
原因:该修改导致配网场景下的灯效渐变异常(持续闪烁)。
范围:还原 application/ws63/user_main/spotlight/spotlight_main.c 的相关改动;同时移除本次提交新增的 docs/ 与 logs/ 资源文件。
说明:仍保留上一笔‘修复灯光渐变与状态保持逻辑’提交,不影响‘未指定字段保持不变’与‘关灯态只更新目标不推进渐变’的修复。
|
2025-11-17 07:39:45 +08:00 |
|
|
|
53ba39e35d
|
优化开关与渐变的无缝衔接,消除‘先黑一下再变亮’突变
问题:关灯渐变进行中途点击开灯,会出现先熄灭再从0渐变的突变。
方案(A+B+C):
A. ‘开灯’打断‘关灯渐变’时,沿用当前渐变中的即时亮度作为起点,反向渐变到目标(不再强制从0起步)。
B. 渐变任务收尾保护:关灯渐变完成前若已被开灯抢占,跳过PWM关断收尾,避免黑场。
C. 取消逻辑加固:取消当前渐变时清除 is_fading/is_closing_fade/fade_completed,避免旧渐变回调误关灯。
实现点:
- set_light:记录 was_closing_fade 与当前即时亮度;开灯时根据 was_closing_fade 决定起点(即时亮度或0)。
- fade_task:在关灯完成分支检查 g_device_control.on,已被开灯抢占则不关断,交由开灯渐变接管。
- cancel_current_light_fade:补充状态清理,防止回调残留。
验证:亮→关(渐变中)→开、末尾抢占、快速连点关/开、单色↔双色切换夹杂开关,均无‘黑一下’突变。
|
2025-11-17 07:27:44 +08:00 |
|
|
|
cb1ef39108
|
修复灯光渐变与状态保持逻辑
主要变更:
- set_light 默认目标值改为取设备当前状态(未指定字段保持不变),避免关灯后切换模式把亮度误写为0。
- 仅对明确修改的字段回写设备状态,防止无意覆盖。
- 关灯状态下的模式/属性变更:只更新目标,不推进渐变;开灯(关→开)从0平滑渐变到目标。
- 关灯渐变进行中不再取消渐变(不被属性/模式变更打断),避免停留在低亮不灭的情况。
- 增加若干调试日志(keep brightness/cct、开灯渐变设置、off-state 变更提示)。
影响范围:application/ws63/user_main/spotlight/spotlight_main.c 的 set_light 与渐变控制流程。
回归清单(详细):
1) 基础渐变与开关
- ON→OFF:观察3s(NORMAL_FADE_TIME)内亮度平滑降为0,最终PWM关断;日志含“start close light fade/Close light fade completed”。
- OFF→ON:从0平滑拉升至目标亮度(保持当前色温),日志含“开灯渐变设置: brightness=0->X”。
- 单色/双色两种 colourMode 下分别验证上述两条。
2) 关灯状态下属性/模式变更(不推进渐变)
- OFF 且非渐变中:修改亮度/色温/模式,仅更新目标,不改变当前亮度(保持0);再次开灯从0平滑到目标。
- OFF 且正在“关灯渐变”中:
a. 切换 单色→双色、双色→单色;
b. 修改色温(2700/中间值/最大6000);
c. 修改亮度(1%、10%、80%、100%);
期望:关灯渐变不中断直至0;日志出现“off-state mode/attr change … keep/preserve …”,无新的 cancel/stop;开灯后从0渐变到变更后的目标。
3) 渐变过程中的变更
- 开灯渐变过程中修改亮度/色温/场景:应重新计算步长并继续渐变到新目标,无闪断;日志有“start fade”“fade brightness:A->B”。
- 关灯渐变过程中(is_closing_fade=true)修改模式/属性:不取消当前渐变,继续降至0(本修复重点)。
4) 场景模式
- 亮灯状态切换各场景(自定义/休闲/观影/用餐/回家/冬天/夏天):亮度、色温按预设渐变到位。
- 离家模式:切到离家立即触发关灯渐变;开灯时恢复基础模式并从0渐变到目标。
- 关灯状态切换场景:仅更新目标,不推进渐变;开灯后生效。
5) 单色↔双色互转
- 亮灯:单色→双色、双色→单色均应平滑到新目标。
- 关灯:单色→双色、双色→单色只更新目标,关灯渐变不中断;开灯后从0渐变到新目标(复现用例修复验证)。
6) 持久化与上电
- 设定亮度/色温/模式后断电重启:读取到的持久化状态与上电行为正确(若on=true,上电从0渐变到目标;若on=false,保持熄灭)。
7) 上报一致性
- 每次变更后,APP数值与进度条一致,且与设备上报一致;避免出现“进度条位置旧、数值为0”的分离。
8) 边界值与映射
- 亮度:1%/10%/11%/100% 验证 BRIGHTNESS_REMOTE2LOCAL/LOCAL2REMOTE 映射正确,无跳变。
- 色温:2700/中间值/6000,双色下比例分配正确;单色下固定 SINGLE_COLOUR_CCT。
9) 竞态与稳定性
- 快速连点:关/开/改模式/改色温混合快速操作,确保无死锁、无抖动、无残留亮度;fade 定时器单实例运行(无重复自重启)。
10) 日志关键点(用于对齐期望)
- “[set_light] keep brightness/cct …”、“[set_light] 开灯渐变设置 …”、“off-state mode/attr change …”。
- “start close light fade / Fade completed”、“fade brightness: x->y … time:3s”。
- 上报触发:REPORT_SWITCH/BRIGHTNESS/CCT/LIGHT_MODE/COLOUR_MODE 顺序与次数合理。
|
2025-11-16 21:55:18 +08:00 |
|
|
|
8270708ef2
|
1. 解决本地注册设备的流程无法正常控制设备的问题
2. 修改之前的 版本固件命名不对的问题
3. 增加debug kit,但是默认不开启(还在调试中)
|
2025-11-04 21:27:55 +08:00 |
|
|
|
21c6d05bad
|
1. 解决PWM 更新导致周期混乱继而亮度抖动的问题
2. 增加无论何种状态都能强制复位的机制
3. 添加设备注册检查机制,如果设备已经处于配网但是还是注册的状态,强制进行一次复位
4. 添加串口控制协议
|
2025-10-26 17:49:12 +08:00 |
|
|
|
a16c05db7b
|
修改产测逻辑。循环进行测试,先进行wifi测试,再进行亮灯测试,亮灯一直循环
|
2025-08-13 08:43:21 +08:00 |
|
|
|
b6567e34a9
|
修复亮度不能到最大的问题,解决app删除不能配网的问题
|
2025-08-11 13:14:37 +08:00 |
|
|
|
3165aafe83
|
去除提前开机的亮灯的策略,确保开机渐变。
|
2025-08-08 07:58:54 +08:00 |
|
|
|
51c4af5a86
|
新增强制复位功能
|
2025-08-07 09:02:36 +08:00 |
|
|
|
adaa09caf0
|
新增关灯渐变功能
|
2025-08-07 09:01:58 +08:00 |
|
|
|
745e6399ae
|
解决低亮度闪烁的问题
|
2025-08-05 08:12:39 +08:00 |
|
|
|
8b3c805484
|
添加模组厂提供的修复苹果手机星闪广播问题
|
2025-08-02 22:24:24 +08:00 |
|
|
|
754ecfacf0
|
升级SDK到Hilink_14.2.1.312_20250714
|
2025-07-17 20:52:00 +08:00 |
|
|
|
9bdd0f9caa
|
取消独立升级。修复编译错误。支持Ble和sle
|
2025-07-13 16:27:00 +08:00 |
|
|
|
4ae4967cef
|
更新SDK到 SR_Light_Hilink_14.2.1.312_20250704
|
2025-07-11 07:50:14 +08:00 |
|
|
|
3dc430b62b
|
1. 解决ble 冷启动不能局域网控制的问题
之前的版本只能应对中途断网的情况。现在的应该可以应对无网启动的情况
|
2025-07-09 21:49:09 +08:00 |
|
|
|
06f5e5ddf1
|
添加本地ble控制的支持, 但是存在不能控制色温和亮度
|
2025-07-07 01:04:45 +08:00 |
|
|
|
a3bedc1ab2
|
解决开灯可能存在的单双色温状态异常的问题,主动上报一次
|
2025-07-06 15:01:44 +08:00 |
|
|
|
0321d8ecbf
|
解决开灯状态未同步的问题
|
2025-07-06 10:57:32 +08:00 |
|
|
|
e600ac3f22
|
1. 新增单双色温的支持 =》 已测试
2. 新增离家模式的支持 => 等待测试
|
2025-07-03 23:37:14 +08:00 |
|
|
|
1f57b11676
|
1. 取消了独立升级
2. 修复了渐变时会打断会导致显示中间值的问题
|
2025-06-26 00:07:45 +08:00 |
|
|
|
a4b68ffadb
|
添加
1. 更改模式时进行渐变
2. 开灯渐变
3. 提高亮灯的速度,从flashboot中开始亮灯
4. spotlight_main 调整到app_main中来
|
2025-06-25 23:14:48 +08:00 |
|
|
|
c2ac3319f2
|
添加渐变时长为0的时候无法进行保存导致升级后灯打开的问题
|
2025-06-18 07:55:36 +08:00 |
|
|
|
fa4907e34e
|
1. 修复频繁上下线问题
2. 修复会bind会有两个设备的问题
3. 其他若干体验问题
4. 增加产测功能
|
2025-06-10 08:58:50 +08:00 |
|
|
|
5ec8b9380c
|
1. 解决频繁频繁掉线的问题:原因是因为ble
sdk需要一开始就初始化,配网的时候只是去控制其广播是否开启。不然会导致一直掉线
|
2025-06-02 21:31:39 +08:00 |
|
|
|
58549e1f9c
|
修改版本号为初始值,打包第一个版本
|
2025-05-25 22:31:00 +08:00 |
|
|
|
f915eb634a
|
基本完成功能,去除了独立升级功能的支持
|
2025-05-24 15:32:33 +08:00 |
|
|
|
e4c030b0c0
|
初始提交
|
2025-05-13 22:00:58 +08:00 |
|