Demo HCI Implementation for WiMOD-LR Devices  V2.0.3
WiMODLRBASE_PLUS Class Reference

Main class representing the interface to the WiMOD running the firmware WiMODLR-BASE_PLUS. More...

#include <WiMODLR_BASE_PLUS.h>

Inheritance diagram for WiMODLRBASE_PLUS:
Collaboration diagram for WiMODLRBASE_PLUS:

Public Member Functions

 WiMODLRBASE_PLUS (Stream &s)
 Constructor. More...
 
 ~WiMODLRBASE_PLUS (void)
 Destructor.
 
void begin (void)
 Setup internal things. More...
 
void end (void)
 De-Setup internal things. More...
 
bool Ping (TWiMODLRResultCodes *hciResult=NULL, UINT8 *rspStatus=NULL)
 Ping Cmd - Checks serial connetion to WiMOD module. More...
 
bool Reset (TWiMODLRResultCodes *hciResult=NULL, UINT8 *rspStatus=NULL)
 Reset Cmd - Do a local reboot of the WiMOD module. More...
 
bool GetDeviceInfo (TWiMODLR_DevMgmt_DevInfo *info, TWiMODLRResultCodes *hciResult=NULL, UINT8 *rspStatus=NULL)
 Gets the basic DeviceInfo from WiMOD module. More...
 
bool GetFirmwareInfo (TWiMODLR_DevMgmt_FwInfo *info, TWiMODLRResultCodes *hciResult=NULL, UINT8 *rspStatus=NULL)
 Gets the basic FirmwareInfo from WiMOD module. More...
 
bool GetSystemStatus (TWiMODLR_DevMgmt_SystemStatusPlus *info, TWiMODLRResultCodes *hciResult=NULL, UINT8 *rspStatus=NULL)
 Gets the bas SystemStatus info from WiMOD module. More...
 
bool GetRtc (UINT32 *rtcTime, TWiMODLRResultCodes *hciResult=NULL, UINT8 *rspStatus=NULL)
 Gets the current RTC data info from WiMOD module. More...
 
bool SetRtc (const UINT32 rtcTime, TWiMODLRResultCodes *hciResult=NULL, UINT8 *rspStatus=NULL)
 Sets the current RTC values to WiMOD module. More...
 
bool GetRadioConfig (TWiMODLR_DevMgmt_RadioConfigPlus *radioCfg, TWiMODLRResultCodes *hciResult=NULL, UINT8 *rspStatus=NULL)
 Gets the current configuration of the radio of the WiMOD module. More...
 
bool SetRadioConfig (const TWiMODLR_DevMgmt_RadioConfigPlus *radioCfg, TWiMODLRResultCodes *hciResult=NULL, UINT8 *rspStatus=NULL)
 Sets the current configuration for the radio of the WiMOD module. More...
 
bool ResetRadioConfig (TWiMODLRResultCodes *hciResult=NULL, UINT8 *rspStatus=NULL)
 Resets the current configuration to defaults. More...
 
bool GetOperationMode (TWiMOD_OperationMode *opMode, TWiMODLRResultCodes *hciResult=NULL, UINT8 *rspStatus=NULL)
 Gets the current operation mode of the WiMOD module. More...
 
bool SetOperationMode (const TWiMOD_OperationMode opMode, TWiMODLRResultCodes *hciResult=NULL, UINT8 *rspStatus=NULL)
 Sets the current operation mode of the WiMOD module. More...
 
bool SetRadioMode (const TRadioCfg_RadioMode radioMode, TWiMODLRResultCodes *hciResult=NULL, UINT8 *rspStatus=NULL)
 SetRadioMode - Set the current radio mode of the WiMOD. More...
 
bool SetAesKey (const UINT8 *key, TWiMODLRResultCodes *hciResult=NULL, UINT8 *rspStatus=NULL)
 Sets the security 128bit AES key to use for RF communication. More...
 
bool GetAesKey (UINT8 *key, TWiMODLRResultCodes *hciResult=NULL, UINT8 *rspStatus=NULL)
 Gets the used security 128bit AES key. More...
 
bool SetRtcAlarm (const TWiMODLR_DevMgmt_RtcAlarm *rtcAlarm, TWiMODLRResultCodes *hciResult=NULL, UINT8 *rspStatus=NULL)
 Sets and enables the RTC alarm feature of the WiMOD. More...
 
bool GetRtcAlarm (TWiMODLR_DevMgmt_RtcAlarm *rtcAlarm, TWiMODLRResultCodes *hciResult=NULL, UINT8 *rspStatus=NULL)
 Gets information about the RTC alarm feature of the WiMOD. More...
 
bool ClearRtcAlarm (TWiMODLRResultCodes *hciResult=NULL, UINT8 *rspStatus=NULL)
 Clears pending RTC Alarms of the WiMOD. More...
 
void RegisterPowerUpIndicationClient (TDevMgmtPowerUpCallback cb)
 Register a callback function for the PowerUp Indication - optional -. More...
 
void RegisterRtcAlarmIndicationClient (TDevMgmtRtcAlarmCallback cb)
 Register a callback function for the RTC Alarm Indication - optional -. More...
 
bool GetHciConfig (TWiMODLR_DevMgmt_HciConfig *hciConfig, TWiMODLRResultCodes *hciResult=NULL, UINT8 *rspStatus=NULL)
 Gets the current HCI configuration of the WiMOD. More...
 
bool SetHciConfig (TWiMODLR_DevMgmt_HciConfig &hciConfig, TWiMODLRResultCodes *hciResult=NULL, UINT8 *rspStatus=NULL)
 Sets a new HCI configuration of the WiMOD. More...
 
bool SendUData (const TWiMODLR_RadioLink_Msg *txMsg, TWiMODLRResultCodes *hciResult=NULL, UINT8 *rspStatus=NULL)
 Tries to send transmit U-Data to peer module via RF link. More...
 
bool SendCData (const TWiMODLR_RadioLink_Msg *txMsg, TWiMODLRResultCodes *hciResult=NULL, UINT8 *rspStatus=NULL)
 Tries to send transmit C-Data to peer module via RF link. More...
 
bool SetAckData (const TWiMODLR_RadioLink_Msg *txMsg, TWiMODLRResultCodes *hciResult=NULL, UINT8 *rspStatus=NULL)
 Sets additional user payload for the next ack frame to send. More...
 
bool convert (TWiMODLR_HCIMessage &RxMsg, TWiMODLR_RadioLink_Msg *radioLinkMsg)
 Convert a received low level HCI-Msg to a high-level RadioLink-Msg. More...
 
bool convert (TWiMODLR_HCIMessage &RxMsg, TWiMODLR_RadioLink_CdataInd *cDataTxInfo)
 Convert a received low level HCI-Msg to a high-level CDataTx Info. More...
 
bool convert (TWiMODLR_HCIMessage &RxMsg, TWiMODLR_RadioLink_UdataInd *cDataTxInfo)
 Convert a received low level HCI-Msg to a high-level UDataTx Info. More...
 
bool convert (TWiMODLR_HCIMessage &RxMsg, TWiMODLR_AckTxInd_Msg *txAckIndInfo)
 Convert a received low level HCI-Msg to a high-level AckTxInd Info. More...
 
void RegisterUDataRxClient (TRadioLinkUDataRxIndicationCallback cb)
 Register a callback function for the RX U-Data Indication - optional -. More...
 
void RegisterUDataTxClient (TRadioLinkUDataTxIndicationCallback cb)
 Register a callback function for the TX U-Data Indication - optional -. More...
 
void RegisterRawDataRxClient (TRadioLinkRawDataRxIndicationCallback cb)
 
void RegisterCDataRxClient (TRadioLinkCDataRxIndicationCallback cb)
 Register a callback function for the RX C-Data Indication - optional -. More...
 
void RegisterCDataTxClient (TRadioLinkCDataTxIndicationCallback cb)
 Register a callback function for the TX C-Data Indication - optional -. More...
 
void RegisterAckRxClient (TRadioLinkAckRxIndicationCallback cb)
 Register a callback function for the RX Ack (+data) Indication - optional -. More...
 
void RegisterAckRxTimeoutClient (TRadioLinkAckRxTimeoutIndicationCallback cb)
 Register a callback function for the Ack Timeout Indication - optional -. More...
 
void RegisterAckTxCallback (TRadioLinkAckTxIndicationCallback cb)
 Register a callback function for the TX Ack Indication - optional -. More...
 
bool ExecuteGenericCmd (TWiMODLR_Generic_CmdInfo *info, TWiMODLRResultCodes *hciResult=NULL, UINT8 *rspStatus=NULL)
 Generic Execution Function for HCI commands that are currently not implemented. More...
 
bool StartRadioLinkTest (const TWiMODLR_RLT_Parameter *params, TWiMODLRResultCodes *hciResult=NULL, UINT8 *rspStatus=NULL)
 Tries to start the integrated Radio Link Test feature of the WiMOD. More...
 
bool StopRadioLinkTest (TWiMODLRResultCodes *hciResult=NULL, UINT8 *rspStatus=NULL)
 Tries to stop a running Radio Link Test. More...
 
void RegisterRltStatusClient (TRltStatusIndicationCallback cb)
 Register a callback function for RLT updates. More...
 
bool convert (TWiMODLR_HCIMessage &RxMsg, TWiMODLR_RLT_Status *statusData)
 Convert a received low level HCI-Msg to a high-level RLT Status Info. More...
 
bool SetSensorAppConfig (const TWiMODLR_SensorApp_Config *config, TWiMODLRResultCodes *hciResult=NULL, UINT8 *rspStatus=NULL)
 Tries to configure the integrated Sensor App feature of the WiMOD. More...
 
bool GetSensorAppConfig (TWiMODLR_SensorApp_Config *config, TWiMODLRResultCodes *hciResult=NULL, UINT8 *rspStatus=NULL)
 Tries to get the current config of the integrated Sensor App feature of the WiMOD. More...
 
void RegisterSensorAppAckIndClient (TSensorAppAckIndicationCallback cb)
 Register a callback function for the SensorAppAckData Indication - optional -. More...
 
void RegisterSensorAppDataIndClient (TSensorAppSensorDataIndicationCallback cb)
 Register a callback function for the SensorAppData Indication. More...
 
bool convert (TWiMODLR_HCIMessage &RxMsg, TWiMODLR_SensorApp_SensorData *sensorData)
 Convert a received low level HCI-Msg to a high-level SensorData Info. More...
 
bool convert (TWiMODLR_HCIMessage &RxMsg, TWiMODLR_SensorApp_AckSensorData *sensorAckData)
 Convert a received low level HCI-Msg to a high-level SensorData Info. More...
 
void RegisterBtnPressedClient (TRemoteCtrlBtnPressedIndicationCallback cb)
 Register a callback function for the RemoteCtrl Btn Pressed Indication. More...
 
bool convert (TWiMODLR_HCIMessage &RxMsg, TWiMODLR_RemoteCtrl_BtnPressed *btnInfo)
 Convert a received low level HCI-Msg to a high-level RemoteCtrl Btn Info. More...
 
void calcFreqToRegister (uint32_t freq, uint8_t *msb, uint8_t *mid, uint8_t *lsb)
 Convert a frequency in Hz to the corresponding low level register values. More...
 
uint32_t calcRegisterToFreq (uint8_t msb, uint8_t mid, uint8_t lsb)
 Convert a frequency registers to frequency in Hz. More...
 
TWiMODLRResultCodes GetLastHciResult (void)
 Gets the value of the last local HCI TX status. More...
 
UINT8 GetLastResponseStatus (void)
 Gets the value of the last status response value of the WiMOD. More...
 
- Public Member Functions inherited from TWiMODLRHCI
 TWiMODLRHCI (Stream &s)
 Constructor. More...
 
 ~TWiMODLRHCI (void)
 Destructor.
 
TWiMODLRResultCodes SendHCIMessage (UINT8 dstSapID, UINT8 msgID, UINT8 rxMsgID, UINT8 *payload, UINT16 length)
 Generic function for transferring a HCI message to the WiMOD module. More...
 
TWiMODLRResultCodes SendHCIMessageWithoutRx (UINT8 dstSapID, UINT8 msgID, UINT8 *payload, UINT16 length)
 Generic function for transferring a HCI message to the WiMOD module. More...
 
void Process (void)
 Handle the receiver path; process all incomming bytes from the WiMOD. More...
 
void SendWakeUpSequence (void)
 : Send a sequence of dummy chars to give the WiMOD some time to wake up
 
void RegisterStackErrorClient (TWiMODStackErrorClient cb)
 
const TWiMODLR_HCIMessageGetRxMessage (void)
 
void EnableWakeupSequence (bool flag)
 

Protected Member Functions

bool copyResultInfos (TWiMODLRResultCodes *hciResult, UINT8 *rspStatus, UINT8 successValue)
 
virtual void ProcessUnexpectedRxMessage (TWiMODLR_HCIMessage &rxMsg)
 
- Protected Member Functions inherited from TWiMODLRHCI
TWiMODLRResultCodes PostMessage (UINT8 sapID, UINT8 msgID, UINT8 *payload, UINT16 length)
 
TWiMODLRResultCodes SendPacket (UINT8 *txData, UINT16 length)
 
bool WaitForResponse (UINT8 rxSapID, UINT8 rxMsgID)
 
UINT8 * ProcessRxMessage (UINT8 *rxBuffer, UINT16 length)
 

Protected Attributes

WiMOD_SAP_DevMgmt_Plus SapDevMgmt
 
WiMOD_SAP_RadioLink SapRadioLink
 
WiMOD_SAP_Generic SapGeneric
 
WiMOD_SAP_RLT SapRLT
 
WiMOD_SAP_SensorApp SapSensor
 
WiMOD_SAP_RemoteCtrl SapRemoteCtrl
 

Detailed Description

Main class representing the interface to the WiMOD running the firmware WiMODLR-BASE_PLUS.

This class is the only API class a user should use for interacting with a WiMOD module that runs the IMST WiMODLR-Base_PLUS firmware.

Constructor & Destructor Documentation

◆ WiMODLRBASE_PLUS()

WiMODLRBASE_PLUS::WiMODLRBASE_PLUS ( Stream &  s)

Constructor.

Parameters
sReference to the serial interace to be used for communication. The serial interface must be initialized outside of this class prior calling the first command in runtime.
#include <WiMODLR_BASE.h>
WiMODLRBASE wimod(Serial3); // use the Arduino Serial3 as serial interface
void setup() {
// init stack
wimod.begin();
...
}

Member Function Documentation

◆ begin()

void WiMODLRBASE_PLUS::begin ( void  )
virtual

Setup internal things.

This function must be executed at startup before any other service can be used.

WiMODLRBASE_PLUS wimod(Serial3); // use the Arduino Serial3 as serial interface
void setup() {
// init stack
wimod.begin();
...
}

Reimplemented from TWiMODLRHCI.

Here is the call graph for this function:

◆ calcFreqToRegister()

void WiMODLRBASE_PLUS::calcFreqToRegister ( uint32_t  freq,
uint8_t *  msb,
uint8_t *  mid,
uint8_t *  lsb 
)

Convert a frequency in Hz to the corresponding low level register values.

Parameters
freqTarget frequencey in Hz
msbPointer to register value for MSB-Part
midPointer to register value for MID-Part
lsbPointer to register value for LSB-Part
Here is the call graph for this function:

◆ calcRegisterToFreq()

uint32_t WiMODLRBASE_PLUS::calcRegisterToFreq ( uint8_t  msb,
uint8_t  mid,
uint8_t  lsb 
)

Convert a frequency registers to frequency in Hz.

Parameters
msbregister value for MSB-Part
midregister value for MID-Part
lsbregister value for LSB-Part

return Frequency in Hz

Here is the call graph for this function:

◆ ClearRtcAlarm()

bool WiMODLRBASE_PLUS::ClearRtcAlarm ( TWiMODLRResultCodes hciResult = NULL,
UINT8 *  rspStatus = NULL 
)

Clears pending RTC Alarms of the WiMOD.

See also
TWiMODLRResultCodes for interpretation of the values
Parameters
hciResultResult of the local command transmission to module This is an optional parameter.
rspStatusStatus byte contained in the local response of the module This is an optional parameter.
Return values
trueif everything is ok
falseif something went wrong; see hciResult & rspStatus for details
// clear a pending RTC alarm of WiMOD
wimod.ClearRtcAlarm();
...
Here is the call graph for this function:

◆ convert() [1/8]

bool WiMODLRBASE_PLUS::convert ( TWiMODLR_HCIMessage RxMsg,
TWiMODLR_AckTxInd_Msg txAckIndInfo 
)

Convert a received low level HCI-Msg to a high-level AckTxInd Info.

This function should be used by the AckTx Indication Callback functions prior processing the received data message.

Parameters
RxMsgReference to low-level HCI message.
Warning
DO NOT MANIPULATE THESE VALUES !!!
Parameters
txAckIndInfoPointer to the buffer where to store the received data
Return values
trueif the conversion was successful
msc_inline_mscgraph_65
// global buffer
void myTxAckInd(TWiMODLR_HCIMessage& rxMsg) {
// convert/copy the raw message
if (wimod.convert(rxMsg, &txAckData)) {
// access the fields folding information about the ACK transmission
// txDataMsg.Status
...
}
}
...
void setup() {
...
// init the communication stack
wimod.begin();
// register callback
wimod.RegisterAckTxCallback(myTxAckInd);
...
}
Here is the call graph for this function:

◆ convert() [2/8]

bool WiMODLRBASE_PLUS::convert ( TWiMODLR_HCIMessage RxMsg,
TWiMODLR_RadioLink_CdataInd cDataTxInfo 
)

Convert a received low level HCI-Msg to a high-level CDataTx Info.

This function should be used by the Tx-C-Data Indication Callback functions prior processing the received data message.

Parameters
RxMsgReference to low-level HCI message.
Warning
DO NOT MANIPULATE THESE VALUES !!!
Parameters
cDataTxInfoPointer to the buffer where to store the received data
Return values
trueif the conversion was successful
msc_inline_mscgraph_66
// global buffer for indication that CData has been send
void myTxCDataInd(TWiMODLR_HCIMessage& rxMsg) {
// convert/copy the raw message to RX radio buffer
if (wimod.convert(rxMsg, &txDataMsg)) {
// access the fields folding information about the transmission
// txDataMsg.TxEventCounter
...
}
}
...
void setup() {
...
// init the communication stack
wimod.begin();
// register callback
wimod.RegisterCDataTxClient(myTxCDataInd);
...
}
Here is the call graph for this function:

◆ convert() [3/8]

bool WiMODLRBASE_PLUS::convert ( TWiMODLR_HCIMessage RxMsg,
TWiMODLR_RadioLink_Msg radioLinkMsg 
)

Convert a received low level HCI-Msg to a high-level RadioLink-Msg.

This function should be used by the RxUData / RxCData callback functions prior processing the received data message.

Parameters
RxMsgReference to low-level HCI message.
Warning
DO NOT MANIPULATE THESE VALUES !!!
Parameters
radioLinkMsgPointer to the buffer where to store the received data
Return values
trueif the conversion was successful
msc_inline_mscgraph_67
// global buffer for incomming messages
void myRxDataInd(TWiMODLR_HCIMessage& rxMsg) {
// convert/copy the raw message to RX radio buffer
if (wimod.convert(rxMsg, &radioRxMsg)) {
// access the radioRxMsg fields
// radioRxMsg.Length
// radioRxMsg.Payload
...
}
}
...
void setup() {
...
// init the communication stack
wimod.begin();
// register callbacks for incommig RF messages
wimod.RegisterUDataRxClient(myRxDataInd);
wimod.RegisterCDataRxClient(myRxDataInd);
...
}
Here is the call graph for this function:

◆ convert() [4/8]

bool WiMODLRBASE_PLUS::convert ( TWiMODLR_HCIMessage RxMsg,
TWiMODLR_RadioLink_UdataInd uDataTxInfo 
)

