Towards a Stable Application Platform for IoT Devices

Proposal (採択)

中級者   IoT / Edge    

Software for embedded systems has been developed in a low level and monolithic way. Firmware is written by a single vendor, and typically not updated frequently. Modern IoT devices are constantly connected to the cloud, and OTA updates are possible anytime. Modern IoT devices may be customized, by 3rd parties, becoming true "platforms". However, the software development paradigm has not kept pace with this trend. Typical IoT devices do not have full Linux capabilities, no MMU, and thus no HW based isolation. Wasm enables the creation of truly customizable devices.

On the server/cloud side, the platforms are relatively uniform - x86 ISA and Linux OS - and the OS can be the abstraction layer. In the IoT domain, that is not the case. IoT device platforms are very heterogeneous. On the ISA side there is at least ARM (32 and 64 bit), RISC-V, Xtensa. On the OS side, there are a myriad of RTOSs. The platform abstraction must be at a higher layer. Again Wasm can be the abstraction layer for applications on such platforms.

We have created a framework and SDK for AI App development. We have benchmarked the performance on ESP32 and on ARM A7. There is a performance penalty and memory overhead vs native, but it is very much acceptable - within a factor of 2. We believe that Wasm will play a key role in IoT development.

Ryu Ishimoto
ミドクラジャパン株式会社
VP of Tech Alliance

Spent most of the career as a software developer in various companies in the US and Japan, with most of them being start-ups. Currently working as the VP of Tech Alliance at Midokura Japan to architect and productize an edge computing platform for AI and computer vision.

Disclaimer: Having grown up mostly in the US, my presentations will probably be in English but I can take/answer questions in Japanese.