What does this AWS Solutions Implementation do?

Amazon Web Services (AWS) provides many services to help customers build serverless IoT applications that gather, process, analyze, and act on connected device data, without having to manage any infrastructure, which can help reduce costs and increase productivity and innovation. But, it can be a challenge to test IoT applications and backend services without a large pool of connected devices.

To help customers more easily test device integration and IoT backend services, AWS offers the IoT Device Simulator solution. This solution provides a web-based graphical user interface (GUI) console that enables customers to create and simulate hundreds of virtual connected devices, without having to configure and manage physical devices, or develop time-consuming scripts.

Version 2.1.1 of the solution uses the most up-to-date Node.js runtime. Version 2.0 uses the Node.js 8.10 runtime, which reached end-of-life on December 31, 2019. To upgrade to version 2.1.1, you can update the stack. For more information, see the deployment guide.

AWS Solutions Implementation overview

AWS offers a device simulation solution that enables customers to build a large fleet of virtual connected devices (widgets) from a user-defined template and simulate those widgets publishing data at regular intervals to AWS IoT. You can also monitor individual widgets from the simulator or observe how backend services are processing the data. The diagram below presents the architecture you can deploy in minutes using the solution's implementation guide and accompanying AWS CloudFormation template.

IoT Device Simulator | Architecture Diagram
 Click to enlarge

IoT Device Simulator architecture

The IoT Device Simulator includes a device simulator API, which leverages Amazon API Gateway to invoke the solution’s microservices (AWS Lambda functions). These microservices provide the business logic to perform operations on virtual devices and device types, record simulation metrics, and perform administration tasks. When the device simulator API receives an authorized request, Amazon API Gateway invokes the appropriate Lambda function. The Lambda function returns the execution results to the API, which returns the results to the simulator console.

When a device simulation request is received, the device microservice sends the request to a simulation queue in Amazon Simple Queue Service (Amazon SQS). Amazon Elastic Container Service (Amazon ECS) containers provisioned by AWS Fargate contain a simulation engine that periodically polls the simulation queue for simulation requests.

When a start simulation request is received, the simulation engine launches a virtual device that starts publishing simulated data to the AWS IoT endpoint. After the specified duration, the simulation engine stops the simulation, terminates the virtual device, and updates the device state and metrics in Amazon DynamoDB. A simulation console displays information about virtual devices and device types, simulation states, and user profiles. You use the console to create and terminate virtual devices, start and stop simulations, and view metrics.

IoT Device Simulator

Version 2.1.1
Last updated: 07/2020
Author: AWS

Estimated deployment time: 10 min

Use the button below to subscribe to solution updates.

Note: To subscribe to RSS updates, you must have an RSS plug-in enabled for the browser you are using.  

Did this Solutions Implementation help you?
Provide feedback 


IoT Device Simulator reference implementation

Leverage the IoT Device Simulator out of-the-box, or as a reference implementation to build a custom simulation engine for your specific use case.

User Interface

A web-based graphical user interface (GUI) console enables customers to create and simulate hundreds of connected devices, without having to configure and manage physical devices, or develop time-consuming scripts.
Solving with AWS Solutions: IoT Device Simulator
Back to top 
Build icon
Deploy a Solution yourself

Browse our library of AWS Solutions Implementations to get answers to common architectural problems.

Learn more 
Find an APN partner
Find an APN Partner

Find AWS certified consulting and technology partners to help you get started.

Learn more 
Explore icon
Explore Solutions Consulting Offers

Browse our portfolio of Consulting Offers to get AWS-vetted help with solution deployment.

Learn more