我的物联网大学【第二章】:Luat的出世
阅读原文时间:2023年07月10日阅读:1


有一位软件行业的大神,名字叫做许小刚。

小刚是一位憨厚的年轻的码农,嵌入式、后端、前端,无所不能,是一个很牛的物联网全栈工程师,也是一家物联网软件公司的创始人兼CEO。

有次跟我、老陆、小强闲聊的时候,小刚憨憨的笑着说:“你们应该开源你们的那一套Lua开发应用的宝贝,并且给他取个名字。”

一直以来,合宙的应用开发工程师,喜欢用Lua语言来做定制产品的应用逻辑开发。

无论是儿童手表,还是GPS Tracker,还是给客户做其他的物联网产品定制,一直使用的都是Lua语言,以追求开发和维护的最低人员成本,以及需求迭代的高效率。

“开放出来有什么好处?” 老陆很警觉的问。

“至于有什么收益,我也不清楚。反正开放出来总是没错的,只有好处,没什么坏处的。”小刚依旧憨笑着说,并且笑的越来越灿烂了。

“不过,至少你们得给他先起个名字,才能开源。”这次小刚说话的口吻,好像是教导三个6岁的孩子。

我们三个带着满肚子的疑惑,回到了公司。

反正也没什么产品方向,先听小刚的吧,起码这人够憨厚,不会害人的。

但是起名这事情,对一群技术男而言,着实有点为难,几番讨论也没有合意的。

终于一次头脑风暴,小强灵光一闪:“我们用的是Lua语言,AT指令是模块的象征,就叫做Luat吧”。

 

所有人一致同意。

工程师的认同,只需要一个简单的逻辑。

就这样,合宙启动了 Luat 开放平台,以及依托于Luat平台的 GPRS 通信模块业务。

说起来,合宙团队从2006在龙尚开始就涉足通信模块业务,只不过以前做的都是无线固话垂直行业的模块,类似于目前广和通从事的笔电的上网模块,深耕一个行业,不做通用行业的覆盖,所以在物联网通信行业一直默默无闻。

因此,启动 GPRS 通信模块,相当于是合宙团队承认了自己的不足,回归到模块的老本行。

虽然是模块老本行, 但是却进入了通用模块这么一个全新的市场。

这个市场,是合宙团队完全陌生的。

标准模块市场在2016年的两个主流玩家是SIMCom和移远,这两个厂商的目标是物联网市场全覆盖。其他的厂家是局部覆盖,同时也往全行业覆盖去努力。

合宙作为新进入的玩家,几乎是没有任何的客户积累的,比起刘姥姥进入大观园,还差了两截。

最起码,刘姥姥还能看到大观园的具体形象。

而合宙,连客户群是谁都不知道,更别提注重客户体验了。

直到现在,合宙的很多同学依然记得两件事:

第一个事情,第一款Luat模块的外观:

这个模块的外观,跟合宙当时的认知特别匹配:不懂产品设计,不懂市场需求,不知道客户需要什么。

好在,迈出了第一步。在线上开始销售这款模块,勇敢地展示了自己。

虽然浅薄,虽然丑陋,

但是,又有谁的青春不傻逼呢?

第二个事情,Luat模块的第一个客户:

第一个Luat模块订单,江西省一个县城的客户给的。而这个客户的公司,员工很可能当时只有他一个。

客户收到货的时候,已经是春节前夕的腊月二十六。客户很兴奋地在技术群说,

终于发现了一个能用脚本开发应用的模块,太棒了!

接下来的几天,客户一直非常活跃的跟合宙的工程师聊怎么写代码。

合宙的团队也很兴奋。

从腊月二十六,中间除夕夜也不间断,一直到春节期间,都在QQ群里面跟客户聊天,真是相见恨晚。

在海聊的的这一个星期里面, 客户完成了产品的软件开发。

是的,使用的就是 Luat 的脚本开发。

这个客户的公司目前有多少员工,我们依然不清楚;

我们只知道跟合宙合作一年后,他的座驾,由奇瑞换成了宝马。

而且,在随后的两年内,涌现了很多厂商抄袭他的产品,从而使合宙的模块莫名其妙的垄断了这个细分行业。

这客户是94年的年轻小伙,典型的小镇青年。

直到今天, 这位小镇青年企业家,仍然是Luat的忠实用户,以及合宙最好的朋友。


春节过后,不断的有人购买合宙的模块,几乎每天都能发出几单样品。

