The repository holds the software required for simulating an IoT device. Each device has:
- Settings for devices
- Commands
- Log file of executed commands
- Activity simulation script
This version of the device simulator supports ten types of devices:
- Card Reader - a device that can simulate the swiping of a security card
- Card Manager - a controller that compares the value of the card read with a whitelist of cards
- Door Lock - a door lock that can lock and unlock a door
For detailed information on REST calls, see the device documentation.
To simulate all three working together, you need to provide the settings for the card reader and door manager and then set the script for the card reader. Running the card reader script will cascade the simulation to all of the devices. See: start.sh script for automation of the simulation.
- Motion Detector - a device that detects motion by measuring changes in distance using ultrasonic waves
- Motion Manager - a controller that turns on the light if motion is detected and turns off the light if no motion is detected for a time period
- Light - a light that can turn on and off
For detailed information on REST calls, see the device documentation.
Similar to card reader, provide settings for motion detector and motion manager and set script for motion detector to simulate all three working together. Additionally, you can convert the logfile generated by using the detector to create a script.
- Thermostat - a device that can measure the temperature in a room
- HVAC Controller - a device that controls airconditioner and furnace
- Airconditioner - a device that can cool the air in a room to a set temperature
- Furnace - a device that can heat the air in a room to a set temperature
For detailed information on REST calls, see the device documentation.
# build docker image
docker build -t concerts .
# run docker container
docker run --privileged -p 3000:3000 concerts
This software supports a swagger interface to view the REST API.
ConCERTS is MIT licensed.