fw/altos
3 weeks agoupdate changelog for Debian build debian debian/1.6.3-1
Bdale Garbee [Sat, 7 May 2016 00:14:57 +0000 (18:14 -0600)]
update changelog for Debian build

3 weeks agoMerge branch 'branch-1.6' into debian
Bdale Garbee [Sat, 7 May 2016 00:13:12 +0000 (18:13 -0600)]
Merge branch 'branch-1.6' into debian

3 weeks agoreleasing 1.6.3 branch-1.6 1.6.3
Bdale Garbee [Sat, 7 May 2016 00:12:20 +0000 (18:12 -0600)]
releasing 1.6.3

3 weeks agoMerge branch 'master' into branch-1.6
Bdale Garbee [Sat, 7 May 2016 00:11:01 +0000 (18:11 -0600)]
Merge branch 'master' into branch-1.6

3 weeks 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>
3 weeks agoMerge branch 'master' into branch-1.6
Bdale Garbee [Fri, 6 May 2016 23:59:39 +0000 (17:59 -0600)]
Merge branch 'master' into branch-1.6

3 weeks 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

3 weeks 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

3 weeks 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>
3 weeks 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>
3 weeks 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>
3 weeks 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>
3 weeks 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>
3 weeks 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>
3 weeks 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 weeks 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 weeks 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 weeks 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 weeks 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 weeks 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 weeks 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 weeks 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 weeks 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 weeks 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 weeks 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 weeks 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 weeks 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 weeks 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 weeks 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 weeks 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 weeks agoDebug bits for telebt
Keith Packard [Mon, 25 Apr 2016 15:47:45 +0000 (11:47 -0400)]
Debug bits for telebt

5 weeks 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>
5 weeks 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>
5 weeks 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>
5 weeks 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>
5 weeks 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>
5 weeks 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>
5 weeks 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>
5 weeks 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>
5 weeks 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>
5 weeks 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>
5 weeks 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>
5 weeks 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>
5 weeks 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>
5 weeks 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>
5 weeks 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>
5 weeks 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>
5 weeks 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>
5 weeks 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>
5 weeks 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>
5 weeks 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>
5 weeks 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>
5 weeks 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>
5 weeks 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>
5 weeks 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>
5 weeks 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>
5 weeks 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>
5 weeks 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>
5 weeks 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>
5 weeks agoaltos: Allow for pad boxes with different sensor configurations
Keith Packard [Tue, 22 Dec 2015 05:47:10 +0000 (21:47 -0800)]
altos: Allow for pad boxes with different sensor configurations

This allows for a pad box without a resistor from power to each
FET. That resistor is needed to detect welded relays, but in a
solid-state system, that's not a possibility.

Signed-off-by: Keith Packard <keithp@keithp.com>
5 weeks agoaltos: telefiretwo-v0.1 bits
Keith Packard [Fri, 18 Dec 2015 03:54:23 +0000 (19:54 -0800)]
altos: telefiretwo-v0.1 bits

Get this board running.

Signed-off-by: Keith Packard <keithp@keithp.com>
5 weeks agoaltos: Add pad support for new telefire versions
Keith Packard [Fri, 18 Dec 2015 03:30:35 +0000 (19:30 -0800)]
altos: Add pad support for new telefire versions

Makes the voltage divider values configurable, and allows for pyro
channels that don't have the resistors necessary to check for a stuck
relay.

Also supports STM32L processors with wider GPIO registers, and uses
the new ao_gpio_set/clr_bits functions to fire igniters rather than
cc1111-specific code.

Signed-off-by: Keith Packard <keithp@keithp.com>
5 weeks agoaltos: Support telefire products in cc1200 driver
Keith Packard [Fri, 18 Dec 2015 03:29:36 +0000 (19:29 -0800)]
altos: Support telefire products in cc1200 driver

Need to disable the pad code while testing the radio.

Signed-off-by: Keith Packard <keithp@keithp.com>
6 weeks agoaltos/detherm: Add servo driver
Keith Packard [Wed, 13 Apr 2016 13:16:01 +0000 (06:16 -0700)]
altos/detherm: Add servo driver

This just provides commands to test the servo with.

