Results 1 to 7 of 7

Thread: How to Configure 3 XBEES in a mesh

  1. How to Configure 3 XBEES in a mesh

    I would like to have 3 Xbees configured in a meshed network as follows
    First Xbee in the Hexapod on an Arbotix board connected to a PC with a second XBee
    A third Xbee in the Commander2 Controller also connected to the first Xbee on the Arbotix board

    The aim is to be able to control the Hexapod via the Commander2 Controller and have the serial monitor on the Arduino software on the PC showing the output from serial prints in the code. I know it's not advisable to connect the FTDI cable to the Arbotix serial port while an Xbee is plugged in to the Arbotix board but can I have a serial connection from the PC to the Arbotix via 2 Xbees while still having the ability to control the robot via the Commander Controller?
    I can get both connections working as point to point serial connections via the XBee pairs but I can't work out how to configure the XBees in a mesh for this setup. There seems to be nothing around that describes how to do this.
    Can this be done? It would be very useful for debugging purposes to have a wireless serial monitor. At this stage I still need the Commander Controller to be active as I'm modifying the Phoenix code and it's pretty well embedded in the code.
    I'm using Series 2 Xbees so they can support a meshed network.

  2. #2

    Re: How to Configure 3 XBEES in a mesh

    Sorry I have not done anything with the XBEE mesh stuff Or actually I may have looked at it at one point, but never actually did anything with it...

    The Arbotix board only has two usarts, one is used for the FTDI/XBEE and the other to driver the servos. So as you have seen it is hard to add more stuff on it and/or debug....

    What things I have done include:

    1) Use a different processor board. At some points I would use an Arduino Mega board, Wire up an XBee (not hard), Hack up a cable to make the Servo connection. Simply wire up the DXL wire to both the RX and TX of a USART and hook up ground. Than you had two other serial objects you could use...

    2) Punt and use a different processor board. I like Teensy boards, but the Robotis OpenCM9.04 boards are nice and cheap....

    3) Made due - That is we know that the Commander protocol is only an output only protocol. That is it simply outputs over the XBee to the robot. So if the Robot sends out data over the XBee it is thrown in the bit bucket... SO. I made use of this. What I did was typically:
    a) Unplug the XBee from the Commander and plug and use an adapter to connect this XBee to the PC.

    b) I then use a Serial cable to connect the Commander to the PC as well.

    c) So there are two USB Serial ports created on the PC one for the XBee and another for the Commander. I have a quick and dirty VB app, which has two drop down lists with Serial ports. You choose the two ports. The program knows that anything that comes in on the Commander Serial port to forward to the XBee to send off to the robot. And if it receives any data from the XBEE side it displays that data in a listbox of the APP.

    Again the above is not great but it helped some. Six years ago I uploaded this VB app to one of my Github projects:
    https://github.com/KurtE/Phantom_Arm...B%20Test%20App

    Again personally I would and have choosen 2)

  3. #3

    Re: How to Configure 3 XBEES in a mesh

    The commander, and the Arbotix, with the current software, assumes that the Xbee is a "straight serial" device, which only works point-to-point.

    If you want to use a mesh/ether topology, you have to use the "series 2" firmware, and re-write the software to write the appropriate protocol packets to the Xbee units. This is totally possible, but it's a fair bit of lifting.

    After you do that, you may notice that the Xbees aren't particularly great about low-latency bidirectional data flows. "turning around" the connection in the air takes a bit. You may see jitter or delays that may or may not be acceptable for your use case. Most important: keep an eye out for this phenomenon, so you know what it is if it strikes!

  4. Re: How to Configure 3 XBEES in a mesh

    Thanks for the input guys. Much appreciated. I'll look into all this but at this stage I'm inclined to acquire a new board. The Robotis OpenCM9.04 boards have 3 UARTS and can be built to accept the AX-12A connectors so they look like a good contender. For this use case the work involved in rewriting code for the mesh topology probably isn't worth the effort. I can put 2 Xbees on the robot and have 2 separate point to point connections back to the PC and the Commander if I get a 3 UART board.


  5. #5

    Re: How to Configure 3 XBEES in a mesh

    Note that one of the UARTs is used by the Dynamixel bus, but that's OK, you still have two to go :-)

    Another option is the Teensy 3.2 or 3.5. The 3.5 has five uarts! But you need to build a Dynamixel bus adaptor yourself. I think the Teensy is more solid and overall better than the OpenCM, but the OpenCM has a very low initial barrier for people who specifically want to use Dynamixels, so that's a reasonable choice in this case.

  6. #6

    Re: How to Configure 3 XBEES in a mesh

    As may be obvious, I do like working with Teensy boards. Yes the T3.5 and 3.6 have lots of Usarts (actually 6) and again USB serial port

    The OpenCM boards are nice in that they are already setup for Dynamixels. They have 3 user Usarts plus USB so it is a lot nicer to work with and have debug outputs.

    If you run into issues with them, the support people at Robotis are pretty good at trying to fix things. Also recently I have been trying to improve a few things. Right now looking into improving the USB writes latency. Currently things are only sent back over USB when a 5ms timer triggers.

    If you run into issue with the OpenCM board, I suggest that you post up on the Robotis Forum: http://en.robotis.com/service/forum.php
    and or if you run into a real issue, create an issue up on their github page: https://github.com/ROBOTIS-GIT/OpenCM9.04/issues

    Also some of the Robotis developers post and respond to stuff up on: https://github.com/ROBOTIS-GIT/OpenCM9.04/issues

  7. Re: How to Configure 3 XBEES in a mesh

    Thanks for all that advice. Much appreciated

Thread Information

Users Browsing this Thread

There are currently 1 users browsing this thread. (0 members and 1 guests)

Similar Threads

  1. Replies: 2
    Last Post: 07-23-2014, 10:05 AM
  2. Question(s) Problem with Arbotix Commander 2 communicating with Arduino uno via xbees
    By jerry7580 in forum Arbotix, Microcontrollers, Arduino
    Replies: 4
    Last Post: 08-02-2013, 01:07 AM

Tags for this Thread

Posting Permissions

  • You may not post new threads
  • You may not post replies
  • You may not post attachments
  • You may not edit your posts
  •