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 控制器芯片调试记录

相关推荐
Ai-_Man2 小时前
您您这可以把Google AI Studio的多个会话比如说。左侧的多个会话一次性导出吗?不是单条会话里面的多次会对话。AI导出鸭
javascript·人工智能·ai·小程序·电脑
荣合技术服务3 小时前
电脑上如何安装Materials Studio 2023分子模拟软件
电脑·分子模拟器·materialsstudio
智塑未来4 小时前
推荐一款办公用的平板
电脑
2601_957883844 小时前
2026年9月:专业解决雷神笔记本维修难题
python·电脑
可爱系程序猿12 小时前
键鼠都正常、只有手柄映射才提示 dinput8.dll?DirectInput 接口和游戏目录怎么对齐
程序人生·游戏·电脑
乌萨达17 小时前
手机模拟器安卓怎么用?电脑安装应用、玩手游与账号同步指南
android·智能手机·电脑·雷电模拟器
涵美女程序猿21 小时前
ChatCut online 剪负载均衡健康检查演练录屏:后端池、探针路径与摘除阈值怎样对应
运维·程序人生·电脑·负载均衡
爱编程的Zion1 天前
【踩坑记录】同一个 WiFi 下,A 电脑能访问 192.168.0.115,B 电脑死活不行 ——Windows 路由表缺失引发的故障排查
windows·电脑
歌劳亿电梯1 天前
意式定制别墅电梯,怎么选到靠谱直销厂家?
电脑
bj_bluewei_tech1 天前
拯救者笔记本充电断断续续,不一定是适配器故障
电脑·笔记本电脑