Contains the implementation logic for a WirelessNode. Most WirelessNode commands call these commands.
WirelessNode_Impl( |
| ) |
Creates a WirelessNode_Impl object.
nodeAddress uint16 | the node address of the node |
basestation const BaseStation& | the node's parent Base Station |
The eeprom settings to use for the NodeEeprom object.
The WirelessProtocol containing all of the protocol commands and info for this Node.
The NodeEeprom that handles reading and writing eeprom values with the Node and eeprom cache.
The NodeEepromHelper used for high level reads and writes on the Node.
The NodeFeatures containing the features for this Node.
Determines the WirelessProtocol to use based on the Node's firmware version.
A unique_ptr containing the WirelessProtocol to use.
Gets a reference to the NodeFeatures for this Node.
Error_NotSupported: The Node model is not supported by MSCL.
Error_NodeCommunication: Failed to communicate with the Node.
Error_Connection: A connection error has occurred with the parent BaseStation.
Gets a reference to the WirelessProtocol for this Node. Note: This requires communicating to the Node if creating the protocol for the first time.
Error_NotSupported: Attempted to read an unsupported option. The device firmware is not compatible with this version of MSCL.
Error_NodeCommunication: Failed to communicate with the Node.
Error_Connection: A connection error has occurred with the parent BaseStation.
Gets the Timestamp for the last time MSCL communicated with the Node.
void setBaseStation( |
| ) |
Sets the node's parent Base Station, which will perform all communication with the Node.
basestation const BaseStation& | the BaseStation object to be assigned to the Node, which will perform all communication with the Node. |
Gets a reference to the BaseStation that is assigned to this Node.
bool hasBaseStation( |
| ) const |
Checks whether the given BaseStation is the same BaseStation that is assigned to this Node.
basestation const BaseStation& | The BaseStation to check if it is the same as this Node's parent BaseStation. |
true if the basestation is the same as this Node's parent BaseStation, false if it is different.
void useGroupRead( |
| ) |
Enables or disables the use of group eeprom read when trying to read a single value (enabled by default).
useGroup bool | Whether the group eeprom read commands can be used (true) or whether to restrict to single eeprom reads (false). |
void readWriteRetries( |
| ) |
Sets the number of retry attempts for reading and writing with the Node.
numRetries uint8 | The number of retries to set for all reading and writing with the Node. |
void useEepromCache( |
| ) |
Sets whether or not to utilize the eeprom cache when configuring this Node (default of enabled).
useCache bool | whether the eeprom cache should be used (true) or not (false). |
Clears the eeprom cache for this Node.
Gets the node address of the Node.
The node address of the Node.
Gets the WirelessTypes::Frequency that the Node is believed to be on. If the frequency is unknown, it will be read from Eeprom.
Error_NotSupported: Attempted to read an unsupported option. The device firmware is not compatible with this version of MSCL.
Error_NodeCommunication: Failed to read from the Node.
Error_Connection: A connection error has occurred with the parent BaseStation.
Gets the firmware Version of the Node.
Error_NotSupported: Attempted to read an unsupported option. The device firmware is not compatible with this version of MSCL.
Error_NodeCommunication: Failed to read the value from the Node.
Error_Connection: A connection error has occurred with the parent BaseStation.
Gets the WirelessModels::NodeModel of the Node.
Error_NotSupported: Attempted to read an unsupported option. The device firmware is not compatible with this version of MSCL.
Error_NodeCommunication: Failed to read the value from the Node.
Error_Connection: A connection error has occurred with the parent BaseStation.
Gets the serial number of the Node.
Error_NotSupported: Attempted to read an unsupported option. The device firmware is not compatible with this version of MSCL.
Error_NodeCommunication: Failed to read the value from the Node.
Error_Connection: A connection error has occurred with the parent BaseStation.
Gets the WirelessTypes::MicroControllerType of the Node.
Error_NotSupported: Attempted to read an unsupported option. The device firmware is not compatible with this version of MSCL.
Error_NodeCommunication: Failed to read the value from the Node.
Error_Connection: A connection error has occurred with the parent BaseStation.
Gets the RadioFeatures of the Node.
Error_NotSupported: Attempted to read an unsupported option. The device firmware is not compatible with this version of MSCL.
Error_NodeCommunication: Failed to read the value from the Node.
Error_Connection: A connection error has occurred with the parent BaseStation.
Gets the number of bytes available for data storage on the Node.
Error_NotSupported: Attempted to read an unsupported option. The device firmware is not compatible with this version of MSCL.
Error_NodeCommunication: Failed to read the value from the Node.
Error_Connection: A connection error has occurred with the parent BaseStation.
Gets the region code currently set on the Node.
Error_NotSupported: Attempted to read an unsupported option. The device firmware is not compatible with this version of MSCL.
Error_NodeCommunication: Failed to read from the Node.
Error_Connection: A connection error has occurred with the parent BaseStation.
bool verifyConfig( |
| ) const |
Checks whether the settings in the given WirelessNodeConfig are ok to be written to the Node. Options that are set will also be validated against each other. If an option that needs to be validated isn't currently set, it will be read from the Node.
config const WirelessNodeConfig& | The WirelessNodeConfig to verify the configuration for. |
outIssues ConfigIssues& | The ConfigIssues that will hold any resulting issues that are found with the configuration. |
true if the configuration is valid. false if the configuration is invalid and outIssues should be checked for more information.
Error_NotSupported: Attempted to read an unsupported option. The device firmware is not compatible with this version of MSCL.
Error_NodeCommunication: Failed to communicate with the Node.
Error_Connection: A connection error has occurred with the parent BaseStation.
void applyConfig( |
| ) |
Applies a WirelessNodeConfig to the Node.
config const WirelessNodeConfig& | The WirelessNodeConfig to apply to the Node. |
Error_InvalidNodeConfig: Invalid Configuration. Check the exception for specific details.
Error_NotSupported: Attempted to write an unsupported option. The device firmware is not compatible with this version of MSCL.
Error_NodeCommunication: Failed to write to the Node.
Error_Connection: A connection error has occurred with the parent BaseStation.
Reads the number of datalog sessions that are currently stored on the Node.
Error_NotSupported: Attempted to read an unsupported option. The device firmware is not compatible with this version of MSCL.
Error_NodeCommunication: Failed to read from the Node.
Error_Connection: A connection error has occurred with the parent BaseStation.
Reads the WirelessTypes::DefaultMode that is currently set on the Node.
Error_NotSupported: Attempted to read an unsupported option. The device firmware is not compatible with this version of MSCL.
Error_NodeCommunication: Failed to read from the Node.
Error_Connection: A connection error has occurred with the parent BaseStation.
Reads the user inactivity timeout (in seconds) that is currently set on the Node.
Error_NotSupported: Attempted to read an unsupported option. The device firmware is not compatible with this version of MSCL.
Error_NodeCommunication: Failed to read from the Node.
Error_Connection: A connection error has occurred with the parent BaseStation.
Reads the check radio interval that is currently set on the Node.
Error_NotSupported: Attempted to read an unsupported option. The device firmware is not compatible with this version of MSCL.
Error_NodeCommunication: Failed to read from the Node.
Error_Connection: A connection error has occurred with the parent BaseStation.
Reads the WirelessTypes::TransmitPower that is currently set on the Node.
Error_NotSupported: Attempted to read an unsupported option. The device firmware is not compatible with this version of MSCL.
Error_NodeCommunication: Failed to read from the Node.
Error_Connection: A connection error has occurred with the parent BaseStation.
Gets the WirelessTypes::SamplingMode that is currently set on the Node.
Error_NotSupported: Attempted to read an unsupported option. The device firmware is not compatible with this version of MSCL.
Error_NodeCommunication: Failed to read from the Node.
Error_Connection: A connection error has occurred with the parent BaseStation.
Gets the ChannelMask currently set on the Node, representing which channels are enabled and disabled.
Error_NotSupported: Attempted to read an unsupported option. The device firmware is not compatible with this version of MSCL.
Error_NodeCommunication: Failed to read from the Node.
Error_Connection: A connection error has occurred with the parent BaseStation.
Gets the WirelessTypes::WirelessSampleRate currently set on the Node.
Error_NotSupported: Attempted to read an unsupported option. The device firmware is not compatible with this version of MSCL.
Error_NodeCommunication: Failed to read from the Node.
Error_Connection: A connection error has occurred with the parent BaseStation.
Gets the number of sweeps currently set on the Node, which affects the duration of sampling if unlimited duration is disabled, or the duration of each burst if the sampling mode is Sync Sampling Burst.
Error_NotSupported: Attempted to read an unsupported option. The device firmware is not compatible with this version of MSCL.
Error_NodeCommunication: Failed to read from the Node.
Error_Connection: A connection error has occurred with the parent BaseStation.
Gets whether or not unlimited sampling duration is enabled on the Node.
Error_NotSupported: Attempted to read an unsupported option. The device firmware is not compatible with this version of MSCL.
Error_NodeCommunication: Failed to read from the Node.
Error_Connection: A connection error has occurred with the parent BaseStation.
Gets the WirelessTypes::DataFormat that is currently set on the Node.
Error_NotSupported: Attempted to read an unsupported option. The device firmware is not compatible with this version of MSCL.
Error_NodeCommunication: Failed to read from the Node.
Error_Connection: A connection error has occurred with the parent BaseStation.
Gets the WirelessTypes::DataCollectionMethod that is currently set on the Node, representing how the data will be collected. Note: this has no affect if the sampling mode is Armed Datalogging, as this mode only operates in "log only".
Error_NotSupported: Attempted to read an unsupported option. The device firmware is not compatible with this version of MSCL.
Error_NodeCommunication: Failed to read from the Node.
Error_Connection: A connection error has occurred with the parent BaseStation.
Gets the amount of time between each burst currently set on the Node.
Error_NotSupported: Burst Sampling mode is not supported by the Node.
Error_NodeCommunication: Failed to read from the Node.
Error_Connection: A connection error has occurred with the parent BaseStation.
Gets the lost beacon timeout, in minutes, currently set on the Node.
Error_NotSupported: Attempted to read an unsupported option. The device firmware is not compatible with this version of MSCL.
Error_NodeCommunication: Failed to read from the Node.
Error_Connection: A connection error has occurred with the parent BaseStation.
double getHardwareGain( |
| ) const |
Reads the hardware gain of the specified ChannelMask.
mask const ChannelMask& | The ChannelMask of the hardware gain to read. |
Error_NotSupported: Hardware gain is not supported for the provided ChannelMask.
Error_NodeCommunication: Failed to communicate with the Node.
Error_Connection: A connection error has occurred with the parent BaseStation.
uint16 getHardwareOffset( |
| ) const |
Reads the hardware offset of the specified ChannelMask currently set on the Node.
mask const ChannelMask& | The ChannelMask of the hardware offset to read. |
Error_NotSupported: Hardware offset is not supported for the provided ChannelMask.
Error_NodeCommunication: Failed to read from the Node.
Error_Connection: A connection error has occurred with the parent BaseStation.
float getGaugeFactor( |
| ) const |
Reads the gauge factor of the specified ChannelMask currently set on the Node.
mask const ChannelMask& | The ChannelMask of the gauge factor to read. |
The gauge factor currently set on the Node for the ChannelMask.
Error_NotSupported: Gauge Factor is not supported for the provided ChannelMask.
Error_NodeCommunication: Failed to read from the Node.
Error_Connection: A connection error has occurred with the parent BaseStation.
LinearEquation getLinearEquation( |
| ) const |
Gets the linear equation of the specified ChannelMask currently set on the Node.
Error_NotSupported: Linear Equation is not supported for the provided ChannelMask.
Error_NodeCommunication: Failed to communicate with the Node.
Error_Connection: A connection error has occurred with the parent BaseStation.
WirelessTypes::CalCoef_Unit getUnit( |
| ) const |
Reads the unit of the specified ChannelMask currently set on the Node.
Error_NotSupported: The Unit setting is not supported for the provided ChannelMask.
Error_NodeCommunication: Failed to communicate with the Node.
Error_Connection: A connection error has occurred with the parent BaseStation.
WirelessTypes::CalCoef_EquationType getEquationType( |
| ) const |
Reads the WirelessTypes::CalCoef_EquationType of the specified ChannelMask currently set on the Node.
The WirelessTypes::CalCoef_EquationType currently set on the Node for this ChannelMask.
Error_NotSupported: The Equation Type setting is not supported for the provided ChannelMask.
Error_NodeCommunication: Failed to communicate with the Node.
Error_Connection: A connection error has occurred with the parent BaseStation.
WirelessTypes::SettlingTime getFilterSettlingTime( |
| ) const |
Reads the filter settling time of the specified ChannelMask.
mask const ChannelMask& | The ChannelMask of the filter settling time to read. |
Error_NotSupported: Filter Settling Time is not supported for the provided ChannelMask.
Error_NodeCommunication: Failed to communicate with the Node.
Error_Connection: A connection error has occurred with the parent BaseStation.
WirelessTypes::ThermocoupleType getThermocoupleType( |
| ) const |
Reads the WirelessTypes::ThermocoupleType of the specified ChannelMask currently set on the Node.
mask const ChannelMask& | The ChannelMask of the thermocouple type to read. |
Error_NotSupported: Thermocouple Type is not supported for the provided ChannelMask.
Error_NodeCommunication: Failed to read from the Node.
Error_Connection: A connection error has occurred with the parent BaseStation.
Reads the FatigueOptions currently set on the Node.
Error_NotSupported: FatigueOptions configuration is not supported by this Node.
Error_NodeCommunication: Failed to read from the Node.
Error_Connection: A connection error has occurred with the parent BaseStation.
Reads the HistogramOptions currently set on the Node.
Error_NotSupported: HistogramOptions configuration is not supported by this Node.
Error_NodeCommunication: Failed to read from the Node.
Error_Connection: A connection error has occurred with the parent BaseStation.
Reads the ActivitySense options currently set on the Node.
Error_NotSupported: ActivitySense configuration is not supported by this Node.
Error_NodeCommunication: Failed to read from the Node.
Error_Connection: A connection error has occurred with the parent BaseStation.
Performs a Quick Ping (Short Ping) command on the Node.
true if the quick ping was successful, false otherwise.
Performs a Long Ping command on the Node to check the communication between the Base Station and the Node.
A PingResponse object that can be queried to get details of the ping command's response.
Error_Connection: A connection error has occurred with the parent BaseStation.
Puts the Node into a low power, sleep mode. This command attempts to ping the node before sending the sleep command, to verify communication.
true if the sleep command was successful, false otherwise.
Error_Connection: A connection error has occurred with the BaseStation.
Cycles the power on the Node. Many configuration changes that are applied to the node do not take affect until the power is cycled.
Error_NotSupported: Attempted to write an unsupported option. The device firmware is not compatible with this version of MSCL.
Error_NodeCommunication: Failed to write the value to the Node.
Error_Connection: A connection error has occurred with the parent BaseStation.
Resets the radio on the Node.
Error_NodeCommunication: Failed to write the value to the Node.
Error_Connection: A connection error has occurred with the parent BaseStation.
virtual void changeFrequency( |
| ) |
Changes the radio frequency of the Node.
frequency | The WirelessTypes::Frequency to change the Node to. |
Error_NotSupported: Attempted to write an unsupported option. The device firmware is not compatible with this version of MSCL.
Error_NodeCommunication: Failed to write the value to the Node.
Error_Connection: A connection error has occurred with the parent BaseStation.
Attempts to set the Node to the Idle state so that it can be communicated with (stops it sampling, wakes it up if asleep).
A SetToIdleStatus object that can be queried to get the status of the Set to Idle operation.
Error_Connection: A connection error has occurred with the BaseStation.
Erases all logged data on the Node.
Error_NodeCommunication: Failed to erase the Node.
Error_Connection: A connection error has occurred with the parent BaseStation.
Starts the Node in Non-Synchronized Sampling Mode.
Error_InvalidNodeConfig: The Configuration of the Node is not set for Non-Sync Sampling Mode.
Error_Connection: A connection error has occurred with the BaseStation
Clears the Histogram on the Node.
Error_NotSupported: Histogram configuration is not supported by the Node.
Error_NodeCommunication: Failed to communicate with the Node.
Error_Connection: A connection error has occurred with the parent BaseStation.
AutoBalanceResult autoBalance( |
| ) |
Performs an Auto Balance command on a specified channel on the Node.
mask const ChannelMask& | The ChannelMask to perform the auto balance command on. |
targetPercent float | The percentage (0.0 - 100.0) of the range to balance to. |
The AutoBalanceResult containing information from the auto balance command.
Error_NotSupported: Autobalance is not supported by the Node or channel specified.
Error_NodeCommunication: Failed to communicate with the Node.
Error_Connection: A connection error has occurred with the parent BaseStation.
Performs automatic calibration for the SHM-Link Wireless Node.
The AutoCalResult_shmLink containing the result of the auto cal operation.
Error_NotSupported: Autocal configuration is not supported by the Node or The node is an invalid model for this command.
Error_NodeCommunication: Failed to communicate with the Node.
Error_Connection: A connection error has occurred with the parent BaseStation.
virtual uint16 readEeprom( |
| ) const |
Reads a uint16 from the given eeprom location of the node. This may use a page download or a read eeprom command. If the value stored in the eeprom cache is still valid, this will be returned instead.
location uint16 | The specific eeprom location to read from |
The uint16 value read from the specified EEPROM location
Error_NotSupported: Attempted to read an unsupported eeprom location.
Error_NodeCommunication: Failed to read the value from the Node.
Error_Connection: A connection error has occurred with the parent BaseStation.
virtual Value readEeprom( |
| ) const |
Reads a value from the given EepromLocation of the node. This may use a page download or a read eeprom command. If the value stored in the eeprom cache is still valid, this will be returned instead.
location const EepromLocation& | The EepromLocation to read from. |
The value read from the specified EEPROM location as a Value object.
Error_NotSupported: Attempted to read an unsupported eeprom location.
Error_NodeCommunication: Failed to read the value from the Node.
Error_Connection: A connection error has occurred with the parent BaseStation.
virtual void writeEeprom( |
| ) |
Writes a uint16 to the given eeprom location of the node. If successful, the cache will be updated with the changed value as well.
location uint16 | The specific eeprom location to write to |
value uint16 | The uint16 value to write to the eeprom location |
Error_NotSupported: Unsupported eeprom location or value.
Error_NodeCommunication: Failed to write the value to the Node.
Error_Connection: A connection error has occurred with the parent BaseStation.
virtual void writeEeprom( |
| ) |
Writes a value to the given EepromLocation of the node. If successful, the cache will be updated with the changed value as well.
location const EepromLocation& | The specific EepromLocation to write to. |
value | The value to write to the eeprom location, as a Value. |
Error_NotSupported: Unsupported eeprom location or value.
Error_NodeCommunication: Failed to write the value to the Node.
Error_Connection: A connection error has occurred with the parent BaseStation.