fw/altos
4 years agoextend "ok" temp range to 40C, since battery charger on bench can drive temp above
Bdale Garbee [Sun, 12 Jun 2016 15:23:36 +0000 (09:23 -0600)]
extend "ok" temp range to 40C, since battery charger on bench can drive temp above
35C at times in Bdale and Robert's production testing

4 years agoaltos/stmf0: Remove ao_usb_free
Keith Packard [Sun, 12 Jun 2016 05:17:01 +0000 (22:17 -0700)]
altos/stmf0: Remove ao_usb_free

This can't work without a lot more effort.

Signed-off-by: Keith Packard <keithp@keithp.com>
4 years agoaltos/stmf0: Rework the sram allocation to save a few text bytes
Keith Packard [Sun, 12 Jun 2016 05:16:12 +0000 (22:16 -0700)]
altos/stmf0: Rework the sram allocation to save a few text bytes

Boot loaders were going over 4096 bytes of ROM. I suspect we'll need
more serious work soon.

Signed-off-by: Keith Packard <keithp@keithp.com>
4 years agoaltos/cc1115l: Reduce trace buffer size
Keith Packard [Fri, 10 Jun 2016 21:40:26 +0000 (14:40 -0700)]
altos/cc1115l: Reduce trace buffer size

A 32-element trace buffer is all the larger we can fit in teledongle.

Signed-off-by: Keith Packard <keithp@keithp.com>
4 years agoaltos/stm: Handle USB reset in STM32L usb driver
Keith Packard [Fri, 10 Jun 2016 21:39:25 +0000 (14:39 -0700)]
altos/stm: Handle USB reset in STM32L usb driver

Just like lpc and stmf0, deal with the host resetting the bus while
rebooting by restoring all usb-related data to the initial values.

Signed-off-by: Keith Packard <keithp@keithp.com>
4 years agoaltos/lpc: Handle USB reset by resetting internal state
Keith Packard [Fri, 10 Jun 2016 21:33:50 +0000 (14:33 -0700)]
altos/lpc: Handle USB reset by resetting internal state

Just like stmf0, this clears internal state at USB reset time so the
driver can survive host OS reboots.

Signed-off-by: Keith Packard <keithp@keithp.com>
4 years agostmf0: Do not send more data than requested for GET_DESCRIPTOR
Keith Packard [Fri, 10 Jun 2016 05:06:30 +0000 (22:06 -0700)]
stmf0: Do not send more data than requested for GET_DESCRIPTOR

When Linux boots, it asks for only the first 8 bytes of the device
descriptor; we must limit the amount of data sent back to that amount
or USB will get wedged.

Signed-off-by: Keith Packard <keithp@keithp.com>
4 years agostmf0: Clear all USB state when resetting chip. Wakeup all sleepers
Keith Packard [Fri, 10 Jun 2016 05:05:24 +0000 (22:05 -0700)]
stmf0: Clear all USB state when resetting chip. Wakeup all sleepers

When USB is reset, but the board is not power cycled, all of the
internal USB state needs to be reset, and any tasks blocked on sending
or receiving packets need to be awoken so they can go wait for USB to
start running again.

Signed-off-by: Keith Packard <keithp@keithp.com>
4 years agotelegps-v1.0: Document how SN 1959 was fixed
Keith Packard [Fri, 10 Jun 2016 05:03:45 +0000 (22:03 -0700)]
telegps-v1.0: Document how SN 1959 was fixed

SN1959 was fixed by jumpering pin 8 to pin 10 so that the DONE_INT_PIN
could be switched from PIO 2 to PIO 4 as pin 8 appeared to have failed.

Signed-off-by: Keith Packard <keithp@keithp.com>
4 years agoaltosuilib: Only display map debugging when serial_debug is enabled
Keith Packard [Sun, 5 Jun 2016 16:17:12 +0000 (09:17 -0700)]
altosuilib: Only display map debugging when serial_debug is enabled

This keeps the application quiet for most users.

Signed-off-by: Keith Packard <keithp@keithp.com>
4 years agoaltosuilib: Fill preload map on site or lat/lon change
Keith Packard [Sat, 28 May 2016 03:30:18 +0000 (20:30 -0700)]
altosuilib: Fill preload map on site or lat/lon change

