您尚未登录。

楼主 # 2024-08-19 13:36:46

剑圣UZI
会员
注册时间: 2024-08-19
已发帖子: 13
积分: 43

全志H6的USB0 OTG模式连接电脑没有任何反应

想问下论坛大佬们关于USB OTG的问题。

我用全志H6做的一个核心板,想用USB0的OTG功能让H6做从机用DragonHD测试DDR频率。修改了USB0的原理图,去掉了USB0_DRVBUS和SY6280AAC功率开关芯片, 强制H6只做从机,使用电脑直接供电VBUS, 并连接GND, DM, DP到电脑。现在的问题是用两头USB3.0 Male TYPE A数据线连接后,没有任何反应,电脑端device manager没有任何设备被识别到,也没有“叮”的声音。

目前我猜测的原因有几个:1. OTG不支持USB3.0; 2. H6软件部分有地方没改成OTG模式; 3.PCB设计问题,USB差分走线有点不标准,没有完整参考层? 但又感觉USB2.0的速度不高好像不太需要?目前线宽5mil, 线距6mil(线边缘之间),做了等长(<10mil).1.6mm板厚,2层板。

相关原理图截图如下:pic_2024-08-18_221902.png
相关PCB设计图如下:pic_2024-08-18_222104.png

麻烦大家帮忙看看啥原因,有没有什么easy fix。如果真的是PCB问题,我就重新再画再打板吧。。。新手估计不出来哪里问题比较大。

感谢!!

离线

楼主 #1 2024-08-19 13:39:41

剑圣UZI
会员
注册时间: 2024-08-19
已发帖子: 13
积分: 43

Re: 全志H6的USB0 OTG模式连接电脑没有任何反应

多做一点说明:H6最小核心板的基本功能没有问题,上面说的2层板是外设板子。核心板用MINI-PCIE插到外设板子上。这个USB就是外设板子上的。

离线

#2 2024-08-19 20:49:08

microxp
会员
注册时间: 2021-04-27
已发帖子: 76
积分: 124

Re: 全志H6的USB0 OTG模式连接电脑没有任何反应

它确实不支持3.0,别搞那么高端,粗糙一点没准还能跑。还有插windows上试试看,windows识别usb比较厉害,有时候linux识别不出来。还有做otg不是还有个id脚吗,那个是不是要强制接地,不知道悬空有没有影响,otg一般都用五个脚的。还有dpdm线是不是还有个1.5k的上拉电阻来决定高低速度的,这个不接有的电脑也能识别,不知道有没有影响

最近编辑记录 microxp (2024-08-19 21:46:38)

离线

楼主 #3 2024-08-20 00:26:11

剑圣UZI
会员
注册时间: 2024-08-19
已发帖子: 13
积分: 43

Re: 全志H6的USB0 OTG模式连接电脑没有任何反应

@microxp
OK, 我再搞个USB2.0的线试一试。
上面的电脑测试就是windows上做的,没反应。
那个id脚我也不是很明白,是照着立创有个大神的图画的,和ORANGE pi 3 lts (https://drive.google.com/file/d/11tVALHvTHNn3oUxkV5ggLSKQVnBsGRnp/view)的基本一致,都没带id脚,上下拉电阻也都没有,有点奇怪。

感谢提供这些思路!!:)

离线

#4 2024-08-20 10:27:13

arychen
会员
注册时间: 2019-04-06
已发帖子: 275
积分: 250.5

Re: 全志H6的USB0 OTG模式连接电脑没有任何反应

没翻以前的图纸,这个USB0不是下载的那个口吧?
DragonHD工作原理就是给内存里download一个固件,然后跳转运行这个固件,这固件做的事情就是usb通信和DDR测试。 所以需要连接到可以下载代码的那个usb口,切其他usb口的模式到device是没有用的,重启后它不是下载口   下载口是固定的

离线

楼主 #5 2024-08-20 12:29:56

