- Mar 30, 2012
-
-
Adam M Rivera authored
AP_Declination: Updated compressed lookup value table. Located 9 more failure points due to truncation on the packed LUT.
-
Adam M Rivera authored
AP_Declination: Found 7 of the 22 failure points and fixed them. The issue with those 7 was the way I originally packed the value array. The last delta values on some rows were getting truncated. The new number of failures is down to 15 - WIP.
-
Adam M Rivera authored
AP_Declination: Updated test to run in 5 degree increments. Changed to only print failures and also print total pass vs total fail.
-
Adam M Rivera authored
-
Adam M Rivera authored
AP_Declination: The exception signs unpacking logic was incorrect. I was shifting a 1 value left y%8 which would have needed a the signs to be packed right to left. My packed signs byte was packed left to right (left most being the 0 position) so I needed to reverse the shifting.
-
Adam M Rivera authored
AP_Declination: In order for the bitwise & operation to work, negative signs need to be represented by 1s instead of 0s. Changed so that negative signs are represented by a 1 in the packed signs array. Updated lookup logic to reflect this change.
-
Adam M Rivera authored
-
Adam M Rivera authored
-
Adam M Rivera authored
AP_Declination: Added original array to test sketch. Added loop to validate new compressed array against original in 1 degree steps.
-
Adam M Rivera authored
AP_Declination: Moved rows with large spikes in delta to their own unsigned exception rows. The signs are in a separate packed array.
-
Adam M Rivera authored
AP_Declination: Implemented Delta Encoding and Run-Length Encoding. Added method to traverse the compressed array and return the lookup value based on the same lat_index/lon_index that was used before.
-
Adam M Rivera authored
-
Adam M Rivera authored
-
Adam M Rivera authored
AP_Declination: Reduced the size of the lookup table to support -75 <-> 70 latitude range. This allows the datatype to remain int8_t.
-
- Mar 29, 2012
-
-
Andrew Tridgell authored
when a user first connects with USB, and later switches to the telemetry port without restarting we were getting zero for error_yaw in the logs, as AHRS.get_error_yaw() was being called twice. This ensures we give the last value after the counter is reset
-
Andrew Tridgell authored
-
Andrew Tridgell authored
explain the algorithm a bit more
-
- Mar 28, 2012
-
-
rmackay9 authored
-
rmackay9 authored
AP_OpticalFlow - small bug fix to ensure init attempts to read the product id 3 times before giving up
-
Andrew Tridgell authored
-
Andrew Tridgell authored
this caused problems with random()
-
Andrew Tridgell authored
This adds a large amount of noise robustness to the compass offset learning algorithm, at a cost of 120 bytes of memory. The changes are based on a long discussion with Bill Premerlani.
-
- Mar 27, 2012
-
-
Andrew Tridgell authored
we don't need to add count any more, as floating point maths doesn't need to round up
-
Andrew Tridgell authored
this seems to work much better than the old algorithm, converging faster and more accurately. Even better, it has no linkage to DCM, so no possibility of nasty feedback effects
-
- Mar 25, 2012
-
-
rmackay9 authored
APM_RC - moved Force_Out0_Out1, Force_Out2_Out3 and Force_Out6_Out6 to APM_RC parent class because it's already implemented in the APM1 and APM2 child classes anyway
-
rmackay9 authored
Filter - added simple LowPassFilter (simple but it's possible to make errors with simple stuff too so might as well have one)
-
rmackay9 authored
-
- Mar 24, 2012
- Mar 23, 2012
-
-
Andrew Tridgell authored
this is equivalent to multiplying by m.transposed(), but is more efficient
-
- Mar 22, 2012
-
-
Andrew Tridgell authored
-
- Mar 20, 2012
-
-
Andrew Tridgell authored
this means we only link this in once, rather than for every use of matrix multiply, which saves us some flash space We need to be careful not to put large pieces of code in template headers, as if the operation is used a lot, it costs us a lot of code space
-
Andrew Tridgell authored
-
Andrew Tridgell authored
this implements a much more accurate model of a compass using matrix rotations, instead of trying to calculate components directly
-
rmackay9 authored
AC_PID - added more paranoid checking that imax is positive in constructor, operator() and load_gains methods
-
- Mar 19, 2012
-
-
Andrew Tridgell authored
-
Andrew Tridgell authored
-
Andrew Tridgell authored
this allows us to use a tested and optimised rotation method
-
Andrew Tridgell authored
-
Andrew Tridgell authored
this is the core method used to update the DCM matrix with a gyro vector. Moving it to AP_Math allows us to have a test for it
-