数码之家

 找回密码
 立即注册

QQ登录

只需一步,快速开始

微信登录

微信扫一扫,快速登录

搜索
查看: 4171|回复: 32

[C51] 电动车中一线通SIF数据解码,求大神看看,这里怎么哪个是速度?

[复制链接]
发表于 2023-9-12 12:05:51 | 显示全部楼层 |阅读模式
      网上买了一个支持一线通的电动车控制器,数据已经解调出来了,但是好像它这个数据进行过二次加密或校验,不知道那个地方是显示车速的,我自已做了一个仪表,想把时速显示上去。



一共是12个数据,数据解码应该是没有问题,我是用逻辑分析仪抓包手动解码过,而且在其它电动车上确码得到过检证,只是这款控制器进行了二次加密或校验,求大神指指路,我想提取速度值。
第一个为标头,最后一个为异或检验,中间的第七位0x00是一直没有变化,第二位也会隔两位增加一次,而第三位就是整数增加,后四位始终是0,第八位和第九位,在电机没有启动的情况下是一样的,一但启动就会有55的差,用后面的数减前面的数,第十一位减十位,总是保持35的差,求大神分析一下!

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有账号?立即注册 微信登录

x
发表于 2023-9-12 17:38:17 | 显示全部楼层
本帖最后由 lmn2005 于 2023-9-12 17:45 编辑


我觉得这个没有统一 的通讯协议,各厂有各厂的通讯协议, 估计该电动车厂的工程师才知道吧

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有账号?立即注册 微信登录

x
回复 支持 反对

使用道具 举报

 楼主| 发表于 2023-9-12 18:47:49 | 显示全部楼层
就是想看看有没有高手能知道,或破解。
回复 支持 反对

使用道具 举报

发表于 2023-9-12 18:51:28 | 显示全部楼层
我有这个协议,可有偿提供,有意私聊
回复 支持 反对

使用道具 举报

发表于 2023-9-12 18:52:05 | 显示全部楼层
如果是你自己玩还是算了吧,如果做产品,可以考虑一下
回复 支持 反对

使用道具 举报

 楼主| 发表于 2023-9-12 19:38:04 | 显示全部楼层
595953427@qq 发表于 2023-9-12 18:52
如果是你自己玩还是算了吧,如果做产品,可以考虑一下

就是自已玩玩,要是做产品还到这里求帮助!
回复 支持 反对

使用道具 举报

发表于 2023-9-12 20:56:09 来自手机浏览器 | 显示全部楼层
把电机的霍尔接出来,然后你拿个电钻贴个磁铁靠近转一下,那个变动那个就是转速了,因为你推车不加油门也会出现速度。所以速度应该是霍尔检测
回复 支持 反对

使用道具 举报

 楼主| 发表于 2023-9-12 21:21:40 | 显示全部楼层
xiaohui888 发表于 2023-9-12 20:56
把电机的霍尔接出来,然后你拿个电钻贴个磁铁靠近转一下,那个变动那个就是转速了,因为你推车不加油门也会 ...

为了这个,我特意拆了我的电动车,霍尔这些必须都得接上啊,采集回来的数据是模拟真实骑行时的数据。
回复 支持 反对

使用道具 举报

发表于 2023-9-12 23:08:47 | 显示全部楼层
非标的东西,只能自己慢慢搞
可以将不同速度下的数据抓取下来,比对分析,找出变化的字节
回复 支持 反对

使用道具 举报

发表于 2023-9-12 23:14:20 来自手机浏览器 | 显示全部楼层
amo73 发表于 2023-9-12 23:08
非标的东西,只能自己慢慢搞
可以将不同速度下的数据抓取下来,比对分析,找出变化的字节
...

这个协议有加密的,没有解密算法不好弄,很有挑战性,加油
回复 支持 反对

使用道具 举报

 楼主| 发表于 2023-9-13 12:03:33 | 显示全部楼层
补充一下,第三个数据是每一分半钟增加一次,再附上电机在不同转速下的数据
高速数据
[10:44:24.577]接收← 0x0a  0x3f  0xd0  0x6c  0xac  0x6d  0x00  0x6e  0xdc  0x4b  0x6e  0xdf  check is 1
                    
[10:44:25.288]接收← 0x0a  0x41  0xd0  0x7a  0xba  0x7b  0x00  0x7c  0xea  0x59  0x7c  0x93  check is 1
                    
[10:44:26.003]接收← 0x0a  0x43  0xd0  0x78  0xb8  0x79  0x00  0x7a  0xe8  0x57  0x7a  0x9f  check is 1
                    
[10:44:26.714]接收← 0x0a  0x45  0xd0  0x66  0xa6  0x67  0x00  0x68  0xd6  0x45  0x68  0xab  check is 1
                    
[10:44:27.415]接收← 0x0a  0x47  0xd0  0x74  0xb4  0x75  0x00  0x76  0xe4  0x53  0x76  0x9f  check is 1
                    
[10:44:28.130]接收← 0x0a  0x49  0xd0  0x42  0x82  0x43  0x00  0x44  0xb2  0x21  0x44  0x83  check is 1
                    
[10:44:28.846]接收← 0x0a  0x4b  0xd0  0x60  0xa0  0x61  0x00  0x62  0xd0  0x3f  0x62  0xdf  check is 1
                    
[10:44:29.557]接收← 0x0a  0x4d  0xd0  0x4e  0x8e  0x4f  0x00  0x50  0xbe  0x2d  0x50  0x8b  check is 1

中速数据
[10:45:06.151]接收← 0x0a  0xb4  0xd0  0x7d  0xbd  0x7e  0x00  0x7e  0xfd  0x5c  0x7f  0x70  check is 1
                    
[10:45:06.861]接收← 0x0a  0xb6  0xd0  0x7b  0xbb  0x7c  0x00  0x7c  0xfb  0x5a  0x7d  0x70  check is 1
                    
[10:45:07.573]接收← 0x0a  0xb8  0xd0  0x79  0xb9  0x7a  0x00  0x7a  0xf9  0x58  0x7b  0x78  check is 1
                    
[10:45:08.285]接收← 0x0a  0xba  0xd0  0x17  0x57  0x18  0x00  0x18  0x97  0xf6  0x19  0x58  check is 1
                    
[10:45:08.996]接收← 0x0a  0xbc  0xd0  0x65  0xa5  0x66  0x00  0x66  0xe5  0x44  0x67  0x60  check is 1
                    
[10:45:09.698]接收← 0x0a  0xbe  0xd0  0x63  0xa3  0x64  0x00  0x64  0xe3  0x42  0x65  0x60  check is 1
                    
[10:45:10.414]接收← 0x0a  0xc0  0xd0  0x61  0xa1  0x62  0x00  0x62  0xe1  0x40  0x63  0x18  check is 1
                    
[10:45:11.128]接收← 0x0a  0xc2  0xd0  0x7f  0xbf  0x80  0x00  0x80  0xff  0x5e  0x81  0xf8  check is 1
                    
[10:45:11.839]接收← 0x0a  0xc4  0xd0  0x4d  0x8d  0x4e  0x00  0x4e  0xcd  0x2c  0x4f  0x70  check is 1
                    
[10:45:12.539]接收← 0x0a  0xc6  0xd0  0x4b  0x8b  0x4c  0x00  0x4c  0xcb  0x2a  0x4d  0x70  check is 1
                    
[10:45:13.252]接收← 0x0a  0xc8  0xd0  0x49  0x89  0x4a  0x00  0x4a  0xc9  0x28  0x4b  0x78  check is 1
                    
[10:45:13.964]接收← 0x0a  0xca  0xd0  0x67  0xa7  0x68  0x00  0x68  0xe7  0x46  0x69  0x18  check is 1
                    
[10:45:14.674]接收← 0x0a  0xcc  0xd0  0x75  0xb5  0x76  0x00  0x76  0xf5  0x54  0x77  0x00  check is 1
                    
[10:45:15.383]接收← 0x0a  0xce  0xd0  0x73  0xb3  0x74  0x00  0x74  0xf3  0x52  0x75  0x00  check is 1



低速数据                    
[10:45:55.897]接收← 0x0a  0x40  0xe0  0x60  0xa0  0x61  0x00  0x60  0xf0  0x3f  0x62  0xc6  check is 1
                    
[10:45:56.605]接收← 0x0a  0x42  0xe0  0x7e  0xbe  0x7f  0x00  0x7e  0x0e  0x5d  0x80  0xba  check is 1
                    
[10:45:57.317]接收← 0x0a  0x44  0xe0  0x4c  0x8c  0x4d  0x00  0x4c  0xdc  0x2b  0x4e  0xd6  check is 1
                    
[10:45:58.029]接收← 0x0a  0x46  0xe0  0x4a  0x8a  0x4b  0x00  0x4a  0xda  0x29  0x4c  0xd2  check is 1
                    
[10:45:58.726]接收← 0x0a  0x48  0xe0  0x48  0x88  0x49  0x00  0x48  0xd8  0x27  0x4a  0xd6  check is 1
                    
[10:45:59.438]接收← 0x0a  0x4a  0xe0  0x66  0xa6  0x67  0x00  0x66  0xf6  0x45  0x68  0xba  check is 1
                    
