Skip to content

Instantly share code, notes, and snippets.

Creating an AWS IoT Thing from Command Line

Use this script to create a new AWS IoT Thing from the command line.

@noahcoad
noahcoad / lab_prerequists.md
Last active May 12, 2021 01:19
Prerequisits for Labs

Prerequisits for IoT Labs

Some of the labs have prequisits. Here's how to install them on OSX. For AWS EC2 AMI or Cloud9 use sudo yum install -y <app> instead of brew. For Linux use sudo app-get install --yes <app>. If using Windows, please try using Cloud9.

  • Homebrew, brew command, a MacOS package manager, install with /usr/bin/ruby -e "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install)"
@noahcoad
noahcoad / test_aws_iot_connection.py
Last active September 28, 2019 02:52
Tests Connection to AWS IoT Core Endpoint
#
# Tests the connection to the AWS IoT Endpoint for a user's account
# By creating an AWS IoT Thing device, certificate, keys, and policy
# Then connecting to the AWS IoT Core Endpoint with those device credentials
# Tests both port 8883 and 443
#
# Created on 2019-09-20 by Noah Coad, Amazon AWS ProServe IoT, ncoad@amazon.com
# All rights reserved.
#
# pip install boto3 AWSIoTPythonSDK
@noahcoad
noahcoad / event_2019-05-24_aws_python_chalice_intro_dallas_makerspace.md
Last active July 30, 2021 13:34
Event 2019-05-24: AWS w Python and AWS Chalice Intro at Dallas Makerspace

AWS Intro w Python

Taught by Noah Coad, Senior IoT Architect at AWS
at the Dallas Makerspace on 2019-05-24 and 2019-06-27

Overview

Amazon Web Services (AWS) provides essential building blocks to creating your own applications. Like code in the cloud (AWS Lambda), image recognition detection (AWS Rekognize), database (AWS DynamoDB), file storage (S3), etc. Through this course you'll get started on combining 6 of these AWS services together to build a cloud app that you can submit an image to, store it, detect elements in the image, store those in a database, and manage it all through a REST API. We'll be using a Python framework for AWS called AWS Chalice, which makes coding, connecting, testing, and deploying these compon

@noahcoad
noahcoad / easily-switch-accounts-in-aws.md
Last active December 13, 2023 06:40
Easily Switch Accounts in AWS with Role Switcher

Easily Switch Accounts in AWS

When working with multiple AWS accounts, it can be a pain to keep signing out and signing back in. I work with a number of accounts, my own, customer accts, burner accts, etc. It was a pain to keep logging in and out of the AWS Console. Thankfully the AWS Console has a "Role Switcher" that lets you quickly switch between accounts built-in. It does this by assuming a role from another account. Here's how to set that up...

@noahcoad
noahcoad / noah_new_computer_setup.md
Last active February 12, 2024 05:30
New Computer Setup

New Computer Setup for Mac

The steps I use to restore a new mac to the settings and apps I like to use.

@noahcoad
noahcoad / install-aws-greengrass-dependencies-java-node.md
Last active May 7, 2019 15:32
Install java and nodejs for AWS Greengrass

How to install the java and nodejs dependencies for AWS Greengrass

Greengrass v1.7 specifically supports Java 8 and NodeJS 6.10, and it requires the binaries be in the PATH and a specific file name.

On an Amazon Linux 2 AMI EC2 Instance

# install java
sudo yum install -y java-1.8.0-openjdk
@noahcoad
noahcoad / upgrade-osx-mac-bash.md
Last active May 7, 2019 15:36
Upgrade bash on OSX

Upgrade bash on OSX

Due to GPL limitations, OSX ships with bash v3.2.57. As of writing this the current version is bash v5.0.2. bash v4 and beyond support unicode characters, and much more.

Check current bash version with:

echo $BASH_VERSION

To upgrade use Homebrew

@noahcoad
noahcoad / readme.md
Last active March 2, 2024 22:02
Code Minecraft with Python on Mac OSX

Code Minecraft with Python on Mac OSX

Here's a step-by-step to get started scripting Minecraft with Python on Mac OSX

@noahcoad
noahcoad / color_scheme_additions.xml
Last active October 11, 2018 02:41
Custom Sublime Text Text File Coloring
<dict>
<key>name</key>
<string>Noah Text: header</string>
<key>scope</key>
<string>plaintxt.header</string>
<key>settings</key>
<dict>
<key>foreground</key>
<string>#a6e22e</string>
</dict>