因为那个时候,GPRS模块这个品类,合宙是唯一的行业卖家。合宙Luat的GPRS模块,几乎独占了淘宝的全部流量。

这个情况, 大概持续了半年。

半年之后,淘宝逐渐有其他的卖家开始介入,但是也大多是模块厂家的代理商,对合宙几乎没有构成太大威胁。

对合宙的发展造成威胁的,都是合宙自己。

购买了样品的用户,经过两三个月的测试,有一部分开始能够成百上千的采购模块;

也有客户,开始上门谈价,咨询几十万片模块,能够给到什么样的价格支持;

更多的客户,以为合宙就是一家淘宝店。因为不放心,登门拜访,想查看是否真的是一家正规公司。

无论如何,合宙模块的销量,慢慢的、稳定的,开始在爬坡了。

由最初的样品销售,收款几十块上百块,逐渐发展到月销售额过百万,甚至几百万了。

每天查看QQ群增加的企业客户名称,回复群里客户提出的技术问题。看到客户批量提货之后心中暗生喜悦,也不由思考:

Luat的用户体验其实并不见得很好,问题也挺多,为什么会有这么多用户很支持呢?

合宙团队对这个问题,还是有一点清晰的认知。

并不是Luat 撞大运,恰巧有了这么多客户,而是通信模块这个产业,实在是有接近20年没什么技术上的进步,而Luat 踩对了这个技术进步的节奏,迎合了市场的潜在需求。

为什么这么说呢?

接下来我们将详细讲解通信产业的技术发展。


很久以来,通信模块的开发界面是AT指令集。

客户设备的主控MCU,按照约定的格式,发送AT指令给通信模块。模块执行通信服务,并应答结果,完成通信功能。

要实现这么个过程,主控MCU需要实现一个软件状态机,来维护多个AT指令的异步通信状态,这对于MCU的编程能力是有一定要求的,并且CPU的价格也往往不菲。

但是直到今天,AT仍然是各个模组厂家的主流使用方式之一。

为什么会是这个局面呢?

先从 AT 指令的来源说起。

在1960年代,互联网刚刚兴起的时候,网虫们通过计算机接入Modem(一般是电话线)上网,计算机跟Modem 的接口是RS-232串口。

这个时候,计算机很贵,Modem也很贵,上网费也很贵。贵到什么程度呢?一般美国人家里用不起,只能公款消费才能上得起网。

中国呢?

中国要等到90年代才能上网,现在还是60年代。

因为什么都贵, 所以RS-232 的支持都很完善,大多数是9针方式的通信。支持9针的串口,数据线跟信号线定义的很完善。通信之前,会先用信号线做好握手,然后再传输数据,要断线的时候,也是信号线做好断开的协商,然后再断开数据。

一切都是那么的和谐。

到了美国的70年代中期,个人电脑开始流行,这种电脑对于成本的要求很极致,像极了当前中国的硬件设备价格战。

为了降低成本,个人电脑就把串口做精简。接头虽然是9针,但是电脑主板系统实际上只支持5针,甚至3针,信号线被认为没啥用,做了大范围的删减。

这时候,有两个美国小伙进入了历史舞台。

这两个都是20多岁的年轻人:

一个叫做丹尼斯•贺氏(Dennis Hayes),另一个叫做代尔•赫斯林顿(Dale Heatherington)。

两个人是好基友,也都是互联网发烧友,经常在一起吃饭,一块谈人生,也一块做点新鲜玩意。

1977年,他俩先开发出来一款用于个人电脑的Modem,不是很畅销,原因就是上面说的,硬件接口不给力。

俩人花了接近一年时间思考解决方案,终于在1978年,他俩在吃饭的时候,想出了只用数据接口完成信令握手的方法,这就是AT指令的方法。

使用这种方式,两人推出了一款新型的调制解调器,叫做SmartModem。

因为很巧妙的只用数据线就完成了所有信号线的功能,所以可以完美适配所有的低端PC电脑。

这个叫做贺氏的小伙,很喜欢中国文化,给自己起了个中文名字,叫做贺丹毅,老婆也娶的是中国宁波的姑娘。

在1978年提出的这套AT指令,就已经通过著名的三个加号(+++)方式,从数据通信模式切换到命令控制模式。这种 AT 指令的通信方式,还能允许多台个人电脑共用一个 Modem上网,大大促进了低成本硬件的通信功能。

