summaryrefslogtreecommitdiff
path: root/src
Commit message (Collapse)AuthorAge
...
* Add support for the "kite" micropeak variantKeith Packard2014-07-06
| | | | | | | This uses a 100m 'launch detect' altitude and logs data every 19.2s instead of every .192s. Signed-off-by: Keith Packard <keithp@keithp.com>
* altos: Rework packet receive for cc1120Keith Packard2014-07-05
| | | | | | | | | | Instead of blocking on PQT, just set up the receiver to start going and when the first bit interrupt comes in, grab the SPI bus if possible and configure it for reception. This improves sensitivity in the radio by a significant amount while making the code conceptually a bit nicer. Signed-off-by: Keith Packard <keithp@keithp.com>
* altos: Add telemetry rate support to CC1120 driverKeith Packard2014-07-05
| | | | | | This supports the new 2400 and 9600 baud rates Signed-off-by: Keith Packard <keithp@keithp.com>
* altos: Packet reception tuning for cc1120 driverKeith Packard2014-07-05
| | | | | | | This adjusts the cc1120 receive parameters to increase sensitivity at the expense of reporting many more invalid packets to the UI. Signed-off-by: Keith Packard <keithp@keithp.com>
* altos: Add 2400 and 9600 baud telemetry support to cc115l driverKeith Packard2014-07-05
| | | | Signed-off-by: Keith Packard <keithp@keithp.com>
* altos/cc1111: Add 2400 and 9600 baud telemetry rate supportKeith Packard2014-07-05
| | | | Signed-off-by: Keith Packard <keithp@keithp.com>
* altos/cc1111: Adjust receive parameters to improve sensitivityKeith Packard2014-07-05
| | | | | | | | | | This removes the packet quality test and carrier sense tests when deciding whether to start decoding a packet. This lets more bad packets through, but the CRC check catches those and now we're regularly receiving packets down to -110 or even -112 dBm. Before this change, we'd rarely see packets as low as -105dBm Signed-off-by: Keith Packard <keithp@keithp.com>
* altos: Call ao_telemetry_reset_interval when telemetry rate changesKeith Packard2014-07-05
| | | | | | | This lets the radio code adjust the telemetry packet sending pattern when the data rate changes. Signed-off-by: Keith Packard <keithp@keithp.com>
* altos: Add config support for 2400 and 9600 baud telemetry ratesKeith Packard2014-07-05
| | | | Signed-off-by: Keith Packard <keithp@keithp.com>
* altos: Add defines for 2400 and 9600 baud telemetry ratesKeith Packard2014-07-05
| | | | Signed-off-by: Keith Packard <keithp@keithp.com>
* altos: Reduce configuration data telemetry to once per 5 secondsKeith Packard2014-07-05
| | | | | | | This data is constant, so we don't need to send it very often. Once every five seconds should be plenty. Signed-off-by: Keith Packard <keithp@keithp.com>
* altos: Use TeleMetrum v1.9 board for MegaDongle experimentsKeith Packard2014-07-05
| | | | | | | This configures the MegaDongle v0.1 directory to use the pin assignments in TeleMetrum v1.9 boards. Signed-off-by: Keith Packard <keithp@keithp.com>
* altos: Stop sticking cc1111 firmware in src directoryKeith Packard2014-07-05
| | | | | | This just clutters src. Signed-off-by: Keith Packard <keithp@keithp.com>
* altos: ao_rssi subsystem needs to use AO_LED_TYPE instead of uint8_tKeith Packard2014-07-05
| | | | Signed-off-by: Keith Packard <keithp@keithp.com>
* altos/ao_flight_test: Get the Tmega version compiling againKeith Packard2014-06-24
| | | | | | A few changes broke this recently. Signed-off-by: Keith Packard <keithp@keithp.com>
* altos: Add optional debugging to print out pyro firing statusKeith Packard2014-06-24
| | | | | | | This dumps pyro check failures for ao_flight_test so you can see why pyro charges aren't firing. Signed-off-by: Keith Packard <keithp@keithp.com>
* altos: Make APRS SSID configurableKeith Packard2014-06-22
| | | | | | | 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/aprs: Encode last serial number in SSID. Transmit serial in commentKeith Packard2014-06-20
| | | | | | | | This makes it a lot easier to tell which device is sending information, and to receive data from multiple devices on the same receiver. Signed-off-by: Keith Packard <keithp@keithp.com>
* altos/micropeak: Add load script templateKeith Packard2014-06-16
| | | | Signed-off-by: Keith Packard <keithp@keithp.com>
* altos/micropeak: Create a script to load firmware.Keith Packard2014-06-16
| | | | | | | | The micropeak-load script flashes micropeak with firmware from whatever directory it is sitting in. A 'publish' target in the source directory copies the script and hex to ~/altusmetrumllc/Binaries Signed-off-by: Keith Packard <keithp@keithp.com>
* altos/telegps: Create new flight if current flight is erasedKeith Packard2014-06-12
| | | | | | | | | | | telegps is unique in that USB may be connected while a flight is active and sensible things should happen. If a flight is being recorded and gets erased, then a new flight should be started. This is done by hooking in the flight erase code and calling out to the tracker code to figure out whether to switch to a new flight or not. Signed-off-by: Keith Packard <keithp@keithp.com>
* altos: Define ao_log_mutex in ao_log.c rather than every log productKeith Packard2014-06-12
| | | | Signed-off-by: Keith Packard <keithp@keithp.com>
* altos/telegps: Keep ring of recent GPS positions to detect motion quicklyKeith Packard2014-06-12
| | | | | | | Instead of comparing only against the last logged value, keep a ring and start logging as soon as we move away from the furthest one in the ring. Signed-off-by: Keith Packard <keithp@keithp.com>
* altos/telegps: Set default log to 496kB for 4 logsKeith Packard2014-06-12
| | | | | | This leaves space for four flight logs. Signed-off-by: Keith Packard <keithp@keithp.com>
* altos: Show current flight number for TeleGPSKeith Packard2014-06-12
| | | | Signed-off-by: Keith Packard <keithp@keithp.com>
* altos/telegps: Don't log data when plugged in to USBKeith Packard2014-06-12
| | | | | | | We don't want to accidentally log stuff when you're just trying to charge the battery. Signed-off-by: Keith Packard <keithp@keithp.com>
* altos/telegps: Build .ihx versions for TeleGPSKeith Packard2014-06-11
| | | | | | Needed to load with java Signed-off-by: Keith Packard <keithp@keithp.com>
* altos: Re-enable telemini v2.0 buildsKeith Packard2014-06-11
| | | | Signed-off-by: Keith Packard <keithp@keithp.com>
* altos/telemini-v2.0: Disable beep frequency config on TeleMini v2.0Keith Packard2014-06-11
| | | | | | Not enough flash otherwise. Signed-off-by: Keith Packard <keithp@keithp.com>
* altos: Disable TeleMini v2.0 build for nowKeith Packard2014-06-11
|
* altos: Set TeleGPS default log size to half of avaiable memoryKeith Packard2014-06-10
| | | | | | | | LPC11U14 doesn't have on-chip config space, so we're consuming a block of external flash. As a result, only 1984kB are available for logging. Set the default log size to half of that to store two flights. Signed-off-by: Keith Packard <keithp@keithp.com>
* altos: Simplify tracker logic, removing boost detectKeith Packard2014-06-10
| | | | | | | | | | 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>
* Revert adding state to GPS location packetsKeith Packard2014-06-10
| | | | | | TeleGPS no longer has ao_flight_state Signed-off-by: Keith Packard <keithp@keithp.com>
* altos: Make extra pyro channel firing time configurableKeith Packard2014-06-10
| | | | | | | 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>
* altos: Report total available log space in version commandKeith Packard2014-06-10
| | | | | | | | This provides a more accurate means of determining available log space than guessing whether some portion of the flash chip holds configuration data. Signed-off-by: Keith Packard <keithp@keithp.com>
* Revert "altos: Write current flight state to GPS data from GPS drivers"Keith Packard2014-06-10
| | | | This reverts commit db6003d34595fbd103d5b131912b6a797254f1c5.
* altos: Enable ADC for TeleGPS v1.0 battery voltage measuringKeith Packard2014-06-07
| | | | Signed-off-by: Keith Packard <keithp@keithp.com>
* altos: Encode TeleGPS battery voltage in configuration packetKeith Packard2014-06-07
| | | | | | TeleGPS doesn't need apogee delay, so re-purpose it for the battery voltage Signed-off-by: Keith Packard <keithp@keithp.com>
* altos: Make telegps builds depend on ao_tracker.hKeith Packard2014-06-07
| | | | Signed-off-by: Keith Packard <keithp@keithp.com>
* altos: Reduce tracker GPS buffer to 4 samplesKeith Packard2014-06-07
| | | | | | We just don't have enough RAM for 8 samples. Signed-off-by: Keith Packard <keithp@keithp.com>
* altos: Define lat/lon sum variables as 64-bit instead of 16Keith Packard2014-06-07
| | | | | | Oops. 16 bits won't hold position information... Signed-off-by: Keith Packard <keithp@keithp.com>
* altos: Use 0x80 to indicate valid state value in the GPS location packetKeith Packard2014-06-07
| | | | | | | And only set this for tracker products; other products place state in separate state packets Signed-off-by: Keith Packard <keithp@keithp.com>
* altos: Switch TeleGPS to GPS logging formatKeith Packard2014-06-07
| | | | | | It's customized for TeleGPS uses Signed-off-by: Keith Packard <keithp@keithp.com>
* altos: Update other CONFIG_EEPROM users to set LOG_ERASE_MARKKeith Packard2014-06-07
| | | | | | | All products placing config and erase marks in on-CPU EEPROM needs to configure the erase code correctly. Signed-off-by: Keith Packard <keithp@keithp.com>
* altos: Write tracker logging from tracker thread directlyKeith Packard2014-06-07
| | | | | | Also, logs 8 pre-launch GPS packets so we can get the ground position. Signed-off-by: Keith Packard <keithp@keithp.com>
* altos: Write current flight state to GPS data from GPS driversKeith Packard2014-06-07
| | | | | | | This will be useful with TeleGPS which has no other packet containing flight state. Signed-off-by: Keith Packard <keithp@keithp.com>
* altos: Add TeleGPS logging formatKeith Packard2014-06-07
| | | | | | | | | | | | | This is mostly like the mega format, but places the flight state in a spare byte of the GPS data and writes the gps starting location to the flight packet. Log data is written by the main tracker thread; there's no reason for a separate thread given the GPS update rate and the lack of flight controls. This means ao_log_gps has an API to be called from there, rather than a thread to run. Signed-off-by: Keith Packard <keithp@keithp.com>
* altos/telemega-v1.0: Adjust config params to make flight erase workKeith Packard2014-06-07
| | | | | | | | | | | | | | | Flight erase records are supposed to be written after the ao_config to eeprom in telemega. They were getting written in the middle of one of the pyro channel config blocks. Put a bunch of space between the two by making the config max 1024 bytes instead of 128 bytes. Set the log erase marker to 0x55 -- eeprom comes from the factory as 0x00, so we use any value other than 0x55 to indicate 'unused' erase slots. Save space for more flight erase blocks; we've got plenty. Signed-off-by: Keith Packard <keithp@keithp.com>
* altos: Clear out eeprom erase records when writing entry 0Keith Packard2014-06-07
| | | | | | | | | | When writing config/erase to eeprom, there's no 'erase' operation as on-chip eeprom is writable at a byte level. As such, we can't tell when the erase blocks get reset when the config gets written. When this happens, erase block 0 gets written explicitly, so just use that call to trigger explicit erasing of the data. Signed-off-by: Keith Packard <keithp@keithp.com>
* altos: Allow value other than 0 for marking erased flightsKeith Packard2014-06-07
| | | | | | | on-chip eeprom doesn't erase to 0xff, so let TeleMega use a different value. Signed-off-by: Keith Packard <keithp@keithp.com>