This loads the map view with the selected area when the site entry is
changed or the user hits return in the lat/lon fields. This lets you
see the target launch site without having to load the whole preload set.

Signed-off-by: Keith Packard <keithp@keithp.com>
4 years agodoc: pad/idle indicator table was busted
Keith Packard [Thu, 26 May 2016 21:33:44 +0000 (14:33 -0700)]
doc: pad/idle indicator table was busted

I stuck a pile of extra '|' characters in the table by mistake.

Reported-by: Stan <stanleyosmith@gmail.com>
Signed-off-by: Keith Packard <keithp@keithp.com>
4 years agoaltosuilib: Rename AltosUIMap*New.java to AltosUIMap*.java
Keith Packard [Wed, 25 May 2016 06:44:50 +0000 (23:44 -0700)]
altosuilib: Rename AltosUIMap*New.java to AltosUIMap*.java

This code isn't really new anymore...

Signed-off-by: Keith Packard <keithp@keithp.com>
4 years agoaltosuilib: Have map preload respond to units and font size changes
Keith Packard [Wed, 25 May 2016 06:40:47 +0000 (23:40 -0700)]
altosuilib: Have map preload respond to units and font size changes

Just add suitable listeners so that the display updates when
preferences change.

Signed-off-by: Keith Packard <keithp@keithp.com>
4 years agoaltoslib: use miles for distances > 1000ft.
Keith Packard [Wed, 25 May 2016 06:40:03 +0000 (23:40 -0700)]
altoslib: use miles for distances > 1000ft.

This makes both the map line and the other distance displays use miles
for distances greater than 1000 feet.

Signed-off-by: Keith Packard <keithp@keithp.com>
4 years agotelegps: Add monitor idle mode
Keith Packard [Sun, 15 May 2016 20:59:12 +0000 (13:59 -0700)]
telegps: Add monitor idle mode

This monitors directly connected devices. No support for doing monitor
idle using packet mode, as TeleGPS doesn't support that.

Signed-off-by: Keith Packard <keithp@keithp.com>
4 years agotelegps: Use log_space when flight_log_max is missing
Keith Packard [Sun, 15 May 2016 20:58:41 +0000 (13:58 -0700)]
telegps: Use log_space when flight_log_max is missing

TeleGPS has this, but not flight_log_max

Signed-off-by: Keith Packard <keithp@keithp.com>
4 years agoaltoslib: Add AltosIdleReader
Keith Packard [Sun, 15 May 2016 20:57:28 +0000 (13:57 -0700)]
altoslib: Add AltosIdleReader

This provides an AltosFlightReader interface for monitor idle mode,
making that easier to provide in TeleGPS

Signed-off-by: Keith Packard <keithp@keithp.com>
4 years agoaltoslib: Add log_space to AltosState
Keith Packard [Sun, 15 May 2016 20:56:21 +0000 (13:56 -0700)]
altoslib: Add log_space to AltosState

TeleGPS doesn't have flight_log_max value, but does have log_space
which we can use for the same thing in monitor idle mode.

Signed-off-by: Keith Packard <keithp@keithp.com>
4 years agoaltoslib: Set version and log space from AltosIdleFetch
Keith Packard [Sun, 15 May 2016 20:55:12 +0000 (13:55 -0700)]
altoslib: Set version and log space from AltosIdleFetch

Just more data for monitor idle mode

Signed-off-by: Keith Packard <keithp@keithp.com>
4 years agoaltoslib: Allow empty values in AltosHashSet representation
Keith Packard [Sun, 15 May 2016 20:53:38 +0000 (13:53 -0700)]
altoslib: Allow empty values in AltosHashSet representation

Check for value termination before appending the first character.

Signed-off-by: Keith Packard <keithp@keithp.com>
4 years agoaltoslib: Store saved state in version-independent format
Keith Packard [Fri, 13 May 2016 06:33:53 +0000 (23:33 -0700)]
altoslib: Store saved state in version-independent format

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>
4 years agoaltoslib: Store common frequencies in library version-independent form
Keith Packard [Fri, 13 May 2016 02:13:05 +0000 (19:13 -0700)]
altoslib: Store common frequencies in library version-independent form

Serializable Objects in java are very specific to the class being
serialized. As we bump the name of the library on a regular basis to
note API/ABI issues, this mean a saved a Serializable object in
the preferences database will fail to load across library version
upgrades.

The saved tracker state and saved common frequencies were the only
objects saved in this form; this patch adds infrastructure for writing
objects in a version-independent form, and then adds support for
saving frequencies in that form.

Signed-off-by: Keith Packard <keithp@keithp.com>
4 years agoaltosui/telegps/micropeak: Handle both MULTI_LIB and non-MULTI_LIB builds
Keith Packard [Fri, 13 May 2016 02:10:19 +0000 (19:10 -0700)]
altosui/telegps/micropeak: Handle both MULTI_LIB and non-MULTI_LIB builds

On x86 systems with -m32 and -m64 compilers, both libaltos32.so and
libaltos64.so are built. Otherwise, we should use libaltos.so

altosui only dealt with libaltos32.so and libaltos64.so, so it only
worked on MULTI_LIB systems. telegps and micropeak only used
libaltos.so, so they wouldn't work correctly on multi-lib systems.

Fix all of them to work either way.

Signed-off-by: Keith Packard <keithp@keithp.com>
4 years agoAutomatically run 'git submodule update' if necessary
Keith Packard [Fri, 13 May 2016 01:05:14 +0000 (18:05 -0700)]
Automatically run 'git submodule update' if necessary

This makes sure pdclib exists by updating for the all and
all-recursive targets

Signed-off-by: Keith Packard <keithp@keithp.com>
4 years agoBump java library versions
Keith Packard [Thu, 12 May 2016 19:14:03 +0000 (12:14 -0700)]
Bump java library versions

Prepare for 1.6.4 release

Signed-off-by: Keith Packard <keithp@keithp.com>
4 years agoBump android app version
Keith Packard [Thu, 12 May 2016 19:13:45 +0000 (12:13 -0700)]
Bump android app version

Prepare for 1.6.4 release

Signed-off-by: Keith Packard <keithp@keithp.com>
4 years agotelegps: Adapt to distance units switching changes
Keith Packard [Thu, 12 May 2016 06:31:53 +0000 (23:31 -0700)]
telegps: Adapt to distance units switching changes

'show_units' is no longer available; use 'parse_units' instead

Signed-off-by: Keith Packard <keithp@keithp.com>
4 years agoaltoslib: Get rid of AltosMap from AltosMapLoader
Keith Packard [Wed, 11 May 2016 19:48:10 +0000 (12:48 -0700)]
altoslib: Get rid of AltosMap from AltosMapLoader

Cleans up the loader API and eliminates a AltosMapTile for every chunk
of map data.

Signed-off-by: Keith Packard <keithp@keithp.com>
4 years agoaltosdroid: make disconnect stick past pause/restart
Keith Packard [Wed, 11 May 2016 19:43:51 +0000 (12:43 -0700)]
altosdroid: make disconnect stick past pause/restart

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>
4 years agoaltoslib: Clean up map file and url handling
Keith Packard [Wed, 11 May 2016 17:47:31 +0000 (10:47 -0700)]
altoslib: Clean up map file and url handling

move it all to AltosMapStore.java

Signed-off-by: Keith Packard <keithp@keithp.com>
4 years agodoc: Start update for 1.6.4
Keith Packard [Wed, 11 May 2016 06:13:14 +0000 (23:13 -0700)]
doc: Start update for 1.6.4

Signed-off-by: Keith Packard <keithp@keithp.com>
4 years agoaltosuilib: Don't flicker missing voltages when changing units
Keith Packard [Wed, 11 May 2016 06:04:23 +0000 (23:04 -0700)]
altosuilib: Don't flicker missing voltages when changing units

For some reason, a value of MISSING -1 was getting used, which caused
displays to light up briefly with a weird value when switching between
metric and imperial units.

Signed-off-by: Keith Packard <keithp@keithp.com>
4 years agoaltosdroid: Rate limit map loading pacifier
Keith Packard [Wed, 11 May 2016 06:03:45 +0000 (23:03 -0700)]
altosdroid: Rate limit map loading pacifier

Just like in altosui.

