ELEV8 XBee Link Issue
geo_leeman
Posts: 190
Hi all,
I'm working on getting telemetry from my ELEV8 v3 going and running into a strange issue. I've set the baud rates on each radio to 57600 (I double checked it after having this issue by plugging each unit back into the computer and reading its settings). With the ground side radio unplugged the ground software says "No FTDI device" as one would expect. When I plug in the radio, it changes to say no flight controller is found, which is fine. I then power up the quad and it never binds. The LEDs for serial activity are blinking on both the flight controller and the USB radio board. I also tried on the Mac ground station software with no luck. If I plug the flight controller directly everything works great.
I hooked up a little spectrum analyzer and can see lots of peaks during transmit time (serial lights active), so something is happening, but the binding just isn't working. Any ideas on next steps?
Specs:
- Using the Parallax telemetry kit
- Windows 10
- Ground Station 1.0.2
I'm working on getting telemetry from my ELEV8 v3 going and running into a strange issue. I've set the baud rates on each radio to 57600 (I double checked it after having this issue by plugging each unit back into the computer and reading its settings). With the ground side radio unplugged the ground software says "No FTDI device" as one would expect. When I plug in the radio, it changes to say no flight controller is found, which is fine. I then power up the quad and it never binds. The LEDs for serial activity are blinking on both the flight controller and the USB radio board. I also tried on the Mac ground station software with no luck. If I plug the flight controller directly everything works great.
I hooked up a little spectrum analyzer and can see lots of peaks during transmit time (serial lights active), so something is happening, but the binding just isn't working. Any ideas on next steps?
Specs:
- Using the Parallax telemetry kit
- Windows 10
- Ground Station 1.0.2
Comments
At any point did you power up the quadcopter with the Xbee inserted in the flight controller and with the RPSMA connector attached?
Check the orientation of the Xbee and make sure the connector is facing away from the board. I know this one is a no brainier but crazier things have happened.
Check that both XBee are on the same channel, PAN ID.
https://github.com/parallaxinc/Flight-Controller
Best Regards,
Miguel Rodriguez
Parallax Inc. Tech Support
I think I may have narrowed the issue a bit though. I connected to the ground side XBee with a serial terminal and when I typed characters saw the serials LEDs blink on both the ground side radio and flight controller. Maybe that's pointing towards a software issue? If you know the commands the ground software is sending I can send them manually and see if I get a response. I've tried with the most recent GCS on Windows 10 and Mac OS X 10.11.6
One thing that did connect the Quad to the Ground Station, was to go "Help", "About", "OK", then it magically connected. Other times, I could wait a minute, and the two XBEE's would connect.
I have tried all scenarios, start Ground Station first, power XBEE's first, you name it.
I thought it was just my setup. Sometime my PC side XBEE would come up with "Device Not Installed Correctly" when I plugged it into the same computer that I just ran XTCU on.
Going to look for new drivers at DIGI.
The best Ground Station software, (will connect immediately), is 1.0.3 found here:
https://github.com/parallaxinc/Flight-Controller/releases
The versions on that site do not match the current versions, as I was told they went to a new revision numbering system. IMHO that needs to be straightened out.
Trying to list out which historical versions of Firmware work with which versions of Software gets very messy since version numbering was (admittedly) a little haphazardly done in the first few releases.
I strongly recommend downloading the beta release of v1.1.0 here. The version numbers should be correct everywhere except the elev8-main.cpp file. That was fixed here, and while it hasn't been compiled into a release yet, you can download and use the most recent version of elev8-main.cpp here.
Firmware v1.1.0 should only be used with GroundStation v1.1.0, and vice-versa.
I am using the aforementioned beta version of Firmware v1.1.0 / GroundStation v1.1.0 on Windows 10, and have not had any issues with xBee communication with that setup. I did have issues a few months ago (with previous firmware/software versions), but unfortunately I don't know what caused/fixed that issue.
Please let us know if you are still having the xBee issue after upgrading both your Firmware and GroundStation.
I did the firmware and GroundStation upgrades. I recalibrated for my controller, etc. When the ELEV8 is directly connected to the PC, I indeed see confirmation that firmware and GCS 1.1.0 are running. I used the most recent elev8-main.cpp file in the build and upload. Unfortunately then radios are still not connecting. The blue ASSOC LED next to the ZigBee on the flight controller is flashing.
When I plug the radio into the computer, the Tx/Rx LEDS on both the flight controller and the ground side radio are flashing.
FTDI was reporting a good connection on COM4. GroundStation would not see it. I reset everything on the WIN10 computer to the downloads from the ELEV-3 website. Still no joy.
I finally reset the FTDI COM Port to 10. and the GroundStation found it. Applied battery power on the ELEV8, and the GroundStation now sees it.
I'm running GS 1.1.0 and Firmware 1.1.0.
Go into your device manage and check the com port number. If it is a low number, (1-4), try resetting to COM10 57000 Baud.
Thanks for trying my previous suggestions of updating the firmware and GroundStation, that helped to eliminate many possible causes.
After a few hours of experimentation, I think I've found the problem, but @Publison pretty much beat me to it.
I've written up a workaround procedure that can be used until we publish a fix. I sincerely apologize for the inconvenience, and please let us know if you are still having trouble after trying the Workaround. I'm hoping it will fix your problem, but it is possible something else is also going on. @geo_leeman, you can skip the first step since you have already done it. I'll be submitting this as an issue in GitHub with more technical details, and will add a link to this post once available.
Workaround for Parallax GroundStation XBee communication with ELEV-8
Issue: Parallax GroundStation will not connect to the ELEV-8 900 MHz Telemetry Kit on a Windows computer, preventing any connection with the ELEV-8.
Symptom: With XBee USB Adapter (with 900 MHz module & antenna) connected to computer, GroundStation displays "No Serial Devices Found" or "No ELEV-8 Found" in the lower left-hand corner of the window, and the blue LED to the right of the USB port on the XBee USB Adapter is not lit or flashing.
Note: This will take approximately 10 minutes, and you will need administrator privileges on your computer.
Prerequisites:
- Verify that you are running GroundStation v1.1.0 (beta) and Firmware v1.1.0 (beta) by looking at version numbers displayed at the bottom of the GroundStation window when your Flight Controller is connected to your computer via USB cable. If both version numbers are "1.1.0", skip to the next step, otherwise, keep reading for update instructions. First, Install GroundStation v1.1.0 beta, available here. Second, navigate to the folder where you just installed GroundStation and locate the firmware source code (default location is C:\Program Files (x86)\Parallax Inc\GroundStation\Sources\Firmware-C). Third, replace the elev8-main.cpp file with the latest version, which can be downloaded from this page by right-clicking on Raw and selecting Save As, and then saving it to the aforementioned directory on your computer. Finally, follow these instructions to load the firmware onto your Flight Controller.
- Make sure you have completed all the steps of the ELEV-8 v3 Wireless Telemetry via XBee tutorial, especially configuring the modules.
Workaround:Are the Surface USB ports USB 3.0? If they have a USB 2.0, I would try that. I also upgraded the XBEE firmware to Ver. 8074 and ran on Toshiba Laptop with WIN 10 on both USB 2.0 and USB 3.0. Both ports ran fine.
You may want to try and updated the driver when in Device Manager, and when all else fails, try another USB cable. I have been bitten before with cheap cables.
The commands sent from GroundStation are generally 4-character ASCII commands, but the data sent back from the Elev8 isn't really human-readable (it's just binary packets). You can try typing the heartbeat command BEAT on the terminal. If you get a second or so of mostly gibberish it's probably working. The other command to try is Elv8 - you should get the same 4 chars back as a response.
It's possible that on a Surface it takes longer to get the reply back. I don't wait for a huge amount of time when attempting to contact the Elev8, so if your XBee connection isn't great, or there's a bunch of RF noise around, it might take a while to get the response packet back, and maybe it's giving up too early. I can try changing the delays to see if it helps - PM me an email address and I'll see if I can post a version for you to try somewhere later tonight or tomorrow.
Jason
I know you are busy with other things right now.
Are you use a correct usb xbee adapter ?
I bump into this problem some time ago.
Wen started with telemetry I try to use an old xbee adaptor, and never get connections. While stand alone the xbee working, with elev8 not.
Good call. In the original post he says he is using:
I understand that as being:
https://www.parallax.com/product/32480
I do not know if the lower powered XBEE's would work.
Yes, I'm using the kit that @Publison linked.
Jason. I did an experiment that may or may not help narrow things down. I connected the ground side XBee to a Mac laptop and just connected to it at 57600 with the app "CoolTerm". When I typed "BEAT" on the keyboard, I could see the blue receive LED on the flight controller that is right by the XBee light up. There was no response though. I'll PM you now on my contact info.
Here's the troubleshooting I've done. I wrote up a simple Python snippet to send the BEAT command (on my Mac):
When I ran that, the red LED by the XBee on the quad stayed rapidly flashing for as long as I left it powered. The ground side XBee did nothing and I got nothing back. I then swapped the XBee modules and tried the same procedure, nothing happened. This seems to indicate that maybe one module is not transmitting? Any other ideas?
Could you share a screenshot of the new interface?
What do you mean? I just ran the script from the terminal. It did print "Sending BEAT" and "Reading back", but nothing ever was received.
I just wanted to see the difference on the GS screen, even though the XBEE interface was not working.
I missed a couple controls (menu items and the numbers inside the gauges) but those will be included in the resizing scheme soon.
As for the connectivity issues, it does seem strange. If you send 'Elv8' you should get exactly that back again - that's the echo response the GroundStation looks for to determine if there's a flight controller connected. The 'BEAT' command is the heartbeat I send from GroundStation once a second to tell the flight controller that there's someone listening - If it doesn't get an occasional 'BEAT' command it stops sending data. The response from the 'Elv8' command should be readable, but a decent amount of what comes from the quad for telemetry is binary data that won't be easy to read.
Have you tried just opening up both units in the XBee software (connecting both via USB) and seeing if they'll talk to each other? (Do you have a 2nd XBee USB adapter?)
Thank you a bunch for all of your help!
That is good news! I'm sure Parallax will replace the bad one. I'd call tech support on Monday.