Our goals at Konekt, Inc. are centered around providing turnkey, practical solutions to the real needs of machine-to-machine (M2M) developers and the Internet of Things. These include establishing connectivity, logging and otherwise consuming data, providing convenient hardware and software development kits, and offering tools for both rapid prototyping and rapid production.However, since we want to help bring ideas to life, both big and small, we also aim to help the entire product lifecycle---securing machine to machine communications, key management, over-the-air (OTA) updates, versioning, cloud-based configuration, connection health monitoring, remote reset, etc.Our hardware goals are essentially the same and, throughout the development of the Konekt Dash and Konekt Dash Pro cellular dev kits (https://www.kickstarter.com/projects/konekt/konekt-dash-cellular-dev-kit-free-global-data-plan/), developers have chimed in and we've listened.We're excited to announce that we just simplified cellular IoT and M2M development to the absolute simplest form known to us; as a result, your projects need not be made cellular-aware or even include any software libraries in order to utilize cellular Internet/cloud connectivity (although we do provide optional libraries to unlock more advanced features and connection control to your software).
If you've ever used a standalone dedicated data logger in an electronics or sensing project, you have probably appreciated the simplicity that data loggers provide---generally, you connect a data line (probably serial) between your project and the data logger, and data loggers take care of flash/memory management, handle storage and archival, often provide their own real-time clock for time-series logging, and sometimes even implement file systems to make downloading data on another device even easier.Similarly, imagine if connecting a device to the Internet of Things or integrating with various cloud services could be as simple as a Serial.write() or Serial.print()? With the Konekt Dash and Konekt Dash Pro, it is!This is made possible by offloading the cellular bootstrap process, TCP/IP stack, cloud stack, and over-the-air update process away from the primary microcontroller that runs user software. This design offers five main benefits:
Combine these benefits with our zero-configuration out-of-the-box experience, and you can implement production and deployment-ready cellular connectivity in under five minutes. Here's how:
You have two options to get up and running in under five minutes, depending upon your hardware preferences. The first option involves connecting the Dash or Dash Pro to an existing device via TTL UART or USB. The second option involves running your own software on the Dash or Dash Pro using the Arduino IDE.Option A: Interfacing the Konekt Dash or Konekt Dash Pro to an existing microcontroller or microprocessor (e.g. Arduino, Raspberry Pi, Beagle Bone)The default firmware image loaded on the Dash and Dash Pro provide serial pass-through functionality (the baud rate and other configuration options can be performed via logging into our website). Here’s what you need to do:
Option B: Load custom firmware on the Konekt Dash or Konekt Dash ProEven when loading custom firmware on the Konekt Dash or Konekt Dash Pro via the Arduino IDE, achieving cellular connectivity can still be accomplished in under five minutes. Here’s how:
dashboard
Device data sent to the modem via a Serial.println() function appears in the Konekt Cloud without any additional programming or configuration needed.A reasonable amount of data can be written to the modem even before the modem bootstrap process has completed, and it will be buffered and sent to the Konekt Cloud once connectivity is established. Device-cloud pairing, cloud credential exchange, modem initialization, and socket and networking control will happen automatically with zero configuration out of the box.
Once your device data is successfully arriving in the Konekt Cloud, you can click New Routing Rule on the Data Routes page to configure routing rules for device data. These routing rules can take your device data and route it (e.g.) to third-party services, an inbox via e-mail, or your own website or application via custom webhook (https://konekt.io/blog/route-iot-device-data-with-api-webhooks/). We also offer a persistent datastore service that can be used alone or in conjunction with routing rules, enabling a time-series log of all device data (accessible both through our website and via API). Best yet, you can later on customize routing rules to enable new uses of your device data possibly without ever needing to reprogram your devices.
dashboard
Device data can optionally be routed to third-party cloud services, to an inbox via email, or to your own website or application via custom webhook. This simple-serial example that I demonstrated in this post is only the simplest mode of operation supported by our dev kit and module, but advanced features are also possible via either a simple serial protocol or by including a very lightweight control library in your own software. Such features (tentatively) include:
My record for performing all of these steps (with my billing information already on file) is 3 minutes and 11 seconds. Think you can beat my record?Next in the series: Route IoT Device Data with Konekt Webhooks (https://konekt.io/blog/route-iot-device-data-with-api-webhooks/)Did you find this blog post helpful? Let us know in the comments below and tell us what else you'd like to see!UPDATED (April 20, 2016) - Replaced Topics page with Data Logs and Data Routes. Updated screenshots to reflect this.[wpi_designer_button slide_id=559]