nikusharoot / arducopter Goto Github PK
View Code? Open in Web Editor NEWAutomatically exported from code.google.com/p/arducopter
Automatically exported from code.google.com/p/arducopter
Need to show how to mount the APM/Oilpan on a Trex450 (i.e. create the middle
layer between body and landing gear)
Original issue reported on code.google.com by [email protected]
on 7 Aug 2010 at 11:56
The standard Arduino Serial library blocks until all characters are sent which
can cause the main loop to slow down especially if we're using a slow xbee
connection.
We should replace the standard Serial library with an equivalent library that
can send in the background.
Original issue reported on code.google.com by [email protected]
on 8 Aug 2010 at 12:14
Implement the binary protocol as defined by Doug Wiebel's document:
https://docs.google.com/document/edit?id=1NpMsLxOy-Ya50GF36Id2Wp79R8oTQVVtU7ZRH0
MtgKI&hl=en#
Expected capabilities:
1. simply command to send various parameters via xbee to ground station
2. ability to receive commands from ground station
Keep it simple and don't implement as a library
Original issue reported on code.google.com by [email protected]
on 5 Aug 2010 at 1:25
Determine which direction yaw should be in either software or transmitter
settings and agree on single approach.
Original issue reported on code.google.com by [email protected]
on 10 Aug 2010 at 5:46
People mount the magnetometer in different ways. Most common methods are:
1. components up, pins facing backwards
2. components down, pins facing fowards (mounted directly on OilPan)
We should allow a method in the code (or a setting in the EEPROM) to handle the
different mounting possibilities.
Two methods suggested by Doug:
a) enhance the AP_Math library to handle rotations, then define a set of rotations and in the ArduCopter code, rotate the results from the magnetometer before combining into the DCM
b) add an orientation setting into the APM_Compass (or AP_Compass) and have the library rotate results before passing back to arduCopter code.
Original issue reported on code.google.com by [email protected]
on 21 Sep 2010 at 1:39
I'm doing a lot of test without the magnetometer and I observ that there is a
big drift on YAW and it is different when you flight in Stable mode or in Acro
mode.
Original issue reported on code.google.com by [email protected]
on 15 Aug 2010 at 8:46
What steps will reproduce the problem?
1. Try to decode telemetry using APM_BinComm library
2.
3.
What is the expected output? What do you see instead?
There are some integer overflow problems int the protocol. Some of these
changes are recommendations to change the protocol while others are simply
corrections so that the .def file matches the APM_STANDARD documentation on the
Ardupilot mega wiki. These are my suggestions but I am open for discussion.
1. changed goundSpeed to match doc
2. yaw and ground course should be uint16 to allow 0 to 360 *100
3. time of week should be uint32 to allow for timeOfWeek in milliseconds
4. pressure altitude should be allowed to be negative since this is possible
when the pressure rises after calibration
5. airspeed should be allowed to be negative for cases when a vaccuum could
form on the airspeed sensor (such as helicopters flying backwards
6. added renormSqrtCount, renormBlowupCount, gpsFixCount since they were
listed in doc
What version of the product are you using? On what operating system?
current svn, Debian Lenny
Please provide any additional information below.
diff APM_BinComm/protocol/protocol.def
ardupilot-mega-read-only/libraries/APM_BinComm/protocol/protocol.def
49c49
< uint16_t yaw
---
> int16_t yaw
58,60c58,60
< uint16_t groundSpeed
< uint16_t groundCourse
< uint32_t timeOfWeek
---
> int16_t groundSpeed
> int16_t groundCourse
> uint16_t timeOfWeek
66,67c66,67
< int16_t pressureAltitude
< int16_t airSpeed
---
> uint16_t pressureAltitude
> uint16_t airSpeed
85,87d84
< uint8_t renormSqrtCount
< uint8_t renormBlowupCount
< uint8_t gpsFixCount
Original issue reported on code.google.com by [email protected]
on 1 Oct 2010 at 5:40
http://code.google.com/p/arducopter/wiki/Quad_LoadingPage
page links not working.
Original issue reported on code.google.com by [email protected]
on 2 Sep 2010 at 2:45
Current groundstation only supports serial commands/instructions.
If we want to support a binary protocol on the arduCopter the ground station
must also be enhanced to do this
Original issue reported on code.google.com by [email protected]
on 8 Aug 2010 at 12:18
Hi,
Why don't you use micros() to calculate G_Dt ?
It would be better if that value is more accurate don't you think ?
Greg
Original issue reported on code.google.com by [email protected]
on 13 Sep 2010 at 10:57
Required to force users into a common config to control quad.
Original issue reported on code.google.com by [email protected]
on 10 Aug 2010 at 5:53
I'm implement on my branch code the Gyro and Acc setup using stick I think that
this feature is very importnat for stable mode because is important the setup
is doing only in good condition.
Original issue reported on code.google.com by [email protected]
on 15 Aug 2010 at 8:44
What steps will reproduce the problem?
1.
2.
3.
What is the expected output? GPS_IMU KEYWORD1 What do you see instead?
GPS_UBLOX KEYWORD1
What version of the product are you using? R356 On what operating system? Win7
Please provide any additional information below.
Noticed GPS_IMU.h was not highlighting properly in Arduino0018. Found keyword
set incorrectly.
Original issue reported on code.google.com by [email protected]
on 30 Aug 2010 at 2:21
I've created a library that is cross-platform and interfaces to the APM_BinComm
class. It utilizes boost asio for serial communication, boost posix time to
emulate the millis function, and cmake as the build system.
This "library" consists of one wrapper class for Stream, a boost AsyncSerial
class from Terraneo Fedrico (much thanks), and an implementation of strlcpy.h.
This is all LGPL compatible so I would encourage you to add it to the BinComm
library. This should really help all of us writing GCS software for
arducopter/pilot. Contained in the library zip file that I have attached is
the BinComm library with my suggested patch.
Original issue reported on code.google.com by [email protected]
on 30 Sep 2010 at 3:12
People who has RC1 running on their quads, you can post general feedback on
this issue.
If you find bug or what ever on RC1, please post new issue for each bug that
you have found. That way we can track better those
Original issue reported on code.google.com by jphelirc
on 1 Oct 2010 at 10:44
Can we use your existing code for this Jose?
Original issue reported on code.google.com by [email protected]
on 10 Aug 2010 at 6:11
New implementation of Stable mode with added term based on a direct Rate control
Original issue reported on code.google.com by [email protected]
on 10 Aug 2010 at 8:00
Change Transmitter Factor to something like Stable Mode Kp Rate
Original issue reported on code.google.com by [email protected]
on 11 Aug 2010 at 12:30
Right now on the ardupilot-mega side we are using the XPlane protocol for HIL.
But it seems much easier to just define a new message for the binary protocol
under the radio section that outputs the current servo positions. The servo
positions can then be fed to the dynamics. The rest of the xplane protocol
packets aren't required for HIL. On the arducopter side this would require
updating the protocal.def file and regenerating the protocol.h file with awk
for APM_BinComm.
diff APM_BinComm/protocol/protocol.def
ardupilot-mega-read-only/libraries/APM_BinComm/protocol/protocol.def
180,189d176
< message 0x53 MSG_SERVOS
< int16_t ch1
< int16_t ch2
< int16_t ch3
< int16_t ch4
< int16_t ch5
< int16_t ch6
< int16_t ch7
< int16_t ch8
<
Original issue reported on code.google.com by [email protected]
on 1 Oct 2010 at 5:51
The Glossary page on wiki
(https://code.google.com/p/arducopter/wiki/GlossaryPage) contains a lot of "See
this for more. " but all the "this" are without link to more in depth
explanation
Original issue reported on code.google.com by simone.chiaretta
on 26 Sep 2010 at 4:56
There is reference code for sonar, but should implement for barometer first.
Original issue reported on code.google.com by [email protected]
on 10 Aug 2010 at 6:09
Define correct stick movements to get max and min values from RC Channel
functions.
As in general definitions to avoid future hassle, let's agree asap what values
we should get out from encoder. Eg Rudder full right = 2000, Ail right = 2000
or 1000, Ele up = 2000 or 1000....
Original issue reported on code.google.com by jphelirc
on 24 Aug 2010 at 2:46
Hi,
When i try to use the DataFlash example of the last DataFlash library, it hangs
after printing this in Arduino Serial Monitor :
Dataflash Log Test 1.0
Manufacturer:0,0,0
Thanks for your work.
Original issue reported on code.google.com by [email protected]
on 10 Aug 2010 at 7:51
What is the expected output? What do you see instead?
Nothing happens when logger switch is put in "dump log" position. This is
because the logger switch should be defined as SW2. It is currently defined as
SW1.
Please provide any additional information below.
Changing "SW1_pin" to "SW2_pin" in the following two lines fixes the problem.
1: pinMode(SW1_pin,INPUT); //Switch SW1 (pin PG0)
2: while (digitalRead(SW1_pin)==0)
Original issue reported on code.google.com by [email protected]
on 29 Sep 2010 at 7:00
After latest updates on library and main code. Gyro/Acc and Stick input is lost
everytime when Configurator values are updated to quad.
All stick movements are lost except throttle. All gyro/acc inputs are lost.
After power cycle they all come back and works untill new update is done from
Configurator
Original issue reported on code.google.com by jphelirc
on 26 Aug 2010 at 6:18
Is important to develop some simulation and debug tools for improve the
configuration of PID and for debug the stable and GPS hold function.
Original issue reported on code.google.com by [email protected]
on 15 Aug 2010 at 8:52
Webpage error details
Message: Object expected
Line: 91
Char: 6
Code: 0
URI:
http://www.gmodules.com/gadgets/ifr?url=http%3A%2F%2Farducopter.googlecode.com%2
Fsvn%2Fimages%2Fswf%2FDIYD3D.xml&up_file3d=Step_1.swf&parent=http%3A%2F%2Fcode.g
oogle.com%2Fhosting&synd=code
Message: Object expected
Line: 98
Char: 6
Code: 0
URI:
http://www.gmodules.com/gadgets/ifr?url=http%3A%2F%2Farducopter.googlecode.com%2
Fsvn%2Fimages%2Fswf%2FDIYD3D.xml&up_file3d=Step_1.swf&parent=http%3A%2F%2Fcode.g
oogle.com%2Fhosting&synd=code
Original issue reported on code.google.com by [email protected]
on 13 Sep 2010 at 9:27
Make Ser3 to work with telemetry. Full duplex. Now we only have Ser0 that
delivers telemetry.
Original issue reported on code.google.com by jphelirc
on 26 Aug 2010 at 6:16
Make better use of mode led's.
Green LED as heart beat, slow speed for steady flight, rapid blink for acro.
Explore usage of 2 output pins for extra LED's in motor mounts etc.
Original issue reported on code.google.com by [email protected]
on 11 Aug 2010 at 2:53
Control equation of arducopter for stable mode is like this:
control_XXXX = D . ( P . error ( t0 ) + I . Sum ( error ( t ) ) - Omega )
This is making PID adjustment difficult. It will be easier to adjust If we
write the equation like
control_XXXX = P . error ( t0 ) + I . Sum ( error ( t ) ) - D . Omega
My proposal is to change
control_XXXX = STABLE_MODE_KP_RATE_PITCH*err_XXXX;
to
control_XXXX = stable_XXXX - STABLE_MODE_KP_RATE_XXXX*ToDeg(Omeg[1]);
Original issue reported on code.google.com by [email protected]
on 28 Sep 2010 at 8:45
Appears that heading changes by about +/- 5 degrees when quad is tilted. Just
need to verify if til compensation is working correctly and that it is
represented accurately in the artificial horizon of Configurator.
Original issue reported on code.google.com by [email protected]
on 10 Aug 2010 at 6:05
Instructions on the wiki of how to wire up:
1. RC to APM
2. Servos to APM
3. Magnetometer to APM (just like ArduPilot)
4. GPS to APM
Original issue reported on code.google.com by [email protected]
on 8 Aug 2010 at 12:00
Checkup and find a reason why YAW is reversed on some quads. Motor arming is
correct way (tho down, rudder full right) but when flying right rudder rotates
quad to left (CCW).
Check YAW signatures, rotating quad by hand on floor to CCW makes it rotating
even more to CCW and not to CW like it should.
Original issue reported on code.google.com by [email protected]
on 11 Aug 2010 at 2:48
create a functions to monitor battery voltage level(s). And when closing to
pre-defined levels send out message to pilot
Original issue reported on code.google.com by jphelirc
on 11 Aug 2010 at 3:43
Following Jani Hirvinen suggestion on the original proposal by Claudio, here is
the list for the pre-pre-orders :)
Just to give a preemption for people that are actively following the
discussions going on on the list.
Please add your name here if you want a pre-pre order (and if that was not
meant to be, please some of the admins delete this task)
Original issue reported on code.google.com by simone.chiaretta
on 30 Sep 2010 at 9:33
Implement mixer table to support other motor configs (+, X, hexa, octo).
Original issue reported on code.google.com by [email protected]
on 10 Aug 2010 at 6:22
Support for other ESC's
Original issue reported on code.google.com by [email protected]
on 10 Aug 2010 at 6:24
Prepare main loop and insert flight algorithms to ArducopterNG code.
Original issue reported on code.google.com by jphelirc
on 31 Aug 2010 at 3:26
What steps will reproduce the problem?
1. Test board 1 - No issues with BMP085. Library calls in both the demo
program and APM firmware return good pressure values.
2. Test board 2 - BMP085 demo program gives good data but AMP firmware gets
pressure value of 0 returned from library call
3. Test board 3 - gets pressure value of 0 returned from library call in both
demo program and APM firmware
Jason and I noticed this problem today. We have not been able to pin the
problem down after examining it for an hour or so. It is very odd that it
works on one board, works on 1 board with some software but not other, and
doesn't work on the third.
Original issue reported on code.google.com by [email protected]
on 24 Aug 2010 at 10:22
Required to force users into a common config to control quad.
Note: this feature will break if not implemented into future GCS.
Original issue reported on code.google.com by [email protected]
on 10 Aug 2010 at 6:02
Occasionally when ArduCopter starts up, continous yaw happens when increasing
throttle. Removing power from APM, then reapplying power can fix it.
Original issue reported on code.google.com by [email protected]
on 10 Aug 2010 at 5:45
What steps will reproduce the problem?
1. Attempt to run APM_BinComm class using boost serial class on desktop.
What is the expected output? What do you see instead?
1. Should unpack packages and display result.
2. Instead I get state machine lock ups.
What version of the product are you using? On what operating system?
Latest svn, debian lenny.
Please provide any additional information below.
Here is the patch to fix it.
Index: APM_BinComm.cpp
===================================================================
--- APM_BinComm.cpp (revision 568)
+++ APM_BinComm.cpp (working copy)
@@ -47,7 +47,9 @@
BinComm::BinComm(const BinComm::MessageHandler *handlerTable,
Stream *interface) :
_handlerTable(handlerTable),
- _interface(interface)
+ _interface(interface),
+ _decodePhase(0),
+ _lastReceived(millis())
{
};
@@ -101,7 +103,10 @@
// handle inter-byte timeouts (resync after link loss, etc.)
//
if ((millis() - _lastReceived) > DEC_MESSAGE_TIMEOUT)
+ {
+ _lastReceived = millis();
_decodePhase = DEC_WAIT_P1;
+ }
// run the decode state machine
//
@@ -191,6 +196,7 @@
if (inByte == _sumB) {
// if we got this far, we have a message
messagesReceived++;
+ _lastReceived = millis();
// call any handler interested in this message
for (tableIndex = 0; MSG_NULL != _handlerTable[tableIndex].messageID; tableIndex++)
@@ -202,5 +208,7 @@
}
_decodePhase = DEC_WAIT_P1;
break;
+ default:
+ _decodePhase = DEC_WAIT_P1;
}
}
Original issue reported on code.google.com by [email protected]
on 30 Sep 2010 at 3:02
Start include all usable sketches from APM main code and implement them as far
as possible to AC code base in a way that future updates are transparent.
Original issue reported on code.google.com by jphelirc
on 22 Aug 2010 at 2:10
There is reference code for sonar, but should implement for barometer first.
Original issue reported on code.google.com by [email protected]
on 10 Aug 2010 at 6:09
Enhacement of IMU performance based on results of Simulations
Original issue reported on code.google.com by [email protected]
on 10 Aug 2010 at 7:58
Jose, may we use your existing code as reference to implement this for
ArduCopter?
Original issue reported on code.google.com by [email protected]
on 10 Aug 2010 at 6:20
What steps will reproduce the problem?
1. put arducopter on the ground
2. increase throttle a little
3. one or two engines will start rotating but one or two will not
What is the expected output? What do you see instead?
When the throttle is above a certain minimum, all engines should be spinning.
engines should not be allowed to completely stop.
it can also cause problems when landing as one engine may stop just before
landing causing a nose-dive.
Please use labels and text to provide additional information.
Original issue reported on code.google.com by [email protected]
on 19 Sep 2010 at 1:25
Have we all overcome GPS firmware issues? Do we need to provide documentation
on how to get this working?
Original issue reported on code.google.com by [email protected]
on 10 Aug 2010 at 6:13
Instructions on how to start tuning your quad PID values.
Where to start? (Acrobatic Mode, Stable, Position Hold, Altitude Hold...ect).
For users using a different Frame - set or going to use it on a Heli (TREX 600,
Trex 450....ect.)
Thanx again for this Great Project.
Original issue reported on code.google.com by [email protected]
on 23 Aug 2010 at 11:35
Do you have a publicly available mailing list? I'm a student of computer
engineering and I'm considering using arducopter as a platform for a solution
me and my team mates are planning on building for group project for one of our
classes. We wanted to make some questions regarding the platform and to ask you
how doable are some of the enhancements we are mentioning in our project
proposal.
Thanks in advance!
Original issue reported on code.google.com by [email protected]
on 5 Oct 2010 at 3:48
A declarative, efficient, and flexible JavaScript library for building user interfaces.
๐ Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. ๐๐๐
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google โค๏ธ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.