1. 固件代码提取攻击命令
s1fwx(S1固件提取工具)是一个可以从您的S1mp3播放器设备中提取原始的固件的一个专用工具(绿色免费).
另外的一个特点是支持对固件文件的修改、解密、提取和保存。 这样您就可以查看任意固件的源代码,其中也包括fw 文件, 改变他们的内容并重新刷回到S1mp3设备中.
目前有两种以知的文件格式为固件文件:
AFI: 这些文件包含最基本的FLASH设备程序.一个最小的固件一般都是s1mp3xxx.bin或s1mp3xxx.fw文件(参见下面)
FW/FWI: 固件包括图像文件和控制其运行时间和情况的相关程序.
DOS平台下的用法:
2. 单片机上的源代码和固件有什么区别
源代码就是人能看懂的程序代码,通常说写程序也就是写的源代码;固件是源码经过编译过后生成的目标程序,是二进制代码,一般为bin或hex格式,烧录进单片机能够被识别和执行。
3. 我的物联网大学“第十章”:不能远程升级的4G模块都是耍流氓
X电(化名)曾经是共享充电宝的明星企业。
2017年10月,X电以2亿的估值,获得了天使轮融资3000万,开始迅速铺货抢占市场。
在每一个餐桌上放一个单机版本的充电宝,用户扫码付款即可充电。
第一批货,做了10万台,投资金额1800万元。
X电的经营团队,具有互联网公司的基因,也具备美团饿了么团队的地推基因。所以铺货的进度很顺利,只用了半年的筹备期,就把建团队、做产品、搭建运营系统这些硬骨头一一啃下了。
2018年4月,10万台X电共享充电宝顺利进入了全国各地的各个门店。
后台开始看到了租金流水。
X电团队开始筹划用这10万台的运营数据,进行A轮融资,扩大市场规模。
设备大规模上线运营的第三天,后台运营团队突然发现,有300多台设备不在线了。
第四天,又有500多台设备不在线了。
第五天,700多台设备失去联系。
运营团队召集通信模块供应商紧急到现场分析问题,抓日志,Debug,很快定位了问题所在。
原来,为了争取时间,X电的工程师把后台通信协议的代码,采取OpenCPU的方式,写在了4G模块内部。
这段代码有个Bug,在运行一段时间后,会产生内存溢出,导致充电宝上报的报文一直阻塞,必须人工去把充电宝重新开关机才能恢复工作。
因为这个Bug在充电宝运行几天之后才能发现,所以测试部门没有覆盖到。
X电的工程师很快修复了这个Bug,发布了新版本的4G模块固件,并要求运营团队马上升级这个固件。
X电运营团队非常愤怒:
全国各地10万台设备,你让我们怎么升级?你们研发部门难道没有在4G模块预留远程升级功能吗?
这回轮到研发部傻眼了:
为了赶工期,我们只是开发了充电MCU的固件远程升级,并没有开发4G模块的远程升级功能。
在争论的过程中,每天又有更大批量的充电宝跟服务器失去联系,从每天的几百台,迅速扩大到了每天3000多台、5000多台、8000多台……
不到两周时间,超过80%的充电宝,都失去了联络。
尽管有一部分店家采用人工开关机的方式,恢复了充电宝的工作。但是恢复之后,过几天充电宝又无法工作了,店家也就不厌其烦的放弃了……
就这样,10万台充电宝全军覆没,运营数据也成了泡影。3000万融资花光之后,第二轮融资失败,X电退出了 历史 舞台。
直到现在,共享充电宝市场风起云涌,但是依然再也看不到X电的身影。
如果当时4G模块有预留远程升级功能, X电目前的应收,很可能就是一年几十亿,估值也早已超过50亿。
因为没有预留远程升级功能,一个潜在的独角兽企业,就这么折戟沉沙,灰飞烟灭。
据调查,几乎所有共享充电宝企业,第一批的铺货,都遇到过通信模块的软件问题。
通过远程升级的功能,把通信模块的固件,以及跟模块搭配的MCU的固件,进行无痛的更新,才能使得初创的充电宝企业,顺利成长为一个个独角兽。
在发布合宙4G模块之前的几个月,我们也调查了友商的4G模块量产后都会遇到哪些问题。
所以,合宙的4G模块,可以允许有未知的软件Bug存在,但是固件的远程升级功能,是必须要经过不断的各种测试—— 要确保在任何场景下,只要能通信,就必须要能够保证成功更新固件。
合宙的4G模块,是在2018年9月发布的,真正小批量出货,是在2018年12月。
刚把模块发出去给到客户之后的几个月,我们最担心的就是模块是不是会变砖。
为了确保固件的升级成功,合宙的第一代4G模块, 甚至不敢用差分升级,而是 采用全固件升级的方式,确保升级的架构简单可控,从理论上杜绝升级失败的可能性。
事实上,从2018年底开始出货4G模块之后,各种故障源源不断的发生。为了解决这些层出不穷的问题,在半年内固件升级了至少五六次。
客户的设备即使遇到了故障,因为能够第一时间进行远程升级,绝大多数都能够安然无恙的使用升级之后的固件运行。
在2020年初发布的Cat.1模块的策略上,合宙的模块继续提供了远程升级的服务。
为了节省空间,Cat.1模块引入了差分包的升级方式,升级速度更快,占用模块的空间更小。
制作差分包的工具,也免费公开在合宙的doc社区。到今天为止,已有1000多个客户在使用这个功能。
- 合宙4G Cat.1模块远程升级差分工具 -
http://doc.openluat.com/chafen
购买4G通信模块,请第一时间确认,是否带有远程升级功能。
没有远程升级的4G模块,都是在耍流氓。
- 本文内容选自 -
合宙CEO秦鹏的最新作品《我的物联网大学》
第十章
不能远程升级的4G模块都是耍流氓
上海合宙通信模块 - 合宙Luat,让万物互联更简单
查看往期精彩内容
【第一章:迷茫的前三年】
【第二章:Luat的出世】
【第三章】:在问题中突围,还是灭亡?
【第四章】:江湖人物志之初创团队
【第五章】:沉默不会爆发,沉默一定会灭亡!
【第六章】:个人英雄主义和组织效率的矛盾
【第七章】:2019年的市场形势
【第八章】:跟一个女采购见光死的故事
【第九章】:怎么样才能让团队更专业?
4. 路由+4G模块【2】初步研究Air724模块及小米路由R3固件
本系列文章只是研究过程的备忘录,当中提及的步骤只是一些当下的总结以及尝试,不能保证正确。项目完成后,也就是系列文章结束后,会有归纳总结,当中会提出相对靠谱的解决方案。
从文章 八小时成为模块专家 中大致了解了通讯模块的发展史以及合宙的4G模块当前的一些技术点,思路打开了一些。大致罗列其中一些点:
Lede固件是我目前最常用的一个,功能和稳定性已经足够好了。在研究的过程中发现,小米R3路由刷这个固件特别麻烦。主要未必是因为这个有多难,而是这方面的信息特别杂乱。当前掌握下面一些内容。
======
2021-03-12