summaryrefslogtreecommitdiff
path: root/altoslib
Commit message (Collapse)AuthorAge
...
* altoslib: Use first pressure value if no ground pressure availableKeith Packard2017-05-28
| | | | Signed-off-by: Keith Packard <keithp@keithp.com>
* altoslib: Handle eeprom tick wrappingKeith Packard2017-05-28
| | | | | | | | | Need to deal with eeprom files with tick values that cross the 16-bit barrier. Use 'wide_tick' to order eeprom record. Remeber 'prev_tick' to order cal data time sequence. Signed-off-by: Keith Packard <keithp@keithp.com>
* altoslib: Adjust boost/landed time in flight series for displayKeith Packard2017-05-28
| | | | | | Makes the presented values match those used in the stats computation. Signed-off-by: Keith Packard <keithp@keithp.com>
* altoslib: Add constants for speed/accel filteringKeith Packard2017-05-28
| | | | | | With an eye towards letting the user pick. Signed-off-by: Keith Packard <keithp@keithp.com>
* altoslib: Create data file open helper in AltosLibKeith Packard2017-05-28
| | | | | | | Use InputStream everywhere, instead of Reader. Create private string input stream as java one is deprecated. Signed-off-by: Keith Packard <keithp@keithp.com>
* altoslib: Extract a few more values from config to cal_dataKeith Packard2017-05-28
| | | | | | Make it possible to display model/version data in the flight stats table. Signed-off-by: Keith Packard <keithp@keithp.com>
* altoslib: Provide consistent cal_data from idle and replay readersKeith Packard2017-05-27
| | | | Signed-off-by: Keith Packard <keithp@keithp.com>
* altoslib: Return AltosTimeValue from min/max funcsKeith Packard2017-05-27
| | | | | | Allowing the user to have both value and time. Signed-off-by: Keith Packard <keithp@keithp.com>
* altoslib: Publish boost_time and landed_time from AltosFlightStatsKeith Packard2017-05-27
| | | | | | Nice to be able to use these when displaying data. Signed-off-by: Keith Packard <keithp@keithp.com>
* altoslib: Allow for other tick sizesKeith Packard2017-05-27
| | | | | | | Use 1/100 sec by default, but provide for MicroPeak which uses a different step. Signed-off-by: Keith Packard <keithp@keithp.com>
* altoslib: Change how speed/accel are computed from pressureKeith Packard2017-05-27
| | | | | | | Filter *then* differentiate. This works way better that doing things in the other order. Signed-off-by: Keith Packard <keithp@keithp.com>
* telegps: Get telegps application working againKeith Packard2017-05-27
| | | | | | Many minor API tweaks Signed-off-by: Keith Packard <keithp@keithp.com>
* altosdroid: Deal with AltosState changesKeith Packard2017-05-27
| | | | | | | | cal data split out from altos state. altos state needed to have no-arguments constructor for JSON code. Also messed with voice to make it stay quiet during app startup. Signed-off-by: Keith Packard <keithp@keithp.com>
* altoslib: Use cal data temp gps for telemetry data tooKeith Packard2017-05-26
| | | | | | This avoids bouncing the location data during flight Signed-off-by: Keith Packard <keithp@keithp.com>
* altoslib: Trim stale bits of AltosStateKeith Packard2017-05-26
| | | | | | Much of this is now in AltosCalData. Signed-off-by: Keith Packard <keithp@keithp.com>
* altoslib: Preserve old GPS data during operationKeith Packard2017-05-26
| | | | | | | This avoids having the lat/lon values blank out when the GPS receiver looses lock. Signed-off-by: Keith Packard <keithp@keithp.com>
* altoslib: Get KML export working againKeith Packard2017-05-26
| | | | | | Even annotate the states with avg speed/accel for fun. Signed-off-by: Keith Packard <keithp@keithp.com>
* altoslib: Make sure AltosFlightSeries is filled in before useKeith Packard2017-05-26
| | | | | | | After all of the raw data is captured, the derived data needs to be computed by calling the 'finish' function. Signed-off-by: Keith Packard <keithp@keithp.com>
* altoslib: Make AltosReplayReader start synchronously enough to track statesKeith Packard2017-05-26
| | | | | | | | | | The Altos UI needs to see 'pad' state and then 'boost' state so that it will automatically switch tabs during the flight. When reading from eeprom files, the only way that is going to happen is if the reader thread waits until the UI has definitely seen 'pad' state, which we do by simply delaying the reader thread until after that has happened. Signed-off-by: Keith Packard <keithp@keithp.com>
* altoslib,altosuilib,altosui: Get stats and replay working again.Keith Packard2017-05-26
| | | | | | | | Stats are really easy with all of the data in memory. Replay takes a special thread to run the data and dump it into a single state. Signed-off-by: Keith Packard <keithp@keithp.com>
* altoslib/altosuilib/altosui: More work towards using AltosFlightSeries for ↵Keith Packard2017-05-25
| | | | | | | | analysis Graphing and CSV seem complete now; stats still missing lots of stuff. Signed-off-by: Keith Packard <keithp@keithp.com>
* altoslib: Do data analysis on raw values rather than AltosStateKeith Packard2017-05-25
| | | | | | | | Use AltosFlightSeries instead of a sequence of AltosState records when processing saved data. This provides a better way of doing filtering and plotting. Signed-off-by: Keith Packard <keithp@keithp.com>
* altoslib: Don't store computed telemetry fieldsKeith Packard2017-05-23
| | | | | | These values are only needed once, so there's no reason to save them. Signed-off-by: Keith Packard <keithp@keithp.com>
* add thrust as a graphable time series typeBdale Garbee2017-05-19
|
* altoslib: Create new abstraction underneath AltosState for recording valuesKeith Packard2017-05-19
| | | | | | | Provides a way for the graph API to see raw data values, instead of those cooked by AltosState. Signed-off-by: Keith Packard <keithp@keithp.com>
* altoslib: include TimeSeries code in buildBdale Garbee2017-05-19
|
* altoslib: Add initial time series functionsKeith Packard2017-05-19
| | | | | | | Provides the basis for offering a sequence of time/value datasets for graphing instead of using AltosState. Signed-off-by: Keith Packard <keithp@keithp.com>
* altoslib: Set default accel cal for old TeleMetrum v1 filesKeith Packard2017-05-15
| | | | | | | | Before we stashed the config data in the log file, altoslib had to "known" what the accelerometer calibration values should be set to. Signed-off-by: Keith Packard <keithp@keithp.com>
* altoslib: Set default log format to FULL until we learn differentKeith Packard2017-05-15
| | | | | | | Ancient log files don't even have a product name in them, so we'll guess TeleMetrum v1. Signed-off-by: Keith Packard <keithp@keithp.com>
* altoslib: Mark AltosConfigData fields as MISSING until setKeith Packard2017-05-15
| | | | | | Instead of using -1 or 0 randomly, use MISSING consistently. Signed-off-by: Keith Packard <keithp@keithp.com>
* altoslib: Handle TeleBT v4.0 battery voltageKeith Packard2017-05-13
| | | | | | | The device reports raw ADC values, which mean AltosLib needs to translate them. Signed-off-by: Keith Packard <keithp@keithp.com>
* altoslib: Another bit of altoslib for the old eeprom stuffKeith Packard2017-05-13
| | | | Signed-off-by: Keith Packard <keithp@keithp.com>
* initial tests made using Terry's stand with a 2500psi sensorBdale Garbee2017-05-11
|
* telefiretwo: don't try to record pre-burn sensor values in FLIGHT recordBdale Garbee2017-05-11
|
* altoslib: Remove older eeprom handling codeKeith Packard2017-05-09
| | | | | | The new code appears to work in minor testing; time to try it all the time. Signed-off-by: Keith Packard <keithp@keithp.com>
* altoslib: Save eeprom data in new .eeprom formatKeith Packard2017-05-09
| | | | | | A chunk of json for the config values followed by hex numbers for the data. Signed-off-by: Keith Packard <keithp@keithp.com>
* altoslib: Hack up AltosEepromFile to support new eeprom codeKeith Packard2017-05-09
| | | | | | Redirect when asked to read an eeprom file using the "Reader" type. Signed-off-by: Keith Packard <keithp@keithp.com>
* altoslib: Compile AltosForce and AltosPressureKeith Packard2017-05-09
| | | | | | Useful if you want to actually use these. Signed-off-by: Keith Packard <keithp@keithp.com>
* altoslib: Add new eeprom management codeKeith Packard2017-05-09
| | | | | | Generic .eeprom file parsing, simpler per-type eeprom data extraction. Signed-off-by: Keith Packard <keithp@keithp.com>
* altoslib: Add set_config_data to AltosStateKeith Packard2017-05-09
| | | | | | Initialize all config-data related state values. Signed-off-by: Keith Packard <keithp@keithp.com>
* altoslib: Add empty constructor for AltosPyro for JSONKeith Packard2017-05-09
| | | | Signed-off-by: Keith Packard <keithp@keithp.com>
* altoslib: Add Ms5607 constructor that just takes config_dataKeith Packard2017-05-09
| | | | | | Use for making Ms5607 from eeprom files. Signed-off-by: Keith Packard <keithp@keithp.com>
* altoslib: Add AltosForce and AltosPressure unitsKeith Packard2017-05-09
| | | | | | Useful for TeleFireTwo. Signed-off-by: Keith Packard <keithp@keithp.com>
* altoslib: Hide members from json by prefixing with __Keith Packard2017-05-09
| | | | | | | This lets some structures which would otherwise recurse (and crash) get converted to json, assuming the hidden members aren't relevant. Signed-off-by: Keith Packard <keithp@keithp.com>
* altoslib: Fix MS5607 raw data to pressure conversion functionMiguel Benavidez2017-05-04
| | | | | | | | | | | | | | | | | | | | | | | | | | | | The MS5607 sensor provides raw 24-bit ADC outputs to the host along with calibration constants necessary to convert those into temperature and pressure values. The datasheet has a flow chart indicating how to perform this computation. There are two parts of the algorithm which adjust the result based on the ambient temperature, temperatures below 20°C get one compensation factor and temperatures below -15°C get an additional factor. The ground station version of this function mistakenly applied the second compensation factor for all temperatures below +15°C. The result was that the pressure computed on the ground when the measured temperature was between -15°C and +15°C was incorrect, resulting in altitudes which were several hundred meters off in some situations. This can be seen when displaying any .eeprom (or .mpd) data files for flights with temperatures in that range. The datafiles themselves are not corrupted, only the display operation. This is not seen for telemetry data, where the pressure and associated altitude is computed in the airframe using the correct algorithm. Thanks much to Miguel and the rest of the Vanguard School TARC team for identifying the problem and providing this fix. Signed-off-by: Keith Packard <keithp@keithp.com>
* Fake thrust data as accel for nowKeith Packard2017-04-25
|
* altoslib: renamed AltosSensorTMini2, but didn't update AltosIdleFetchKeith Packard2017-04-24
| | | | | | Because Java found the old installed version of this library. Thanks! Signed-off-by: Keith Packard <keithp@keithp.com>
* altoslib: Add TeleFireTwo eeprom supportKeith Packard2017-04-22
| | | | Signed-off-by: Keith Packard <keithp@keithp.com>
* altoslib: Add TeleMini v3 supportKeith Packard2017-02-20
| | | | | | | | eeprom, telemetry and monitor idle. This is just like TeleMini v2, except the ADC ranges are all difference as the voltage dividers are different and the ADC itself has a different range. Signed-off-by: Keith Packard <keithp@keithp.com>
* altoslib: Add a 'seconds' method to AltosGPSKeith Packard2016-08-02
| | | | | | | This computes the time in seconds since the epoch from GPS time information. Signed-off-by: Keith Packard <keithp@keithp.com>