MAXREFDES143#: DeepCover Embedded Security in IoT Authenticated Sensing & Notification
Dependencies: MaximInterface mbed
SensorNode Class Reference
Interface to the Authenticated Sensor Node peripheral board. More...
#include <SensorNode.hpp>
Public Types | |
enum | State { UnableToCommunicate, NotProvisioned, NotAuthentic, Authentic } |
Public Member Functions | |
SensorNode (mbed::I2C &i2c, uint8_t ds7505_i2c_addr, uint8_t max44009_i2c_addr, MaximInterface::DS2465 &ds2465) | |
State | detect (unsigned int userEntropy) |
Detect if an authentic Sensor Node is connected. | |
State | authenticatedReadSensorData (unsigned int userEntropy, SensorData &sensorData) |
Read the current temperature and filter life measurements with authentication. | |
bool | readSensorData (SensorData &sensorData) |
Reads the current temperature and filter life measurements. | |
const MaximInterface::RomId | romId () const |
Get the ROM ID for this sensor node. | |
double | initialLux () const |
Get the initial lux measurement for this sensor node. | |
Friends | |
bool | provisionCoprocessor (MaximInterface::DS2465 &ds2465) |
Represents the secure factory that will perform the initial provisioning of Controllers (DS2465) and Sensor Nodes (DS28E15) for later authentication. | |
bool | provisionSensorNode (SensorNode &sensorNode, bool validSecret) |
Provision the DS28E15 on a Sensor Node. |
Detailed Description
Interface to the Authenticated Sensor Node peripheral board.
Definition at line 48 of file SensorNode.hpp.
Member Enumeration Documentation
enum State |
- Enumerator:
UnableToCommunicate I2C or 1-Wire communication failure.
NotProvisioned DS28E15 has not been provisioned.
NotAuthentic DS28E15 is not authentic.
Authentic DS218E15 is authentic.
Definition at line 50 of file SensorNode.hpp.
Constructor & Destructor Documentation
SensorNode | ( | mbed::I2C & | i2c, |
uint8_t | ds7505_i2c_addr, | ||
uint8_t | max44009_i2c_addr, | ||
MaximInterface::DS2465 & | ds2465 | ||
) |
Member Function Documentation
SensorNode::State authenticatedReadSensorData | ( | unsigned int | userEntropy, |
SensorData & | sensorData | ||
) |
Read the current temperature and filter life measurements with authentication.
- Parameters:
-
userEntropy Additional entropy to supply to the RNG. sensorData Measurements output location.
- Returns:
- Authentic on success.
Definition at line 227 of file SensorNode.cpp.
SensorNode::State detect | ( | unsigned int | userEntropy ) |
Detect if an authentic Sensor Node is connected.
- Parameters:
-
userEntropy Additional entropy to supply to the RNG.
- Returns:
- Authentic on success.
Definition at line 200 of file SensorNode.cpp.
double initialLux | ( | ) | const |
Get the initial lux measurement for this sensor node.
Definition at line 85 of file SensorNode.hpp.
bool readSensorData | ( | SensorData & | sensorData ) |
Reads the current temperature and filter life measurements.
- Parameters:
-
sensorData Measurements output location.
- Returns:
- True on success or false if unable to communicate with a sensor.
Definition at line 154 of file SensorNode.cpp.
const MaximInterface::RomId romId | ( | ) | const |
Get the ROM ID for this sensor node.
Definition at line 82 of file SensorNode.hpp.
Friends And Related Function Documentation
bool provisionCoprocessor | ( | MaximInterface::DS2465 & | ds2465 ) | [friend] |
Represents the secure factory that will perform the initial provisioning of Controllers (DS2465) and Sensor Nodes (DS28E15) for later authentication.
Provision the DS2465 on a Controller.
- Returns:
- True on success.
bool provisionSensorNode | ( | SensorNode & | sensorNode, |
bool | validSecret | ||
) | [friend] |
Provision the DS28E15 on a Sensor Node.
- Parameters:
-
validSecret True to provision using the valid system secret or false to imitate an invalid Controller.
- Returns:
- True on success.
Definition at line 71 of file Factory.cpp.
Generated on Wed Jul 13 2022 21:31:03 by 1.7.2