Signed-off-by: Keith Packard <keithp@keithp.com>
4 years agoaltoslib: Allow map preloading to be aborted
Keith Packard [Wed, 11 May 2016 06:02:09 +0000 (23:02 -0700)]
altoslib: Allow map preloading to be aborted

Close the map preload dialog and it would be nice to stop loading map
bits.

Signed-off-by: Keith Packard <keithp@keithp.com>
4 years agoaltosuilib: Rate limit map loading pacifier updates
Keith Packard [Wed, 11 May 2016 05:50:23 +0000 (22:50 -0700)]
altosuilib: Rate limit map loading pacifier updates

Just updating the pacifier was consuming a huge amount of CPU. Update
no more than once every 100ms.

Signed-off-by: Keith Packard <keithp@keithp.com>
4 years agoaltoslib: Remove some debug printf calls
Keith Packard [Wed, 11 May 2016 05:49:04 +0000 (22:49 -0700)]
altoslib: Remove some debug printf calls

Signed-off-by: Keith Packard <keithp@keithp.com>
4 years agoaltoslib: Switch distance from m/ft to km/miles for large values
Keith Packard [Wed, 11 May 2016 05:46:58 +0000 (22:46 -0700)]
altoslib: Switch distance from m/ft to km/miles for large values

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>
4 years agoAdd TeleMega to spec list. Add TeleGPS RF output.
Keith Packard [Tue, 10 May 2016 19:29:14 +0000 (12:29 -0700)]
Add TeleMega to spec list. Add TeleGPS RF output.

Signed-off-by: Keith Packard <keithp@keithp.com>
4 years agoPublish firmware with keithp-fat
Keith Packard [Tue, 10 May 2016 19:28:51 +0000 (12:28 -0700)]
Publish firmware with keithp-fat

Signed-off-by: Keith Packard <keithp@keithp.com>
4 years agoaltosdroid: Check for closed before writing/reading bluetooth
Keith Packard [Tue, 10 May 2016 00:57:12 +0000 (17:57 -0700)]
altosdroid: Check for closed before writing/reading bluetooth

Signed-off-by: Keith Packard <keithp@keithp.com>
4 years agoaltosui/telegps: Ship firmware for new hardware
Keith Packard [Tue, 10 May 2016 00:56:28 +0000 (17:56 -0700)]
altosui/telegps: Ship firmware for new hardware

TBT v3.0 and Tmega v2.0

Signed-off-by: Keith Packard <keithp@keithp.com>
4 years agoMerge branch 'master' of ssh://git.gag.com/scm/git/fw/altos
Bdale Garbee [Mon, 9 May 2016 21:52:38 +0000 (15:52 -0600)]
Merge branch 'master' of ssh://git.gag.com/scm/git/fw/altos

4 years agoprocess updates made during 1.6.3 release cycle
Bdale Garbee [Mon, 9 May 2016 21:52:21 +0000 (15:52 -0600)]
process updates made during 1.6.3 release cycle

4 years agoBump version to 1.6.3.1 v1.6.3.1
Keith Packard [Mon, 9 May 2016 18:48:42 +0000 (11:48 -0700)]
Bump version to 1.6.3.1

Post 1.6.3 release

Signed-off-by: Keith Packard <keithp@keithp.com>
4 years agoaltos/cc1111: Use SW to drive UART RTS pin
Keith Packard [Mon, 9 May 2016 18:33:48 +0000 (11:33 -0700)]
altos/cc1111: Use SW to drive UART RTS pin

Can't get the hw to work.

Signed-off-by: Keith Packard <keithp@keithp.com>
4 years agoIgnore some built files for 1.6.3
Keith Packard [Sat, 7 May 2016 00:10:14 +0000 (17:10 -0700)]
Ignore some built files for 1.6.3

Signed-off-by: Keith Packard <keithp@keithp.com>
4 years agoMerge branch 'master' of ssh://git.gag.com/scm/git/fw/altos
Bdale Garbee [Fri, 6 May 2016 23:49:30 +0000 (17:49 -0600)]
Merge branch 'master' of ssh://git.gag.com/scm/git/fw/altos

4 years agoadd beep to TeleMega turnon script
Bdale Garbee [Fri, 6 May 2016 23:49:09 +0000 (17:49 -0600)]
add beep to TeleMega turnon script

