I/O line passing Configuration example
XBee®/XBee-PRO SX RF Module User Guide
169
Command Description Device A Device B
DL Destination Low 0xABCDABCD 0x0000FFFF (broadcast)
IA I/O Input Address 0x0013A200ABCDABCD 0x0013A20012345678
IR Sample Rate 0x7D0 (2 seconds) 0 (disabled)
IC DIO Change Detect 0 (disabled) 0x8 (DIO3 only)
D1 DIO1/AD1 2 : ADC input N/A
P1 DIO11/PWM1 N/A 2: PWM1 output
PT PWM Output Timeout N/A 0x1E (3 seconds)
D2 DIO2/AD2 3: Digital input 5: Digital output, HIGH
D3 DIO3/AD3 5: Digital output, HIGH 3: Digital input
T3 DIO3 Timeout 0x64 (10 seconds) N/A
In the example, both devices have I/O Line Passing enabled with appropriate inputs and outputs
configured. The IA parameter determines which device on the network is allowed to affect the
device’s outputs.
Device A takes a periodic sample of all I/O lines every two seconds and transmits it as a unicast
transmission to the address defined by DH and DL (in this case, Device B). Device B does not
periodically sample, instead it monitors DIO3 for a binary change. When it detects a change on that
pin, it generates a sample and transmits it as a broadcast to all devices on the network.
When Device B receives a sample packet from Device A:
n DIO2 on Device B outputs the state of DIO2 from Device A.
n PWM1 outputs a duty cycle equivalent to the analog voltage read on AD1 of Device A.
n A PWM timeout has been set to three seconds; if no sample is received, PWM1 returns to 0 V
after this period.
When Device A receives a sample packet from Device B:
n DIO3 on Device A outputs the state of DIO3 from Device B.
n A DIO3 timeout has been set to 10 seconds; if no sample is received, DIO3 reverts to a HIGH
state after this period.
Note By default, all Digital I/O lines have internal pull-up resistors enabled with the PR command. This
causes inputs to float high. You can use the PD command to change the direction of the internal pull-
up/down resistors. The XBee/XBee-PRO SX RF Module uses an internal reference voltage of 2.5 V for
ADC lines, but you can use the AV command to set it to 1.25 VDC.