Andrew Tridgell
a791224d07
SITL: make SITL not depend on DCM
13 years ago
Andrew Tridgell
fd2a24f8ed
SITL: reduce the simulated compass offsets
...
this was causing us problems in getting DCM right
13 years ago
Andrew Tridgell
bddc6ba241
SITL: separate out drift speed and drift level
13 years ago
Andrew Tridgell
25cad09746
SITL: added a drift_level multiplier
...
this makes it easier to experiment with different gyro drift levels
13 years ago
Andrew Tridgell
ae51173656
SITL: fixed delay() to account for signal interrupions
...
when a timer went off we stopped the delay() code
13 years ago
Andrew Tridgell
8424609924
SITL: push noise level to 2.0 for DCM testing
13 years ago
Andrew Tridgell
772c30ba86
SITL: added sitl_simstate_send()
...
used to report simulator state in logs
13 years ago
Andrew Tridgell
73dafe537e
SITL: use the new noise model
...
use the new noise model at a low level for master until we sort out
DCM noise handling
13 years ago
Andrew Tridgell
37275d229d
SITL: implement cli()/sei() properly for desktop build
...
this disables simulated hardware interrupts during critical sections
13 years ago
Andrew Tridgell
39797c6f33
SITL: simulate noise on each ADC channel separately
...
scale the noise based on the period of the motors
13 years ago
Andrew Tridgell
efe5c0142c
SITL: raise the ADC noise level to 8 bits when flying
...
this is about the level of noise of a aircraft that has a lot of
vibration
13 years ago
Andrew Tridgell
d6bfceef7c
SITL: added -C option to desktop mode
...
this allows running APM to stdout, which is useful for test sketches
13 years ago
Andrew Tridgell
9793d04ed1
SITL: increase the amount of noise in the simulated ADC
...
this increases the noise to 2 bits, which actually can have the effect
of improving accuracy, as it leads to better averaging
13 years ago
Andrew Tridgell
a48a118128
SITL: adjust the SITL compass code to have saner z values
13 years ago
Andrew Tridgell
4398171374
SITL: catch floating point errors
...
if we get a FPE then log a message and exit
13 years ago
Andrew Tridgell
43c56be70c
SITL: add some magnetometer offsets
...
this ensures the compass null_offset algorithm has some work to do in
autotest
13 years ago
Andrew Tridgell
f95d7cadc5
fixed SITL GPS heading to be 0..360
13 years ago
Andrew Tridgell
d658bc6f9d
desktop: more progmem string functions
13 years ago
Andrew Tridgell
49cf409c23
desktop: floating point precision changes from Justin Beech
13 years ago
Jason Short
351be7c305
Made timer unsigned
13 years ago
Andrew Tridgell
5e4f66e525
DataFlash: moved high level logging logic to library
...
this moves out all the high level logic from ArduPlane/ArduCopter to
the library. It also adds a "config page", as the last page in the
flash. This is used to check if the flash needs erasing. We only erase
now if the DF_LOGGING_FORMAT has changed.
This patch also adds a public CardInserted() method, which is used to
disable logging on APM2 if a dataflash card is not inserted
13 years ago
Andrew Tridgell
9bb0bd0341
desktop: added attachInterrupt() support
13 years ago
Andrew Tridgell
a39a470d75
desktop: fixed for new DataFlash inheritance
13 years ago
Andrew Tridgell
f6f808357c
removed AperiodicProcess code
...
this code was never being used, and was more complex than it was
worth.
13 years ago
Andrew Tridgell
e187ff149f
desktop: fixed type of dword eeprom read
13 years ago
Andrew Tridgell
90c6bad814
autotest: make magnetic field point down
13 years ago
Andrew Tridgell
8d882c3640
desktop: fixed desktop barometer code
13 years ago
Andrew Tridgell
f96a48e42b
autotest: support all 11 PWM output channels
...
this will allow for more complex aircraft
13 years ago
Andrew Tridgell
66d65121cc
autotest: switch to big-endian metric packets internally
...
now that all the sim code is internal to the APM git repo, we can
choose saner packet formats
13 years ago
Andrew Tridgell
7167fec784
desktop: added SO_REUSEADDR after accept()
13 years ago
Andrew Tridgell
706c6c38fa
desktop: fixed calculation of angular velocities
...
thanks to James Goppert for the frame conversion maths
13 years ago
Andrew Tridgell
bdb1599e96
desktop: improved the accuracy of the sensor emulation
13 years ago
Andrew Tridgell
df957db8d9
desktop: setup TCP sockets as non-blocking
...
the sendto() blocks unexpectedly on MacOS
13 years ago
Andrew Tridgell
0720bf7bf1
desktop: build fix for fjall
13 years ago
Andrew Tridgell
f2a0a49d55
desktop: fixed desktop build for strlcat_P() changes
13 years ago
Andrew Tridgell
c9b0b384f7
desktop: added framerate and initial height code
...
this allows the sensors to initialise before the simulator has
connected. The GPS will give a value indicating no GPS lock
13 years ago
Andrew Tridgell
24a7a18481
desktop: fixed swap_float()
...
get indexes right
13 years ago
Andrew Tridgell
62f98b091f
desktop: import updated DataFlash code
...
this fixes a logging bug
13 years ago
Andrew Tridgell
de0c38339d
desktop: fixed ADC value for airspeed
13 years ago
Andrew Tridgell
02f25ac36d
libraries: rename purple to APM2
13 years ago
Andrew Tridgell
de2898e5db
desktop: normalise roll and pitch rates
13 years ago
Andrew Tridgell
ffba37d599
desktop: first version of register level SITL support
...
this adds register level emulation of the ADS7844 and the RC
input/output hardware on the APM1, allowing for SITL testing without
enabling HIL in the code
13 years ago
Andrew Tridgell
e0488e134f
desktop: fixed build with updated dataflash interface
13 years ago
Andrew Tridgell
a9c0cbac77
desktop: make DataFlash for Desktop build replace APM1 build
13 years ago
Andrew Tridgell
73e0ab0c63
desktop: more fixes for DataFlash filesystem changes
13 years ago
Andrew Tridgell
6d048646c3
desktop: added support for new DataFlash functions
13 years ago
Andrew Tridgell
355519ad1e
desktop: when in the CLI, use blocking writes
...
this prevents us missing information from the logs
13 years ago
Andrew Tridgell
9677600433
desktop: don't start alarm till setup() has finished
13 years ago
Andrew Tridgell
9af935f2f2
desktop: don't alarm in CLI
...
loop() is not called in menu system
13 years ago
Andrew Tridgell
0820ff52a8
desktop: exit if loop() doesn't run for 5 seconds
...
this should stop runaway processes
13 years ago