Skip to main content

A Standalone WebAssembly Development Environment for the Internet of Things

  • Conference paper
  • First Online:

Part of the book series: Lecture Notes in Computer Science ((LNISA,volume 12706))

Abstract

In Industry 4.0, there is a growing demand to perform high-performance and latency-sensitive computations at the edge. Increasingly, machine data is not only collected but also processed and translated into actionable decisions influencing production parameters in real-time. However, heterogeneous hardware in the Internet of Things prevents the adoption of consistent development and deployment structures as known from service containers. WebAssembly is a recent hardware-agnostic bytecode format that is capable of running not only in the browser, but also on microcontrollers and in cloud environments. In this article, we argue that this web technology can have a real impact by leveraging tools and programming languages that web engineers are familiar with. As a first step, we present a proof-of-concept integrated development and deployment environment to execute WebAssembly modules on microcontrollers. Its key feature is a built-in web server that provides a self-contained browser-based IDE to directly develop, compile and flash AssemblyScript code to a device. In this sense, the Web of Things will unfold a streamlined development and deployment context for the agile and low-latency operationalization of adjustable data streaming and action-oriented process adaptations for industrial devices.

This is a preview of subscription content, log in via an institution.

Buying options

Chapter
USD   29.95
Price excludes VAT (USA)
  • Available as PDF
  • Read on any device
  • Instant download
  • Own it forever
eBook
USD   84.99
Price excludes VAT (USA)
  • Available as EPUB and PDF
  • Read on any device
  • Instant download
  • Own it forever
Softcover Book
USD   109.99
Price excludes VAT (USA)
  • Compact, lightweight edition
  • Dispatched in 3 to 5 business days
  • Free shipping worldwide - see info

Tax calculation will be finalised at checkout

Purchases are for personal use only

Learn about institutional subscriptions

Notes

  1. 1.

    cf. https://github.com/mbasso/awesome-wasm.

  2. 2.

    cf. https://github.com/wasm3/wasm3.

  3. 3.

    cf. https://github.com/me-no-dev/ESPAsyncWebServer.

  4. 4.

    cf. https://www.assemblyscript.org/.

References

  1. Disselkoen, C., Renner, J., Watt, C., Garfinkel, T., Levy, A., Stefan, D.: position paper: progressive memory safety for WebAssembly. In: Proceedings of the 8th International Workshop on Hardware and Architectural Support for Security and Privacy, pp. 1–8. ACM, New York (2019). https://doi.org/10.1145/3337167.3337171

  2. Fuggetta, A., Picco, G.P., Vigna, G.: Understanding code mobility. IEEE Trans. Software Eng. 24(5), 342–361 (1998). https://doi.org/10.1109/32.685258

    Article  Google Scholar 

  3. Hall, A., Ramachandran, U.: An execution model for serverless functions at the edge. In: Landsiedel, O., Nahrstedt, K. (eds.) Proceedings of the International Conference on Internet of Things Design and Implementation, pp. 225–236. ACM, New York (2019). https://doi.org/10.1145/3302505.3310084

  4. Jangda, A., Powers, B., Berger, E.D., Guha, A.: Not so fast: analyzing the performance of WebAssembly vs. Native Code. In: 2019 USENIX Annual Technical Conference (USENIX ATC 19), pp. 107–120. USENIX Association, Renton (2019). https://www.usenix.org/conference/atc19/presentation/jangda

  5. Mikkonen, T., Systä, K., Pautasso, C.: Towards liquid web applications. In: Cimiano, P., Frasincar, F., Houben, G.-J., Schwabe, D. (eds.) ICWE 2015. LNCS, vol. 9114, pp. 134–143. Springer, Cham (2015). https://doi.org/10.1007/978-3-319-19890-3_10

    Chapter  Google Scholar 

  6. Murphy, S., Persaud, L., Martini, W., Bosshard, B.: On the use of web assembly in a serverless context. In: Paasivaara, M., Kruchten, P. (eds.) XP 2020. LNBIP, vol. 396, pp. 141–145. Springer, Cham (2020). https://doi.org/10.1007/978-3-030-58858-8_15

    Chapter  Google Scholar 

  7. Papadopoulos, P., Ilia, P., Polychronakis, M., Markatos, E.P., Ioannidis, S., Vasiliadis, G.: Master of Web Puppets: Abusing Web Browsers for Persistent and Stealthy Computation. http://arxiv.org/pdf/1810.00464v1

  8. Pennekamp, J., et al.: Towards an infrastructure enabling the internet of production. In: 2019 IEEE International Conference on Industrial Cyber Physical Systems (ICPS), pp. 31–37. IEEE (06052019–09052019). https://doi.org/10.1109/ICPHYS.2019.8780276

  9. Schuh, G., Reuter, C., Prote, J.P., Brambring, F., Ays, J.: Increasing data integrity for improving decision making in production planning and control. CIRP Ann. 66(1), 425–428 (2017). https://doi.org/10.1016/j.cirp.2017.04.003

    Article  Google Scholar 

  10. Stock, T., Seliger, G.: Opportunities of Sustainable Manufacturing in Industry 4.0. Procedia CIRP 40, 536–541 (2016). https://doi.org/10.1016/j.procir.2016.01.129

  11. Tiwary, M., Mishra, P., Jain, S., Puthal, D.: Data aware web-assembly function placement. In: Seghrouchni, A.E.F., Sukthankar, G., Liu, T.Y., van Steen, M. (eds.) Companion Proceedings of the Web Conference 2020, pp. 4–5. ACM, New York (2020). https://doi.org/10.1145/3366424.3382670

Download references

Acknowledgement

Funded by the Deutsche Forschungsgemeinschaft (DFG, German Research Foundation) under Germany’s Excellence Strategy - EXC-2023 Internet of Production - 390621612.

Author information

Authors and Affiliations

Authors

Corresponding author

Correspondence to István Koren .

Editor information

Editors and Affiliations

Rights and permissions

Reprints and permissions

Copyright information

© 2021 Springer Nature Switzerland AG

About this paper

Check for updates. Verify currency and authenticity via CrossMark

Cite this paper

Koren, I. (2021). A Standalone WebAssembly Development Environment for the Internet of Things. In: Brambilla, M., Chbeir, R., Frasincar, F., Manolescu, I. (eds) Web Engineering. ICWE 2021. Lecture Notes in Computer Science(), vol 12706. Springer, Cham. https://doi.org/10.1007/978-3-030-74296-6_27

Download citation

  • DOI: https://doi.org/10.1007/978-3-030-74296-6_27

  • Published:

  • Publisher Name: Springer, Cham

  • Print ISBN: 978-3-030-74295-9

  • Online ISBN: 978-3-030-74296-6

  • eBook Packages: Computer ScienceComputer Science (R0)

Publish with us

Policies and ethics