Signed-off-by: Keith Packard <keithp@keithp.com>
6 weeks agoaltos/detherm: Add ms5607 to detherm
Keith Packard [Wed, 6 Apr 2016 05:03:37 +0000 (22:03 -0700)]
altos/detherm: Add ms5607 to detherm

Signed-off-by: Keith Packard <keithp@keithp.com>
6 weeks agoaltos: Add easy mini plotting helper in test code
Keith Packard [Thu, 24 Dec 2015 07:15:16 +0000 (23:15 -0800)]
altos: Add easy mini plotting helper in test code

Signed-off-by: Keith Packard <keithp@keithp.com>
6 weeks agoaltos: Add ao_gpi_set/clr_bits functions
Keith Packard [Fri, 18 Dec 2015 03:27:42 +0000 (19:27 -0800)]
altos: Add ao_gpi_set/clr_bits functions

These set or clear a group of bits in a single GPIO register all together.

Signed-off-by: Keith Packard <keithp@keithp.com>
8 weeks agoaltos/stmf0: Add pwm and exti drivers
Keith Packard [Sun, 3 Apr 2016 05:41:06 +0000 (22:41 -0700)]
altos/stmf0: Add pwm and exti drivers

Signed-off-by: Keith Packard <keithp@keithp.com>
8 weeks agoaltos: Add detherm product
Keith Packard [Sun, 3 Apr 2016 05:40:23 +0000 (22:40 -0700)]
altos: Add detherm product

Signed-off-by: Keith Packard <keithp@keithp.com>
8 weeks agodoc: Note that EasyMega and TeleMega report A-D continuity
Keith Packard [Sun, 3 Apr 2016 02:44:06 +0000 (19:44 -0700)]
doc: Note that EasyMega and TeleMega report A-D continuity

Signed-off-by: Keith Packard <keithp@keithp.com>
8 weeks agoaltos/stmf0: Support HPE clock source
Keith Packard [Sun, 3 Apr 2016 02:43:32 +0000 (19:43 -0700)]
altos/stmf0: Support HPE clock source

Allows the use of crystals instead of requiring USB.

Signed-off-by: Keith Packard <keithp@keithp.com>
8 weeks agoaltos/stmf0: Add SPI driver.
Keith Packard [Sun, 3 Apr 2016 02:42:44 +0000 (19:42 -0700)]
altos/stmf0: Add SPI driver.

This also changes the DMA interface a bit so we can select for
interrupts on only the interesting channels.

Signed-off-by: Keith Packard <keithp@keithp.com>
8 weeks agoaltos: Use mini logging for detherm, just without ADC
Keith Packard [Sun, 3 Apr 2016 02:41:21 +0000 (19:41 -0700)]
altos: Use mini logging for detherm, just without ADC

Signed-off-by: Keith Packard <keithp@keithp.com>
8 weeks agoaltos: Add Detherm log format (easymini without ADC)
Keith Packard [Sun, 3 Apr 2016 02:40:19 +0000 (19:40 -0700)]
altos: Add Detherm log format (easymini without ADC)

Signed-off-by: Keith Packard <keithp@keithp.com>
8 weeks agoaltos: Allow for flight hardware without any ADC values
Keith Packard [Sun, 3 Apr 2016 02:39:07 +0000 (19:39 -0700)]
altos: Allow for flight hardware without any ADC values

Detherm has no ADC connections, so we don't need to disable the ADC
when going to landed state.

Signed-off-by: Keith Packard <keithp@keithp.com>
2 months agoaltos: Add one-byte SPI output routine for LPC and STM cores
Keith Packard [Fri, 25 Mar 2016 01:25:33 +0000 (19:25 -0600)]
altos: Add one-byte SPI output routine for LPC and STM cores

This allows for SPI output at interrupt time, one byte at a time.

Signed-off-by: Keith Packard <keithp@keithp.com>
2 months agoaltos/lpc: Add fast timer
Keith Packard [Fri, 25 Mar 2016 01:28:16 +0000 (19:28 -0600)]
altos/lpc: Add fast timer

This offers a faster timer callback for higher-precision operation

