I tried following today on 2.0.49 firmware with APM Planner 1.0.86. As you can see from the video, there was obvious lag in the command around 1/2 seconds. The other thing the quad was doing it was not coming to stabilize position when I centered the joystick. This is because of the uneven cushion I placed above table. The settings are

Joystick: Saitek Cyborg

Telemetry: 900Mhz xbees @ 57600bps link speed

frame gaui 500X

 

Joystick is pretty slow to respond. When I checked in windows game controller I found out that in game controller calibration looking at the raw data the joystick response is slow. So its a windows + PC issue

Views: 4722

Tags: APM, Joystick, Planner

Comment by BoBo Flight on December 21, 2011 at 6:09pm

I just read this whole post with all of the comments.  Excellent!  You guys did all of the calculations of the needed bandwidth which eventually led you to do two units on each end.  However, I think you were working with 900 back then.  Since 2.4Ghz has so much more bandwidth(256K according to spec sheet, right?), does that mean that it is not necessary to have two if working with 2.4Ghz?  Obviously range would be affected with 2.4, but that can be fine for some people.  I saw #Top Cat# said he used 2.4, but I am not sure if he was just using 1 or 2.

Also, to some other people's comments on "why" ... I think that this opens up the door for a lot of cool stuff.  One example -- someone could theoretically have the pc send a pre-programmed macro/program of commands to the copter (as if it were coming from an rc controller) for the copter to replicate a complicated aerial maneuver (flips, rolls, etc.).  It would be cool to be able to push one button and have your copter do a flip by itself :) ... obviously, that is perhaps a little "visionary", but it gives some ideas to having a "real-time" control via a pc instead of a standard rc setup.

I am very intersted to see this "enhanced" or pushed further.  Anyone up for dual 2.4Ghz transmitters? :)  ... probably complete overkill on the bandwidth and unnecessary ... but I just smile :).

A special shout out to Fab and Ellison!!!  Fab thought of two to test out the badnwidth and Ellison brought this home!  Great job!

Comment by Alessandro Vitali on March 22, 2012 at 3:44pm

if i remeber well the maximum data rate for a serial port is 115 kbps, so c.a. 11  KB/S  the problem then is the comunication between xbee and serial port of APM,  it's really cool if in the next version of Arduino (based on Cortex arch)the team  can put a serial port with the velocity of 2 Mbps,   for example the tencology that use a serial interface as the Cisco wic 1t i think that can be integrated  with some effort  .
if we have a serial port at this "high" speed rate we can connect evry type of wirless modem .

Comment by Ellison Chan on March 22, 2012 at 3:58pm

From the joystick control pov, I've artificially limited the control packet updates to 19.2kbps, and the motors are still responsive.  Realistically to get realtime response, we really only need about 10hz.  If there is a case to be made to increase the communication speed, we could use faster modems, and configure for higher baud rates.  However, my opinion is that any excess power on the controller should be used for flight control, and stabilization, rather than communications.  But, we'll see what develops in the future.  We may have some need for drone to drone communications, such as coordinating swarm behaviour in the near future.  But, as I mentioned in the other discussion, once we get into asynchonous communications, we have to start worrying about packet loss/resend, and out of ordering of packets.  Not a trivial task without dedicated link layer support.

Comment by OG on March 23, 2012 at 5:42am

I am still having issues with APM2 & serial communications. But the duplexing is working for me so far on APM1 with 4 APC220 Wireless modules. My diy module i added blue tooth so I can utilizes GCS on android phone. like to go wifi on my next build using RN-XV WiFly Module - SMA Connector this uses IP & is capable of handling a lot more data. The plan is to use wifi for telemetry data, control & video. is that too much? all you need for internet access is a Verizon MiFi 2200 3G Portable Wi-Fi Hotspot or similar device & you will have very long range communication. this is small enough to be carried by your craft.

Comment by Tim - Arduino for Visual Studio on March 27, 2012 at 1:24pm

I know I was the one that suggested the duplex solution but I have recently discovered something else that warrants further investigation should anyone have time spare.

I've been working on advanced serial tools for the Arduino Visual Studio plugin and in doing so, found that reading the inbound windows serial stream prevents the outbound from being sent by windows. In joystick terms this might prevent commands from being sent to the micro controller in a timely manner.

I altered my serial reader to check the Serial.BytesToWrite property. If > 0 then the reader exits without reading any inbound data enabling windows to send the commands to the mc. Windows buffers the inbound data so we don't loose anything. In reality, if the joystick commands are sent at controlled intervals such as 4 or 5 hz then the reader doesn't have to exit many times and smooth data receive continues.

Summary: I think it's worth tweaking the windows GCS to implement this system and to see if joystick control then works using single xbees. It might not help xbee900 users who work at slow data rates but 2.4 users might be pleasantly surprised. 2.4 xbees send and receive at 250k so there should be plenty of band width.

Comment

You need to be a member of DIY Drones to add comments!

Join DIY Drones

Social Networking

Contests

Season Two of the Trust Time Trial (T3) Contest has now begun. The fourth round is an accuracy round for multicopters, which requires contestants to fly a cube. The deadline is April 14th.

A list of all T3 contests is here

Groups

Advertisement

© 2013   Created by Chris Anderson.   Powered by

Badges  |  Report an Issue  |  Terms of Service