What is AWS IoT?
Each of Amazon’s web services do one thing supremely well. For example if you’re looking for somewhere in the cloud to store data, AWS S3 is the highest-performance, highest-availability, lowest-cost solution - period.
In 2015, AWS brought the same laser-like focus to bear when launching their first Internet of Things service. AWS IoT Core provided just the minimum cloud functions that almost every IoT solution needs:
- A “Device Gateway” to isolate the devices publishing data from the services consuming it (the generic computer science term for this useful pattern is “pub-sub” via a “broker”)
- A “Device Shadow” which solves the problem that many IoT devices are asleep much of the time, so can’t respond live to interrogation or commands. The shadow remembers the last value of every parameter received, and stores messages sent to the device until it next wakes up
- Security, with per-device authorization and authentication and management of security certificates and policies
It was a great start, if rather bare-bones. And it’s serverless – AWS automatically provisions all the capacity you need as you move from thousands to millions of devices, so your costs are directly proportional to your usage with no fixed overhead.
Last year, AWS announced Greengrass which allows the serverless model to expand towards the edge of the IoT network: AWS Lambdas can be moved out to run on “gateway class” (Linux) IoT boxes. This helps to avoid the cloud running hot (edge compute automatically scales with number of users) and also reduces communications costs.
What's new in AWS IoT?
This week AWS has announced several more exciting new IoT services at their annual AWS re:Invent conferences. Currently in preview, these will be launched in early 2018:
- AWS IoT Device Management – this lets you define “jobs” to be executed on your devices (such as performing a code upgrade) and then trigger them. It also provides a way to manage devices hierarchically (e.g. “upgrade only this specific group of devices”).
- AWS IoT Analytics – IoT devices generally create a lot of data, and this allows streaming queries to be configured to do e.g. data-reduction before storage, and even connect to machine learning (ML) algorithms.
- AWS FreeRTOS – small, low-cost and battery-powered IoT devices do not have the resources to run heavy operating systems like Linux. Instead they run “kernels” or “real-time operating systems”. AWS has extended a popular open-source OS with libraries to make connectivity to AWS IoT Core easier. Over time AWS will continue to augment FreeRTOS in tandem with their cloud services to make common tasks such as secure firmware upgrade easier and more secure.
- AWS Device Defender audits device fleets for policy compliance, and spots aberrant behaviour.
The original IoT Core service has been improved too, adding search and bulk registration of devices.
And the pricing has got even keener – as usual the user is the beneficiary of the battle between Amazon, Microsoft and Google (and you may notice a surprising degree of resemblance between some of their offerings!).
AWS is the leader in web services and looks like it’s doubling-down on being the winner in IoT too, with a growing suite of powerful, serverless IoT functions that developers will quickly find a use for. However as usual, much as AWS succeeds in delivering developer-friendly, best-in-class services there’s still a gap between these raw components and the functionality of a finished product useful to everyday users.
DevicePilot is an AWS Advanced Technology Partner and delivers Service Assurance to orchestrate your IoT deployment across AWS-IoT and elsewhere.