20250912在荣品RD-RK3588-MID开发板的Android13系统下在接电脑的时候禁止充电

20250912在荣品RD-RK3588-MID开发板的Android13系统下在接电脑的时候禁止充电
2025/9/12 10:21


缘起:某人的电脑接荣品RD-RK3588-MID开发板的时候做APK开发板的时候,通过Android Studio连接荣品RD-RK3588-MID开发板。
经常断联/时断时续。投诉了/抱怨了好久。


我司APK应用开发的电脑的USB口的电压不稳,每次 接他的电脑,android13 的LCD屏就不停的出现 水波纹。这个时候他的电脑ADB会断掉

这时候 我只能 给 bq25703配置成为 80度,禁止充电。

请问 如何 在RD-RK3588-MID为device 的时候禁止充电。
或者 是 +5V输入的时候 禁止充电??@DreamSky

在dts配置25703里有PD配置,把5V配置为0mA或注释掉。
请问是这里吧:
ti,otg-current = <3000000>;//<6350000>;


不是,我记错了,在fusb302那里
5000


搜索到2个5000

这次应该找对地方了。
5V/9V/12V/20V?
就是这里了


这里有2个5000,改哪个?
我改了上面面哪一个。还是显示 满速充电?

注释掉type-c里的5000


Z:\rk-android13-20250818RD-RK3588-MID\kernel-5.10\arch\arm64\boot\dts\rockchip\rk3588\rp-usb-typec-rk3588.dtsi
根据 名字,只有 rp-usb-typec-rk3588.dtsi 这个 DTSI文件 是 配置 type-C的。
查找 之后,根据csdn博文。注释了一个。但是 出现 慢速充电/未在充电支架反复横跳。
不知道 是 现实问题?还是没有配置好。【ADB可用】

你最终是需要使用5V充电的,当前只是为是适配ADB,ADB处理好了就可以开放5V充电。
我们的板子连电脑USB,ADB是不会断开或反复充电的。


我司 APK应用开发的电脑 只有他的电脑有问题。
估计是 USB的电压不稳。

请问 我改哪一个5000?我找到4个5000了


目前只是开发应用的电脑处理好了就行了,加上其他电脑是正常的,你不应该为了一些不正常的东西去浪费时间,PD就是配置充电电压与充电过流,去掉5V就可以了。

很多电脑也会这样
不止是一台电脑
上次不是给你看了吗?有三台电脑也会这样

这样可以改充电电流,之前针对这个问题说明了,检测到是ADB状态,设置充电电流为0。


Y:\MID_MX_RK3588_android13-20250818\kernel-5.10\arch\arm64\boot\dts\rockchip\rk3588\rp-usb-typec-rk3588.dtsi
Z:\rk-android13-20250818RD-RK3588-MID\kernel-5.10\arch\arm64\boot\dts\rockchip\rk3588\rp-usb-typec-rk3588.dtsi

