Git Product home page Git Product logo

arducopter's People

Contributors

tridge-mirror avatar

arducopter's Issues

implement Speedy Serial

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 binary protocol

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

Incorrect Yaw Orientation

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

Allow orientation setting for magnetometer

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

protocol.def and wiki protocol need updating

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

GroundStation: support binary protocol

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

Gyro and ACC setup using stick

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

error in keywords.txt for GPS_IMU library.

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

Add apmcomm (APM_BinComm Desktop C++ Interface Library) to APM_BinComm library

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

ArduCopter_RC1 feedback

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

Add Servo Output Message to Binary Protocol to Support HIL Simulation

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

Wiki glossary page doesn't have links

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

Channel max values with stick movemts

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

DataFlash.StartWrite(1); Hangs

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

Logger switch wrong definition

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

Serial problem

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

Minor - Arducopter main wikki page jscript error

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

Ser3 telemetry

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

Mode LED's

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

stable mode PID control

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

Reversed YAW issues

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

Voltage monitor for main battery level

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

I want to have ArduCopter

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

Insert flight algorithms to A-NG code

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

Absolute Pressure Sensor not working in several cases

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

Continuous Yaw Upon Startup

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

APM_BinComm Errors

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

Including usable sketches from APM

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

One or two engines can stop rotating when throttle is low

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

Verify GPS hold works

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

Arducopter - PID Tuning

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

How can I contact one of the arducopter developers

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

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.