4 years agowindows: Change install to look for browser in a different place
Keith Packard [Fri, 6 May 2016 23:46:57 +0000 (16:46 -0700)]
windows: Change install to look for browser in a different place

The windows registry is a mystery.

Signed-off-by: Keith Packard <keithp@keithp.com>
4 years agoaltoslib: Fix map preloading callbacks, run in separate thread
Keith Packard [Thu, 5 May 2016 09:25:52 +0000 (02:25 -0700)]
altoslib: Fix map preloading callbacks, run in separate thread

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>
4 years agomicropeak: Change order of windows install so that java detect works
Keith Packard [Thu, 5 May 2016 06:56:44 +0000 (23:56 -0700)]
micropeak: Change order of windows install so that java detect works

I have no idea why this matters, but if you run the FTDI script before
trying to detect java, then the javaw.exe program isn't found and java
detection fails.

Signed-off-by: Keith Packard <keithp@keithp.com>
4 years agodoc: 1.6.3 release notes note TeleBT rts/cts and TM 2.0 monitor idle fixes
Keith Packard [Thu, 5 May 2016 04:13:31 +0000 (21:13 -0700)]
doc: 1.6.3 release notes note TeleBT rts/cts and TM 2.0 monitor idle fixes

Signed-off-by: Keith Packard <keithp@keithp.com>
4 years agodoc: Update AltosDroid chapter for 1.6.3
Keith Packard [Thu, 5 May 2016 04:12:46 +0000 (21:12 -0700)]
doc: Update AltosDroid chapter for 1.6.3

New menu structure, idle mode and frequency configuration

Signed-off-by: Keith Packard <keithp@keithp.com>
4 years agoaltos: Make sure AO_MMA655X_INVERT is declared where needed
Keith Packard [Mon, 2 May 2016 23:19:39 +0000 (16:19 -0700)]
altos: Make sure AO_MMA655X_INVERT is declared where needed

Add #define AO_MMA655X_INVERT 0 to existing products which didn't
declare it at all. This will make sure the value is set correctly for
each new board.

Signed-off-by: Keith Packard <keithp@keithp.com>
4 years agoaltoslib: Deal with TeleMetrum v2.0 MMA6555 being inverted
Keith Packard [Mon, 2 May 2016 23:13:53 +0000 (16:13 -0700)]
altoslib: Deal with TeleMetrum v2.0 MMA6555 being inverted

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>
4 years agopublish AltosDroid in keithp-fat target
Keith Packard [Sun, 1 May 2016 01:38:42 +0000 (18:38 -0700)]
publish AltosDroid in keithp-fat target

Signed-off-by: Keith Packard <keithp@keithp.com>
4 years agoaltoslib: Flush during set_state. Don't store listener state.
Keith Packard [Sun, 1 May 2016 01:37:05 +0000 (18:37 -0700)]
altoslib: Flush during set_state. Don't store listener state.

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>
4 years agoaltoslib: Correct stats for flights without a real landing
Keith Packard [Sun, 1 May 2016 01:33:25 +0000 (18:33 -0700)]
altoslib: Correct stats for flights without a real landing

The landing time was miscomputed when the flight ended without
entering the landed state, as when the recording terminates at
apogee.

This led to an uncomputed average boost accel, so that is now checked
separately from max accel (which is done over the whole flight, not
just boost).

Signed-off-by: Keith Packard <keithp@keithp.com>
4 years agoaltosdroid: max height is a height, not a speed
Keith Packard [Sun, 1 May 2016 01:30:16 +0000 (18:30 -0700)]
altosdroid: max height is a height, not a speed

Was using the wrong units in the flight tab

Signed-off-by: Keith Packard <keithp@keithp.com>
4 years agoRevert "altos/stm: Run scheduler code on interrupt stack"
Keith Packard [Sat, 30 Apr 2016 15:46:52 +0000 (08:46 -0700)]
Revert "altos/stm: Run scheduler code on interrupt stack"

This reverts commit 6a9546413d6a236c010e806b50506d870961d074.

This causes the device to stop reliably handling interrupts.

4 years agodoc: Add idle mode info to 1.6.3 release note
Keith Packard [Sat, 30 Apr 2016 04:49:43 +0000 (21:49 -0700)]
doc: Add idle mode info to 1.6.3 release note

