# ZigBee/Xbee 900mhz Wireless Questions



## Phishfry (Jul 24, 2021)

I have never used Xbee and I am looking at 900Mhz Wireless radio modules.








						Digi XBee-PRO 900HP RF Module
					

Long Range 900 MHz OEM RF Module




					www.digi.com
				



Digi S3B Xbee module.

My question is: How do these communicate with FreeBSD? I will buy a Xbee Explorer board. This is serial to USB.

So how would I communicate over these modules? Would PPP work? They use an AT command set.
I guess I would need a base station and use the xbee modules as clients?








						Digi XBee-PRO 900HP RF Modems
					

900 MHz stand-alone RF modems provide outstanding range (up to 28 miles)* in a reliable wireless solution




					www.digi.com
				











						XTend® 900MHz RF Modems
					

1 Watt/900 MHz stand-alone radio modems




					www.digi.com
				




Has any body worked with this gear? It is not outrageously priced.


----------



## chrbr (Jul 25, 2021)

I have had a short look to the devices. They are very interesting. From my first understanding there is no base station. Any module can send messages to any other module. They have unique addresses. The interface is a UART. Please see https://www.digi.com/resources/documentation/digidocs/pdfs/90001496.pdf.

There is a transparent mode which acts as a wireless UART extension line. The API mode seems to be more universal and is documented in the PDF. For example at page 42 an example is given how to send "Hello" to another module.

Disclaimer: I have not used the devices.


----------



## Phishfry (Jul 25, 2021)

The program from Digi is called X-CTU for configuring these modules. They have a Linux version. It is a GUI.
It was helpful to watch this Youtube video for module setup..
So these communicate over a serial connection.
How do I send files over serial connections?

Lets say I have Beaglebone with OneWire sensors. Xbee Wireless over UART.
How do I transmit that data from a node to host?

I really don't know how to address COM based interface.
I have used kermit and xmodem way way back. Hopefully there is a better way.

How to best stream data over a COM port? scp won't work here.


----------



## Phishfry (Jul 25, 2021)

Page 29 of the PDF you provided has some really interesting stuff.


> If you plug the modules into the boards and connect them to a battery, the XBee modules work
> autonomously. For example, they can gather data from a sensor and send it to a central node.



So you program the module with USB interface via XCTU & explorer board and then unmount and power via USB jack.
Wow. I saw it had an Atmel processor on the back of the module. I had no idea it was that smart.


----------



## chrbr (Jul 26, 2021)

This is my understanding for the setup:

In the transparent mode you will need two Xbee devices. Before operation they have to be configured to transparent mode. I guess they have to be paired somehow. Then you can use them as a wireless UART extension. But the traffic between the modules is not just UART but wrapped in a protocol.

Therefore it should be possible to program a Beagleboard with a 1-wire sensor to output the sensor data via RS232 which feeds one Xbee unit. Then a second Xbee unit can receive the data and output the stream to its UART which can be connected to a PC or so.

In case you want to connect the stuff to a PC:
For evaluating the UART stream you will see the traffic in a terminal program like Teraterm or so. But for postprocessing the data it is better to write a UART receiver which then interprets the raw data of the 1-wire sensor. The most effective language for such a task is Tcl, especially if you plan to add a GUI. Using Tcl with Tk it is easy to make a simple GUI. The most common approach these days might be Python. You can also make a GUI using Python/Tk but it is by far not as simple as using Tcl/Tk. The syntax in Python is a little alien. But the biggest difference is in the Tk integration. With Tcl the Tk things run in their main loop. There is almost nothing to worry about. With Python and Tk it is not so straightforward to run the Python part and Tk part that they do not block when the Python part has to take care about some "real time application".

One advantage of having a own layer of software is to have the option to use not the transparent mode but the API. Of course one could also use C or so. It is a very big and nice playground.


----------



## Phishfry (Jul 26, 2021)

I might never get around to this but it looks very interesting.
My original plan was XT09B module on remote end (my vehicle PC at work at 3miles downrange) and modem for base station.
The remote modem. I have a drone motherboard with this pinout. It is not your standard Zigbee pinout pattern.








						Digi XTend® 900 MHz
					

1 Watt Long-Range OEM RF modules




					www.digi.com
				



Here is the base station I was looking at.








						Digi XTP9B-PKC-UA - DigiStore.com
					

Digi 9XTend-PKG RF Modem, 900MHz w/ USB, w/ accessories (North America) (extended temperature model)



					www.digistore.com


----------



## Phishfry (Aug 2, 2021)

Well I decided to dip my toe into the 900MHZ game.
Instead of Zigbee/xbee I went regular Mini-PCI card.
Ubiquiti XR9 module for $45usd
These are really old vintage 2009 cards. Very tall too for MiniPCI slots.
So I got one to see if supported or if it fits in any embedded chassis I have.
Supposedly it spoofs a 900MHZ signal from an Atheros 5516 chip with 2.4ghz.
So software thinks it is using 2.4ghz radio but in reality it is broadcasting 900mhz.
I did see one post referencing the XR9 on the mailing list from 2010. So I have some hope.


----------



## Phishfry (Aug 3, 2021)

There is also a wireless system that uses 900mhz called LoRa.





						Extreme Range Links: LoRa 868 / 900MHz SX1272 Module for Arduino, Waspmote and Raspberry Pi
					

Extreme Range Links: LoRa 868 / 900MHz SX1272 LoRa module for Arduino, Raspberry Pi and Intel Galileo




					www.cooking-hacks.com
				



Here is a module:
https://mikrotik.com/product/r11e_lr9


----------