[10:46:00.154]接收← 0x0a  0x4c  0xe0  0x74  0xb4  0x75  0x00  0x74  0x04  0x53  0x76  0x46  check is 1
                    
[10:46:00.859]接收← 0x0a  0x4e  0xe0  0x72  0xb2  0x73  0x00  0x72  0x02  0x51  0x74  0x42  check is 1
                    
[10:46:01.583]接收← 0x0a  0x50  0xe0  0x70  0xb0  0x71  0x00  0x70  0x00  0x4f  0x72  0x46  check is 1
                    
[10:46:02.293]接收← 0x0a  0x52  0xe0  0x4e  0x8e  0x4f  0x00  0x4e  0xde  0x2d  0x50  0xda  check is 1
                    
[10:46:03.001]接收← 0x0a  0x54  0xe0  0x1c  0x5c  0x1d  0x00  0x1c  0xac  0xfb  0x1e  0xb6  check is 1
回复 支持 反对

使用道具 举报

发表于 2023-9-13 15:58:42 | 显示全部楼层
这种玩法,够玩一阵子的。
回复 支持 反对

使用道具 举报

发表于 2023-9-13 16:02:43 | 显示全部楼层
第一个字节是设备编号,不同的设备编号采用不同的加密算法,也需要不同的解密算法,第二个字节是数据帧编号的低8位,第三个字节是数据帧的高8位,后面的数据是加密后的
回复 支持 反对

使用道具 举报

发表于 2023-9-13 16:03:47 | 显示全部楼层
前3个字节没加密,后面都是加密过的,需要根据设备编号选择解密算法,解密后的数据可以获取到控制器的状态,就可以得到速度的数据了。
回复 支持 反对

使用道具 举报

发表于 2023-9-13 16:39:49 | 显示全部楼层
加密了别研究了,测转速自己搞个霍尔装轮子上测
回复 支持 反对

使用道具 举报

发表于 2023-9-13 21:07:25 | 显示全部楼层
深寒刺骨 发表于 2023-9-13 12:03
补充一下,第三个数据是每一分半钟增加一次,再附上电机在不同转速下的数据
高速数据
[10:44:24.577]接收← ...

这样记录还不充分,要补上每一帧对应的速度值,也就是表显数据。
并且最好在多个区间微调出步进速度,例如1、2、3;11、12、13;21、22、23……
只要不是哈希算法(原始数据改1个bit,输出整个数组就雪崩式大变样的那种),就有很大可能性成功,解不出算法还可以考虑查表。
回复 支持 反对

使用道具 举报

 楼主| 发表于 2023-9-13 22:29:49 | 显示全部楼层
amo73 发表于 2023-9-13 21:07
这样记录还不充分,要补上每一帧对应的速度值,也就是表显数据。
并且最好在多个区间微调出步进速度,例 ...

因为是从网上随便买的控制器,并不清楚原本是用在什么电动车上的,原来标定的轮子周长是多少也不清楚,只是接在我电动车上测试的,查表可能没有希望,后面的数值一直在变化,并不固定,不过我想这个不会搞很复杂,毕竟不是很多钱的东西,算力和字节长度摆在那里,我确调其它电动车的数据,并没有这么复杂!
回复 支持 反对

使用道具 举报

发表于 2023-9-14 20:44:51 | 显示全部楼层
真能折腾,我就不考虑解码了。。。直接霍尔测脉冲了。。其实他们控制器内部也这么干的。。
回复 支持 反对

使用道具 举报

发表于 2023-12-15 00:21:23 | 显示全部楼层
大佬先别弃疗,小弟有二份资料献上,只求大佬帮忙做一个一线通电池解码

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有账号?立即注册 微信登录

x
回复 支持 反对

使用道具 举报

发表于 2023-12-15 08:27:34 来自手机浏览器 | 显示全部楼层
kkkdxy 发表于 2023-12-15 00:21
大佬先别弃疗,小弟有二份资料献上,只求大佬帮忙做一个一线通电池解码
...

电池跟控制器不一样的,控制器不知道电池的状态,电池不知道控制器的状态,控制器和电池都是从机,从机主动上报数据。
仪表是主机,读取控制器和电池状态并显示
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册 微信登录

本版积分规则

APP|手机版|小黑屋|关于我们|联系我们|法律条款|技术知识分享平台

闽公网安备35020502000485号

闽ICP备2021002735号-2

GMT+8, 2025-7-22 04:02 , Processed in 0.156000 second(s), 8 queries , Redis On.

Powered by Discuz!

© 2006-2025 MyDigit.Net

快速回复 返回顶部 返回列表