这个SmartModem很成功,于是这俩人注册了个公司,叫做贺氏(Hayes)公司,在Modem行业大火特火,应该是赚了不少钱。

几乎所有90年代上网的老网民,都用过Hayes的Modem。

Hayes猫拨号时发出的滋滋啦啦又叮铃叮铃的声音,承载着人们对于互联网另外一头未知世界的渴望。

虽然Hayes的Modem在业内取得了巨大的成功,但此后因为商业策略和运作模式问题,经营每况愈下。在1999年,Hayes公司破产关闭了,后来也失去这两个人的消息。

事了拂衣去,深藏功与名。也许美国贺小伙是归隐到宁波过小日子去了。毕竟,1999年,他才50岁。

但是,他对通信行业的影响,实在是太大了。

由于Hayes品牌的SmartModem太成功,其他的Modem厂家纷纷模仿AT指令集,甚至试图兼容Hayes的指令集,来分一杯羹。

后来的GSM通信时代,通信模组也是把自己作为一个Modem来对待,只是由电话线的通信承载,升级为无线的通信承载。

为了不改变用户习惯, 各个无线通信Modem厂家,也就是模块厂家,诸如wavecom、西门子、Motorola,都采用了兼容 Hayes 的 AT 指令集,并针对无线通信做了一些指令迭代。

这种通信的方式,有个前提,就是通信Modem 的价格很贵, AT 指令很方便提供给低成本的服务需求设备来使用Modem的服务。

从90年代到2015年之前,GSM模组的价格从3000多元,一路下降到百元左右。****但主控MCU的价格,下降更快。到2015年的时候,十几块的MCU随处都能买到。

低价的MCU,搭配高贵的通信模块,MCU通过AT去请求模块的服务。

通信模块是标准品,软件几乎不做更改;

MCU软件是定制品,软件围绕通信模块的特性来定制。

MCU的成本在整个系统的成本比重太低,所以省掉MCU的意愿并不强烈。

所以,AT指令曾经是很完美的使用方式,在无线模块领域也流行了20多年。


时光来到2015到2020这几年,通信模块的价格直线下滑。

GPRS模组从百元降价到了十几元,而4G模块的价格,从2015年的300多元,到2020年4G Cat1模块也几乎跌破了40元。

而2015到2020的这几年,MCU相对平稳。十元的MCU,可能至多下降20%到七八块钱,不太可能直接降低到一块钱。

这就给设备商带来了强烈的成本预期,模块价格的降低以及MCU的平价,使得设备的价格大幅度降低。突破一个门槛之后,物联网设备的需求迎来爆发。

一个小几十元甚至十几元的通信模块,还要搭配一个七八元的MCU。

而通信模块的运算和存储资源,是远远大于MCU的。

既然这样,为什么不去掉MCU,所有的任务交给通信模块,进一步降低设备成本呢?

事实上,这些年模块公司都在尝试省掉MCU这个命题。省掉MCU,设备的主板的成本就显著降低了,在出货量可观的情况下,就有可能大幅度提升利润啊。

Wavecom在2010年之前就推出了OpenAT的解决方案,SIMCom、移远都有自己的OpenCPU的软件开发包。

但是,很多年过去了,AT 指令的开发方式,仍然是这些模块公司的主要开发方式。使用OpenCPU 量产的客户寥寥无几,为什么?

因为C语言框架的OpenCPU开发,在客户进行调试debug的时候,需要模块厂家提供大量的人力进行技术支持;而使用模块的公司多如牛毛,全国少说也有三五十万家,任何一家模块公司都无法承担如此高成本的OpenCPU技术支持。

所以,AT 指令虽然低效,但其技术服务成本也很低,没有其他的架构能撼动AT指令的地位!

这个时候,Luat悄然出现了。

Luat采用脚本开发应用,开放了源码,用户的学习成本极低,甚至是Web后端和前端工程师都能参与Luat的嵌入式开发。

用户可用无痛的方式,大大方方的拿掉MCU及其外围电路,仅仅使用低价的通信模块。通过Luat开发业务逻辑,完全接管设备的功能控制,做到成本的极简。

当某些设备商采用这种极致低成本方案的时候,高成本的方案,就会逐渐被淘汰出这个市场。

尝到甜头的Luat 客户,心情肯定无比是舒畅的。


Luat客户陆续带来的各种反馈,就像初春的风,凉爽又不失温暖,猛烈又不失温柔。

这样的感受,充满了整个 2017年。

