IOWA Features
Quickly Create a Powerful Smart Device
IOWA fast-tracks the "smart" part of IoT devices thanks to its optimized code. But more than simply creating an IoT device, IOWA provides several security options for critical and sensitive devices, and was designed for situations where every line of code counts. Tight on space and don't need all the features below? You can remove them easily through feature flags.
Core Capabilities
LwM2M 1.0, 1.1 & 1.2 support
All versions of LwM2M are available in IOWA; all are backwards-compatible
Flexible hardware and software abstraction layer
IOWA is platform-agnostic, allowing you to implement it on any MCU, OS, or security implementation
Network and transport agnostic
IOWA can operate on any network and transport protocol, even the most constrained
Thorough object management
Take advantage of the LwM2M and IPSO Objects already implemented in IOWA or integrate your own, either standard or custom
Custom object code generation
Use IOWA's XML script to generate the necessary code to add any custom Object to your device application
Comprehensive logging mechanism
Use the IOWA logs to quickly identify roadblocks and accelerate development
Device management server building blocks
Build your own Device Management Server based on IOWA SDK
Security
End-to-end security encryption
(TLS/DTLS + OSCORE)
Ensure end-to-end security from a device to the device management server with OSCORE. Add another layer of encryption when using TLS/DTLS
Easy interaction with a secure element
IoT SAFE
Port your code on any security implementation in use, whether software or hardware based, including hard or virtual Secure Elements
Client – Server Interaction
Efficient data collection
IOWA enables you to collect any data gathered by a device's sensors through pull and push mechanisms
Thorough registration rules configuration
Configure servers to communicate with the device, whether Bootstrap or Production, and define their ACLs and fallback rules
Advanced firmware update
Manage firmware updates using push or pull methodologies on CoAP(s) or HTTP(s)
Communication Optimization
Wide encoding support
Optimize your data footprint through a wide range of payload encoding formats including, CBOR, SenML JSON, SenML CBOR, LwM2M CBOR, TLV, etc.
Optimized management of intermittent connectivity
IOWA enables fine tuning of CoAP congestion control rules and LwM2M registration lifetime to maximize efficiency and data transmission
Built-in CoAP block-mode support
Ensure that your data is sent, independent of the payload size and network protocol
Efficient notification storage
Ensure no data is lost, even when there is inconsistent network quality
Session resumption and Connection ID support
Accelerate re-authentication procedures to reduce data and power-heavy exchanges
Direct CoAP interface
Rely on IOWA’s CoAP stack to create a dedicated channel to communicate with your application data
Coming Soon
Processing Optimization
Footprint optimizer
Use IOWA feature flags to ensure your implementation is as lean as possible to avoid affecting your hardware's performance
Streamable resources support
Ensure your largest data are successfully transmitted without burdening your devices’ memory
Asynchronous response support
Configure IOWA so that it works with asynchronous responses to avoid slowing down your operations
Resilient context storage
Ensure operations always go through without restarting all transmissions, even on devices that are mostly dormant