summaryrefslogtreecommitdiff
path: root/altosdroid/src
Commit message (Collapse)AuthorAge
* altosdroid: cal_data is no longer public from AltosStateKeith Packard2017-06-27
| | | | | | Use cal_data() method instead. Signed-off-by: Keith Packard <keithp@keithp.com>
* altoslib,altosuilib: Bump library version numbersKeith Packard2017-06-13
| | | | | | The API and ABI have changed a bit since 1.7 Signed-off-by: Keith Packard <keithp@keithp.com>
* altosui, telegps, altosdroid: say ground distance, not total rangeKeith Packard2017-06-11
| | | | | | Ground distance is more useful in predicting recovery than total range. 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>
* Switch from GPLv2 to GPLv2+Keith Packard2016-07-12
| | | | Signed-off-by: Keith Packard <keithp@keithp.com>
* altosdroid: Auto save freq changes on 'ok'Keith Packard2016-06-15
| | | | | | | Add any pending changes in the edit entries to the frequency set when the user selects 'ok'. Signed-off-by: Keith Packard <keithp@keithp.com>
* altoslib: Store saved state in version-independent formatKeith Packard2016-05-12
| | | | | | | Use AltosHashSet for AltosState so that AltosDroid doesn't lose tracker information when the application is upgraded. Signed-off-by: Keith Packard <keithp@keithp.com>
* Bump java library versionsKeith Packard2016-05-12
| | | | | | Prepare for 1.6.4 release Signed-off-by: Keith Packard <keithp@keithp.com>
* altoslib: Get rid of AltosMap from AltosMapLoaderKeith Packard2016-05-11
| | | | | | | Cleans up the loader API and eliminates a AltosMapTile for every chunk of map data. Signed-off-by: Keith Packard <keithp@keithp.com>
* altosdroid: make disconnect stick past pause/restartKeith Packard2016-05-11
| | | | | | | Clear the active_device preference on disconnect so we don't reconnect anytime the service gets activated. Signed-off-by: Keith Packard <keithp@keithp.com>
* altosdroid: Rate limit map loading pacifierKeith Packard2016-05-11
| | | | | | Just like in altosui. Signed-off-by: Keith Packard <keithp@keithp.com>
* altoslib: Allow map preloading to be abortedKeith Packard2016-05-11
| | | | | | | Close the map preload dialog and it would be nice to stop loading map bits. Signed-off-by: Keith Packard <keithp@keithp.com>
* altoslib: Switch distance from m/ft to km/miles for large valuesKeith Packard2016-05-11
| | | | | | | This adds lots of infrastructure to deal with making the unit used depend on the value itself, and then uses it only for distances. Signed-off-by: Keith Packard <keithp@keithp.com>
* altosdroid: Check for closed before writing/reading bluetoothKeith Packard2016-05-11
| | | | Signed-off-by: Keith Packard <keithp@keithp.com>
* altoslib: Fix map preloading callbacks, run in separate threadKeith Packard2016-05-05
| | | | | | | | | | | | | | | | | The map storage and tile callbacks were muddled together. Create clearly separate states for map data and have status updates be delivered when registering for new status events so that registration is sufficient to track the state without an explicit call to get the current state. Run the map tile creation in a separate thread so that even checking status of files on disk runs out of the UI thread. These fixes serve to make the pacifier update more smoothly, and also not over/under count tile loading so that the loading actually completes when all of the tiles are loaded. Signed-off-by: Keith Packard <keithp@keithp.com>
* altoslib: Deal with TeleMetrum v2.0 MMA6555 being invertedKeith Packard2016-05-02
| | | | | | | | | | | | | | | | Dumping the MMA655X data with the 'A' command provides the raw sensor value. On TM v2.0 boards, the sensor is inverted, and all of the firmware uses the inverted value except for the 'dump the raw data' command. As a result, MonitorIdle was using the un-inverted value and displaying mystic values. I've fixed this in the ground station code by checking the product name and conditionally inverting the value (4095 - value) for TeleMetrum v2.0 products. Unknown products will generate a warning dialog on AltosUI so we'll catch places where we've failed to add a new product name. Signed-off-by: Keith Packard <keithp@keithp.com>
* altoslib: Flush during set_state. Don't store listener state.Keith Packard2016-04-30
| | | | | | | | The listener state wasn't used anyways, so don't bother storing it. Also, flush the state during set_state, which actually causes the state to be written out. Signed-off-by: Keith Packard <keithp@keithp.com>
* altosdroid: max height is a height, not a speedKeith Packard2016-04-30
| | | | | | Was using the wrong units in the flight tab Signed-off-by: Keith Packard <keithp@keithp.com>
* altoslib: Make AltosPreferencesBackend abstract. Add set/put SerializableKeith Packard2016-04-28
| | | | | | | This lets us add functionality to this directly, such as the new serializable APIs. Signed-off-by: Keith Packard <keithp@keithp.com>
* altosdroid: Add configurable frequency setKeith Packard2016-04-27
| | | | Signed-off-by: Keith Packard <keithp@keithp.com>
* altosdroid: Split setup functions to separate dialogKeith Packard2016-04-26
| | | | | | | Remove them from the options menu, handle all preferences through listeners. Signed-off-by: Keith Packard <keithp@keithp.com>
* altosdroid: Add idle mode monitoring, reboot. Start ignitersKeith Packard2016-04-25
| | | | | | | This adds three idle mode operations -- monitor idle, reboot flight computer and test igniters. The igniter test isn't quite wired up. Signed-off-by: Keith Packard <keithp@keithp.com>
* altosdroid: Run even without BluetoothKeith Packard2016-04-22
| | | | | | | This lets us view old state information on USB-only devices, or when the bluetooth device can't be enabled. Signed-off-by: Keith Packard <keithp@keithp.com>
* altosdroid: Redraw offline map when my location changesKeith Packard2016-04-22
| | | | | | Update the map view even if there isn't any current telemetry data. Signed-off-by: Keith Packard <keithp@keithp.com>
* altosdroid: Track device location in app, not telemetry serviceKeith Packard2016-04-22
| | | | | | | This means we get location even if there isn't a telemetry device connected, making it possible to walk to old device locations Signed-off-by: Keith Packard <keithp@keithp.com>
* altosdroid: Can only use message onceKeith Packard2016-04-21
| | | | | | | And here I thought re-using the message was clever. That generates a nice exception and crashes the program. Signed-off-by: Keith Packard <keithp@keithp.com>
* Update java library version numbersKeith Packard2016-04-21
| | | | | | Prepare for 1.6.3 release. Signed-off-by: Keith Packard <keithp@keithp.com>
* altoslib: Add debugging to AltosPreferences.state() etcKeith Packard2016-04-19
| | | | | | | This let me find why AltosDroid was losing the last state information for each target. Signed-off-by: Keith Packard <keithp@keithp.com>
* altosdroid: Don't set target location if lat/lon is MISSINGKeith Packard2016-04-19
| | | | | | Otherwise, we get a nice pointer to some random location on the planet. Signed-off-by: Keith Packard <keithp@keithp.com>
* Update java library versionsKeith Packard2016-01-10
| | | | | | altoslib is API incompatible with 1.6.1 release due to altos.state updates. Signed-off-by: Keith Packard <keithp@keithp.com>
* altoslib: Clean up remaining direct AltosState.state usersKeith Packard2015-10-13
| | | | | | | This value has been hidden to avoid having it written accidentally; there were a few more bits of code using it though. Signed-off-by: Keith Packard <keithp@keithp.com>
* Bump Java library versionsKeith Packard2015-07-15
| | | | | | Avoid problems if you have an old version of the library installed Signed-off-by: Keith Packard <keithp@keithp.com>
* altosdroid: Clean up tab layoutKeith Packard2015-07-11
| | | | | | | Fuss with weights and gravitys, then add some wrapping layouts to get things looking reasonable on small and larger screens. Signed-off-by: Keith Packard <keithp@keithp.com>
* altosdroid: Add 'Auto' to map tracker listKeith Packard2015-07-11
| | | | | | Add an 'auto' menu entry when selecting trackers from the map. Signed-off-by: Keith Packard <keithp@keithp.com>
* altosdroid: Note time at startup to avoid flipping trackersKeith Packard2015-07-11
| | | | | | | Need to set the initial 'switch' time in onStart to avoid flipping between trackers before we've done any other 'switching' action. Signed-off-by: Keith Packard <keithp@keithp.com>
* altosdroid: Add other igniter status, various other layout changesKeith Packard2015-07-11
| | | | | | | Show the first four igniters (A-D) in the pad tab. Make pad and flight layouts look a bit better Signed-off-by: Keith Packard <keithp@keithp.com>
* altosdroid: Don't disconnect from bluetooth onStartCommandKeith Packard2015-07-11
| | | | | | | If we've already got a bluetooth connection running, don't slam it shut when the UI starts up again. Signed-off-by: Keith Packard <keithp@keithp.com>
* altosdroid: Remove a debug line in AltosVoiceKeith Packard2015-07-11
| | | | Signed-off-by: Keith Packard <keithp@keithp.com>
* altosdroid: Pop up menu of nearby trackers on map clickKeith Packard2015-07-11
| | | | | | | | This lets the user select one of potentially many overlapping trackers, and also makes it clear when the current tracker is being changed. Signed-off-by: Keith Packard <keithp@keithp.com>
* altosdroid: Keep speaking even when screen is offKeith Packard2015-07-11
| | | | | | | | Move the voice and telemetry disabling calls from onStop to onDestroy so that a stopped application only leaves off updating the screen, and not the voice bits as well. Signed-off-by: Keith Packard <keithp@keithp.com>
* altoslib: Preload maps based on distance rather than number of tilesKeith Packard2015-07-11
| | | | | | | This lets you get the specific area requested at all zoom levels, rather than having further detail only at lower resolution zooms. Signed-off-by: Keith Packard <keithp@keithp.com>
* altosdroid: Class of offline map view widget changedKeith Packard2015-06-25
| | | | | | Switch around AltosViewPager to match. Signed-off-by: Keith Packard <keithp@keithp.com>
* altosdroid: Display direction in map viewKeith Packard2015-06-24
| | | | | | Use direction in map view when available, otherwise use bearing Signed-off-by: Keith Packard <keithp@keithp.com>
* altosdroid: Make sure flight voice output always starts with 'speed'Keith Packard2015-06-23
| | | | | | | This resets the flight-mode voice output state back to start again each time the flight tab is selected Signed-off-by: Keith Packard <keithp@keithp.com>
* altosdroid: Make sure whole flight state is spoken even when no-one is movingKeith Packard2015-06-23
| | | | | | | This eliminates the case where much of the flight state wasn't reported if the tracker or receiver weren't moving. Signed-off-by: Keith Packard <keithp@keithp.com>
* altosdroid: Change voice output aroundKeith Packard2015-06-23
| | | | | | | | | | | | | | | | | | | | | | | This makes the voice output depend on the current displayed tab; where the 'recovery' and 'map' tabs get the same value. Pad Reports igniter and GPS status changes Flight Report flight state changes and max height after apogee Report current speed, height and bearing/elevation/range once every 10 seconds while the rocket is in motion. Recovery Report distance and bearing when the location of either the tracker or the receiver changes by more than 10m, but not more than once every 10 seconds. Signed-off-by: Keith Packard <keithp@keithp.com>
* altosdroid: Define strings for the tab namesKeith Packard2015-06-23
| | | | | | | Use these everywhere instead of replicating the same name; might reduce errors. Signed-off-by: Keith Packard <keithp@keithp.com>
* altosdroid: Show direction to target in recover tabKeith Packard2015-06-23
| | | | | | | | This takes the bearing to target and current direction of motion (from the Android API) and computes a turn amount and displays that so you don't have to know which way is north when walking towards the rocket. Signed-off-by: Keith Packard <keithp@keithp.com>
* altosdroid: Fix line drawing to old tracker locationKeith Packard2015-06-22
| | | | | | | | Selecting an old tracker would often fail to switch the bearing line as it was using the map data instead of just using the local data for the relavant tracker. Signed-off-by: Keith Packard <keithp@keithp.com>
* altosdroid: Allow tracker selection from online map widgetKeith Packard2015-06-22
| | | | | | Need separate tracker selection code for online maps Signed-off-by: Keith Packard <keithp@keithp.com>