Signed-off-by: Keith Packard <keithp@keithp.com>
4 years agoaltoslib: Make AltosPreferencesBackend abstract. Add set/put Serializable
Keith Packard [Thu, 28 Apr 2016 19:29:16 +0000 (12:29 -0700)]
altoslib: Make AltosPreferencesBackend abstract. Add set/put Serializable

This lets us add functionality to this directly, such as the new
serializable APIs.

Signed-off-by: Keith Packard <keithp@keithp.com>
4 years agoaltosdroid: Add configurable frequency set
Keith Packard [Wed, 27 Apr 2016 05:40:47 +0000 (01:40 -0400)]
altosdroid: Add configurable frequency set

Signed-off-by: Keith Packard <keithp@keithp.com>
4 years agoFix key in AndroidManifest.xml.in
Keith Packard [Wed, 27 Apr 2016 05:39:01 +0000 (01:39 -0400)]
Fix key in AndroidManifest.xml.in

Signed-off-by: Keith Packard <keithp@keithp.com>
4 years agoaltosdroid: Split setup functions to separate dialog
Keith Packard [Wed, 27 Apr 2016 01:01:44 +0000 (21:01 -0400)]
altosdroid: Split setup functions to separate dialog

Remove them from the options menu, handle all preferences through
listeners.

Signed-off-by: Keith Packard <keithp@keithp.com>
4 years agoaltosdroid: Add idle mode monitoring, reboot. Start igniters
Keith Packard [Tue, 26 Apr 2016 03:12:34 +0000 (23:12 -0400)]
altosdroid: Add idle mode monitoring, reboot. Start igniters

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>
4 years agoaltos: Clear packet queue when starting packet master
Keith Packard [Mon, 25 Apr 2016 22:50:58 +0000 (18:50 -0400)]
altos: Clear packet queue when starting packet master

This avoids overfilling the packet buffer when
disconnected. Applications using packet mode shouldn't expect that
output be saved across master sessions.

Signed-off-by: Keith Packard <keithp@keithp.com>
4 years agoaltos/telebt-v3.0: Flip CTS/RTS pins for BT module
Keith Packard [Mon, 25 Apr 2016 22:49:45 +0000 (18:49 -0400)]
altos/telebt-v3.0: Flip CTS/RTS pins for BT module

These are wired backwards, so ask that the right pins be used, which
requires switching to software control of the pins.

Signed-off-by: Keith Packard <keithp@keithp.com>
4 years agoaltos/stm32l: Add support for software-driven HW flow control
Keith Packard [Mon, 25 Apr 2016 22:48:47 +0000 (18:48 -0400)]
altos/stm32l: Add support for software-driven HW flow control

This allows applications to request that the flow control bits be
driven from software rather than hardware, permitting more flexible
pin configuration.

Signed-off-by: Keith Packard <keithp@keithp.com>
4 years agoaltos: Use TXE instead of TC for serial on STM32l
Keith Packard [Wed, 20 Jan 2016 07:53:27 +0000 (23:53 -0800)]
altos: Use TXE instead of TC for serial on STM32l

Using TXE allows for full-speed communication, rather than waiting for
each byte to be transmitted before inserting the next into the queue.

Signed-off-by: Keith Packard <keithp@keithp.com>
4 years agoDebug bits for telebt
Keith Packard [Mon, 25 Apr 2016 15:47:45 +0000 (11:47 -0400)]
Debug bits for telebt

4 years agoaltoslib: Don't try to drag lines around until map is loaded
Keith Packard [Fri, 22 Apr 2016 23:15:51 +0000 (19:15 -0400)]
altoslib: Don't try to drag lines around until map is loaded

When the transform is null, it's hard to draw lines.

Signed-off-by: Keith Packard <keithp@keithp.com>
4 years agoaltoslib: Report exceptions caught while opening launch sites URL
Keith Packard [Fri, 22 Apr 2016 23:15:05 +0000 (19:15 -0400)]
altoslib: Report exceptions caught while opening launch sites URL

This just dumps them to stdout, which helps debug on Linux at least.