原来,物联网模块的销售,也不是那么的困难。

原来,站在风口上,猪都能飞起来,这话是真的。

祸兮福所倚,福兮祸所伏。

随着销售量的一点点增加,合宙的诸多问题,迅速暴露了出来。

当一个产品品类越来越得到市场认同, 企图占有市场主流份额的时候,市场对这个产品的要求会指数级增加,要想真正占有主流份额,必须能够跨越高标准高要求这道坎。

那么, 市场对 Luat 提出了哪些要求呢?

随着客户数量的增加以及销售额的增长,合宙团队无知的弱点,越来越暴露无遗。

问题一:没有供应链管理体系,运营水平就像原始人

因为对销售计划完全没有概念,也就没有进行过任何的排产;最初的前面半年,销售出去的开发板,几乎都是当时担任运营老大的老陆一个器件一个器件,手工焊接出来的;

在客户需求指数级上升的时候,合宙的交货能力是无法跟上的。

合宙需要向客户证明,合宙有大规模高品质供货的能力。

问题二:模块的固件不稳定

有些客户用Air200可以稳定出货,没有遇到什么问题。

但是这个模块并没有经过全面的测试,也没有经过客户的大批量验证, 因此,总会有一些客户的使用场景遇到不稳定的问题。

固件版本的不稳定,一直伴随了Air200的整个生命周期,虽然品质在不断提升,但是直到停产,问题也没有完全解决。

直到合宙推出下一款 GPRS 模块——Air202, 固件稳定性的问题, 才得到了彻底的解决。

问题三:团队内部对于 Luat 开放的理解不一致

在Luat开放的最初2年,合宙团队并没有进行认真的内部沟通,也没有去认真探讨Luat开放系统的市场价值在哪里。

因此,合宙的软件研发团队在最初的2年,始终没有弄明白,Luat有什么价值。

所幸的是,即使不知道价值所在,合宙Luat 的软件研发团队, 一直在兢兢业业的开发、除 bug,使得软件的稳定性日渐提升。

但是,这种对于目标的不理解, 也必然会造成客户服务跟研发的脱节。

问题四:支撑文档不完善

合宙的工程师团队,一直以来,都是只做开发,不写文档。

这是因为,合宙的管理层和工程师,并不理解写好文档的意义在哪里。

文档的不完善,始终被 Luat 社区的网友不断诟病,但是长期没有得到很好的改善。

问题五:技术支持的无法持续

随着Luat用户的增加, QQ群里面的人,从几十人,到几百人,到几千人。

几百人的时候,合宙的技术支持工程师,从早上8点多,到凌晨一两点钟,持续不断回答问题, 建立了良好的社区口碑。

但是人数过千之后,再有耐心的工程师也会崩溃。

然而,找不到更好的解决办法。

就是在这种相当低效的运营水平之下,合宙度过了2017 年。

这一年,合宙的销售额仅有2400万元, 是2016年的三分之二,原因就是合宙砍掉了其他业务,仅仅保留了GPRS模块业务。

这2400万元销售额,几乎都是GPRS通用模块的销售额, 是合宙进入通用模块赛道的第一份成绩单。

在这一年中, 除了 2400万元的惨淡销售额之外,还收获了以下成绩:

建立了超过3000人的社区:

这个社区,几乎都是 Luat 的用户,大多数是物联网企业的工程师。

他们被Luat的简洁开发所吸引,加入到Luat开发的大家庭;同时,他们也忍受了Luat文档的不完善,固件质量的不稳定,但是绝大多数坚持留了下来。

最初的这 3000人, 是合宙Luat最亲密的朋友。


合宙团队逐渐意识到产品品质的重要性:

最初半年发出去的货,经常会出现品质故障,不是固件不稳定,就是模块的 IMEI 贴错了,或者是工厂没有校准就出货了。

产品的品质控制,成为最急需解决的问题。

不提升品质,就无法持续发展。

带着诸多的问题以及满满的收获,合宙团队怀着复杂的心情,进入 Luat 第二年。

2018年,又会有哪些挑战?

上海合宙通信模块 - 合宙Luat,让万物互联更简单

- 本文内容选自 -

合宙CEO秦鹏的最新作品《我的物联网大学》

第二章 Luat的出世

未完待续,敬请关注

点击查看

第一章 迷茫的前三年

手机扫一扫

移动阅读更方便

阿里云服务器
腾讯云服务器
七牛云服务器