summaryrefslogtreecommitdiff
path: root/src
Commit message (Collapse)AuthorAge
...
* altos: shrink text space from ao_config.cKeith Packard2011-08-13
| | | | | | | | | | Eliminate redundant config initializers by setting minor to zero and letting upgrade code handle all of the new values. Stop computing (fake) frequency when showing radio channel Stop computing feet when showing main deploy height Signed-off-by: Keith Packard <keithp@keithp.com>
* altos: remove monitor disable stubs from altimeter codeKeith Packard2011-08-11
| | | | | | | | | | | | Monitor mode in the ground-station boards must be disabled when the radio is going to be used for another purpose, or the radio parameters changed. That places monitor-mode disable calls in other parts of the system which are shared with the altimeter code. Elide the ao_set_monitor calls for builds which do not include any monitoring code. Signed-off-by: Keith Packard <keithp@keithp.com>
* altos: Apply igniter boot pulse-width reduction to teleminiKeith Packard2011-08-11
| | | | | | | TeleMini needs the same fix as TeleMetrum to reduce startup igniter pulses. Signed-off-by: Keith Packard <keithp@keithp.com>
* altos: Pull igniter pins low as soon as possible at boot timeKeith Packard2011-08-11
| | | | | | | This reduces the pulse width on the igniter circuit caused by the default cc1111 pin configuration at powerup time. Signed-off-by: Keith Packard <keithp@keithp.com>
* altos: Switch telemini from v0.1 to v1.0Keith Packard2011-08-09
| | | | | | | | TeleMini production boards are firmware compatible with the v0.1 design, so instead of creating another product, just rename the existing one. Signed-off-by: Keith Packard <keithp@keithp.com>
* altos: minor type in comment about accel correctionKeith Packard2011-08-08
| | | | | | | Kurt Roeckx found a typo in the equations describing how the accelerometer is corrected by the 5V reference measurement. Signed-off-by: Keith Packard <keithp@keithp.com>
* altos: Add ability to set arbitrary radio frequencyKeith Packard2011-08-08
| | | | | | | | This adds a separate config parameter to control the raw radio frequency setting, allowing the user to select an arbitrary frequency instead of being forced to choose one of the 10 pre-defined 'channels'. Signed-off-by: Keith Packard <keithp@keithp.com>
* altos: Remove pad_orientation functions from non-accel devicesKeith Packard2011-08-08
| | | | | | Anything without an accelerometer can't detect pad orientation. Signed-off-by: Keith Packard <keithp@keithp.com>
* altos: Correct flight log max on Tm to 5kKeith Packard2011-08-08
| | | | | | | Was using the wrong #define name to check for Tm/Tn devices that use internal flash for data storage. Signed-off-by: Keith Packard <keithp@keithp.com>
* altos/altosui: Add pad orientation configure optionKeith Packard2011-08-02
| | | | | | | | | | | Allow TeleMetrum to be operated with the antenna pointing downwards on the pad. This provides some additional flexibility when designing an ebay. The accelerometer calibration levels are flipped around to match, so no re-calibration should be required. Signed-off-by: Keith Packard <keithp@keithp.com>
* altos: Require sequencing through 'main' state before landingKeith Packard2011-08-02
| | | | | | | | | | | | | The old version of the code would permit the flight to go straight from 'drogue' to 'landed' without passing through 'main' at all. This meant that a false landing detection would leave the main charge unfired, potentially causing the airframe to land on drogue alone. Requiring that the flight sequence pass through main ensures that the main charge will get fired at the right time, although if the airframe lands higher than that altitude, it will not go to 'landed' mode ever. Signed-off-by: Keith Packard <keithp@keithp.com>
* altos: Reduce height averaging filter time constantKeith Packard2011-08-02
| | | | | | | Using the longer time constant could lead to false landing detection just after apogee, which is definitely not a good idea. Signed-off-by: Keith Packard <keithp@keithp.com>
* altos: Average height values for landing detectionKeith Packard2011-08-02
| | | | | | | | | | | | Instead of using the direct output of the kalman filter and hoping that is quiet enough to detect landing, filter that with a long exponential decay filter and then check to make sure that doesn't change more than 2m in 5 seconds as a trigger for landing detection. Tested with existing telemetrum flight logs and it correctly detects landing in all cases. Signed-off-by: Keith Packard <keithp@keithp.com>
* altos: Add ability to read new TELEM files to ao_flight_testKeith Packard2011-07-17
| | | | | | | Not that telem files are currently very useful as the kalman filter gets completly confused by the variable steps caused by missing data, but... Signed-off-by: Keith Packard <keithp@keithp.com>
* altos, altosui: Add igniter mode (dual, apogee, main)split-telemetryKeith Packard2011-07-17
| | | | | | This provides for redundant charges for either apogee or main. Signed-off-by: Keith Packard <keithp@keithp.com>
* altos: new versions of sdcc require __ prefixes for custom keywordsKeith Packard2011-07-09
| | | | | | | Fortunately, 2.9.1 appears to accept either, so we can switch now and prepare for sdcc 3.0.0. Signed-off-by: Keith Packard <keithp@keithp.com>
* altos: product defines are always in ao_product.hKeith Packard2011-07-06
| | | | | | | | | | | When all products were built in a single directory, each one had a separate version of ao_product.h. Now that they all reside in sub-directories, each directory has its own ao_product.h This change is needed so that other modules in the system can use the product defines; otherwise, ao_product.h was not built at the right time. Signed-off-by: Keith Packard <keithp@keithp.com>
* altos: Ensure low-rate telem packets interleave with sensor telem packetsKeith Packard2011-07-06
| | | | | | | | | To avoid over-committing the radio link, we want to send only one low rate packet after each sensor packet. However, the initializations for this were incorrect, causing the configuration and location packets to be sent at the same time. Signed-off-by: Keith Packard <keithp@keithp.com>
* altos: Remove ao_telemetry_orig.c and ao_telemetry_tiny.cKeith Packard2011-07-06
| | | | | | All products use the common ao_telemetry.c code now Signed-off-by: Keith Packard <keithp@keithp.com>
* altos: Switch Tm and Tn to common telemetry codeKeith Packard2011-07-06
| | | | Signed-off-by: Keith Packard <keithp@keithp.com>
* altos: Switch flash drivers __xdata to __pdataKeith Packard2011-07-06
| | | | Signed-off-by: Keith Packard <keithp@keithp.com>
* altos: Switch ao_flight and ao_flight_nano __xdata to __pdataKeith Packard2011-07-06
| | | | Signed-off-by: Keith Packard <keithp@keithp.com>
* altos: Switch ao_dbg.c __xdata to __pdataKeith Packard2011-07-06
| | | | Signed-off-by: Keith Packard <keithp@keithp.com>
* altos: Switch ao_config.c __xdata to __pdataKeith Packard2011-07-06
| | | | Signed-off-by: Keith Packard <keithp@keithp.com>
* altos: switch ao_cmd __xdata to __pdataKeith Packard2011-07-06
| | | | | | Saves code space Signed-off-by: Keith Packard <keithp@keithp.com>
* altos: Switch const for __code in struct ao_cmdsKeith Packard2011-07-06
| | | | | | This saves quite a bit of code space when accessing these values. Signed-off-by: Keith Packard <keithp@keithp.com>
* altos: Switch ao_usb.c __xdata to __pdataKeith Packard2011-07-06
| | | | Signed-off-by: Keith Packard <keithp@keithp.com>
* altos: Switch ao_telemetry.c __xdata to __pdataKeith Packard2011-07-06
| | | | Signed-off-by: Keith Packard <keithp@keithp.com>
* altos: Switch ao_stdio.c __data to __pdataKeith Packard2011-07-06
| | | | Signed-off-by: Keith Packard <keithp@keithp.com>
* altos: Switch ao_serial.c __xdata to __pdataKeith Packard2011-07-06
| | | | Signed-off-by: Keith Packard <keithp@keithp.com>
* altos: Switch ao_sample.c __xdata to __pdataKeith Packard2011-07-06
| | | | Signed-off-by: Keith Packard <keithp@keithp.com>
* altos: Switch ao_rssi.c __xdata to __pdataKeith Packard2011-07-06
| | | | Signed-off-by: Keith Packard <keithp@keithp.com>
* altos: Switch ao_report.c __xdata to __pdataKeith Packard2011-07-06
| | | | Signed-off-by: Keith Packard <keithp@keithp.com>
* altos: Switch ao_log.c and ao_log_big.c __xdata to __pdataKeith Packard2011-07-06
| | | | Signed-off-by: Keith Packard <keithp@keithp.com>
* altos: Switch ao_ignite and ao_gps_sirf __xdata to __pdataKeith Packard2011-07-06
| | | | Signed-off-by: Keith Packard <keithp@keithp.com>
* altos: Switch ao_gps_skytraq and ao_gps_sirf __xdata to __pdataKeith Packard2011-07-06
| | | | Signed-off-by: Keith Packard <keithp@keithp.com>
* altos: Shrink ao_add_task by rolling up a memset loopKeith Packard2011-07-06
| | | | | | | This has a dramatic effect. By pulling the 'stack' variable into registers it reduces the size of this function from 550 to 231 bytes. Signed-off-by: Keith Packard <keithp@keithp.com>
* altos: Shrink ao_config_callsign_setKeith Packard2011-07-06
| | | | | | | Replacing a hand-coded memset with a function call, using static space instead of stack space for an array. Signed-off-by: Keith Packard <keithp@keithp.com>
* altos: Shrink ao_cmd_put16, ao_cmd_hex and ao_cmdKeith Packard2011-07-06
| | | | | | No functional changes, just reduces code size. Signed-off-by: Keith Packard <keithp@keithp.com>
* altos: Adapt to changes in telemetry Configuration packetKeith Packard2011-07-05
| | | | | | Apogee delay added. flight_log_max changed to two bytes (in kB now). Signed-off-by: Keith Packard <keithp@keithp.com>
* altos: Complete new telemetry switchoverKeith Packard2011-07-04
| | | | | | | | | | | | | | This involved rewriting the GPS code to use the telemetry structures directly so that a memcpy could be used to transfer the data to the telemetry packets, saving a bunch of code space, along with fixing up the gps testing programs to deal with the structure changes. In addition, the teledongle code needed to have the monitoring code split into separate radio receiver and USB writer threads as the packets are now back-to-back, and hence come too fast to wait for the USB data to be sent to the host after each one. Signed-off-by: Keith Packard <keithp@keithp.com>
* altos: Add split telemetry codeKeith Packard2011-07-04
| | | | | | | This sends every packet every time, which isn't correct, but should be useful for testing. Signed-off-by: Keith Packard <keithp@keithp.com>
* altos: Shrink help textKeith Packard2011-07-04
| | | | | | Reduce const space taken by command help text. Signed-off-by: Keith Packard <keithp@keithp.com>
* altos: Add sat info to GPS report commandKeith Packard2011-07-04
| | | | | | Plan to use this to report current flight computer state in idle mode. Signed-off-by: Keith Packard <keithp@keithp.com>
* altos: Shrink const space in ao_configKeith Packard2011-07-04
| | | | | | | | Eliminate separate 'cmd' and 'help' struct entries. Use \0 trick in cmd strings to eliminate whitespace. Edit help text. Signed-off-by: Keith Packard <keithp@keithp.com>
* altos: teledongle does not need ao_packet_slave.cKeith Packard2011-07-04
| | | | | | | TeleDongle doesn't provide slave interfaces, so remove ao_packet_slave from the TD build Signed-off-by: Keith Packard <keithp@keithp.com>
* altos: ao_radio_recv needs byte count *including* rssi and statusKeith Packard2011-06-28
| | | | | | That's two more than the actual packet length. Signed-off-by: Keith Packard <keithp@keithp.com>
* altos: Start adding new telemetry frame definitionsKeith Packard2011-06-27
| | | | | | | These use the initial 24 bytes per frame plan, which will probably get changed to 32 bytes per frame. Signed-off-by: Keith Packard <keithp@keithp.com>
* altos: Add checksum to TELEM output linesKeith Packard2011-06-27
| | | | | | Verify the received telemetry lines to protect against OS data loss Signed-off-by: Keith Packard <keithp@keithp.com>
* altos: Add arbitrary telemetry packet monitoringKeith Packard2011-06-27
| | | | | | | This adds the ability to monitor arbitrary telemetry packets (up to 128 bytes), moving the telemetry data parsing up to the host. Signed-off-by: Keith Packard <keithp@keithp.com>