Convert a received low level HCI-Msg to a high-level UDataTx Info.

This function should be used by the Tx-U-Data Indication Callback functions prior processing the received data message.

Parameters
RxMsgReference to low-level HCI message.
Warning
DO NOT MANIPULATE THESE VALUES !!!
Parameters
uDataTxInfoPointer to the buffer where to store the received data
Return values
trueif the conversion was successful
msc_inline_mscgraph_68
// global buffer for indication that UData has been send
void myTxCDataInd(TWiMODLR_HCIMessage& rxMsg) {
// convert/copy the raw message to RX radio buffer
if (wimod.convert(rxMsg, &txDataMsg)) {
// access the fields folding information about the transmission
// txDataMsg.TxEventCounter
...
}
}
...
void setup() {
...
// init the communication stack
wimod.begin();
// register callback
wimod.RegisterCDataTxClient(myTxCDataInd);
...
}
Here is the call graph for this function:

◆ convert() [5/8]

bool WiMODLRBASE_PLUS::convert ( TWiMODLR_HCIMessage RxMsg,
TWiMODLR_RemoteCtrl_BtnPressed btnInfo 
)

Convert a received low level HCI-Msg to a high-level RemoteCtrl Btn Info.

This function should be used by the RemoteCtrl Button Pressed Indication Callback functions prior processing the received data message.

Parameters
RxMsgReference to low-level HCI message.
Warning
DO NOT MANIPULATE THESE VALUES !!!
Parameters
btnInfoPointer to the buffer where to store the received data
Return values
trueif the conversion was successful
// global buffer for indication that RemoteCtrl Button Pressed indication has been send
void myBtnPressedInd(TWiMODLR_HCIMessage& rxMsg) {
// convert/copy the raw message to RX radio buffer
if (wimod.convert(rxMsg, &btnInfo)) {
// access the fields folding information about the transmission
...
if (btnInfo.ButtonBitmap & SENSORAPP_DIGITAL_INPUT_BOTTON1_SET) {...}
...
}
}
...
void setup() {
...
// init the communication stack
wimod.begin();
// register callback
wimod.RegisterBtnPressedClient(myBtnPressedInd);
...
}
Here is the call graph for this function:

◆ convert() [6/8]

bool WiMODLRBASE_PLUS::convert ( TWiMODLR_HCIMessage RxMsg,
TWiMODLR_RLT_Status statusData 
)

Convert a received low level HCI-Msg to a high-level RLT Status Info.

This function should be used by the RLT Status Indication Callback functions prior processing the received data message.

Parameters
RxMsgReference to low-level HCI message.
Warning
DO NOT MANIPULATE THESE VALUES !!!
Parameters
statusDataPointer to the buffer where to store the received data
Return values
trueif the conversion was successful
msc_inline_mscgraph_69
// global buffer for indication that RLT Status data has been send
TWiMODLR_RLT_Status statusData;
void myRLTStatusInd(TWiMODLR_HCIMessage& rxMsg) {
// convert/copy the raw message to RX radio buffer
if (wimod.convert(rxMsg, &statusData)) {
// access the fields folding information about the transmission
// statusData.LocalTxCounter ...
// statusData.PeerRxCounter ...
...
}
}
...
void setup() {
...
// init the communication stack
wimod.begin();
// register callback
wimod.RegisterRltStatusClient(myRLTStatusInd);
...
// start Radio Link Test
wimod.StartRadioLinkTest(...)
}
Here is the call graph for this function:

◆ convert() [7/8]

bool WiMODLRBASE_PLUS::convert ( TWiMODLR_HCIMessage RxMsg,
TWiMODLR_SensorApp_AckSensorData sensorAckData 
)

Convert a received low level HCI-Msg to a high-level SensorData Info.

This function should be used by the SensorApp Data Indication Callback functions prior processing the received data message.

Parameters
RxMsgReference to low-level HCI message.
Warning
DO NOT MANIPULATE THESE VALUES !!!
Parameters
sensorAckDataPointer to the buffer where to store the received data
Return values
trueif the conversion was successful
// global buffer for indication that RLT Status data has been send
void mySensorAckDataInd(TWiMODLR_HCIMessage& rxMsg) {
// convert/copy the raw message to RX radio buffer
if (wimod.convert(rxMsg, &sensorAckData)) {
// access the fields folding information about the transmission
...
if (statusData.DigitalInputs & SENSORAPP_DIGITAL_INPUT_BOTTON1_SET) {...}
...
}
}
...
void setup() {
...
// init the communication stack
wimod.begin();
// register callback
wimod.RegisterSensorAppAckIndClient(mySensorAckDataInd);
...
}
Here is the call graph for this function:

◆ convert() [8/8]

bool WiMODLRBASE_PLUS::convert ( TWiMODLR_HCIMessage RxMsg,
TWiMODLR_SensorApp_SensorData sensorData 
)

Convert a received low level HCI-Msg to a high-level SensorData Info.

This function should be used by the SensorApp Data Indication Callback functions prior processing the received data message.

Parameters
RxMsgReference to low-level HCI message.
Warning
DO NOT MANIPULATE THESE VALUES !!!
Parameters
sensorDataPointer to the buffer where to store the received data
Return values
trueif the conversion was successful
msc_inline_mscgraph_70
// global buffer for indication that RLT Status data has been send
void mySensorDataInd(TWiMODLR_HCIMessage& rxMsg) {
// convert/copy the raw message to RX radio buffer
if (wimod.convert(rxMsg, &sensorData)) {
// access the fields folding information about the transmission
// sensorData.Voltage ...
...
if (statusData.DigitalInputs & SENSORAPP_DIGITAL_INPUT_BOTTON1_SET) {...}
...
}
}
...
void setup() {
...
// init the communication stack
wimod.begin();
// register callback
wimod.RegisterSensorAppDataIndClient(mySensorDataInd);
...
}
Here is the call graph for this function:

◆ end()

void WiMODLRBASE_PLUS::end ( void  )
virtual

De-Setup internal things.

Reimplemented from TWiMODLRHCI.

Here is the call graph for this function:

◆ ExecuteGenericCmd()

bool WiMODLRBASE_PLUS::ExecuteGenericCmd ( TWiMODLR_Generic_CmdInfo *  info,
TWiMODLRResultCodes hciResult = NULL,
UINT8 *  rspStatus = NULL 
)

Generic Execution Function for HCI commands that are currently not implemented.

This funtion enables the user to execute various HCI commands that are currently not implemented as commands within this API class.

The user has to know the HCI Command IDs and has to decode the response data on his own.

Parameters
infopointer to a structure containing the HCI commands to execute
hciResultResult of the local command transmission to module This is an optional parameter.
rspStatusStatus byte contained in the local response of the module This is an optional parameter.
Return values
trueif everything is ok
falseif something went wrong; see hciResult & rspStatus for details
...
// prepare command to send to WiMOD
TWiMODLR_Generic_CmdInfo cmdInfo;
cmdInfo.SapID = 0x01; // DevMgmt
cmdInfo.MsgReqID = 0x01; // Ping Req
cmdInfo.MsgRspID = 0x02; // expected response
// prepare payload for tx command
cmdInfo.CmdPayloadLength = 0
cmdInfo.CmdPayload[0] = 0xab;
...
// execute command
if (wimod.ExecuteGenericCmd(&cmdInfo)) {
// extract cmd reponse data
if (cmdInfo.CmdPayloadLength > 0) {
// repsonse data available
rspData =cmdInfo.CmdPayload[0]
...
// process data
...
}
}
Here is the call graph for this function:

◆ GetAesKey()

bool WiMODLRBASE_PLUS::GetAesKey ( UINT8 *  key,
TWiMODLRResultCodes hciResult = NULL,
UINT8 *  rspStatus = NULL 
)

Gets the used security 128bit AES key.

See also
TWiMODLRResultCodes for interpretation of the values
Parameters
keyPointer to the 128bit AES key that is used
hciResultResult of the local command transmission to module This is an optional parameter.
rspStatusStatus byte contained in the local response of the module This is an optional parameter.
Return values
trueif everything is ok
falseif something went wrong; see hciResult & rspStatus for details
const uint8_t AesKey[16];
// read AES key from WiMOD (LR-Base (PLUS) mode ONLY!)
if (wimod.GetAesKey(AesKey)) {
//ok;
}
...
Here is the call graph for this function:

◆ GetDeviceInfo()

bool WiMODLRBASE_PLUS::GetDeviceInfo ( TWiMODLR_DevMgmt_DevInfo info,
TWiMODLRResultCodes hciResult = NULL,
UINT8 *  rspStatus = NULL 
)

Gets the basic DeviceInfo from WiMOD module.

See also
TWiMODLRResultCodes for interpretation of the values
Parameters
infoPointer where to store the retrieved information
See also
TWiMODLR_DevMgmt_DevInfo for details
Parameters
hciResultResult of the local command transmission to module This is an optional parameter.
rspStatusStatus byte contained in the local response of the module This is an optional parameter.
Return values
trueif everything is ok
falseif something went wrong; see hciResult & rspStatus for details
//local variable
// get information of WiMOD
if (wimod.GetDeviceInfo(&devInfo)) {
// ok; process received information
...
}
...
Here is the call graph for this function:

◆ GetFirmwareInfo()

bool WiMODLRBASE_PLUS::GetFirmwareInfo ( TWiMODLR_DevMgmt_FwInfo info,
TWiMODLRResultCodes hciResult = NULL,
UINT8 *  rspStatus = NULL 
)

Gets the basic FirmwareInfo from WiMOD module.

See also
TWiMODLRResultCodes for interpretation of the values
Parameters
infoPointer where to store the retrieved information
See also
TWiMODLR_DevMgmt_FwInfo for details
Parameters
hciResultResult of the local command transmission to module This is an optional parameter.
rspStatusStatus byte contained in the local response of the module This is an optional parameter.
Return values
trueif everything is ok
falseif something went wrong; see hciResult & rspStatus for details
//local variable
// get information of WiMOD
if (wimod.GetFirmwareInfo(&fwInfo)) {
// ok; process received information
if (fwInfo.FirmwareMayorVersion = 0x01) {...}
}
...
Here is the call graph for this function:

