分类 默认分类 下的文章

首份工作,在龙旗 ODM 手机厂做 BSP 驱动工程师, 学到用到的东西超多, 光看看一年半解决问题的数量, 就知道手机厂公司需要人有多么全能:

M196 开发小系统、存储、马达相关问题解决、 bring up 存储器件; RPMB TA/CA 编程-- TEEGRIS 安全系统做应用;
安全问题分析,稳定性 dump 解决、M196 ETS 虚拟串口问题,工厂工具问题,(稳定 30KK 数量极低误报率避免返工) 提升工厂效率/解决刷机问题.
M197 海量售后问题,涉及安全、软件稳定性、硬件供电稳定性问题。
安全问题:TEE RPMB 功能开发。
M201 M177 M173 P272 修理,展锐芯片防破解,patch 维护。
M269 X708 P513 崩溃死机类问题维护;刷机问题解决。
M196、M480、M493 M383 存储、马达相关问题解决。

我解决的问题, 可以几张图概括:
20260113-133448.jpg
2025-12-09T06:50:02.png

2025-12-09T06:51:24.png

2025-12-09T06:51:39.png

但是我还是还是要交代一下公司背景:
龙旗、华勤、闻泰,中国仅有的三家 ODM 企业,给别的企业设计\生产手机,一条龙服务,最后“贴牌”给三星、Motorola,、小米、OPPO、华为等等众多品牌。三家企业贡献了各个大品牌每年的新手机,千元机(包括两千多左右手机)大概率都是我们生产的。红米9A是历史上龙旗卖得最好的,全球卖了一亿台;其他三星项目平均都是一千万台左右;卖得不好的也有几百万台。闻泰转行去做车载芯片,业务卖给了立训. 龙旗,华勤和立训三家ODM 同时在生产手机, 这三家都是全球手机实际的生产商。 __ 看各个牌子的便宜基本款几乎都一样? 为什么同时发布多款不同配置的手机? OPPO\VIVO\1+\三星\Moto(联想)\华为\荣耀\小米 有些手机看起来一样?---- 大概率是 ODM 设计(我们+友商闻泰)设计+制作的.
前言交代完毕,我所在的部门主要做三星手机, A05/A06/A07, 但是很多历史项目正在维护, 工厂不断产生问题, 客户反馈哪哪不稳定, 定期 OTA 时kernel 升级的逻辑冲突等等, 就可以想到我每天遇上多少问题。

 - 处理死机问题, GAT
 - (主要是维护)kernel 驱动\ 移植旧项目的代码, 新增
 - 处理上千万机器才会遇到的低概率工厂( 三星客户代码问题\我们 BSP 的驱动问题 \ MTK 芯片基线上的问题\硬件问题);
 - 处理打 patch——安全补丁,维护手机 OTA.
 - 了解破解与防止非法破解的方法,不断跟 MTK、高通、展瑞沟通;
  -(BSP其他同事)不间断和源器件厂商沟通,在新手机上尝试移植旧驱动

研究生可以胜任任何职位, 稳定性问题当然不在话下. 与 BSP 组其他同事不同, 小系统要鉴别出问题来源于哪个模块, 优先分析死机\ DUMP \ 超出预期的软件行为, 初步 debug出现的问题,如果是 存储\安全\稳定性\刷机问题的,仍然在我的头上,我要继续解决; 如果是属于其他模块: modem\蓝牙\Wifi\sensor\Frameware 层\指纹\人脸\三方 app等等都需要联系不同的同事\供应商\芯片平台取解决, 不断追踪任务. 指纹一上来也是我负责小部分, 后转为存储和安全+稳定性模块.
熟悉了编译系统的的复杂性 (vendor/system/BP-modem), 编译问题\ 与广州三星合作等等. 并且一般需要BSP小系统的人主导跨模块的问题,安全细分为指纹人脸熔丝签名key仿回滚, 跟着项目进程全都干了一遍.
大公司项目太多, 有一大群 SPM 控制进度, 你会被扔到无数个历史问题中, 哪里缺人填哪里, 哪个历史问题没解决, 找个厉害的人再尝试一次. 所以我名下处理了那么多成功解决的问题😁 ; 三四个月就完整的一个新手机项目, 加上维护售后问题疑难杂症与软硬件综合问题, 经验增长巨快.

大公司还需要不断总结 PPT, 这里正好有头半年的工作内容, 画的简洁直观, 光这头半年信息量极大。

