npm package discovery and stats viewer.

Discover Tips

  • General search

    [free text search, go nuts!]

  • Package details

    pkg:[package-name]

  • User packages

    @[username]

Sponsor

Optimize Toolset

I’ve always been into building performant and accessible sites, but lately I’ve been taking it extremely seriously. So much so that I’ve been building a tool to help me optimize and monitor the sites that I build to make sure that I’m making an attempt to offer the best experience to those who visit them. If you’re into performant, accessible and SEO friendly sites, you might like it too! You can check it out at Optimize Toolset.

About

Hi, 👋, I’m Ryan Hefner  and I built this site for me, and you! The goal of this site was to provide an easy way for me to check the stats on my npm packages, both for prioritizing issues and updates, and to give me a little kick in the pants to keep up on stuff.

As I was building it, I realized that I was actually using the tool to build the tool, and figured I might as well put this out there and hopefully others will find it to be a fast and useful way to search and browse npm packages as I have.

If you’re interested in other things I’m working on, follow me on Twitter or check out the open source projects I’ve been publishing on GitHub.

I am also working on a Twitter bot for this site to tweet the most popular, newest, random packages from npm. Please follow that account now and it will start sending out packages soon–ish.

Open Software & Tools

This site wouldn’t be possible without the immense generosity and tireless efforts from the people who make contributions to the world and share their work via open source initiatives. Thank you 🙏

© 2024 – Pkg Stats / Ryan Hefner

@cloudxs/cdk-iot-wireless

v1.2.1

Published

This package contains AWS CDK L2 constructs for IoT Wireless.

Downloads

146

Readme

cdk-iot-wireless

This package contains AWS CDK L2 constructs for IoT Wireless.

Gateway

For a Gateway being able to work properly, you need a specific IAM role.

new GatewayCertManagerIamRole(this, "GatewayIamRole");

Create an IoT Wireless Gateway:

new Gateway(this, 'gw', {
  gatewayEui: 'a123123123123123'
  description: 'my gateway'
});

IoT Wireless Devices

Destinations

To allow IoT Destinations to publish to an IoT rule there is a IAM role required. This role allows all Destinations to publish to all Rules.

const destRole = new DestinationIamRole(this, "destRole");

Dragino LHT65 decoder

The Dragino sensor transmits an encoded payload. To decode it we use a IoT topic that decodes the payload with a Lambda function and republishes it to the provided topic by using the Republish rule action. You can use the returned ruleName as a destination for Iot Wireless Devices.

const rule = new LHT65PayloadDecoderRule(this, "decoder", {
  republishTopic: "republish/${topic()}",
});

new CfnOutput(this, "ruleName", {
  value: rule.ruleName,
});
  • republishTopic
    The message will be republished to the provided topic. For permission reasons, do not use Substitution Templates on the first level. Otherwise permissions will not be set correctly.

Dragino LHT65 Profiles

Creates a Device Profile and a Service Profile for Dragino LHT65 sensors. All properties have a default value that fits with the current generation of sensors, but can be set individually if needed.

const lht65profiles = new LHT65Profiles(this, "profiles", {
  rfRegion: "US915",
});

Dragino LHT65 Downlink Payload Lambda

Creates a Lambda function that lets you send a Downlink Payload to the sensors. Currently it's just possible to adjust the intervall of the trasmitted sensor data and it the Lambda function sets it on all available LoRaWAN devices.

new LHT65DownlinkPayloadLambda(this, "dlpl");

The Lambda can be invoked with a event containing a JSON like this:

{
  "FPort": 2,
  "IntervalInSeconds": "900",
  "TransmitMode": 1
}

Development

How to apply changes

  • Make sure you have the latest commits locally pulled (Github actions create new commits on the server).
  • make your changes
    • If there are only commits with fix: prefix, projen bumps only the PATCH version.
    • If there is at least one commit with feat: prefix, projen bumps the MINOR version
  • run the command yarn build locally
  • commit the latest changes
  • git push your changes