Build Production IoT in 30 Minutes: 5G Air Quality MonitorTransform your IoT strategy from months of development to minutes of deployment. This tutorial demonstrates how CTOs and engineering teams can rapidly prototype and deploy enterprise-grade IoT solutions using the S2 Module and Superstack Platform.
Read the full blog post here.
The 3 Hidden Costs of IoT PrototypingThe Internet of Things promises transformative business value, enabling organizations to unlock new efficiencies, revenue streams, and customer experiences. However, many teams embarking on IoT projects quickly discover that the true costs of prototyping extend far beyond the initial estimates for hardware and software. What appears to be a straightforward development effort often unravels into a web of technical, regulatory, and operational challenges - each with its own price tag. Recent research shows that the average IoT time-to-market has surged by 80% since 2020, ballooning from 23 months to 41 months. When all hidden expenses are considered, total project costs can easily surpass $500,000, catching even experienced teams off guard.
Read the full blog post here.

Superstack v1.0.9 - 2025-10-24
Sidebar and QR code scanner 🤳
- Added "What's New" feed to sidebar
- Added "Release Notes" feed to sidebar
- Added "Feedback" tab with bug reporting and feature requests form
- Added QR code scanning feature to add device dialog
S2 Module Firmware v1.1.0 - 2025-10-14
- Moved Lua to dedicated thread to prevent deadlock
- Moved Lua heap allocation to dedicated Zephyr heap
- Switched to thread-safe poll based Lua hook checking
- Removed Lua debug library
- Fixed incorrect pops in Lua loop thread
- Removed cross module imports between
luaport.c, status_message.c and system.c
- Moved all other memory allocation to use
k_malloc & k_free
- Tightened up Zephyr thread stack sizes
- Simplified sleep logic
- Moved
device.i2c.write_read() logic from C to Lua now based on device.i2c.write(), read()
- Moved
device.spi.write(), read(), write_read() logic from C to Lua now based on device.spi.transact()
- Added
device.i2c.scan() feature
- Added
network.connected() feature
Superstack v1.0.8 - 2025-10-10
Chat API improvements 💬
- Added answer field to chat API responses
- Fixed buttons on subscription page to allow switching and editing of plans
Superstack v1.0.7 - 2025-10-08
Improved online devices graph ✅
- Fixed incorrect counting of active and added devices
Superstack v1.0.6 - 2025-10-07
Corrected data usage graphs 📈
- Fixed incorrect data usage counting for deployments and devices
Superstack v1.0.5 - 2025-10-06
Improved device to cloud connectivity 📲
- Fixed transport flag bug leading to excessive usage logging
- Increased rate limits for devices
Superstack v1.0.4 - 2025-10-06
Clean up static files 📂
- Deploy script now removes old static web app files before pushing out a new updates
S2 Module Firmware v1.0.2 - 2025-10-06
- Revised I2C library for simper and more flexible reads and writes
- Fixed memory leaks in serial HAL and Lua functions
- Fixed "KB" macro warning by renaming Lua bytecode macro
Superstack v1.0.3 - 2025-09-24
CORS fix 🖥️
- Added correct CORS headers to allow for browser origin user API calls
Superstack v1.0.2 - 2025-09-09
Cleaner IP address tracking of devices 🌍
- Moved obtaining device IP address to commissioning step rather than status as ICCID is now available from SIM provider API
Superstack v1.0.1 - 2025-09-08
Improvements to firmware delivery 🚚
- Simplified firmware update process
- Removed tweak number from firmware update string
- Moved firmware to static folder
- Added support for delivering both production and test firmware files
S2 Module Firmware v1.0.1 - 2025-09-08
First release ✨
Superstack v1.0.0 - 2025-08-19
First production release 🚀