登录 立即注册

首页 > 绿虎论坛 > 电脑 > 教程 (发帖)

向日葵控控A2(OrayKVM)U盘救砖/USB恢复模式说明/免U盘刷机教程


『回复列表(93|隐藏机器人聊天)』

42.

@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
        }
(/@Ta/2022-09-25 14:20//)

43. @Caddi,是的,没有授权问题,是把控控调整好寄给合作的数据方(最近发生疫情的某地),我们在远程进行控制,感谢您!
(/@Ta/2022-09-25 14:21//)

44.

@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 $?
}
(/@Ta/2022-09-25 16:05//)

45.

@Caddi,所以,硬件ID很可能在/usr/share/oray_mcu_firmware.hex里,修改它然后刷入可能就可以。

(/@Ta/2022-09-25 14:22//)

46. @老虎会游泳,抱歉我不是硬件出身,看过您的github也是一知半解,我是做深度学习相关的,找到这个论坛也是机缘巧合(苦笑
(/@Ta/2022-09-25 14:24//)

47.

@Caddi,嗯,我尝试找一下如何修改吧。

(/@Ta/2022-09-25 14:25//)

48. @老虎会游泳,谢谢老虎哥🙏🏻
(/@Ta/2022-09-25 14:25//)

49.

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

(/@Ta/2022-09-25 14:51//)

50.

控控的现有USB设备id:

Bus 004 Device 002: ID 0483:572b STMicroelectronics

按 Little Endian 反转:83042b57

(/@Ta/2022-09-25 15:04//)

51.

@Caddi,如果我给你这张图以及这个命令,你知道怎么修改吗?

图片.png(391.16 KB)

/usr/sbin/oraymcu_helper -f /usr/share/oray_mcu_firmware.hex

注意ID要按照 Little Endian 反转:0483:572b -> 83042b57

(/@Ta/2022-09-25 15:08//)

52. 也就是说空空的usb设备信息都可以通过linux-ssh连接-stm32相关的命令来重新写入吗
(/@Ta/2022-09-25 15:07//)

53. 抱歉我不知道 大概理解成把hex里面的832042b57随便修改成其他的就可以是吗?
(/@Ta/2022-09-25 15:08//)

54.

@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,但因为不知道密码我们也连不上。

(/@Ta/2022-09-25 15:15//)

55.

@Caddi,注意:固件应该不适用于控控A2 pro,弄错可能会导致USB失灵。

(/@Ta/2022-09-25 15:16//)

56. 收到 谢谢老虎哥 我明天回公司尝试一下
再请教两个问题:
刷入的命令是:/usr/sbin/oraymcu_helper -f /usr/share/oray_mcu_firmware.hex吗
scp传文件的位置任意即可吗?还是/usr/sbin和/usr/share?(这个sbin有点儿奇怪
(/@Ta/2022-09-25 15:17//)

57. 收到@老虎会游泳,我们采购的是控控a2
(/@Ta/2022-09-25 15:18//)

58.

@Caddi,我通常会这样做(admin密码是oray.com):

scp -P44022 oraymcu_helper oray_mcu_firmware.hex admin@192.168.x.x:.
ssh -p44022 admin@192.168.x.x
# chmod +x ./oraymcu_helper
# ./oraymcu_helper -f ./oray_mcu_firmware.hex

至于 /usr/sbin/oraymcu_helper -f /usr/share/oray_mcu_firmware.hex,它最大的用途是告诉你这两个文件在压缩包里的什么位置,以及命令的参数类型。

(/@Ta/2022-09-25 15:47//)

59. 收到 再次感谢
(/@Ta/2022-09-25 15:29//)

60.

结果得到./oraymcu_helper: can't load library 'libstdc++.so.6',看起来还有一些库要上传

(/@Ta/2022-09-25 15:31//)

61. 所以需要我们找到linbstdc++.so.6这个库一起scp进去?
(/@Ta/2022-09-25 15:34//)

下一页 上一页 3/5页,共93楼

回复需要登录

5月18日 11:57 星期六

本站由hu60wap6华为CPU驱动

备案号: 京ICP备18041936号-1