剑圣UZI
会员
注册时间: 2024-08-19
已发帖子: 13
积分: 43

Re: 全志H6的USB0 OTG模式连接电脑没有任何反应

@arychen
对的,usb0就是那个下载口,只有这个口可以下固件测ddr。
但就算是没调成下载模式/驱动没装好,硬件连接应该至少有点反应才对,这点比较奇怪。

离线

#6 2024-08-20 14:47:49

arychen
会员
注册时间: 2019-04-06
已发帖子: 275
积分: 250.5

Re: 全志H6的USB0 OTG模式连接电脑没有任何反应

剑圣UZI 说:

@arychen
对的,usb0就是那个下载口,只有这个口可以下固件测ddr。
但就算是没调成下载模式/驱动没装好,硬件连接应该至少有点反应才对,这点比较奇怪。

你能下代码吧  那下载模式就是可以的,在强制下载模式下执行PC上的测试工具就行了。   
现在你的没反应,是指系统起来adb口找不到吧?

离线

楼主 #7 2024-08-21 06:02:36

剑圣UZI
会员
注册时间: 2024-08-19
已发帖子: 13
积分: 43

Re: 全志H6的USB0 OTG模式连接电脑没有任何反应

@arychen
我还没下载过代码,不知道下载功能行不行。现在就是不管是否启动了dragonHD,usb硬件连接电脑没有反应,没有找到设备,也没有响声。按理说,不管是否下载代码或者跑什么pc端软件,usb插上至少得有个硬件设备层面的反应才对。测了usbbus是有5v电压的。
adb是Android Debug Bridge? 我没跑安卓系统,跑的ubuntu(orange pi提供的ubuntu),从tf卡启动的。

今天usb2.0的线会到,试一试2.0的线看看再汇报。

离线

楼主 #8 2024-08-21 09:11:37

剑圣UZI
会员
注册时间: 2024-08-19
已发帖子: 13
积分: 43

Re: 全志H6的USB0 OTG模式连接电脑没有任何反应

测试了usb2.0的线,也不行,啥反应没有。
感觉可能是PCB问题了。。。。

离线

#9 2024-08-21 10:49:34

arychen
会员
注册时间: 2019-04-06
已发帖子: 275
积分: 250.5

Re: 全志H6的USB0 OTG模式连接电脑没有任何反应

先试下强制下载模式,下载口PC能不能认出来吧     你的固件可能usb就配的host模式,所以插电脑上没啥东西

离线

#10 2024-08-21 20:53:30

microxp
会员
注册时间: 2021-04-27
已发帖子: 76
积分: 124

Re: 全志H6的USB0 OTG模式连接电脑没有任何反应

剑圣UZI 说:

测试了usb2.0的线,也不行,啥反应没有。
感觉可能是PCB问题了。。。。

usb没那么难吧,直接飞线都可以呀,反正就四根线,直接拿飞线接上看就行了

离线

楼主 #11 2024-08-22 11:30:36

剑圣UZI
会员
注册时间: 2024-08-19
已发帖子: 13
积分: 43

Re: 全志H6的USB0 OTG模式连接电脑没有任何反应

arychen 说:

先试下强制下载模式,下载口PC能不能认出来吧     你的固件可能usb就配的host模式,所以插电脑上没啥东西

这个怎么强制下载模式?要改固件的哪些地方?

离线

楼主 #12 2024-08-22 14:39:43

剑圣UZI
会员
注册时间: 2024-08-19
已发帖子: 13
积分: 43

Re: 全志H6的USB0 OTG模式连接电脑没有任何反应

arychen 说:

先试下强制下载模式,下载口PC能不能认出来吧     你的固件可能usb就配的host模式,所以插电脑上没啥东西

目前的改动是修改了 /boot/dtb-5.10.75-sun50iw6/allwinner/里面的dtb文件(没找到dts文件,通过反编译dtb到dts,然后又编译回去)。具体是找到了usb-otg那个设备,改动dr-mode从"host"到"peripheral". 然后重启。但是还是不行,连线依然没有任何反应。

