I am planning to put some control boards around the school campus ( planning to use Arduino board with some add-ons). I would like to communicate with these boards and was thinking of Zigbee.

The distance between two controller boards is around 1 - 1.5 km. However, searched wiki that the distance depends on the line-of-sight of the transmittor.

Outdoors with line-of-sight, range may be up to 1500 m depending on power output and environmental characteristics

The environment I intend for installation has many buildings, thus no "line of sight" between each controllers. So, is there anyway I could use Zigbee (perhaps add I few more points for data collection and transfer)? Or is there any other communication media I could use?

  • \$\begingroup\$ You can create a mesh network of Zigbees and relay the data. \$\endgroup\$
    – Swanand
    Commented Mar 10, 2014 at 10:19
  • \$\begingroup\$ What data rate do you need and bear in mind that the higher the data rate, the shorter the transmission distance is for a given transmitter output power. \$\endgroup\$
    – Andy aka
    Commented Mar 10, 2014 at 10:55

1 Answer 1


Minimum data rate for Zigbee is 20k bits per second and this dictates the bandwidth of the receiver. The wider the bandwidth of the receiver, the more noise the receiver picks up so running at a smaller bandwidth means that for a given transmit power, the operating distance to the receiver can be bigger.

Received power needed for a given data rate is: -

Power required in dBm is -154dBm + 10\$log_{10}\$(data rate) dBm

So at 20kbits/sec the power needed is -111 dBm but this is really the hard limit and you should always consider what is called as fade-margin - basically add at least 20dB to this figure - this takes you to -91dBm.

The transmitter, in free space (ideal conditions) pushes power from its antenna and the Friis formula that equates power to distance is this: -

Link Loss (dB) = 32.4 + 20\$log_{10}\$(F) + 20\$log_{10}\$(d)

where F is MHz and d is distance between the two antennas (kilo metres).

So if the radio uses 1GHz and was 1.5 km away, the link loss would be 32.4 + 60 + 3.52 = about 96dB. If it's transmitting +10dBm then the power received would be -86dBm. This seems to work because I calculated a 20kbps receiver needed -91dBm BUT again this is a free-space perfect transmission and there are various rules of thumb needed to convert this to "on-earth" with lots of obstacles (this is a very big subject). If you added another 20 to 40dB to these figures you'd be looking at something that should work reasonably reliably.

This means you might need to be transmitting at +40dBm (10 W output power). This is too high for Zigbee so either consider directional antennas that add gain at both transmitter and receiver or consider a mesh network as recommended in the wikipedia link in the question.

  • \$\begingroup\$ Great explanation , thanks! Though I'm still pondering what media to use for communication... As per your calculation an "free-space perfect transmission" is assumed... but in real situation the condition will be much worse... moreover, some installation points are near roads where signal is most probably blocked by bus/ cars..... So.. it is a complicated situation :( \$\endgroup\$
    – MW_hk
    Commented Mar 13, 2014 at 6:27
  • \$\begingroup\$ Try and go for a lower transmission frequency (laws and rules dependent) and keep bandwidth as limited as you can is the only practical advice I can give. \$\endgroup\$
    – Andy aka
    Commented Mar 13, 2014 at 8:32

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Not the answer you're looking for? Browse other questions tagged or ask your own question.