/lm.png
IoT Advisor and Developer helping SMB companies create enterprise-grade solutions.
I provide AGREED VALUE in a DEFINED TIMEFRAME for the FIXED PRICE under CLEAR CONDITIONS.

Increased usage of an IoT service would decrease your margin!

Increased usage of an IoT service would decrease your margin! In what scenario the above statement could be true? The only possible reason that comes to my mind is poor service design. Areas of the increased costs due to the poor service design include: extra staff required to manually onboard and manage IoT devices manually over-provisioned cloud infrastructure to meet increased demand extra developers hired for fixing backend bottlenecks (when increased infrastructure does not fix the poor design issues) the churn of customers due to poor service quality All of the above leads to increased expenses and decreased income.

IoT running costs

IoT device generates a running cost for the service provider. That fact is often overlooked by companies during PoC verification. In the long run, a connected device might cost more to operate than the income it generates for its provider. At a minimum, every connected device requires: connectivity to send telemetry data to a backend system processing capabilities of a backed system to analyze the telemetry data storage capabilities of a backend system to store data personnel to support customers and maintain backend infrastructure Depending on the specific service/product, the above cost factors may differ.

HTTPS communication with the AWS IoT Core

Introduction During the Internet of Things engagements, we need to adapt our solution to the capabilities offered by existing hardware and/or firmware. In some cases, our devices might not be able to use “fancy” MQTT clients. Is there a way to connect those devices to the AWS IoT Core? One of the possible options is to use the HTTPS protocol to publish messages from those devices to AWS. Limitations of the HTTPS protocol Before I present how can we send messages to AWS IoT Core using the HTTPS protocol, I want to underline some important limitations of this approach:

How to manage IoT infrastructure using the AWS CLI, CDK, and SDK

Overview In this post, I will present differences in AWS IoT infrastructure management using CLI, CDK, and SDK. As an example, we will create an IoT Thing using all of those approaches. Setup CLI The AWS Command Line Interface (AWS CLI) enables interaction with AWS services using commands invoked in a shell. Creating an IoT Thing using the AWS CLI is simple: 1 2 3 4 5 6 7 aws iot create-thing --thing-name cli-thing-0001 # { # "thingName": "cli-thing-0001", # "thingArn": "arn:aws:iot:eu-west-1:693854281758:thing/cli-thing-0001", # "thingId": "0f17b3b9-c77c-442e-9a25-ff04108729ef" # } We can check the outcome by invoking the following command:

AWS IoT Core Policy Variables

How to use the AWS IoT Core Policy Variables to create fine-tuned access permissions for connected IoT Devices? IoT Policy To put it simply, IoT Policy allows IoT Device (represented by the IoT Thing) to send and receive MQTT Messages on specified MQTT Topics. NOTE: The IoT Policy is attached to the X.509 Certificate, not to the IoT Thing. I explained the IoT Thing in my previous post. Sample IoT Policy Let’s start with a simple IoT Policy:

How to register the X.509 Certificate using CDK

Did you know that you can register the X.509 Certificate in the AWS IoT Core using AWS Cloud Development Kit (CDK)? Simplified registration process: generate the Private Key locally based on that Private Key generate the Certificate Signing Request (CSR) use the below code to register your X.509 Certificate based on generated CSR 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 from aws_cdk import ( Stack, aws_iot as iot, CfnOutput ) from constructs import Construct class IotCdkStack(Stack): def __init__(self, scope: Construct, construct_id: str, **kwargs) -> None: super().