ianawilson
Joined 13 years ago
Joined 13 years ago
My email is ian (at) crowsnest (dot) io. Alternatively, you can signup on the front page, and I'll reach out to you a little later today.
There are two pieces: 1) A firmware library that runs on the device that has APIs for logging, assertions, and we're planning some other features to help gather data from the device (configurable by your firmware engineers, according to your resources). 2) A cloud backend that collects and analyzes the data sent from the device, with an interface for you to be able to search for a particular device, look at trends, or set up notifications. Is there something I can elaborate on in more detail?
I will look at putting some screens up shortly. Thanks for the suggestion!
Our main goal is to build an ecosystem of ready-to-use devices and a RESTful API around this ecosystem so devs can focus on building their awesome IoT application, rather than bothering with the infrastructure. This is a component of that effort.
Crowsnest is trying to help reduce boilerplate for IoT / device-driven applications. Crowsnest provides cloud infrastructure, two-way communication with your devices that works across a NAT, and an ecosystem of plugins for devices that will work out of the box. Interacting with all of this is abstracted into an API where all you need to know is that "it is a light" and you can use the cloud API to "turn it on." Crowsnest takes care of the NAT traversal and the actual calls to the light on the local network, so that you can focus on building your application, rather than maintaining device infrastructure and integration.
As pointed out in another comment, it's hard to compete with existing standards, but we hope to act as a super set as much as we can, making use of existing standards in our implementation.
We've also been toying with the idea of using some device discovery so that devices can tell Crowsnest what they are capable of without needing to build a formal plugin for it.
- a rich ecosystem of device integrations,
- a framework for quickly creating new integrations, and
- an API that abstracts these devices into organized classes with
their capabilities
We are actually strongly considering Skynet as a core tool of our backend to manage all of our machine-to-machine messaging.Although we don't have it specced out yet, we have been talking a lot internally about using some kind of discovery protocol so that devices can report their capabilities and get up and running without an explicit integration plugin.
If you have any ideas or best practice thoughts for doing the discovery, we'd love to hear them.
If you're curious for more technical details, there is some info in the docs (https://www.crowsnest.io/portal/docs/). Or if that's not enough, I'd be happy to talk more about it, here or in our IRC channel (#crowsnest on freenode).