XBee RSSI

I’ve Been reading the manuals and the one thing I can’t find out is if it’s possible to get RSSI when in regular transparent mode… ?

There’s talk about a PWM output on one pin, but I’ve tried clocking it and it seems to always be HIGH.

Also does anyone have good reading material about XBee API mode and how to set it up?

RSSI can be obtained by using the +++ATcommand

to get the LQI register contents. LQI is part of 802.15.4 but is also one of the AT command parameters for query.

The pulse width modulated signal is, I believe, always present unless you deconfigure it. Have you looked at that with a 'scope?

As to the API - you do have Digi/Maxstream’s document on that, right? It’s very complete.

Oh, the AT commands sounds very promising…

I don’t have a scope… but it’s definitely something I’m gonna look into getting soon. Seems to be very handy all around.

Yes, I do have the document… I’m dedicating the upcoming weekend to really grind through the API stuff and hopefully write my own Arduino implementation of it.

As a high-level programmer I’m usually spoiled with neat classes and built-in magic for all my needs… :slight_smile:

It’s fun to dig in deeper though! This project is more about the learning than the final result anyways. :slight_smile:

Thank you for your help!

/J

stevech:
RSSI can be obtained by using the +++ATcommand

to get the LQI register contents. LQI is part of 802.15.4 but is also one of the AT command parameters for query.

The pulse width modulated signal is, I believe, always present unless you deconfigure it. Have you looked at that with a 'scope?

As to the API - you do have Digi/Maxstream’s document on that, right? It’s very complete.

Welcome to embedded programming! See Avrfreaks.net for helpful guys. In the embedded world, you’ll see rare use of C++ and classes and stuff that takes RAM.

I suggest using the wireless UART firmware in the 802.15.4 mode, no ZigBee. With that firmware, there are a lot of Hayes modem-like AT commands to configure things like

PAN ID

Channel

coordinator vs. end device vs. router

source address

destination address or broadcast address - change this on the fly

TX power

and read all sorts of status, including LQI.

the binary API mode is packet oriented, more complex, but applicable to some projects

One tricky thing for small multi-node projects:

Every node can use a broadcast destination address. In the data payload of the message, you put a node ID. Every node gets every message and can act based on node ID in the payload.

You can build your own tree network too: just scheme-up a static routing method to forward messages. A brute force technique is to have a header in every payload that has the logical destination node ID and a hop count. You increment the hop count and retransmit every incoming message to the 802.15.4 broadcast address unless the hop count (TTL) is greater than x. Kind of a storm, but simple and effective.

ZigBee is all about self-forming meshes and is an overkill for most simple projects. 802.15.4 doesn’t need Zigbee but so far, Zigbee only exists for 802.15.4.

Alternatives to Zigbee, that can be used with 802.15.4, include 6LoPan (IETF) and ISA 100.11a (draft)

I know this is an old thread, but in case anyone stumbles upon it, I’ve written up a description of how to read RSSI without using API mode:

http://log.liminastudio.com/itp/physica … e-rssi-pin

:slight_smile: