10.09.2016 Views

Hacking_and_Penetration_Testing_with_Low_Power_Devices

Create successful ePaper yourself

Turn your PDF publications into a flip-book with our unique Google optimized e-Paper software.

Configuring IEEE 802.15.4 modems<br />

159<br />

A single coordinator exists in every network. This coordinator defines the network<br />

<strong>and</strong> performs various administrative tasks such as assigning addresses. If the<br />

network uses encryption, the coordinator is responsible for informing other nodes<br />

of the details. An XBee Series 2 modem operating as a coordinator must have the<br />

coordinator firmware uploaded. For obvious reasons, a coordinator must be on all<br />

the time.<br />

A router is used to extend the range of a network by relaying packets for nodes<br />

that are too far apart to communicate directly <strong>with</strong> each other. There is no limit on the<br />

number of routers in any network. Routers are not permitted to sleep. If a router<br />

receives traffic bound for a sleeping node, it will keep the traffic (for a while at least)<br />

to send when the destination rejoins the network. An XBee Series 2 modem operating<br />

as a router must have the router firmware uploaded.<br />

In any sizable network, the majority of nodes will be end devices. End devices<br />

must have a parent device that is either a router or a coordinator. When traffic for an<br />

end device is received by the parent (coordinator or router) <strong>and</strong> the end device is<br />

sleeping, the parent stores the packets. Unlike coordinators <strong>and</strong> routers, end devices<br />

may save power by sleeping. An XBee Series 2 modem operating as an end device<br />

must have the end device firmware uploaded.<br />

Many different network topologies are possible <strong>with</strong> ZigBee devices. For our purposes<br />

in this book, we will stick to a star networks (which can be implemented <strong>with</strong><br />

Series 1 modems) <strong>and</strong> cluster trees. A cluster tree network consists of the coordinator<br />

<strong>and</strong> one or more routers that form a backbone of sorts <strong>with</strong> end devices hung off of<br />

the router <strong>and</strong> coordinator nodes.<br />

Because the coordinator must always be on <strong>and</strong> is responsible for forming the<br />

network, it makes the most sense to make the comm<strong>and</strong> console node the coordinator.<br />

An XBee-PRO Series 2 modem loaded <strong>with</strong> coordinator firmware should be used<br />

by the comm<strong>and</strong> console. <strong>Hacking</strong> drones can utilize the low-power XBee Series 2<br />

modems loaded <strong>with</strong> end device firmware in order to save power. One or more XBee-<br />

PRO Series 2 modems loaded <strong>with</strong> the router firmware should be installed in the network<br />

in appropriate places to relay traffic to <strong>and</strong> from drones <strong>and</strong> the comm<strong>and</strong><br />

console.<br />

The routers can be st<strong>and</strong>-alone (not connected to a BeagleBone) in order to save<br />

power. An XBee-PRO Series 2 modem operating as a router must always be on. On a<br />

busy network, it will draw 295 mA at 3.3 V. A simple battery power pack can be<br />

created for these routers using an LD1117v33 voltage regulator (3.3 V equivalent<br />

of the 7805 we used earlier) <strong>and</strong> three or more 1.5 V batteries. Three or four D cell<br />

batteries should be able to power a st<strong>and</strong>-alone router for about two days.<br />

CONFIGURING IEEE 802.15.4 MODEMS<br />

Before they can be used, XBee modems must be configured. Digi provides a free<br />

program, X-CTU, which can be used to configure their XBee modems. Up until<br />

recently, only a Windows version of X-CTU was available. A Mac OSX version

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!