RT-Thread v2.1.0 roadmap

下一个版本应该是一个小版本,不可能总是类似原来,每次都出大版本 :-) 很多人来询问过下一个版本的计划是什么。其实我想说,RT-Thread是一个开源社区,RT-Thread的后续发展在社区,属于每一个社区参与者,你想在里面加入什么样的功能,做好哪部分的工作,关键在于每个社区的参与者。只要符合RT-Thread的东西(例如许可证上没有冲突),我也没理由不把它放到RT-Thread开发主干上来。

所以我下面提及的更多代表的是我个人的一些想法,社区还是需要更多的多样性,社区是属于你的,只要你参与进去做!

1. CloudIDE,这个是托管在http://lab.rt-thread.org/cloudide 上(可能因为备案的问题暂时不通)的在线方式的集成开发环境,嗯,有些类似mbed ;-) 但是希望有自己的特色,以及希望它是属于国内的Online IDE,速度能够快些。这部分也在密集的进行改版,演变成多标签页编辑方式;配合Wi-Fi入门套件,进行在线方式更新固件;加入开发者间的代码片段,组件分享功能;集成文档帮助等信息等等;创建这个的初衷是希望新手入门能够方便些,而不是受搭建开发环境的困扰,需要的只是一个浏览器。Wi-Fi入门套件,暂时称为ART-wifi吧,简单的名字就是一个称呼,名字而已。

2. 去年12月份上海嵌入式沙龙活动中,weety提到了POSIX兼容性的问题,导致Linux的一些程序并不那么容易移植过来(或者说后续的代码一致性),这里主要问题在于BSD socket接口是完全属于lwIP协议栈,而和RT-Thread的文件接口没关系,所以在RT-Thread上没有socket/file descriptor/device间的select/poll/read/write等调用;另外一个隐含问题是,POSIX实现也不是那么标准,可能里面还有一些坑等。这个问题是一个大问题,因为关键点在于,大家既然选择了开源的系统,那么他肯定也考虑到开源生态很好,有很多的资源可以使用,可以左右逢源。。。所以,RT-Thread也需要以更开放的姿态来解决这个问题,使得它能够更开放,增强POSIX标准本身的亲和力。相类似的,它也应该更好地支持一些C++标准,基础设施RT-Thread已经提供了,后面如何去应用,那么就看用户的想法、创新性有多大了。

3. 一些重型平台的支持,例如市场上新出的一些堆叠封装了SDRAM/DDR的ARM9,Cortex-A8/9,MIPS32/64,甚至是x86,这个肯定也会逐步地演变成RT-Thread的目标硬件平台,但是这个投入也会比较重。如果上面的第二项解决了,也不是不可能,首要解决的是底层驱动的问题,这样后续就比较容易和上面的组件、应用粘合起来。

好了,以下是想到的无责任feature list,感兴趣的同学可以来认领:
* CloudIDE相关
- 完善NAT功能,把ART-wifi变成一个Wi-Fi中继(路由)。
- 期待在CloudIDE上分享MQTT组件,CoAP组件;
- 期待把ART-wifi变成一个Wi-Fi/6LoWPAN网关。
- 期待把ART-wifi变成一个Wi-Fi/nRF51822 6LoWPAN网关,Wi-Fi/nRF51822 BLE网关;
- 期待把ART-wifi变成一个多轴飞控,并跑一些PX4的算法代码;
- 期待在CloudIDE上分享乐联网物联网接入组件;
- 期待在CloudIDE上分享yeelink物联网接入组件;
- 期待在CloudIDE上分享SSL组件;
- 期待在CloudIDE上分享阿里云,机智云,百度云,腾讯云等等接入组件;

- 更多的传感器驱动,例如气压计,温度计,光照,9轴传感器等;

- 期待在CloudIDE上加载RealBoard 4088 APP开发功能;
- 期待在CloudIDE上加入图形用户界面设计功能;
- 期待把CloudIDE变成本地化的桌面应用程序;

* POSIX相关
- 针对lwIP实现DFS上相应的lwIP fs接口,让DFS的fd和lwIP socket关联起来;实现select/poll接口;
- 更好的把device接口和DFS devfs融合起来;协同实现好select功能;
- 加入更多POSIX相关接口,包括但不限制于aio,signal等功能;
- 整理DeviceDriver框架,让device接口,和各自设备驱动接口分离开来。应用程序更多的倾向于使用device接口,固件开发可以使用设备驱动接口;

* 其它
- openbsd的TCP/IP协议栈移植;openbsd POSIX外围接口移植;
- canopen组件;
- ARM Cortex-A8/A9 + M4/M3的多系统(硬件)平台;
- 其他一些硬件移植;

关键字