有一位软件行业的大神,名字叫做许小刚。
小刚是一位憨厚的年轻的码农,嵌入式、后端、前端,无所不能,是一个很牛的物联网全栈工程师,也是一家物联网软件公司的创始人兼CEO。
有次跟我、老陆、小强闲聊的时候,小刚憨憨的笑着说:“你们应该开源你们的那一套Lua开发应用的宝贝,并且给他取个名字。”
一直以来,合宙的应用开发工程师,喜欢用Lua语言来做定制产品的应用逻辑开发。
无论是儿童手表,还是GPS Tracker,还是给客户做其他的物联网产品定制,一直使用的都是Lua语言,以追求开发和维护的最低人员成本,以及需求迭代的高效率。
“开放出来有什么好处?” 老陆很警觉的问。
“至于有什么收益,我也不清楚。反正开放出来总是没错的,只有好处,没什么坏处的。”小刚依旧憨笑着说,并且笑的越来越灿烂了。
“不过,至少你们得给他先起个名字,才能开源。”这次小刚说话的口吻,好像是教导三个6岁的孩子。
反正也没什么产品方向,先听小刚的吧,起码这人够憨厚,不会害人的。
但是起名这事情,对一群技术男而言,着实有点为难,几番讨论也没有合意的。
终于一次头脑风暴,小强灵光一闪:“我们用的是Lua语言,AT指令是模块的象征,就叫做Luat吧”。
所有人一致同意。
工程师的认同,只需要一个简单的逻辑。
就这样,合宙启动了 Luat 开放平台,以及依托于Luat平台的 GPRS 通信模块业务。
说起来,合宙团队从2006在龙尚开始就涉足通信模块业务,只不过以前做的都是无线固话垂直行业的模块,类似于目前广和通从事的笔电的上网模块,深耕一个行业,不做通用行业的覆盖,所以在物联网通信行业一直默默无闻。
因此,启动 GPRS 通信模块,相当于是合宙团队承认了自己的不足,回归到模块的老本行。
虽然是模块老本行, 但是却进入了通用模块这么一个全新的市场。
这个市场,是合宙团队完全陌生的。
标准模块市场在2016年的两个主流玩家是SIMCom和移远,这两个厂商的目标是物联网市场全覆盖。其他的厂家是局部覆盖,同时也往全行业覆盖去努力。
合宙作为新进入的玩家,几乎是没有任何的客户积累的,比起刘姥姥进入大观园,还差了两截。
最起码,刘姥姥还能看到大观园的具体形象。
而合宙,连客户群是谁都不知道,更别提注重客户体验了。
直到现在,合宙的很多同学依然记得两件事:
这个模块的外观,跟合宙当时的认知特别匹配:不懂产品设计,不懂市场需求,不知道客户需要什么。
好在,迈出了第一步。在线上开始销售这款模块,勇敢地展示了自己。
虽然浅薄,虽然丑陋,
但是,又有谁的青春不傻逼呢?
第一个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开放的最初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的出世
未完待续,敬请关注
点击查看
第一章 迷茫的前三年