AWS IoT Beta
aws.amazon.com
aws.amazon.com
More info: http://developer.couchbase.com/mobile
There is a lot going on in this space and we are a general purpose database. If you're looking for native open source implementations that give you access to the whole stack, and interop with other tech like PouchDB and IBM Cloudant...
I wish amazon would do a better job explaining why this new thing is better than the last new thing from amazon. Many services feel close and similar until you dig into the target use cases. Even the FAQ doesn't have a list of target use cases.
1. Internet-connected stuff needs to be able to talk, so awsiot needs to support messaging. So it looks like they're currently offering http (publish only) and mqtt (bidirectional pub/sub). They give each awsiot account a unique IoT internet endpoint (some-random-string.iot.us-east-1.amazonaws.com), and then parse everything into a stored state in the cloud (that's the device "shadow")
2. Ideally you'd be doing this securely. awsiot appears to be generating its own x509 certs here, -- are they then an intermediate CA? Not clear on this. The documentation here is terribly vague and I have no idea what's going on. Not good for transparency. I can't even tell if they're forcing security, or if it's optional.
3. State management. awsiot cloud-stores the state of devices, allowing you to check them (or to issue commands to either from a third-party device like a phone app).
4. Communication between devices. They're claiming some kind of wholly undocumented authentication system for access to and control over device state. At any rate, they have a concept of device-based identity, and then based on that identity, devices are (or aren't) allowed to talk to each other.
I've done some IoT development, and though it's a bit hard to tell by their terribly inadequate documentation, I'm pretty sure this is intended for enterprise developers with massive IoT product offerings and very high product volume. AWS is much too complicated for a lot of the small device manufacturers, at least the ones coming in from the hardware side. To use this scalably (especially given you can only access it from CLI) with reasonable product volumes is going to require a lot of setup scripting to register devices, and I don't think companies will be able to afford the tooling cost until they're enterprise-level.
I won a Intel Edison / Seeedstudio IoT kit with an edison already configured with a key pair for aws usage. http://www.amazon.com/dp/B0168KU5FK So I guess I will get some experience with this.
They announced both device SDKs and the inclusion of IoT into their standard SDK. I haven't downloaded the latest python sdk (boto3) yet to check if the IoT functions have been added yet.
Their documentation seems to make this more complicated that it should be but I also was handed a Amazon IoT button https://aws.amazon.com/iot/button/ and was able to connect it to my aws account and my home wifi in 2 minutes. I have it sending sns messages to me when I click it. So now I have a reference project that can be inspected for quicker learning.
If you can, get yourself a IoT button from amazon to play with if you are interested in their IoT offerings.
Once boto3 has the IoT sdk I will write a mac os x client for acting both like a device and subscribing to devices.
This sounds like magic :)
Wifi connected televisions, for example, are often very poorly secured. Of course, it's not the end of the world if someone powers off your TV remotely or changes the channel.
But with internet connected devices becoming commonplace (the example they use on the page is a thermostat), security becomes more and more important. I would rather not have a hacker set my thermostat to 30C (85F) while I'm on a winter vacation. Or turn my stove on. Etc.
Can we step out of the technology bubble for a minute and agree that not everything needs to be connected and controllable?
It's not even that it needs to be controllable from my smartphone, but I think it'd be cool to put some cookie dough into the oven, tell the oven "cook these so that they are just slightly crisp on the outside but gooey on the inside", and the oven would have sensors and the temperature control mechanisms to do this, then notify me when it's time to take my cookies out.
It makes sense for such a device to be able to download updates (new functionality, recipes, retuning algorithms, etc) from the internet.
Under FDA/HACCP guidelines (that may someday morph into requirements), restaurants need to track and log things like operating temperatures, cycle times, and holding temperatures (setpoint and observed). Everything needs to be on record for a very long time in case of an outbreak.
There are some sites doing moderate IoT hosting and analysis, and some do whitelabel work which is nice. AWS will be another service to consider now.
1. http://www.microsoft.com/en-us/server-cloud/internet-of-thin...
Neither of those have any built in rule functionality. You have to set up machines to pull messages and process them.
This offering is quite different in that it builds in declarative rule support for filtering/forwarding the data to other AWS offerings like DynamoDB, S3, Lambda, etc.
That said, you're still going to be writing a lot of code to turn it into a useful application or monitoring system.