altos: Use pyro voltage to check igniters Instead of using an absolute value for the igniter continuity good voltage, use 15/16 of the pyro voltage instead. This ensures we scale with the pyro voltage to find marginal igniters even with high voltage pyro systems. This doesn't work on TeleMetrum where we have no pyro voltage value. On these boards, continue to use a fixed 3.5V value. Signed-off-by: Keith Packard <keithp@keithp.com>
Add option to beep max height in feet rather than just meters Available on all products, plus config UI changes. Signed-off-by: Keith Packard <keithp@keithp.com>
Allow TX power to be limited to 10mW This allows the radio power to be limited so that it doesn't generate more than 10mW. Signed-off-by: Keith Packard <keithp@keithp.com>
altos: Fix config upgrade from 1.24 to 1.25 Alignment of pyro field changed due to increased size of fields which shifted the whole struct by two bytes, leading to mis-updating the struct. Fix that by creating a mirror of the ao_config type for version 1.24 and then using that to fetch the old data. Signed-off-by: Keith Packard <keithp@keithp.com>
kernel: Widen pyro time values to 32 bits This lets time values of greater than 327 seconds be used. 99% of this code is to adjust existing configurations to the new structure, which is wider than the old. Signed-off-by: Keith Packard <keithp@keithp.com>
altos: Make accel cal take three axes when present This allows AltosUI to save/restore all of the accel calibration values instead of just the primary axis. Signed-off-by: Keith Packard <keithp@keithp.com>
altos: Add 'booster' mode for dual-deploy igniters Booster mode triggers the 'main' channel at first motor burnout allowing the use of a simple flight computer in the booster while providing both a separation charge and an apogee event for recovery. Signed-off-by: Keith Packard <keithp@keithp.com>
altos: Move ao_storage_erase to shared code. Add len This makes ao_storage_erase take an arbitrary length. The new version erases each storage block if there's any un-erased data present, and then also checks after erasing to make sure the block is clear. Signed-off-by: Keith Packard <keithp@keithp.com>
altos: add APRS 'offset' value to set APRS transmision time This value is the offset from the top of the minute for the first APRS packet in the minute. Subsequent packets will be transmitted 'interval' seconds apart for the rest of the minute. This allows multiple transmitters to be configured to share the same frequency and not transmit at the same time. Note that this offset only works when the device has GPS lock. Signed-off-by: Keith Packard <keithp@keithp.com>
altos: Remove 8051 address space specifiers Signed-off-by: Keith Packard <keithp@keithp.com>
Switch from GPLv2 to GPLv2+ Signed-off-by: Keith Packard <keithp@keithp.com>
altos/telelcotwo: Add idle timeout Puts TeleLCOTwo in a low power state (drawing about 80µA) after a timeout (default two minutes) to keep from killing the battery if the device is left turned on. Signed-off-by: Keith Packard <keithp@keithp.com>
altos: Support pad/lco boxes with fixed box numbers This allows for a configuration without adjustable box numbers on either end of the link, simplifying the UI. Signed-off-by: Keith Packard <keithp@keithp.com>
altos: Make APRS format (compressed/uncompressed) configurable This provides a choice of compressed vs uncompressed when sending APRS packets to deal with receivers that still do not have support for the more useful compressed format. Signed-off-by: Keith Packard <keithp@keithp.com>
altos: Add telerepeat-v1.0 This uses TeleBT hardware to provide a telemetry repeater, receiving packets on one frequency and re-transmitting them on another. Signed-off-by: Keith Packard <keithp@keithp.com>
telegps-v1.0: Provide one log and append to it Instead of creating per-flight logs, create a single log and append data to it each time TeleGPS is powered on. This avoids potentially running out of log space just because the device is powered off/on. Signed-off-by: Keith Packard <keithp@keithp.com>
altos: Add config support for 2400 and 9600 baud telemetry rates Signed-off-by: Keith Packard <keithp@keithp.com>
altos: Make APRS SSID configurable This uses the low-digit from the serial number by default, but lets the user change it if desired. Signed-off-by: Keith Packard <keithp@keithp.com>
altos: Simplify tracker logic, removing boost detect This removes the ao_flight_state value from the tracker code and makes it simply log position information when the device has moved within the last 10 log intervals. This also changes the configuration parameters to define what 'motionless' means, and what interval to configure the GPS receiver for, log data and send telemetry. Signed-off-by: Keith Packard <keithp@keithp.com>
altos: Make extra pyro channel firing time configurable This adds a 'I' parameter to set the extra pyro channel firing time (in ticks). This has no effect on the main/drogue channels. Signed-off-by: Keith Packard <keithp@keithp.com>