◆ GetHciConfig()

bool WiMODLRBASE_PLUS::GetHciConfig ( TWiMODLR_DevMgmt_HciConfig hciConfig,
TWiMODLRResultCodes hciResult = NULL,
UINT8 *  rspStatus = NULL 
)

Gets the current HCI configuration of the WiMOD.

See also
HCI documentation and feature specification for details
Parameters
hciConfigPointer to a structure where to store the HCI config related information
hciResultResult of the local command transmission to module This is an optional parameter.
rspStatusStatus byte contained in the local response of the module This is an optional parameter.
Return values
trueif everything is ok
falseif something went wrong; see hciResult & rspStatus for details
// create a local variable
// get information of WiMOD
wimod.GetHciConfig(&hciConfig);
...
// access values
if (hciConfig.NumWakeUpChars == 40) {
...
}
...
Here is the call graph for this function:

◆ GetLastHciResult()

TWiMODLRResultCodes WiMODLRBASE_PLUS::GetLastHciResult ( void  )

Gets the value of the last local HCI TX status.

If the optional parameters have been left out (for the normal commands), the user can get the last value back by using this function

Return values
thelast value of the last command issued
msc_inline_mscgraph_71
...
if (wimod.Ping() == false) {
// get (local) result of HCI command transmission
hciResult = wimod.GetLastHciResult();
// check result code
switch (hciResult):
case WiMODLR_RESULT_OK: // OK, no error
case WiMODLR_RESULT_PAYLOAD_LENGTH_ERROR: // given payload is too big
case WiMODLR_RESULT_PAYLOAD_PTR_ERROR: // wrong pointer to payload (NULL?)
case WiMODLR_RESULT_TRANMIT_ERROR, // Error sending data to WiMOD via serial interface
case WiMODLR_RESULT_SLIP_ENCODER_ERROR, // Error during SLIP encoding
case WiMODLR_RESULT_NO_RESPONSE // The WiMOD did not respond to a request command
...
}
...

◆ GetLastResponseStatus()

UINT8 WiMODLRBASE_PLUS::GetLastResponseStatus ( void  )

Gets the value of the last status response value of the WiMOD.

If the optional parameters have been left out (for the normal commands), the user can get the last value back by using this function

Return values
thelast value of the last command issued

◆ GetOperationMode()

bool WiMODLRBASE_PLUS::GetOperationMode ( TWiMOD_OperationMode opMode,
TWiMODLRResultCodes hciResult = NULL,
UINT8 *  rspStatus = NULL 
)

Gets the current operation mode of the WiMOD module.

See also
TWiMODLRResultCodes for interpretation of the values
Parameters
opModePointer where to store the information
See also
TWiMOD_OperationMode for details
Parameters
hciResultResult of the local command transmission to module This is an optional parameter.
rspStatusStatus byte contained in the local response of the module This is an optional parameter.
Return values
trueif everything is ok
falseif something went wrong; see hciResult & rspStatus for details
// local variable
// get information from WiMOD
if (wimod.GetOperationMode(&opMode)) {
//ok
if (opMode != OperationMode_Application) {
// normal operation is disabled; only test functionality is enabled
}
}
...
Here is the call graph for this function:

◆ GetRadioConfig()

bool WiMODLRBASE_PLUS::GetRadioConfig ( TWiMODLR_DevMgmt_RadioConfigPlus radioCfg,
TWiMODLRResultCodes hciResult = NULL,
UINT8 *  rspStatus = NULL 
)

Gets the current configuration of the radio of the WiMOD module.

See also
TWiMODLRResultCodes for interpretation of the values
Parameters
radioCfgPointer where to store the information
See also
TWiMODLR_DevMgmt_RadioConfig for details
Parameters
hciResultResult of the local command transmission to module This is an optional parameter.
rspStatusStatus byte contained in the local response of the module This is an optional parameter.
Return values
trueif everything is ok
falseif something went wrong; see hciResult & rspStatus for details
// create a local variable
// get information from WiMOD
if (wimod.GetRadioConfig(&radioCfg)) {
// access the fields
if (radioCfg.RadioMode != RadioMode_Standard) {
// error unsupported mode
}
uint32_t freq = FreqCalc_calcRegisterToFreq(radioCfg.RfFreq_MSB,
radioCfg.RfFreq_MID,
radioCfg.RfFreq_LSB);
...
}
...
Here is the call graph for this function:

◆ GetRtc()

bool WiMODLRBASE_PLUS::GetRtc ( UINT32 *  rtcTime,
TWiMODLRResultCodes hciResult = NULL,
UINT8 *  rspStatus = NULL 
)

Gets the current RTC data info from WiMOD module.

See also
TWiMODLRResultCodes for interpretation of the values
Parameters
rtcTimePointer where to store the RTC information
See also
WIMOD_RTC_GET_* Macros for conversation of this value
Parameters
hciResultResult of the local command transmission to module This is an optional parameter.
rspStatusStatus byte contained in the local response of the module This is an optional parameter.
Return values
trueif everything is ok
falseif something went wrong; see hciResult & rspStatus for details
// create a local variable
uint32_t timestamp;
// get information of WiMOD
wimod.GetRtc(&timestamp);
//access fields of structure
printf("Year : %d:", WIMOD_RTC_GET_YEARS(timestamp));
printf("Month: %d:", WIMOD_RTC_GET_MONTHS(timestamp));
printf("Day : %d:", WIMOD_RTC_GET_DAYS(timestamp));
printf("Hour : %d:", WIMOD_RTC_GET_HOURS(timestamp));
printf("Min : %d:", WIMOD_RTC_GET_MINUTES(timestamp));
printf("Sec : %d:", WIMOD_RTC_GET_SECONDS(timestamp));
...
Here is the call graph for this function:

◆ GetRtcAlarm()

bool WiMODLRBASE_PLUS::GetRtcAlarm ( TWiMODLR_DevMgmt_RtcAlarm rtcAlarm,
TWiMODLRResultCodes hciResult = NULL,
UINT8 *  rspStatus = NULL 
)

Gets information about the RTC alarm feature of the WiMOD.

See also
TWiMODLRResultCodes for interpretation of the values
Parameters
rtcAlarmPointer to a structure where to store the RTC alarm related information
hciResultResult of the local command transmission to module This is an optional parameter.
rspStatusStatus byte contained in the local response of the module This is an optional parameter.
Return values
trueif everything is ok
falseif something went wrong; see hciResult & rspStatus for details
// create a local variable
// get information of WiMOD
wimod.GetRtcAlarm(&rtcAlarm);
...
// access values
if (rtcAlarm.AlarmStatus == RTC_Alarm_Alarm_Set) {
printf("Alarm is active");
...
}
...
Here is the call graph for this function:

◆ GetSensorAppConfig()

bool WiMODLRBASE_PLUS::GetSensorAppConfig ( TWiMODLR_SensorApp_Config config,
TWiMODLRResultCodes hciResult = NULL,
UINT8 *  rspStatus = NULL 
)

Tries to get the current config of the integrated Sensor App feature of the WiMOD.

The firmware has got a feature called "SensorApp". This feauture can be used to transfer several "sensor" values from the DemoBoard to remote peer WiMOD device. The transferable sensor values are:

  • states of the push buttons (of the DemoBoard)
  • state of the DIP switch (of the DemoBoard)
  • current voltage reading of the supply voltage
  • current ADC value / position of the potentio meter (of the DemoBoard)
  • current temperature reading of the WiMOD

Please note that the SensorApp may interrupt the normal operation of the WiMOD. So it is recommended to use this feature only in isolated szenarios.

Two devices are required: One that akts as "Transmitter" while the other one acts a "Receiver".

For detailed infos please refer to the feature specificaton document(s).

See also
TWiMODLRResultCodes for interpretation of the values
Parameters
configData structure containing the setup data for the SensorApp
hciResultResult of the local command transmission to module This is an optional parameter.
rspStatusStatus byte contained in the local response of the module This is an optional parameter.
Return values
trueif everything is ok
falseif something went wrong; see hciResult & rspStatus for details
...
// local variable
TWiMODLR_SensorApp_Config config;
// get the current config
if wimod.GetSensorAppConfig(&config)) {
// process the result
if (config.Mode == SensorApp_Mode_SensorDataTransmitter) {...}
...
}
...
Here is the call graph for this function:

◆ GetSystemStatus()

bool WiMODLRBASE_PLUS::GetSystemStatus ( TWiMODLR_DevMgmt_SystemStatusPlus info,
TWiMODLRResultCodes hciResult = NULL,
UINT8 *  rspStatus = NULL 
)

Gets the bas SystemStatus info from WiMOD module.