Signed-off-by: Keith Packard <keithp@keithp.com>
4 years agoaltoslib: Use feet per second for imperial speed
Keith Packard [Fri, 22 Apr 2016 23:00:46 +0000 (19:00 -0400)]
altoslib: Use feet per second for imperial speed

This is more useful during descent than miles per hour...

Signed-off-by: Keith Packard <keithp@keithp.com>
4 years agoaltosdroid: Run even without Bluetooth
Keith Packard [Fri, 22 Apr 2016 22:53:32 +0000 (18:53 -0400)]
altosdroid: Run even without Bluetooth

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>
4 years agoaltosdroid: Redraw offline map when my location changes
Keith Packard [Fri, 22 Apr 2016 22:52:42 +0000 (18:52 -0400)]
altosdroid: Redraw offline map when my location changes

Update the map view even if there isn't any current telemetry data.

Signed-off-by: Keith Packard <keithp@keithp.com>
4 years agoaltosdroid: Track device location in app, not telemetry service
Keith Packard [Fri, 22 Apr 2016 21:32:10 +0000 (17:32 -0400)]
altosdroid: Track device location in app, not telemetry service

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>
4 years agoBump version to 1.6.3
Keith Packard [Fri, 22 Apr 2016 21:31:49 +0000 (17:31 -0400)]
Bump version to 1.6.3

Signed-off-by: Keith Packard <keithp@keithp.com>
4 years agoaltosdroid: Can only use message once
Keith Packard [Fri, 22 Apr 2016 02:37:35 +0000 (22:37 -0400)]
altosdroid: Can only use message once

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>
4 years agoAdd preliminary 1.6.3 release notes
Keith Packard [Fri, 22 Apr 2016 01:32:50 +0000 (21:32 -0400)]
Add preliminary 1.6.3 release notes

Signed-off-by: Keith Packard <keithp@keithp.com>
4 years agolibaltos: Fix for Mac OS X El Capitan
Keith Packard [Thu, 21 Apr 2016 00:27:47 +0000 (20:27 -0400)]
libaltos: Fix for Mac OS X El Capitan

USB enumeration for serial devices changed

Signed-off-by: Keith Packard <keithp@keithp.com>
4 years agoFix java class differing only by case
Justin Vreeland [Thu, 21 Apr 2016 12:30:10 +0000 (08:30 -0400)]
Fix java class differing only by case

OSX and Windows cannot handle files with names differing only by
case.  When these files are present in either there's a constant
unfixable change viewable in git status and git diff.

Since this code can be run and compiled on both platforms
names different only by case should be avoided.

Signed-off-by: Justin Vreeland <vreeland.justin@gmail.com>
Signed-off-by: Keith Packard <keithp@keithp.com>
4 years agoPrepare for new Android release by updating version number
Keith Packard [Fri, 22 Apr 2016 01:11:29 +0000 (21:11 -0400)]
Prepare for new Android release by updating version number

10->11

Signed-off-by: Keith Packard <keithp@keithp.com>
4 years agoAltosDroid play store keys have moved, update configure.ac
Keith Packard [Fri, 22 Apr 2016 01:12:06 +0000 (21:12 -0400)]
AltosDroid play store keys have moved, update configure.ac

The actual build files were already updated, but the configure.ac bits
which detect that they are available were not.

Signed-off-by: Keith Packard <keithp@keithp.com>
4 years agoUpdate java library version numbers
Keith Packard [Fri, 22 Apr 2016 01:12:40 +0000 (21:12 -0400)]
Update java library version numbers

Prepare for 1.6.3 release.

Signed-off-by: Keith Packard <keithp@keithp.com>
4 years agoaltos: avoid mixed declarations and code in ao_task.c
Keith Packard [Wed, 20 Apr 2016 03:19:59 +0000 (23:19 -0400)]
altos: avoid mixed declarations and code in ao_task.c

sdcc can't handle this.

Signed-off-by: Keith Packard <keithp@keithp.com>
4 years agoaltoslib: switch from keySet() to keys() in altos map tiles
Keith Packard [Wed, 20 Apr 2016 03:18:46 +0000 (23:18 -0400)]
altoslib: switch from keySet() to keys() in altos map tiles

Android appears to not have the keySet() API in the same way that
regular java does, so use the alternate older keys() api instead.

