ConsentiumThings Arduino API
Overview
This code is designed to interface with the ConsentiumThings Dalton IoT board, which connects to a Wi-Fi network and transmits sensor data over the internet using a RESTful API. The board reads data from connected sensors and sends it to a designated endpoint at regular intervals.
Dependencies
The code depends on the following library:
ConsentiumThings.h: This is a library specific to the ConsentiumThings IoT board, enabling functions such as Wi-Fi connectivity, sensor reading, and data transmission via RESTful APIs.
Components
1. Wi-Fi Configuration
const char *ssid = "YOUR_WIFI_SSID";
: Defines the name of the Wi-Fi network that the IoT board will connect to.const char *pass = "YOUR_WIFI_PASSWORD";
: Defines the password for the specified Wi-Fi network.
2. API Keys
const char *SendApiKey = "YOUR_API_KEY";
: API key used for sending data via the REST API.const char *BoardApiKey = "YOUR_BOARD_API_KEY";
: API key specific to the board for authentication purposes.
3. Data Transmission Interval
constexpr int interval = 7000;
: Sets the delay interval between data transmissions in milliseconds. In this case, the system waits for 7 seconds (7000 ms) between data sends.
4. Board Initialization
ConsentiumThingsDalton board;
: Creates an instance of the ConsentiumThingsDalton object, which represents the IoT board.
Functions
void setup()
void setup()
This function is called once when the board is powered on or reset.
Wi-Fi Initialization:
board.initWiFi(ssid, pass);
: Connects the board to the specified Wi-Fi network using the SSID and password provided.
Board API Initialization:
board.beginSend(SendApiKey, BoardApiKey);
: Authenticates the board with the necessary API keys to enable data transmission.
void loop()
void loop()
This function runs repeatedly after the setup is complete.
Sensor Data Reading:
double data_0 = board.busRead(0);
: Reads the voltage data from the sensor connected to port 0 of the board.
Sensor Data Array:
double sensorValues[] = {data_0};
: Stores the sensor data (in this case, only one sensor) in an array.
Sensor Information Array:
const char* sensorInfo[] = {"Temperature"};
: Describes the type of data being read from the sensor.
Sensor Count:
int sensorCount = sizeof(sensorValues)/sizeof(sensorValues[0]);
: Calculates the number of sensors connected by determining the size of the sensor data array.
Data Transmission:
board.sendData(sensorValues, sensorInfo, sensorCount, LOW_PRE);
: Sends the sensor data, along with the sensor information, to the server using REST with low precision.
Delay:
delay(interval);
: Waits for 7 seconds before running the loop again, creating a periodic data transmission schedule.
Customization
Wi-Fi Configuration
Replace "YOUR_WIFI_SSID"
and "YOUR_WIFI_PASSWORD"
with your actual Wi-Fi network credentials:
API Keys
You must replace "YOUR_API_KEY"
and "YOUR_BOARD_API_KEY"
with the actual API keys provided by the ConsentiumThings service. These keys authenticate the board and allow it to send data to the designated API endpoint.
Interval
The data transmission interval is set to 7 seconds by default. You can modify this by changing the value of the interval
constant.
Adding More Sensors
If you have more than one sensor, you can expand the sensorValues
and sensorInfo
arrays. For example, to add a second sensor:
Then adjust the sensor count:
Last updated