See also
TWiMODLRResultCodes for interpretation of the values
Parameters
infoPointer where to store the retrieved information
See also
TWiMODLR_DevMgmt_SystemStatus for details
Parameters
hciResultResult of the local command transmission to module This is an optional parameter.
rspStatusStatus byte contained in the local response of the module This is an optional parameter.
Return values
trueif everything is ok
falseif something went wrong; see hciResult & rspStatus for details
//local variable
// get information of WiMOD
if (wimod.GetSystemStatus(&sysStatus)) {
// ok; process received information
if (sysStatus.BatteryStatus < 2500) { //low batt. voltage detected }
}
...
Here is the call graph for this function:

◆ Ping()

bool WiMODLRBASE_PLUS::Ping ( TWiMODLRResultCodes hciResult = NULL,
UINT8 *  rspStatus = NULL 
)

Ping Cmd - Checks serial connetion to WiMOD module.

See also
TWiMODLRResultCodes for interpretation of the values
Parameters
hciResultResult of the local command transmission to module This is an optional parameter.
rspStatusStatus byte contained in the local response of the module This is an optional parameter.
Return values
trueif everything is ok
falseif something went wrong; see hciResult & rspStatus for details
if (wimod.Ping()) {
// success ...
} else {
// error ...
}

OR:

if (!wimod.Ping(&hciResult)) {
// error: check HCI result codes
if (WiMODLR_RESULT_TRANMIT_ERROR == hciResult) {...}
if (WiMODLR_RESULT_NO_RESPONSE == hciResult) {...}
}

OR:

uint8 rspCode;
if (!wimod.Ping(&hciResult, &rspCode)) {
// error: check HCI result codes
if (WiMODLR_RESULT_OK == hciResult) {
if (rspCode == DEVMGMT_STATUS_ERROR) {
// operation failed
}
...
}
...
}
Here is the call graph for this function:

◆ RegisterAckRxClient()

void WiMODLRBASE_PLUS::RegisterAckRxClient ( TRadioLinkAckRxIndicationCallback  cb)

Register a callback function for the RX Ack (+data) Indication - optional -.

See also
TWiMODLRResultCodes for interpretation of the values
Parameters
cbPointer a callback function
See also
TRadioLinkAckRxIndicationCallback for details
Note
The callback function should call the corresponding convert in order to decode the message properly
msc_inline_mscgraph_72
// callback for U data Tx indication
void myAckRxInd(TWiMODLR_HCIMessage& rxMsg) {
// use the convert function before accesing the data
...
}
void setup() {
...
// setup the callback
wimod.RegisterAckRxClient(myAckRxInd);
...
}
...
Here is the call graph for this function:

◆ RegisterAckRxTimeoutClient()

void WiMODLRBASE_PLUS::RegisterAckRxTimeoutClient ( TRadioLinkAckRxTimeoutIndicationCallback  cb)

Register a callback function for the Ack Timeout Indication - optional -.

See also
TWiMODLRResultCodes for interpretation of the values
Parameters
cbPointer a callback function
See also
TRadioLinkAckRxTimeoutIndicationCallback for details
msc_inline_mscgraph_73
// callback for a missing ACK packet
void myAckRxTimemoutInd() {
// this is called if an expected ACK has NOT been received
// within expected time; it it up to the application to
// react accordingly! (e.g. retransmission the data)
...
}
void setup() {
...
// setup the callback
wimod.RegisterAckRxTimeoutClient(myAckRxTimemoutInd);
...
}
...
Here is the call graph for this function:

◆ RegisterAckTxCallback()

void WiMODLRBASE_PLUS::RegisterAckTxCallback ( TRadioLinkAckTxIndicationCallback  cb)

Register a callback function for the TX Ack Indication - optional -.

See also
TWiMODLRResultCodes for interpretation of the values
Parameters
cbPointer a callback function
See also
TRadioLinkAckTxIndicationCallback for details
msc_inline_mscgraph_74
// callback for C data Ack Tx indication
void myAckTxInd() {
// this is called if an ACK has been send
...
}
void setup() {
...
// setup the callback
wimod.RegisterAckTxCallback(myAckTxInd);
...
}
...
Here is the call graph for this function:

◆ RegisterBtnPressedClient()

void WiMODLRBASE_PLUS::RegisterBtnPressedClient ( TRemoteCtrlBtnPressedIndicationCallback  cb)

Register a callback function for the RemoteCtrl Btn Pressed Indication.

Please see the feature specification document for details.

See also
TWiMODLRResultCodes for interpretation of the values
Parameters
cbPointer a callback function
Note
The callback function should call the corresponding convert in order to decode the message properly
msc_inline_mscgraph_75
// callback for my button pressed indication callaback
void myBtnPressedInd(TWiMODLR_HCIMessage& rxMsg) {
// use the convert function before accesing the data
...
}
void setup() {
...
// setup the callback
wimod.RegisterBtnPressedClient(myBtnPressedInd);
...
}
...
Here is the call graph for this function:

◆ RegisterCDataRxClient()

void WiMODLRBASE_PLUS::RegisterCDataRxClient ( TRadioLinkCDataRxIndicationCallback  cb)

Register a callback function for the RX C-Data Indication - optional -.

See also
TWiMODLRResultCodes for interpretation of the values
Parameters
cbPointer a callback function
See also
TRadioLinkCDataRxIndicationCallback for details
Note
The callback function should call the corresponding convert in order to decode the message properly
msc_inline_mscgraph_76
// callback for C data Rx indication
void myCDataRxInd(TWiMODLR_HCIMessage& rxMsg) {
// use the convert function before accessing the data
...
}
void setup() {
...
// setup the callback
wimod.RegisterCDataRxClient(myCDataRxInd);
...
}
...
Here is the call graph for this function:

◆ RegisterCDataTxClient()

void WiMODLRBASE_PLUS::RegisterCDataTxClient ( TRadioLinkCDataTxIndicationCallback  cb)

Register a callback function for the TX C-Data Indication - optional -.

See also
TWiMODLRResultCodes for interpretation of the values
Parameters
cbPointer a callback function
See also
TRadioLinkCDataTxIndicationCallback for details
Note
The callback function should call the corresponding convert in order to decode the message properly
msc_inline_mscgraph_77
// callback for U data Tx indication
void myCDataTxInd(TWiMODLR_HCIMessage& rxMsg) {
// use the convert function before accesing the data
...
}
void setup() {
...
// setup the callback
wimod.RegisterCDataTxClient(myCDataTxInd);
...
}
...
Here is the call graph for this function:

◆ RegisterPowerUpIndicationClient()

void WiMODLRBASE_PLUS::RegisterPowerUpIndicationClient ( TDevMgmtPowerUpCallback  cb)

Register a callback function for the PowerUp Indication - optional -.

See also
TWiMODLRResultCodes for interpretation of the values
Parameters
cbPointer a callback function
See also
TDevMgmtPowerUpCallback for details
msc_inline_mscgraph_78
// user defined callback function
void myPowerUpCallback(void) {
// WiMOD just powered up
...
}
void setup() {
...
// "connect" the user defined to callback to the WiMOD callback feature
wimod.RegisterPowerUpIndicationClient(myPowerUpCallback);
...
}
Here is the call graph for this function:

◆ RegisterRltStatusClient()

void WiMODLRBASE_PLUS::RegisterRltStatusClient ( TRltStatusIndicationCallback  cb)

Register a callback function for RLT updates.

See also
TWiMODLRResultCodes for interpretation of the values
Parameters
cbPointer a callback function
See also
TRltStatusIndicationCallback for details
Note
The callback function should call the corresponding convert in order to decode the message properly
msc_inline_mscgraph_79
// callback for RLT Status Update indication
void myRltUpdateInd(TWiMODLR_HCIMessage& rxMsg) {
// use the convert function before accessing the data
...
}
void setup() {
...
// setup the callback
wimod.RegisterRltStatusClient(myRltUpdateInd);
// start the RLT
...
}
...
Here is the call graph for this function:

◆ RegisterRtcAlarmIndicationClient()

void WiMODLRBASE_PLUS::RegisterRtcAlarmIndicationClient ( TDevMgmtRtcAlarmCallback  cb)

Register a callback function for the RTC Alarm Indication - optional -.

See also
TWiMODLRResultCodes for interpretation of the values
Parameters
cbPointer a callback function
See also
TDevMgmtRtcAlarmCallback for details
msc_inline_mscgraph_80
// user defined callback function
void myRtcAlarmCallback(void) {
// RTC Alarm has just been triggered
...
}
void setup() {
...
// "connect" the user defined to callback to the WiMOD callback feature
wimod.RegisterRtcAlarmIndicationClient(myRtcAlarmCallback);
...
}
Here is the call graph for this function:

◆ RegisterSensorAppAckIndClient()

void WiMODLRBASE_PLUS::RegisterSensorAppAckIndClient ( TSensorAppAckIndicationCallback  cb)

Register a callback function for the SensorAppAckData Indication - optional -.

Please see the feature specification document for details.

See also
TWiMODLRResultCodes for interpretation of the values
Parameters
cbPointer a callback function
Note
The callback function should call the corresponding convert in order to decode the message properly
msc_inline_mscgraph_81
// callback for SensorApp ACK callaback
void mySensorAppAckInd(TWiMODLR_HCIMessage& rxMsg) {
// use the convert function before accesing the data
...
}
void setup() {
...
// setup the callback
wimod.RegisterSensorAppAckIndClient(mySensorAppAckInd);
...
}
...
Here is the call graph for this function:

◆ RegisterSensorAppDataIndClient()

void WiMODLRBASE_PLUS::RegisterSensorAppDataIndClient ( TSensorAppSensorDataIndicationCallback  cb)

Register a callback function for the SensorAppData Indication.

Please see the feature specification document for details.

See also
TWiMODLRResultCodes for interpretation of the values
Parameters
cbPointer a callback function
Note
The callback function should call the corresponding convert in order to decode the message properly
msc_inline_mscgraph_82
// callback for mySensorApp data indication callaback
void mySensorAppInd(TWiMODLR_HCIMessage& rxMsg) {
// use the convert function before accesing the data
...
}
void setup() {
...
// setup the callback
wimod.RegisterSensorAppDataIndClient(mySensorAppInd);
...
}
...
Here is the call graph for this function:

◆ RegisterUDataRxClient()

void WiMODLRBASE_PLUS::RegisterUDataRxClient ( TRadioLinkUDataRxIndicationCallback  cb)

Register a callback function for the RX U-Data Indication - optional -.

See also
TWiMODLRResultCodes for interpretation of the values
Parameters
cbPointer a callback function
See also
TRadioLinkUDataRxIndicationCallback for details
Note
The callback function should call the corresponding convert in order to decode the message properly
msc_inline_mscgraph_83
// callback for U data Rx indication
void myUDataRxInd(TWiMODLR_HCIMessage& rxMsg) {
// use the convert function before accessing the data
...
}
void setup() {
...
// setup the callback
wimod.RegisterUDataRxClient(myUDataRxInd);
...
}
...
Here is the call graph for this function:

◆ RegisterUDataTxClient()

void WiMODLRBASE_PLUS::RegisterUDataTxClient ( TRadioLinkUDataTxIndicationCallback  cb)

Register a callback function for the TX U-Data Indication - optional -.

See also
TWiMODLRResultCodes for interpretation of the values
Parameters
cbPointer a callback function
See also
TRadioLinkUDataTxIndicationCallback for details
msc_inline_mscgraph_84
// callback for U data Tx indication
void myUDataTxInd() {
...
}
void setup() {
...
// setup the callback
wimod.RegisterUDataTxClient(myUDataTxInd);
...
}
...
Here is the call graph for this function:

◆ Reset()

bool WiMODLRBASE_PLUS::Reset ( TWiMODLRResultCodes hciResult = NULL,
UINT8 *  rspStatus = NULL 
)

Reset Cmd - Do a local reboot of the WiMOD module.

See also
TWiMODLRResultCodes for interpretation of the values
Parameters
hciResultResult of the local command transmission to module This is an optional parameter.
rspStatusStatus byte contained in the local response of the module This is an optional parameter.
Return values
trueif everything is ok
falseif something went wrong; see hciResult & rspStatus for details
// do a software reboot of the WiMOD device
if (wimod.Reset() {
// ok; reset procedure has been started
// wait a while for the reboot to be finished
}
...
Here is the call graph for this function:

◆ ResetRadioConfig()

bool WiMODLRBASE_PLUS::ResetRadioConfig ( TWiMODLRResultCodes hciResult = NULL,
UINT8 *  rspStatus = NULL 
)

Resets the current configuration to defaults.

See also
HCI Documentation for details of default settings
TWiMODLRResultCodes for interpretation of the values
Parameters
hciResultResult of the local command transmission to module This is an optional parameter.
rspStatusStatus byte contained in the local response of the module This is an optional parameter.
Return values
trueif everything is ok
falseif something went wrong; see hciResult & rspStatus for details
...
// reset radio config from WiMOD to defaults
if (wimod.ResetRadioConfig()) {
//ok config has been setup to defaults
}
...
Here is the call graph for this function:

◆ SendCData()

bool WiMODLRBASE_PLUS::SendCData ( const TWiMODLR_RadioLink_Msg txMsg,
TWiMODLRResultCodes hciResult = NULL,
UINT8 *  rspStatus = NULL 
)

Tries to send transmit C-Data to peer module via RF link.

See also
TWiMODLRResultCodes for interpretation of the values
Parameters
txMsgData structure containing the TX-data and options.
See also
TWiMODLR_RadioLink_Msg for details
Parameters
hciResultResult of the local command transmission to module This is an optional parameter.
rspStatusStatus byte contained in the local response of the module This is an optional parameter.
Return values
trueif everything is ok
falseif something went wrong; see hciResult & rspStatus for details
msc_inline_mscgraph_85
...
// local variable
TWiMODLR_RadioLink_Msg txData;
// setup tx packet
txData.DestinationGroupAddress = 0x10;
txData.DestinationDeviceAddress = 0x1234;
txData.Length = strlen("Hello World!");
strncpy(txData.Payload, "Hello World!", WiMODLORAWAN_APP_PAYLOAD_LEN);
// send data
wimod.SendCData(&txData);
...
// if ACK callback has been registered: wait for callback
// to be called and check the received indication data
// in order to get the status of the transmission
...
Here is the call graph for this function:

◆ SendUData()

bool WiMODLRBASE_PLUS::SendUData ( const TWiMODLR_RadioLink_Msg txMsg,
TWiMODLRResultCodes hciResult = NULL,
UINT8 *  rspStatus = NULL 
)

Tries to send transmit U-Data to peer module via RF link.

See also
TWiMODLRResultCodes for interpretation of the values
Parameters
txMsgData structure containing the TX-data and options.
See also
TWiMODLR_RadioLink_Msg for details
Parameters
hciResultResult of the local command transmission to module This is an optional parameter.
rspStatusStatus byte contained in the local response of the module This is an optional parameter.
Return values
trueif everything is ok
falseif something went wrong; see hciResult & rspStatus for details
msc_inline_mscgraph_86
...
// local variable
TWiMODLR_RadioLink_Msg txData;
// setup tx packet
txData.DestinationGroupAddress = 0x10;
txData.DestinationDeviceAddress = 0x1234;
txData.Length = strlen("Hello World!");
strncpy(txData.Payload, "Hello World!", WiMODLORAWAN_APP_PAYLOAD_LEN);
// send data
wimod.SendUData(&txData);
...
Here is the call graph for this function:

◆ SetAckData()

bool WiMODLRBASE_PLUS::SetAckData ( const TWiMODLR_RadioLink_Msg txMsg,
TWiMODLRResultCodes hciResult = NULL,
UINT8 *  rspStatus = NULL 
)

Sets additional user payload for the next ack frame to send.

See also
TWiMODLRResultCodes for interpretation of the values
Parameters
txMsgPointer to data structure containing the payload data. note: Max ack payload size is 8 byte!
See also
TWiMODLR_RadioLink_Msg for details
Parameters
hciResultResult of the local command transmission to module This is an optional parameter.
rspStatusStatus byte contained in the local response of the module This is an optional parameter.
Return values
trueif everything is ok
falseif something went wrong; see hciResult & rspStatus for details
msc_inline_mscgraph_87
// global buffer
TWiMODLR_RadioLink_Msg ackPayloadData;
...
// if you want that the next ack that will be send should contain
// additional payload: setup the data structure
ackPayloadData.DestinationGroupAddress = ...;
ackPayloadData.DestinationDeviceAddress = ...;
ackPayloadData.Length = ...;
ackPayloadData.Payload = ...;
// prepare the next ack packet
wimod.SetAckData(ackPayloadData);
...
Here is the call graph for this function:

◆ SetAesKey()

bool WiMODLRBASE_PLUS::SetAesKey ( const UINT8 *  key,
TWiMODLRResultCodes hciResult = NULL,
UINT8 *  rspStatus = NULL 
)

Sets the security 128bit AES key to use for RF communication.

See also
TWiMODLRResultCodes for interpretation of the values
Parameters
keyPointer to the 128bit AES key to by used
hciResultResult of the local command transmission to module This is an optional parameter.
rspStatusStatus byte contained in the local response of the module This is an optional parameter.
Return values
trueif everything is ok
falseif something went wrong; see hciResult & rspStatus for details
const uint8_t AesKey[] = {0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0A, 0x0B, 0x0C, 0x0C, 0x0D, 0x0E, 0x0F};
// write new AES key to WiMOD (LR-Base (PLUS) mode ONLY!)
if (wimod.SetAesKey(AesKey)) {
//ok;
}
...
Here is the call graph for this function:

◆ SetHciConfig()

bool WiMODLRBASE_PLUS::SetHciConfig ( TWiMODLR_DevMgmt_HciConfig hciConfig,
TWiMODLRResultCodes hciResult = NULL,
UINT8 *  rspStatus = NULL 
)

Sets a new HCI configuration of the WiMOD.

See also
HCI documentation and feature specification for details
Warning
Changing the Baudrate applies instandly afer the command is executed!
Parameters
hciConfigPointer to a structure where to store the HCI config related information
hciResultResult of the local command transmission to module This is an optional parameter.
rspStatusStatus byte contained in the local response of the module This is an optional parameter.
Return values
trueif everything is ok
falseif something went wrong; see hciResult & rspStatus for details
// create a local variable
// create new config values
...
// set information of WiMOD
wimod.GetHciConfig(&hciConfig);
...
Here is the call graph for this function:

◆ SetOperationMode()

bool WiMODLRBASE_PLUS::SetOperationMode ( const TWiMOD_OperationMode  opMode,
TWiMODLRResultCodes hciResult = NULL,
UINT8 *  rspStatus = NULL 
)

Sets the current operation mode of the WiMOD module.

See also
TWiMODLRResultCodes for interpretation of the values
Parameters
opModeThe new operation mode to set
See also
TWiMOD_OperationMode for details
Parameters
hciResultResult of the local command transmission to module This is an optional parameter.
rspStatusStatus byte contained in the local response of the module This is an optional parameter.
Return values
trueif everything is ok
falseif something went wrong; see hciResult & rspStatus for details
// local variable
// setup new opMode
// write information to WiMOD
if (wimod.SetOperationMode(opMode)) {
//ok; wait a little bit to setup everthing
}
...
Here is the call graph for this function:

◆ SetRadioConfig()

bool WiMODLRBASE_PLUS::SetRadioConfig ( const TWiMODLR_DevMgmt_RadioConfigPlus radioCfg,
TWiMODLRResultCodes hciResult = NULL,
UINT8 *  rspStatus = NULL 
)

Sets the current configuration for the radio of the WiMOD module.

See also
TWiMODLRResultCodes for interpretation of the values
Parameters
radioCfgPointer where to read the information
See also
TWiMODLR_DevMgmt_RadioConfig for details
Parameters
hciResultResult of the local command transmission to module This is an optional parameter.
rspStatusStatus byte contained in the local response of the module This is an optional parameter.
Return values
trueif everything is ok
falseif something went wrong; see hciResult & rspStatus for details
// create a local variable
// setup new radio config
radioCfg.StoreNwmFlag = 0x01; // store new config permanently
...
FreqCalc_calcFreqToRegister(2458300000,
&radioCfg.RfFreq_MSB,
&radioCfg.RfFreq_MID,
&radioCfg.RfFreq_LSB);
...
// set information from WiMOD
if (wimod.SetRadioConfig(&radioCfg)) {
//ok new config has been setup
}
...
Here is the call graph for this function:

◆ SetRadioMode()

bool WiMODLRBASE_PLUS::SetRadioMode ( const TRadioCfg_RadioMode  radioMode,
TWiMODLRResultCodes hciResult = NULL,
UINT8 *  rspStatus = NULL 
)

SetRadioMode - Set the current radio mode of the WiMOD.

Parameters
radioModethe new radio mode to set
hciResultResult of the local command transmission to module This is an optional parameter.
rspStatusStatus byte contained in the local response of the module This is an optional parameter.
Warning
: This use this command with care!
Return values
trueif everything is ok
falseif something went wrong; see hciResult & rspStatus for details
Here is the call graph for this function:

◆ SetRtc()

bool WiMODLRBASE_PLUS::SetRtc ( const UINT32  rtcTime,
TWiMODLRResultCodes hciResult = NULL,
UINT8 *  rspStatus = NULL 
)

Sets the current RTC values to WiMOD module.

See also
TWiMODLRResultCodes for interpretation of the values
Parameters
rtcTimeRTC information to setup
See also
WIMOD_RTC_MAKE_DATETIME_U32 Macro for conversation of this value
Parameters
hciResultResult of the local command transmission to module This is an optional parameter.
rspStatusStatus byte contained in the local response of the module This is an optional parameter.
Return values
trueif everything is ok
falseif something went wrong; see hciResult & rspStatus for details
// create a local variable
uint32_t timestamp;
// convert date/time to timestamp format ( 1st Oct 2016 16:12:55 )
timestamp = WIMOD_RTC_MAKE_DATETIME_U32(55, 12, 16, 1, 10, 2016);
// set information to WiMOD
wimod.SetRtc(timestamp);
...
Here is the call graph for this function:

◆ SetRtcAlarm()

bool WiMODLRBASE_PLUS::SetRtcAlarm ( const TWiMODLR_DevMgmt_RtcAlarm rtcAlarm,
TWiMODLRResultCodes hciResult = NULL,
UINT8 *  rspStatus = NULL 
)

Sets and enables the RTC alarm feature of the WiMOD.

See also
TWiMODLRResultCodes for interpretation of the values
Parameters
rtcAlarmPointer to a structure containing the RTC alarm related information
hciResultResult of the local command transmission to module This is an optional parameter.
rspStatusStatus byte contained in the local response of the module This is an optional parameter.
Return values
trueif everything is ok
falseif something went wrong; see hciResult & rspStatus for details
msc_inline_mscgraph_88
// create a local variable
// setup RTC Alarm
rtcAlarm.Options = RTC_Alarm_Single; // single, non repeated alarm
rtcAlarm.Hour = 13; // alarm at 13:45:20
rtcAlarm.Minutes = 32;
rtcAlarm.Seconds = 20;
// set information of WiMOD
wimod.SetRtcAlarm(&rtcAlarm);
...
// wait for alarm to occur
Here is the call graph for this function:

◆ SetSensorAppConfig()

bool WiMODLRBASE_PLUS::SetSensorAppConfig ( const TWiMODLR_SensorApp_Config config,
TWiMODLRResultCodes hciResult = NULL,
UINT8 *  rspStatus = NULL 
)

Tries to configure the integrated Sensor App feature of the WiMOD.

The firmware has got a feature called "SensorApp". This feauture can be used to transfer several "sensor" values from the DemoBoard to remote peer WiMOD device. The transferable sensor values are:

  • states of the push buttons (of the DemoBoard)
  • state of the DIP switch (of the DemoBoard)
  • current voltage reading of the supply voltage
  • current ADC value / position of the potentio meter (of the DemoBoard)
  • current temperature reading of the WiMOD

Please note that the SensorApp may interrupt the normal operation of the WiMOD. So it is recommended to use this feature only in isolated szenarios.

Two devices are required: One that akts as "Transmitter" while the other one acts a "Receiver".

For detailed infos please refer to the feature specificaton document(s).

See also
TWiMODLRResultCodes for interpretation of the values
Parameters
configData structure containing the setup data for the SensorApp
hciResultResult of the local command transmission to module This is an optional parameter.
rspStatusStatus byte contained in the local response of the module This is an optional parameter.
Return values
trueif everything is ok
falseif something went wrong; see hciResult & rspStatus for details
msc_inline_mscgraph_89
...
// local variable
TWiMODLR_SensorApp_Config config;
// setup SensorApp
config.SendingPeriod = 1000;
config.LinkTimeout = 2000;
// start the sensorApp
wimod.SetSensorAppConfig(&config);
...
Here is the call graph for this function:

◆ StartRadioLinkTest()

bool WiMODLRBASE_PLUS::StartRadioLinkTest ( const TWiMODLR_RLT_Parameter params,
TWiMODLRResultCodes hciResult = NULL,
UINT8 *  rspStatus = NULL 
)

Tries to start the integrated Radio Link Test feature of the WiMOD.

The firmware has got a feature called "Radio Link Test". This feauture can be used to test the radio link between two devices.

Please note that the Radio Link Test may interrupt the normal operation of the WiMOD. So it is recommended to use this feature only in isolated test szenarios.

Two devices are required: One that akts as "Master" that starts the transmission of test packets and a 2nd one that replies the test packets.

For detailed infos please refer to the feature specificaton document(s).

See also
TWiMODLRResultCodes for interpretation of the values
Parameters
paramsData structure containing the setup data for the radio link test..
See also
TWiMODLR_RLT_Parameter for details
Parameters
hciResultResult of the local command transmission to module This is an optional parameter.
rspStatusStatus byte contained in the local response of the module This is an optional parameter.
Return values
trueif everything is ok
falseif something went wrong; see hciResult & rspStatus for details
msc_inline_mscgraph_90
...
// local variable
TWiMODLR_RadioLink_Msg params;
// setup RLT
params.DestinationGroupAddress = 0x10;
params.DestDevAddress = 0x1234;
params.PacketSize = 10;
params.NumPackets = 20;
params.TestMode = RLT_TestMode_Single;
// register status update client in order to get statistic data
wimod.RegisterRltStatusClient(rltClient);
// start the test
wimod.StartRadioLinkTest(&params);
...
// update the RLT results in the client callback and do analysis with it
...
Here is the call graph for this function:

◆ StopRadioLinkTest()

bool WiMODLRBASE_PLUS::StopRadioLinkTest ( TWiMODLRResultCodes hciResult = NULL,
UINT8 *  rspStatus = NULL 
)

Tries to stop a running Radio Link Test.

The firmware has got a feature called "Radio Link Test". This feauture can be used to test the radio link between two devices.

Please note that the Radio Link Test may interrupt the normal operation of the WiMOD. So it is recommended to use this feature only in isolated test szenarios.

Two devices are required: One that akts as "Master" that starts the transmission of test packets and a 2nd one that replies the test packets.

For detailed infos please refer to the feature specificaton document(s).

See also
TWiMODLRResultCodes for interpretation of the values
Parameters
hciResultResult of the local command transmission to module This is an optional parameter.
rspStatusStatus byte contained in the local response of the module This is an optional parameter.
Return values
trueif everything is ok
falseif something went wrong; see hciResult & rspStatus for details
msc_inline_mscgraph_91
...
// stop a running test
wimod.StopRadioLinkTest();
...
Here is the call graph for this function:

Member Data Documentation

◆ SapDevMgmt

WiMOD_SAP_DevMgmt_Plus WiMODLRBASE_PLUS::SapDevMgmt
protected

Service Access Point for 'DeviceManagement'

◆ SapGeneric

WiMOD_SAP_Generic WiMODLRBASE_PLUS::SapGeneric
protected

dumy SAP for generic HCI command

◆ SapRadioLink

WiMOD_SAP_RadioLink WiMODLRBASE_PLUS::SapRadioLink
protected

Service Access Point for 'RadioLink'

◆ SapRemoteCtrl

WiMOD_SAP_RemoteCtrl WiMODLRBASE_PLUS::SapRemoteCtrl
protected

Serive AccessPoint for RemoteCtrl feature

◆ SapRLT

WiMOD_SAP_RLT WiMODLRBASE_PLUS::SapRLT
protected

Serive AccessPoint for Radio Link Test feature

◆ SapSensor

WiMOD_SAP_SensorApp WiMODLRBASE_PLUS::SapSensor
protected

Serive AccessPoint for SensorApp feature


The documentation for this class was generated from the following files:
WIMOD_RTC_GET_MONTHS
#define WIMOD_RTC_GET_MONTHS(t)
Definition: WiMOD_SAP_DEVMGMT_IDs.h:547
TWiMODLR_DevMgmt_RadioConfigPlus::Modulation
TRadioCfg_ModulationPlus Modulation
Definition: WiMOD_SAP_DEVMGMT_PLUS_IDs.h:305
WiMODLR_RESULT_SLIP_ENCODER_ERROR
@ WiMODLR_RESULT_SLIP_ENCODER_ERROR
Definition: WiMODLRHCI.h:155
LoRaWAN_Status_Length_Error
@ LoRaWAN_Status_Length_Error
Definition: WiMOD_SAP_LORAWAN_IDs.h:114
TWiMODLR_DevMgmt_RadioConfigPlus
Structure containing the radio (stack) config parameters of the WiMOD (only for LR-BASE)
Definition: WiMOD_SAP_DEVMGMT_PLUS_IDs.h:292
WIMOD_RTC_GET_MINUTES
#define WIMOD_RTC_GET_MINUTES(t)
Definition: WiMOD_SAP_DEVMGMT_IDs.h:545
TWiMODLR_DevMgmt_RtcAlarm::AlarmStatus
TWiMOD_RtcAlarmStatus AlarmStatus
Definition: WiMOD_SAP_DEVMGMT_IDs.h:487
FreqCalc_calcRegisterToFreq
uint32_t FreqCalc_calcRegisterToFreq(uint8_t msb, uint8_t mid, uint8_t lsb)
Translates given register values to a carrier frequency.
Definition: FreqCalc_SX127x.c:68
TWiMODLR_DevMgmt_HciConfig::BaudrateID
TWiMOD_HCI_Baudrate BaudrateID
Definition: WiMOD_SAP_DEVMGMT_IDs.h:525
WiMODLR_RESULT_TRANMIT_ERROR
@ WiMODLR_RESULT_TRANMIT_ERROR
Definition: WiMODLRHCI.h:154
TWiMODLR_DevMgmt_FwInfo
Basic information about the current firmware of the WiMOD.
Definition: WiMOD_SAP_DEVMGMT_IDs.h:220
RLT_TestMode_Single
@ RLT_TestMode_Single
Definition: WiMOD_SAP_RLT_IDs.h:95
TWiMODLR_AckTxInd_Msg
Structure containing information about an acknowledgment transmission.
Definition: WiMOD_SAP_RadioLink_IDs.h:243
TWiMODLR_HCIMessage
basic low level HCI message structure used for all serial messages to/from WiMOD
Definition: WiMODLRHCI.h:120
LoRaWAN_Status_Channel_Blocked
@ LoRaWAN_Status_Channel_Blocked
Definition: WiMOD_SAP_LORAWAN_IDs.h:116
LoRaWAN_Status_Error
@ LoRaWAN_Status_Error
Definition: WiMOD_SAP_LORAWAN_IDs.h:107
WiMODLR_RESULT_OK
@ WiMODLR_RESULT_OK
Definition: WiMODLRHCI.h:151
TWiMODLR_DevMgmt_RtcAlarm
Structure containing the RTC Alarm config parameters of the WiMOD.
Definition: WiMOD_SAP_DEVMGMT_IDs.h:484
LRBASE_PLUS_TxPowerLevel_p10_dBm
@ LRBASE_PLUS_TxPowerLevel_p10_dBm
Definition: WiMOD_SAP_DEVMGMT_PLUS_IDs.h:247
TWiMOD_OperationMode
TWiMOD_OperationMode
This enum describes the possible operation modes of the WiMOD (only for LR-BASE).
Definition: WiMOD_SAP_DEVMGMT_IDs.h:440
RTC_Alarm_Single
@ RTC_Alarm_Single
Definition: WiMOD_SAP_DEVMGMT_IDs.h:477
WIMOD_RTC_GET_YEARS
#define WIMOD_RTC_GET_YEARS(t)
Definition: WiMOD_SAP_DEVMGMT_IDs.h:553
TWiMODLR_DevMgmt_RtcAlarm::Hour
UINT8 Hour
Definition: WiMOD_SAP_DEVMGMT_IDs.h:490
WIMOD_RTC_MAKE_DATETIME_U32
#define WIMOD_RTC_MAKE_DATETIME_U32(s, m, h, dd, mm, yy)
Definition: WiMOD_SAP_DEVMGMT_IDs.h:556
LRBASE_PLUS_Modulation_FLRC
@ LRBASE_PLUS_Modulation_FLRC
Definition: WiMOD_SAP_DEVMGMT_PLUS_IDs.h:104
TWiMODLR_DevMgmt_RadioConfigPlus::RfFreq_MSB
UINT8 RfFreq_MSB
Definition: WiMOD_SAP_DEVMGMT_PLUS_IDs.h:308
TWiMODLR_DevMgmt_SystemStatusPlus
Basic information about system status of the WiMOD.
Definition: WiMOD_SAP_DEVMGMT_PLUS_IDs.h:331
LoRaWAN_Status_Channel_Not_Available
@ LoRaWAN_Status_Channel_Not_Available
Definition: WiMOD_SAP_LORAWAN_IDs.h:117
TWiMODLR_SensorApp_AckSensorData
Structure containing the data of an Ack of the SensorApp.
Definition: WiMOD_SAP_SensorApp_IDs.h:164
WiMODLRBASE
Main class representing the interface to the WiMOD running the firmware WiMODLR-BASE.
Definition: WiMODLR_BASE.h:122
TWiMODLR_RLT_Status
Structure containing a general RadioLink HCI message.
Definition: WiMOD_SAP_RLT_IDs.h:114
TWiMODLR_SensorApp_SensorData
Structure containing SensorApp Data information.
Definition: WiMOD_SAP_SensorApp_IDs.h:137
WimodHciBaudrate_57600
@ WimodHciBaudrate_57600
Definition: WiMOD_SAP_DEVMGMT_IDs.h:506
TWiMODLR_DevMgmt_RadioConfigPlus::StoreNwmFlag
UINT8 StoreNwmFlag
Definition: WiMOD_SAP_DEVMGMT_PLUS_IDs.h:298
WIMOD_RTC_GET_SECONDS
#define WIMOD_RTC_GET_SECONDS(t)
Definition: WiMOD_SAP_DEVMGMT_IDs.h:543
RadioMode_Standard
@ RadioMode_Standard
Definition: WiMOD_SAP_DEVMGMT_IDs.h:257
TWiMODLR_DevMgmt_RtcAlarm::Seconds
UINT8 Seconds
Definition: WiMOD_SAP_DEVMGMT_IDs.h:492
WIMOD_RTC_GET_HOURS
#define WIMOD_RTC_GET_HOURS(t)
Definition: WiMOD_SAP_DEVMGMT_IDs.h:549
LoRaWAN_Status_Device_Not_Activated
@ LoRaWAN_Status_Device_Not_Activated
Definition: WiMOD_SAP_LORAWAN_IDs.h:111
TWiMODLR_DevMgmt_RtcAlarm::Minutes
UINT8 Minutes
Definition: WiMOD_SAP_DEVMGMT_IDs.h:491
SensorApp_Mode_SensorDataTransmitter
@ SensorApp_Mode_SensorDataTransmitter
Definition: WiMOD_SAP_SensorApp_IDs.h:113
LRBASE_PLUS_Modulation_LoRa
@ LRBASE_PLUS_Modulation_LoRa
Definition: WiMOD_SAP_DEVMGMT_PLUS_IDs.h:103
WIMOD_RTC_GET_DAYS
#define WIMOD_RTC_GET_DAYS(t)
Definition: WiMOD_SAP_DEVMGMT_IDs.h:551
LoRaWAN_Status_Cmd_Not_Supported
@ LoRaWAN_Status_Cmd_Not_Supported
Definition: WiMOD_SAP_LORAWAN_IDs.h:108
TWiMODLR_DevMgmt_DevInfo
Structure containing basic information about the WiMOD device.
Definition: WiMOD_SAP_DEVMGMT_IDs.h:172
WiMODLR_RESULT_PAYLOAD_PTR_ERROR
@ WiMODLR_RESULT_PAYLOAD_PTR_ERROR
Definition: WiMODLRHCI.h:153
TWiMODLR_RemoteCtrl_BtnPressed::ButtonBitmap
UINT8 ButtonBitmap
Definition: WiMOD_SAP_RemoteCtrl_IDs.h:97
WiMODLR_BASE_PLUS.h
LoRaWAN_Status_Ok
@ LoRaWAN_Status_Ok
Definition: WiMOD_SAP_LORAWAN_IDs.h:106
WiMODLRBASE_PLUS
Main class representing the interface to the WiMOD running the firmware WiMODLR-BASE_PLUS.
Definition: WiMODLR_BASE_PLUS.h:103
TWiMODLR_DevMgmt_RadioConfigPlus::RfFreq_LSB
UINT8 RfFreq_LSB
Definition: WiMOD_SAP_DEVMGMT_PLUS_IDs.h:306
TWiMODLR_DevMgmt_RadioConfigPlus::RfFreq_MID
UINT8 RfFreq_MID
Definition: WiMOD_SAP_DEVMGMT_PLUS_IDs.h:307
TWiMODLR_DevMgmt_RadioConfigPlus::RadioMode
TRadioCfg_RadioModePlus RadioMode
Definition: WiMOD_SAP_DEVMGMT_PLUS_IDs.h:300
TWiMODLRResultCodes
TWiMODLRResultCodes
Result codes for the local serial communication itself.
Definition: WiMODLRHCI.h:149
TWiMODLR_DevMgmt_FwInfo::FirmwareMayorVersion
UINT8 FirmwareMayorVersion
Definition: WiMOD_SAP_DEVMGMT_IDs.h:224
LoRaWAN_Status_Device_Busy
@ LoRaWAN_Status_Device_Busy
Definition: WiMOD_SAP_LORAWAN_IDs.h:112
TWiMODLR_DevMgmt_SystemStatusPlus::BatteryStatus
UINT16 BatteryStatus
Definition: WiMOD_SAP_DEVMGMT_PLUS_IDs.h:338
WiMODLR_RESULT_NO_RESPONSE
@ WiMODLR_RESULT_NO_RESPONSE
Definition: WiMODLRHCI.h:156
TWiMODLR_RemoteCtrl_BtnPressed
Structure containing a general RadioLink HCI message.
Definition: WiMOD_SAP_RemoteCtrl_IDs.h:86
LoRaWAN_Status_No_Factory_Settings
@ LoRaWAN_Status_No_Factory_Settings
Definition: WiMOD_SAP_LORAWAN_IDs.h:115
TWiMODLR_DevMgmt_RadioConfigPlus::PowerLevel
TRadioCfg_PowerLevelPlus PowerLevel
Definition: WiMOD_SAP_DEVMGMT_PLUS_IDs.h:315
TWiMODLR_DevMgmt_HciConfig
HCI Configuration Parameters.
Definition: WiMOD_SAP_DEVMGMT_IDs.h:519
TWiMODLR_DevMgmt_HciConfig::NumWakeUpChars
UINT16 NumWakeUpChars
Definition: WiMOD_SAP_DEVMGMT_IDs.h:526
SENSORAPP_OPTION_PUSH_BUTTON_ONE
#define SENSORAPP_OPTION_PUSH_BUTTON_ONE
Definition: WiMOD_SAP_SensorApp_IDs.h:91
LoRaWAN_Status_Wrong_parameter
@ LoRaWAN_Status_Wrong_parameter
Definition: WiMOD_SAP_LORAWAN_IDs.h:109
WiMODLR_BASE.h
LoRaWAN_Status_Wrong_DeviceMode
@ LoRaWAN_Status_Wrong_DeviceMode
Definition: WiMOD_SAP_LORAWAN_IDs.h:110
RTC_Alarm_Alarm_Set
@ RTC_Alarm_Alarm_Set
Definition: WiMOD_SAP_DEVMGMT_IDs.h:462
LoRaWAN_Status_Queue_Full
@ LoRaWAN_Status_Queue_Full
Definition: WiMOD_SAP_LORAWAN_IDs.h:113
OperationMode_Application
@ OperationMode_Application
Definition: WiMOD_SAP_DEVMGMT_IDs.h:442
TWiMODLR_DevMgmt_RtcAlarm::Options
TWiMOD_RtcAlarmType Options
Definition: WiMOD_SAP_DEVMGMT_IDs.h:489
WiMODLR_RESULT_PAYLOAD_LENGTH_ERROR
@ WiMODLR_RESULT_PAYLOAD_LENGTH_ERROR
Definition: WiMODLRHCI.h:152