XBee and XBee-PRO ZigBee RF modules provide cost-effective wireless connectivity to electronic devices. They are interoperable with other ZigBee PRO feature set devices, including devices from other vendors.

Dependencies:   BufferedArray

Dependents:   MBEDminiproject

Revision:
0:837e6c48e90d
Child:
6:5f31ddc17239
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/Request/ZigBeeExplicitTxRequest.cpp	Thu Oct 22 12:28:26 2015 +0000
@@ -0,0 +1,38 @@
+#include "ZigBeeExplicitTxRequest.h"
+
+ZigBeeExplicitTxRequest::ZigBeeExplicitTxRequest(char frameID, ExplicitAddress * remoteAddress, OptionsBase * transmitOptions, const char * payload, int offset, int length)
+    : TxBase(18 + length, APIFrame::Explicit_Addressing_ZigBee_Command_Frame, frameID)
+{
+    sets(remoteAddress->getAddressValue(), 0, 10);
+    sets(remoteAddress->getExplicitValue(), 0, 6);
+    set(0x00);
+    set(transmitOptions->getValue());
+    sets(payload, offset, length);
+}
+
+void ZigBeeExplicitTxRequest::setBroadcastRadius(char broadcastRadius)
+{
+    data[18] = broadcastRadius;
+}
+
+void ZigBeeExplicitTxRequest::setTransmitOptions(OptionsBase * transmitOptions)
+{
+    data[19] = transmitOptions->getValue();
+}
+
+void ZigBeeExplicitTxRequest::setPayload(const char * data, int offset, int length)
+{
+    setPosition(20);
+    sets(data, offset, length);
+}
+
+void ZigBeeExplicitTxRequest::setRemoteAddress(Address * remoteAddress)
+{
+    sets(2, remoteAddress->getAddressValue(), 0, 10);
+}
+
+void ZigBeeExplicitTxRequest::setRemoteAddress(ExplicitAddress * remoteAddress)
+{
+    sets(2, remoteAddress->getAddressValue(), 0, 10);
+    sets(12, remoteAddress->getExplicitValue(), 0, 6);
+}
\ No newline at end of file