Signed-off-by: Keith Packard <keithp@keithp.com>
2 months agoaltos/stm: Allow apps to define different stack size
Keith Packard [Sat, 26 Mar 2016 22:59:26 +0000 (15:59 -0700)]
altos/stm: Allow apps to define different stack size

While 512 bytes is a reasonable size, sometimes apps don't have that
much stack space.

Signed-off-by: Keith Packard <keithp@keithp.com>
2 months agoaltos/stm: Validate current task SP in interrupt by looking at PSP
Keith Packard [Sat, 26 Mar 2016 22:54:24 +0000 (15:54 -0700)]
altos/stm: Validate current task SP in interrupt by looking at PSP

We use a separate stack pointer for task code, which means we can
verify that it is in range in any interrupt handler. This adds checks
for the task stack (under #ifdef DEBUG) that run in ao_wakeup as well
as at every timer interrupt.

Signed-off-by: Keith Packard <keithp@keithp.com>
2 months agoaltos/stm: Run scheduler code on interrupt stack
Keith Packard [Sat, 26 Mar 2016 22:49:59 +0000 (15:49 -0700)]
altos/stm: Run scheduler code on interrupt stack

This provides a bit more room for tasks on their stack

Signed-off-by: Keith Packard <keithp@keithp.com>
2 months agoaltosui,telegps: Do not allow radio calibration to be edited
Keith Packard [Tue, 22 Mar 2016 04:28:39 +0000 (22:28 -0600)]
altosui,telegps: Do not allow radio calibration to be edited

This leads to sorrow for almost everyone. If you want to edit this,
use a terminal program.

Signed-off-by: Keith Packard <keithp@keithp.com>
2 months agoaltosuilib: Control map debugging output with Serial.debug
Keith Packard [Sat, 26 Mar 2016 22:57:59 +0000 (15:57 -0700)]
altosuilib: Control map debugging output with Serial.debug

This uses the same debug control as the serial output to monitor map downloading

Signed-off-by: Keith Packard <keithp@keithp.com>
2 months agoaltoslib: use env var LAUNCH_SITES to override default URL
Keith Packard [Sat, 26 Mar 2016 22:57:21 +0000 (15:57 -0700)]
altoslib: use env var LAUNCH_SITES to override default URL

This makes it easier to debug new launch site data before uploading.

Signed-off-by: Keith Packard <keithp@keithp.com>
2 months agolibaltos: Fix warning in linux libaltos code
Keith Packard [Mon, 21 Mar 2016 06:11:49 +0000 (23:11 -0700)]
libaltos: Fix warning in linux libaltos code

Just returned the wrong name of the value

Signed-off-by: Keith Packard <keithp@keithp.com>
2 months agoaltosuilib: Note that Windows now supports Bluetooth
Keith Packard [Mon, 21 Mar 2016 05:01:07 +0000 (22:01 -0700)]
altosuilib: Note that Windows now supports Bluetooth

Signed-off-by: Keith Packard <keithp@keithp.com>
2 months agoaltosui: Delay between polling for igniter status in Fire Igniters
Keith Packard [Mon, 21 Mar 2016 04:54:08 +0000 (21:54 -0700)]
altosui: Delay between polling for igniter status in Fire Igniters

This gives a remote like time to report the full status instead of
sending another request before the reply has been processed.

Signed-off-by: Keith Packard <keithp@keithp.com>
2 months agolibaltos: Add Windows BT support. Split into separate source files.
Keith Packard [Mon, 21 Mar 2016 04:52:53 +0000 (21:52 -0700)]
libaltos: Add Windows BT support. Split into separate source files.

Add Bluetooth support to Windows. Split libaltos into separate files.

Signed-off-by: Keith Packard <keithp@keithp.com>
2 months agoao-bringup: Use dfu-util to install flash loader on chaoskey
Keith Packard [Fri, 18 Mar 2016 18:17:46 +0000 (11:17 -0700)]
ao-bringup: Use dfu-util to install flash loader on chaoskey

Signed-off-by: Keith Packard <keithp@keithp.com>
2 months agoaltos/stmf0: Construct .bin files for flash loaders
Keith Packard [Fri, 18 Mar 2016 18:16:59 +0000 (11:16 -0700)]
altos/stmf0: Construct .bin files for flash loaders

This builds a .bin file which can be used with dfu-util instead of
using openocd to load the initial flash loader.

Signed-off-by: Keith Packard <keithp@keithp.com>
2 months agoao-tools: Add ao-makebin
Keith Packard [Fri, 18 Mar 2016 18:15:57 +0000 (11:15 -0700)]
ao-tools: Add ao-makebin

This constructs a raw binary or DFU format file for use with dfu-util,
which can be used with a bare STM processor to load code before the
boot loader is available.

Signed-off-by: Keith Packard <keithp@keithp.com>
2 months agoao-tools/lib: Add ao_hex_image_cat function
Keith Packard [Fri, 18 Mar 2016 17:52:03 +0000 (10:52 -0700)]
ao-tools/lib: Add ao_hex_image_cat function

This takes two images and constructs a third containing the union of
the contents along with 0xff bytes for any area between them.

Signed-off-by: Keith Packard <keithp@keithp.com>
2 months agoao-tools/lib: Remove trailing whitespace from ao-elf.c
Keith Packard [Fri, 18 Mar 2016 17:51:20 +0000 (10:51 -0700)]
ao-tools/lib: Remove trailing whitespace from ao-elf.c

Signed-off-by: Keith Packard <keithp@keithp.com>
2 months agoao-tools/ao-dump-up: Remove spurious flight state strings
Keith Packard [Fri, 18 Mar 2016 17:50:32 +0000 (10:50 -0700)]
ao-tools/ao-dump-up: Remove spurious flight state strings

MicroPeak doesn't have flight states like this...

Signed-off-by: Keith Packard <keithp@keithp.com>
2 months agoChange how we detect and install java
Keith Packard [Fri, 18 Mar 2016 17:48:49 +0000 (10:48 -0700)]
Change how we detect and install java

Detect by finding 'javaw.exe' in the current path and extracting the
version from the program itself.

Install by simply opening the web browser to java.com and letting the
user install it themselves.

Signed-off-by: Keith Packard <keithp@keithp.com>
2 months agoaltos: Expose fast timer API from kernel/
Keith Packard [Fri, 18 Mar 2016 17:17:24 +0000 (10:17 -0700)]
altos: Expose fast timer API from kernel/

This allows multiple SoCs to provide the same driver interface

Signed-off-by: Keith Packard <keithp@keithp.com>
2 months agoaltos: Fixed timing of panic display LED to be readable
Bart Massey [Sun, 6 Mar 2016 01:38:19 +0000 (17:38 -0800)]
altos: Fixed timing of panic display LED to be readable

When we don't have a beeper, there's no way to signal a 'warble' for
panic. So, elide that bit.

Second, panic can't use the scheduler and timer because those may not
be running (or may have failed), and so it uses a delay loop. Add a
configurable scale value to the panic loop so that the LED blinks can
be read. For stm32f0 devices, scale that by the sysclk value to
automatically make them of reasonable length.

2 months agolibaltos: Add unistd.h to get defines for various syscalls
Keith Packard [Sun, 6 Mar 2016 23:05:51 +0000 (15:05 -0800)]
libaltos: Add unistd.h to get defines for various syscalls

Signed-off-by: Keith Packard <keithp@keithp.com>
2 months agolibaltos: jni_md.h moved to linux subdir in Java install
Keith Packard [Sun, 6 Mar 2016 23:04:23 +0000 (15:04 -0800)]
libaltos: jni_md.h moved to linux subdir in Java install

Add the linux subdir to CFLAGS to find it.

Signed-off-by: Keith Packard <keithp@keithp.com>
2 months agoaltos/stmf0: Fix build without second USB IN endpoint
Keith Packard [Sat, 5 Mar 2016 22:37:40 +0000 (14:37 -0800)]
altos/stmf0: Fix build without second USB IN endpoint

The code for the second IN endpoint was using the wrong ifdef.

Signed-off-by: Keith Packard <keithp@keithp.com>
2 months agoao-tools: Add ao-chaosread
Keith Packard [Wed, 2 Mar 2016 22:36:31 +0000 (14:36 -0800)]
ao-tools: Add ao-chaosread

This reads from the raw descriptor to help validate the hardware.

Signed-off-by: Keith Packard <keithp@keithp.com>