Skip to content

Latest commit

 

History

History
59 lines (40 loc) · 2.4 KB

README.md

File metadata and controls

59 lines (40 loc) · 2.4 KB

thingy.rocks IoT dashboard backend

GitHub Actions semantic-release Renovate Mergify Status @commitlint/config-conventional code style: prettier ESLint: TypeScript

Cloud backend for the thingy.rocks IoT dashboard developed using AWS CDK in TypeScript.

Installation in your AWS account

Setup

Provide your AWS credentials, for example using the .envrc (see the example).

Install the dependencies:

npm ci

Deploy

npm run build:container
# export the environment variable UDP_INGEST_CONTAINER_TAG as printed
npx cdk deploy

Enable AWS IoT Thing Index

Enable AWS IoT Thing indexing for the lwm2m named shadow and Thing connectivity.

Memfault integration

Configure these SSM parameters:

aws ssm put-parameter --name /thingy-rocks-backend/memfault/organizationAuthToken --type String --value <Memfault Organization Auth Token>
aws ssm put-parameter --name /thingy-rocks-backend/memfault/organizationId --type String --value <Memfault Organization ID>
aws ssm put-parameter --name /thingy-rocks-backend/memfault/projectId --type String --value <Memfault Project ID>

UDP ingress

udp.ingress.thingy.rocks receives UDP packages on port 6666.

API domain

A hosted Zone is created by the deployment.

Create a NS record in the DNS settings for thingy.rocks (in CloudFlare), with the ingress.thingy.rocks as the name and the list of nameservers from the output.