Signed-off-by: Keith Packard <keithp@keithp.com>
4 years agoaltoslib: Make AltosGPSSat implement Serializable
Keith Packard [Wed, 20 Apr 2016 03:17:50 +0000 (23:17 -0400)]
altoslib: Make AltosGPSSat implement Serializable

This is required to save state values in AltosDroid.

Signed-off-by: Keith Packard <keithp@keithp.com>
4 years agoaltoslib: Add debugging to AltosPreferences.state() etc
Keith Packard [Wed, 20 Apr 2016 03:17:01 +0000 (23:17 -0400)]
altoslib: Add debugging to AltosPreferences.state() etc

This let me find why AltosDroid was losing the last state information
for each target.

Signed-off-by: Keith Packard <keithp@keithp.com>
4 years agoaltosdroid: Don't set target location if lat/lon is MISSING
Keith Packard [Wed, 20 Apr 2016 03:15:26 +0000 (23:15 -0400)]
altosdroid: Don't set target location if lat/lon is MISSING

Otherwise, we get a nice pointer to some random location on the planet.

Signed-off-by: Keith Packard <keithp@keithp.com>
4 years agoaltos/telefiretwo-v0.2: Change alarm names in comment
Keith Packard [Wed, 13 Apr 2016 13:14:33 +0000 (06:14 -0700)]
altos/telefiretwo-v0.2: Change alarm names in comment

The PCB is labeled 'A' and 'B'.

Signed-off-by: Keith Packard <keithp@keithp.com>
4 years agoaltos/stmf0: Fix external interrupts
Keith Packard [Wed, 13 Apr 2016 13:11:44 +0000 (06:11 -0700)]
altos/stmf0: Fix external interrupts

Missing a reserved address in the registers broke everything nicely,
but the priority values were also wrong - stm32f0 exposes 8 bits per
priority, like the stm32l, but it uses only the top two bits.

Signed-off-by: Keith Packard <keithp@keithp.com>
4 years agoAdd TeleFireTwo v0.2 project
Keith Packard [Thu, 7 Apr 2016 05:32:36 +0000 (22:32 -0700)]
Add TeleFireTwo v0.2 project

This is much like TeleFireTwo v0.1, with only one pyro channel and
added siren and strobe

Signed-off-by: Keith Packard <keithp@keithp.com>
4 years agoaltos/telelcotwo: Add idle timeout
Keith Packard [Wed, 6 Apr 2016 06:45:52 +0000 (23:45 -0700)]
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>
4 years agoaltos: Use simpler debounce logic for buttons
Keith Packard [Sat, 26 Dec 2015 04:46:40 +0000 (20:46 -0800)]
altos: Use simpler debounce logic for buttons

Instead of waiting for a while after the transition to decide if it
has stuck, signal the event right away and then ignore other
transitions for the debounce interval.

This seems to work just as reliably, but has the benefit of
eliminating button latency at press time.

Signed-off-by: Keith Packard <keithp@keithp.com>
4 years agoaltos: Add ao_lco_two.c; alternate LCO interface code
Keith Packard [Fri, 25 Dec 2015 19:26:34 +0000 (11:26 -0800)]
altos: Add ao_lco_two.c; alternate LCO interface code

The LCO interface is likely to end up very device specific as the
interactions depends on the input devices. Here's a version for
TeleLCOTwo, which has two arming switches and a firing button.

Signed-off-by: Keith Packard <keithp@keithp.com>
4 years agoaltos: Fix telefiretwo .gitignore
Keith Packard [Tue, 22 Dec 2015 05:52:31 +0000 (21:52 -0800)]
altos: Fix telefiretwo .gitignore

Was ignoring the wrong built files

Signed-off-by: Keith Packard <keithp@keithp.com>
4 years agoaltos: Add TeleLCOTwo firmware
Keith Packard [Tue, 22 Dec 2015 05:50:43 +0000 (21:50 -0800)]
altos: Add TeleLCOTwo firmware

The LCO side of a two-channel launch controller setup.

Signed-off-by: Keith Packard <keithp@keithp.com>
4 years agoaltos: Support pad/lco boxes with fixed box numbers
Keith Packard [Tue, 22 Dec 2015 05:48:37 +0000 (21:48 -0800)]
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>