谁能想象维护手机, 各位收到的推送竟然是我做的 O(∩_∩)O~. 维护 OTA 总是对 5.15 甚至 5.10 kernel 进行修补,但是不会往上升级缺少很多 kernel 的新特性. 例如说项目的 drm 功能和 kernel 升级不匹配; 文件系统总是在最原始的状态等等. 工作的主要内容还是处理死机问题,但概率通常很低, 所以问题不算是“严重的安全漏洞”,所以一般都不会更新。学会了安卓所有的debug技巧, 编译\单编\打包解包, 编译系统\init系统\ TEE 安全系统\ 文件系统\ TA/CA 编程\安卓 AVB\安全启动验证\ 刷机各种机制\ MTK 高通 展锐 三家芯片; 解决一份一份死机问题; 完美解决一份一份的其他人遗漏的细微 bug,还有其他项目遗留下来非常难解的问题。 完整经历两个三星项目, 修理多份摩托罗拉项目。
每天的问题源源不断, 精神紧绷, 学习速度也飞快. 好在有现代 GPT 的加持, 我工作处理问题的速度有些时候比老员工的效率还高.
所有人都开始熟练使用 GPT(豆包、deepseek),记录博客的意义对于知识流传不大了,但作为个人的年度总结,首份工作留念非常有意义。

一路能从省赛到去东莞理工大学参加国赛,我们的仿生摄像头,40000 Hz 的图像,要驱动它并非易事,整个实验室的工作,也是我啃透仿生算法心血,能得到回报也是非常好的。
IMG_20231012_144541.jpg

IMG_20231012_144828.jpg

有幸去华为的欧洲园区参观一下午。

IMG_20231012_144644.jpg
这研电之星(六千支队伍前三名),第一是当之无愧的,一个博士作品,光通信所需要的芯片。
第二名我是不服气的,一个仿生的神经计算芯片,用纯电阻实现 AMC, analog matrix computing, 低功耗的、不用 CPU 的、在模拟层面上实现神经网络;功耗和速度就非常好了。
但是这个思路一个美国的初创公司和三星都在两年前已经实现了,浙江大学这队做的还是没有做成芯片的形式,还是需要很多的追赶才能让我觉得当之无愧。
我的研究生毕业课题也是这个高速摄像头再加上仿生的神经网络, 40000 Hz 摄像频率最终成品能以 20000 帧进行神经网络识别,已经是非常厉害的产品了,感觉各个学校的研究生就已经把通信芯片、夜视仪、高科技修飞机、(我们)高帧率智能摄像头等等各个前沿物件都开发完了,能人荟萃嗷,怪不得社会上接不到军工、研究所的订单,不读研还真不知道,都被我们学校里的“给导师打工仔”解决完了🤣。我们做的所有功能的介绍放在了第一份简历里面:陈雨爽简历 研究生阶段.docx
IMG_20231012_144457.jpg

这个网站本身在本科的时候就已经建立好了,它记录了我所有的技术笔记。我就按照网络上真正的帖子的标准去排版。它们都是一个个精巧的项目。
原本有三十多篇,按照 HTML+CSS 排布好的,精心编写的文章。但是由于服务器年久失修、云服务受到攻击,文章的数据库没有还原成功。
但塞翁失马焉知非福,那么多文章普通人并没有时间去看,并且写完了,才意识到要让真正的搜索引擎(百度、谷歌)去索引他们。需要更多的精力做 SEO,所以我就没有去管了。

所以干错做一个集合,一些照片墙集中介绍一下本科做过的项目。

GIF 2023-9-25 3-46-31.gif
第一组演示了 OneNote 里面写好的笔记本,再次发表和整理需要些时间,我得优先解决面试和申请博士的问题。

这组是惯性导航所需要的四元数知识,以及制作的数据手套。(在研究生阶段见到了别人用柔性光纤传感器制作的数据手套,他们的方案更加优雅)

xx05.jpg

这组是 QT 嵌入是变成驱动 ARM; C# 3D变成、布料贴图;基本的3D引擎操作。图中绿色的单片机是本科实习去工厂全流程亲自做的路由器。核心是上面那块高通的 wifi 芯片。
07.jpg

这组是毕设所用到的德州仪器的毫米波雷达开发板。还有之前机器学习实现关键点检测的图片。
1202.jpg
1302.jpg

这组是毫米波雷达中,我重写定位算法所需要的三角定位,我发现这各问题竟然有解析解,能用 python、mathematica 直接算出来,并不需要迭代逼近。但是雷达本身的干扰、室内杂物等其他方面的干扰太大,最终效果并不理想。

2023-09-23T17:24:20.png
雷达06.jpg

换后台以后就更没有精力去管它,导致现在在我的 Manjaro 服务器重新部署、还原拷贝的时候出现了问题。

我这才意识到编程界最大的难题是处理复杂性。当文章一小章一小节文章写的时候,在数据库里对应的数据就很杂。
数据库,本来是现在最伟大的发明,它可以确保银行交易安全的。但是这么多密码把我自己拒之门外,(;´༎ຶД༎ຶ`)。
我才干脆有了这个主意,把我之前所有的能手动还原的图片资源全都塞到一起篇帖子里,反正这是我的网站。文章要多长就可以多长,要有什么形式就能有什么形式。
建立网站原本的计划是分享知识,把它们整理好。把一身的知识和技能传播给更多人。但…… 没时间整理了,整理和 SEO 的成本太高;就在我的笔记本里存着吧。