@Caddi,我虽然刷入成功了
但重启后ID没有变,我正在查找原样。也许MCU固件被以下脚本还原了(
/etc/init.d/S16mcu_helper
):cur_version=$(cat /etc/version | grep 'mcu' | awk -F ':' {'print $2'}) mcu_version=$(/usr/sbin/oraymcu_helper -v | awk -F ',' {'print $2'} | awk -F ':' {'print $2'}) #读取mcu版本号失败或者与本固件的mcu版本不匹配,则将本固件的mcu固件刷入到mcu中 [ $? -ne 0 -o "$mcu_version" != "$cur_version" ] && { burn_mcu_firmware }
@Caddi,还有这一段:
burn_mcu_firmware() { /usr/sbin/oraymcu_helper -f /usr/share/oray_mcu_firmware.hex [ $? -eq 0 ] || { echo "burn mcu failed..." sleep 2 /usr/sbin/oraymcu_helper -f /usr/share/oray_mcu_firmware.hex } return $? }
@Caddi,注意我在教程中可能会写错SSH端口,用户名和密码,因为我的固件和默认固件不一样。
你应该使用
44022
端口,用户名是admin
,密码是oray.com
。对于
scp
命令,端口用-P
指定,而ssh
命令则是-p
。
@Caddi,我通常会这样做(
admin
密码是oray.com
):scp -P44022 oraymcu_helper oray_mcu_firmware.hex [email protected]:. ssh -p44022 [email protected] # chmod +x ./oraymcu_helper # ./oraymcu_helper -f ./oray_mcu_firmware.hex
至于
/usr/sbin/oraymcu_helper -f /usr/share/oray_mcu_firmware.hex
,它最大的用途是告诉你这两个文件在压缩包里的什么位置,以及命令的参数类型。
@Caddi,我还没刷。等我试试。
结果得到
./oraymcu_helper: can't load library 'libstdc++.so.6'
,看起来还有一些库要上传
@Caddi,注意:固件应该不适用于控控A2 pro,弄错可能会导致USB失灵。
@Caddi,我猜可以,你先解压固件获得
/usr/sbin/oraymcu_helper
和/usr/share/oray_mcu_firmware.hex
,然后修改oray_mcu_firmware.hex
里的id,把它和oraymcu_helper
一起用scp传到控控,然后用命令刷入,再断电重启即可(reboot
命令没有用,要物理断电才能重启单片机)。固件:kvm_upgrade_1.4.0_firmware.bz2(12.77 MB)(使用7-zip解压,然后再用7-zip解压
rootfs.squashfs
)控控的SSH监听在44022和44033端口。44022端口的用户名是
admin
,密码是oray.com
,会话根目录被chroot了(所以要自己传文件上去)。44033的用户名是root
,密码未知,会话根目录未被chroot,但因为不知道密码我们也连不上。
@Caddi,如果我给你这张图以及这个命令,你知道怎么修改吗?
/usr/sbin/oraymcu_helper -f /usr/share/oray_mcu_firmware.hex
注意ID要按照 Little Endian 反转:
0483:572b
->83042b57
控控的现有USB设备id:
Bus 004 Device 002: ID 0483:572b STMicroelectronics
按 Little Endian 反转:
83042b57
STM32F103C8T6是一款基于ARM Cortex-M 内核STM32系列的32位的微控制器,程序存储器容量是64KB,需要电压2V~3.6V,工作温度为-40°C ~ 85°C。
STM32F103C8T6是一款由意法半导体公司(ST)推出的基于Cortex-M3内核的32位微控制器,硬件采用LQFP48封装,属于ST公司微控制器中的STM32系列。
https://blog.csdn.net/fantastic_sky/article/details/110229474
@Caddi,嗯,我尝试找一下如何修改吧。
@Caddi,所以,硬件ID很可能在
/usr/share/oray_mcu_firmware.hex
里,修改它然后刷入可能就可以。
@Caddi,注意这句话
1、负责产品硬件选型,使用海思hi3516a处理器,使用ADV7611 HDMI采集芯片并使用stm32f130c8t6单片机作为usb device模拟鼠标键盘设备;
USB是一个单独的单片机实现的,它有单独的固件。
/etc/init.d/S16mcu_helper
这个是固件升级脚本
cur_version=$(cat /etc/version | grep 'mcu' | awk -F ':' {'print $2'}) mcu_version=$(/usr/sbin/oraymcu_helper -v | awk -F ',' {'print $2'} | awk -F ':' {'print $2'}) #读取mcu版本号失败或者与本固件的mcu版本不匹配,则将本固件的mcu固件刷入到mcu中 [ $? -ne 0 -o "$mcu_version" != "$cur_version" ] && { burn_mcu_firmware }
@Caddi,如果你真的没有授权问题,那么我可以尝试一下看看能不能找到修改方法。
@Caddi,如果你们真的有定制需求,建议直接联系向日葵。这个固件修改教程只是为个人硬件玩家准备的,达不到机关单位使用的完全要求(而且由于36楼的问题,控控本身可能也达不到)。
@Caddi,顺便一提,控控默认开着ssh远程登录功能,而且采用的是固定弱密码,和它在同一个局域网的设备可以入侵它并接管远程控制。
@Caddi,建议你与你的计算机管理员联系,以避免违反规定带来的一系列麻烦。
@胡椒舰长,你要相信你用nslookup和ping看到的IP就是真实IP,所以它本来就是暴露的。
@pppax,试试装这个,装完后点Run,看测试程序能不能跑起来
https://winegame.net/games/unigine-heaven/
如果依然有问题,你可以考虑安装wine游戏助手的flatpak版本:
https://hu60.cn/q.php/bbs.topic.103194.html