还需要修改别的地方吗?大家帮忙看一下,感谢!!

离线

#13 2024-08-22 14:45:48

晕哥
管理员
注册时间: 2017-09-06
已发帖子: 9,342
积分: 9202

Re: 全志H6的USB0 OTG模式连接电脑没有任何反应

是主线Linux,还是全志的tina?





在线

楼主 #14 2024-08-22 14:53:11

剑圣UZI
会员
注册时间: 2024-08-19
已发帖子: 13
积分: 43

Re: 全志H6的USB0 OTG模式连接电脑没有任何反应

应该是主线linux吧,uname -a 的output:
Linux orangepi3-lts 5.10.75-sun50iw6 #2.2.2 SMP Wed Apr 20 09:45:07 CST 2022 aarch64 aarch64 aarch64 GNU/Linux

最近编辑记录 剑圣UZI (2024-08-22 14:53:30)

离线

#15 2024-08-22 17:02:44

晕哥
管理员
注册时间: 2017-09-06
已发帖子: 9,342
积分: 9202

Re: 全志H6的USB0 OTG模式连接电脑没有任何反应

剑圣UZI 说:

应该是主线linux吧,uname -a 的output:
Linux orangepi3-lts 5.10.75-sun50iw6 #2.2.2 SMP Wed Apr 20 09:45:07 CST 2022 aarch64 aarch64 aarch64 GNU/Linux

参考这个看看:请问下主线 V3s Linux 如何在程序运行中自动切换USB模式: otg/host/peripheral





在线

楼主 #16 2024-08-23 14:04:49

剑圣UZI
会员
注册时间: 2024-08-19
已发帖子: 13
积分: 43

Re: 全志H6的USB0 OTG模式连接电脑没有任何反应

@晕哥
试了一下这个方案,我的结果和其中cityf那个人一样:
echo "peripheral" > /sys/devices/platform/soc/5100000.usb/musb-hdrc.5.auto/mode

echo "host" > /sys/devices/platform/soc/5100000.usb/musb-hdrc.5.auto/mode

然而, 一点反应都没有。



无论写什么, 里面都是:

# cat /sys/devices/platform/soc/5100000.usb/musb-hdrc.5.auto/mode
b_idle

离线

楼主 #17 2024-08-24 15:15:49

剑圣UZI
会员
注册时间: 2024-08-19
已发帖子: 13
积分: 43

Re: 全志H6的USB0 OTG模式连接电脑没有任何反应

问题解决了。不需要特别的设置设备树的usb peripheral和USB gadget driver。(但我修改了dr_code=“peripheral”)

需要进入FEL mode,或者叫下载模式,这个模式下H6自动作为USB device,连接PC作为host进行通信,不走Linux内核的usb driver。进入FEL的方式是:H6关机;拔出TF卡,重新上电(或者保险起见按住UBOOT按钮上电),连接USB线到PC。这样H6不会正常启动,而是进入下载模式,且能被PC识别成unknown device(会听见叮的一声)。

下一步是安装DragonHD的驱动,驱动在软件包内,设置路径在Windows的device manager内自动搜索driver就可以装上,这样之前的unknown device就变成:"USB Device(VID_1f3a_PID_efe8)",表明可以正确识别了。

最后一步是打开DragonHD软件,选择芯片型号和CLK频率,点击启动,重新插入USB线到PC,这样就可以正常测试了。不然会一直显示"未关联设备"。

希望有用~ 感谢大家提供的思路 smile

离线

页脚

工信部备案:粤ICP备20025096号 Powered by FluxBB

感谢为中文互联网持续输出优质内容的各位老铁们。 QQ: 516333132, 微信(wechat): whycan_cn (哇酷网/挖坑网/填坑网) service@whycan.cn