Amazon Web Services is extending its reach into the devices side of the Internet of Things (IoT), a move that could widen the cloud service's scope even further as more devices start to require data processing.

A new service called AWS IoT, announced today, packages networking and security functions for the devices, an attempt to make it easier for hardware designers to hook their products into AWS' processing capabilities.

AWS already does that processing for many IoT applications. During today's Re:Invent keynote, AWS CTO Werner Vogels lingered over several examples including toothbrushes, wastebaskets, or Scio, the crowdfunded molecular sensor.

One major achievement for AWS is BMW's Carasso system of car sensors, which produces a "pretty substantial set of data" from "a fleet of several hundred thousand vehicles," as Dieter May, BMW's senior vice president of business development models, said during the keynote. The AWS-hosted back-end processing for the system was completed by a team in Chicago in six months.

It turns out AWS was also behind all the hand-sanitizer dispensers at Re:Invent. Which conjures all kinds of weird privacy-violating possibilities, but Vogels said the setup only determined when a dispenser needed a refill.

A cooler demo was the greenhouse AWS set up on the Re:Invent expo floor, with sensors for things like temperature, humidity, and soil moisture. The demo also includes actuators — automated systems for turning up the heat, opening a window, turning on the humidifier, and so on.

Talking to the Things

Those actuators are a key part of IoT, obviously, and that's the market the AWS IoT platform targets. The idea is to make it simpler to build a device that's ready to connect to the Internet, send and receive data, and take action appropriately.

"You have to have all of these different components ready to build a successful IoT application," Vogels said.

To help with that, AWS IoT includes a software development kit (SDK) for devices (the IoT things) to connect them to the cloud. Security would be handled by X509 certificates, either generated by Amazon or provided by the customer.

Amazon envisions sending sensor data through a device gateway that speaks MQTT, a lightweight protocol that can withstand intermittent connectivity. The AWS end would then handle data collection, though a service such as Kinesis, which handles data-stream processing, and can be interpreted through functions created on AWS Lambda, the service for running small, temporary jobs.

For networking, AWS IoT uses a publish-and-subscribe setup. That's because the sheer volume of sensors in IoT makes it impractical to set up individual connections to gateways. Instead, a sensor will broadcast its data out, and the gateways that subscribe to that sensor will pay attention. All others will ignore it.

The SDK comes in versions for the C and Javascript languages and for the Arduino open source project.

Finally, one factor to consider with IoT is that not all devices are online all the time. So, AWS IoT includes a device shadow, which takes a snapshot of the device's last reported state. The shadow can also be programmed with a desired future state to be activated at a given time.

"It makes it easy for you to actually control your devices without having to have the specific knowledge of how to communicate with that device," Vogels said.