#ifdef RD_RK3588_MID
&i2c2 {
status = "okay";
pinctrl-names = "default";
pinctrl-0 = <&i2c2m0_xfer>;
#else
&i2c4 {
status = "okay";
pinctrl-names = "default";
pinctrl-0 = <&i2c4m1_xfer>;
#endif
usbc0: fusb302@22 {
compatible = "fcs,fusb302";
reg = <0x22>;
#ifdef RD_RK3588_MID
interrupt-parent = <&gpio4>;
interrupts = <RK_PB4 IRQ_TYPE_LEVEL_LOW>;
#else
interrupt-parent = <&gpio0>;
interrupts = <RK_PD3 IRQ_TYPE_LEVEL_LOW>;
#endif        
pinctrl-names = "default";
pinctrl-0 = <&usbc0_int>;
vbus-supply = <&vbus5v0_typec>;
status = "okay";

        ports {
#address-cells = <1>;
#size-cells = <0>;

            port@0 {
reg = <0>;
usbc0_role_sw: endpoint@0 {
remote-endpoint = <&dwc3_0_role_switch>;
};
};
};

        usb_con: connector {
compatible = "usb-c-connector";
label = "USB-C";
data-role = "dual";
power-role = "dual";
try-power-role = "sink";
op-sink-microwatt = <1000000>;
            sink-pdos =
<PDO_FIXED(5000, 6000, PDO_FIXED_USB_COMM)
PDO_FIXED(9000, 6000, PDO_FIXED_USB_COMM)
PDO_FIXED(12000, 6000, PDO_FIXED_USB_COMM)
PDO_FIXED(20000, 6000, PDO_FIXED_USB_COMM)>;
source-pdos =
<PDO_FIXED(5000, 3000, PDO_FIXED_USB_COMM)>;

            altmodes {
#address-cells = <1>;
#size-cells = <0>;

                altmode@0 {
reg = <0>;
svid = <0xff01>;
vdo = <0xffffffff>;
};
};

            ports {
#address-cells = <1>;
#size-cells = <0>;

                port@0 {
reg = <0>;
usbc0_orien_sw: endpoint {
remote-endpoint = <&usbdp_phy0_orientation_switch>;
};
};

                port@1 {
reg = <1>;
dp_altmode_mux: endpoint {
remote-endpoint = <&usbdp_phy0_dp_altmode_mux>;
};
};
};
};
};
};

修改为:

#ifdef RD_RK3588_MID
&i2c2 {
status = "okay";
pinctrl-names = "default";
pinctrl-0 = <&i2c2m0_xfer>;
#else
&i2c4 {
status = "okay";
pinctrl-names = "default";
pinctrl-0 = <&i2c4m1_xfer>;
#endif
usbc0: fusb302@22 {
compatible = "fcs,fusb302";
reg = <0x22>;
#ifdef RD_RK3588_MID
interrupt-parent = <&gpio4>;
interrupts = <RK_PB4 IRQ_TYPE_LEVEL_LOW>;
#else
interrupt-parent = <&gpio0>;
interrupts = <RK_PD3 IRQ_TYPE_LEVEL_LOW>;
#endif        
pinctrl-names = "default";
pinctrl-0 = <&usbc0_int>;
vbus-supply = <&vbus5v0_typec>;
status = "okay";

        ports {
#address-cells = <1>;
#size-cells = <0>;

            port@0 {
reg = <0>;
usbc0_role_sw: endpoint@0 {
remote-endpoint = <&dwc3_0_role_switch>;
};
};
};

        usb_con: connector {
compatible = "usb-c-connector";
label = "USB-C";
data-role = "dual";
power-role = "dual";
try-power-role = "sink";
op-sink-microwatt = <1000000>;
            sink-pdos =
<PDO_FIXED(5000, 0, PDO_FIXED_USB_COMM)
PDO_FIXED(9000, 6000, PDO_FIXED_USB_COMM)
PDO_FIXED(12000, 6000, PDO_FIXED_USB_COMM)
PDO_FIXED(20000, 6000, PDO_FIXED_USB_COMM)>;
source-pdos =
<PDO_FIXED(5000, 0, PDO_FIXED_USB_COMM)>;

            altmodes {
#address-cells = <1>;
#size-cells = <0>;

                altmode@0 {
reg = <0>;
svid = <0xff01>;
vdo = <0xffffffff>;
};
};

            ports {
#address-cells = <1>;
#size-cells = <0>;

                port@0 {
reg = <0>;
usbc0_orien_sw: endpoint {
remote-endpoint = <&usbdp_phy0_orientation_switch>;
};
};

                port@1 {
reg = <1>;
dp_altmode_mux: endpoint {
remote-endpoint = <&usbdp_phy0_dp_altmode_mux>;
};
};
};
};
};
};

注释掉异常:【这么做就异常了,不能这样干的!】
#ifdef RD_RK3588_MID
&i2c2 {
status = "okay";
pinctrl-names = "default";
pinctrl-0 = <&i2c2m0_xfer>;
#else
&i2c4 {
status = "okay";
pinctrl-names = "default";
pinctrl-0 = <&i2c4m1_xfer>;
#endif
usbc0: fusb302@22 {
compatible = "fcs,fusb302";
reg = <0x22>;
#ifdef RD_RK3588_MID
interrupt-parent = <&gpio4>;
interrupts = <RK_PB4 IRQ_TYPE_LEVEL_LOW>;
#else
interrupt-parent = <&gpio0>;
interrupts = <RK_PD3 IRQ_TYPE_LEVEL_LOW>;
#endif        
pinctrl-names = "default";
pinctrl-0 = <&usbc0_int>;
vbus-supply = <&vbus5v0_typec>;
status = "okay";

        ports {
#address-cells = <1>;
#size-cells = <0>;

            port@0 {
reg = <0>;
usbc0_role_sw: endpoint@0 {
remote-endpoint = <&dwc3_0_role_switch>;
};
};
};

        usb_con: connector {
compatible = "usb-c-connector";
label = "USB-C";
data-role = "dual";
power-role = "dual";
try-power-role = "sink";
op-sink-microwatt = <1000000>;
            sink-pdos =
//<PDO_FIXED(5000, 6000, PDO_FIXED_USB_COMM)
<PDO_FIXED(9000, 6000, PDO_FIXED_USB_COMM)
PDO_FIXED(12000, 6000, PDO_FIXED_USB_COMM)
PDO_FIXED(20000, 6000, PDO_FIXED_USB_COMM)>;
//source-pdos =
//    <PDO_FIXED(5000, 3000, PDO_FIXED_USB_COMM)>;

            altmodes {
#address-cells = <1>;
#size-cells = <0>;

                altmode@0 {
reg = <0>;
svid = <0xff01>;
vdo = <0xffffffff>;
};
};

            ports {
#address-cells = <1>;
#size-cells = <0>;

                port@0 {
reg = <0>;
usbc0_orien_sw: endpoint {
remote-endpoint = <&usbdp_phy0_orientation_switch>;
};
};

                port@1 {
reg = <1>;
dp_altmode_mux: endpoint {
remote-endpoint = <&usbdp_phy0_dp_altmode_mux>;
};
};
};
};
};
};


参考资料:
百度:PDO_FIXED(5000, 0, PDO_FIXED_USB_COMM)

https://blog.csdn.net/junwua/article/details/126381554
PD充电调试问题解析(一)

三、代码跟踪的过程
3-1、DTS配置及修改

Dsti修改电流电压
sink-pdos =
<PDO_FIXED(5000, 2000, PDO_FIXED_USB_COMM)
PDO_FIXED(9000, 2000, PDO_FIXED_USB_COMM)>;
//PDO_FIXED(12000, 2000, PDO_FIXED_USB_COMM)>;
source-pdos =
<PDO_FIXED(5000, 3000, PDO_FIXED_USB_COMM)>;

sink-pdos是指我们做sink(耗电方,即外接充电器)时候的充电能力,一般包括电压和电流。
source-pods是指我们做充电方对外充电的时候支持的pd充电能力,这个5000和1000是代表5v-1a。


https://blog.csdn.net/hezhensheng007/article/details/148220745
RK3562 Linux-5.10 内核HUSB311 Type-C 控制器芯片调试记录

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。
如若转载,请注明出处:http://www.pswp.cn/pingmian/96379.shtml
繁体地址,请注明出处:http://hk.pswp.cn/pingmian/96379.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

Unity Addressable System 本地服务器功能验证

1.从Package Manger里安装Addressable 注意这里有Addressables和Addressables两个包&#xff0c;前者是核心框架&#xff0c;处理跨平台通用逻辑&#xff0c;比如用 地址&#xff08;Address&#xff09;来异步加载、卸载资源&#xff1b;自动做引用计数&#xff0c;避免资源泄…

碎片化采购是座金矿:数字化正重构电子元器件分销的价值链

在电子元器件的分销江湖里&#xff0c;长期存在着一条隐秘的“鄙视链”&#xff1a;订单金额大、需求稳定的头部客户是众星捧月的“香饽饽”&#xff0c;而需求碎片化、品类繁多的小微企业长尾订单&#xff0c;则常被视作食之无味、弃之可惜的“鸡肋”。行业固有认知告诉我们&a…

Typescript - 通俗易懂的 interface 接口,创建接口 / 基础使用 / 可选属性 / 只读属性 / 任意属性(详细教程)

前言 在面向对象语言中&#xff0c;接口是一个很重要的概念&#xff0c;它是对行为的抽象&#xff0c;而具体如何行动需要由类去实现。 TypeScript 中的接口是一个非常灵活的概念&#xff0c;除了可用于 对类的一部分行为进行抽象 以外&#xff0c;也常用于对「对象的形状&…

【硬件-笔试面试题-92】硬件/电子工程师,笔试面试题(知识点:米勒效应,米勒平台)

题目汇总版--链接&#xff1a; 【硬件-笔试面试题】硬件/电子工程师&#xff0c;笔试面试题汇总版&#xff0c;持续更新学习&#xff0c;加油&#xff01;&#xff01;&#xff01;-CSDN博客 【硬件-笔试面试题-92】硬件/电子工程师&#xff0c;笔试面试题&#xff08;知识点…

C语言深度入门系列:第十一篇 - 动态内存管理与数据结构:程序世界的高效算法大师

C语言深度入门系列&#xff1a;第十一篇 - 动态内存管理与数据结构&#xff1a;程序世界的高效算法大师 本章目标 本章将深入探讨C语言中的动态内存管理和经典数据结构实现&#xff0c;这是从基础编程迈向算法工程师的关键一步。您将掌握内存的精确控制、理解各种数据结构的本质…

Go 语言开发环境安装与 GOPROXY 镜像配置(含依赖管理与版本切换技巧)

在国内搭建 Go 开发环境的最大障碍不是“怎么装”&#xff0c;而是“下不动”。本文是我在多台 Windows / macOS / Linux 机器上踩坑后的整合笔记&#xff1a;用最稳妥的安装方式 合理的镜像配置 一套通吃的依赖/版本管理流程&#xff0c;把速度、稳定性和可维护性一次性解决…

崔传波教授:以科技与人文之光,点亮近视患者的清晰视界‌

崔传波教授&#xff1a;以科技与人文之光&#xff0c;点亮近视患者的清晰视界‌在临沂新益民眼科医院&#xff0c;有这样一位眼科医师——他不仅是近视矫正领域的专家&#xff0c;更是“金视青春之光手术”的研发倡导者。‌崔传波教授‌以其深厚的学术功底、创新的技术理念和以…

如何写过滤条件wrapper的使用

模糊查询 &#xff1a;功能是&#xff1a;查询 WORK_NUM 字段包含 ${workOrder.workNum} 的记录。<if test"workOrder.workNum ! null and workOrder.workNum ! ">and b.WORK_NUM like CONCAT(%,CONCAT(#{workOrder.workNum},%)) </if>一、比较条件方法示…

【Spring Boot 报错已解决】彻底解决 “Main method not found in class com.xxx.Application” 报错

文章目录引言一、问题描述1.1 报错示例1.2 报错分析1.3 解决思路二、解决方法2.1 方法一&#xff1a;添加标准的main方法2.2 方法二&#xff1a;检查main方法的定义是否规范2.3 方法三&#xff1a;检查主类的位置是否正确2.4 方法四&#xff1a;重新构建项目并清理缓存三、其他…

配置自签证书多域名的动态网站+部署http的repo仓库+基于nfs与yum仓库的http部署

1.配置自签证书多域名的动态网站1.1配置自签证书1.1.1配置仓库[rootapache ~]# vim /etc/yum.repos.d/epel.repo [epel] nameepel baseurlhttps://mirrors.aliyun.com/epel/9/Everything/x86_64/ gpgcheck0 1.1.2安装easy-rsa工具(用于生成和…

【开题答辩全过程】以 12306候补购票服务系统为例,包含答辩的问题和答案

个人简介一名14年经验的资深毕设内行人&#xff0c;语言擅长Java、php、微信小程序、Python、Golang、安卓Android等开发项目包括大数据、深度学习、网站、小程序、安卓、算法。平常会做一些项目定制化开发、代码讲解、答辩教学、文档编写、也懂一些降重方面的技巧。感谢大家的…

计算机毕业设计 基于深度学习的酒店评论文本情感分析研究 Python毕业设计项目 Hadoop毕业设计选题 机器学习选题【附源码+文档报告+安装调试】

博主介绍&#xff1a;✌从事软件开发10年之余&#xff0c;专注于Java技术领域、Python、大数据、人工智能及数据挖掘、小程序项目开发和Android项目开发等。CSDN、掘金、华为云、InfoQ、阿里云等平台优质作者✌ &#x1f345;文末获取源码联系&#x1f345; &#x1f447;&…

嵌入式第五十二天(GIC,协处理器,异常向量表)

一.GICGIC&#xff08;Generic Interrupt Controller&#xff0c;通用中断控制器&#xff09; 是ARM架构中管理系统中断的核心组件&#xff0c;负责接收、优先级排序、分发中断信号给处理器核心。其核心功能和关键版本如下&#xff1a;核心功能1. 中断接收与分发&#xff1a;接…

基于hiprint的票据定位打印系统开发实践

基于hiprint的票据定位打印系统开发实践 在日常的Web开发中&#xff0c;我们经常需要实现打印功能&#xff0c;特别是对于票据、标签等需要精确排版的打印需求。今天我将分享一个基于hiprint插件实现的票据定位打印系统&#xff0c;重点介绍如何实现单行打印、批量打印以及金额…

Android ScrollView嵌套RecyclerView 导致RecyclerView数据展示不全问题

Android RecyclerView 数据展示不全问题&#xff08;ScrollView→NestedScrollView 修复&#xff09; 一、问题核心现象 布局初始结构&#xff1a;外层用ScrollView包裹包含两个CustomBlogCardView&#xff08;内部均含RecyclerView&#xff09;的LinearLayout。 异常表现&…

AI助力数学学习,轻松掌握知识点!

小伙伴们&#xff0c;今天我们来利用AI辅助数学学习&#xff0c;将数学题目提交给AI,经过分析后给出相应的解题思路和知识点分析。现在有了AI这个"智能小老师"&#xff0c;学习变得更轻松&#xff01;只需把题目交给它&#xff0c;AI就能快速分析题目类型&#xff0c…

AI-调查研究-76-具身智能 当机器人走进生活:具身智能对就业与社会结构的深远影响

点一下关注吧&#xff01;&#xff01;&#xff01;非常感谢&#xff01;&#xff01;持续更新&#xff01;&#xff01;&#xff01; &#x1f680; AI篇持续更新中&#xff01;&#xff08;长期更新&#xff09; AI炼丹日志-31- 千呼万唤始出来 GPT-5 发布&#xff01;“快的…

机器学习、深度学习

卷积神经网络&#xff08;CNN&#xff09;vs. 循环神经网络&#xff08;RNN&#xff09;vs. Transformer 一文带你搞懂 AI Agent 开发利器&#xff1a;LangGraph 与 LangChain 区别 大语言模型&#xff1a;基于LLM的应用开发框架「LangChain」最全指南

SQL语句执行时间太慢,有什么优化措施?以及衍生的相关问题

SQL语句执行时间太慢&#xff0c;有什么优化措施&#xff1f; 可以从四个方面进行&#xff1a; 第一个是查询是否添加了索引 如果没有的话&#xff0c;为查询字段添加索引&#xff0c; 还有是否存在让索引失效的场景&#xff0c;像是没有遵循最左前缀&#xff0c;进行了一些…

QtConcurrent应用解析

目录 对比传统线程 1. QtConcurrent::run() —— 异步运行函数 2.QtConcurrent::mapped() —— 并行转换 3. QtConcurrent::filter() —— 并行过滤 4. QtConcurrent::run() QFutureWatcher —— UI 异步更新 5.线程池配置 QtConcurrent 是 Qt 框架提供的一个 高级并发编…