fw/altos
11 years agoaltos: Add SPI slave get/put macros to cc1111
Keith Packard [Mon, 27 Aug 2012 20:35:39 +0000 (13:35 -0700)]
altos: Add SPI slave get/put macros to cc1111

Theese don't try to drive the chip select line

Signed-off-by: Keith Packard <keithp@keithp.com>
11 years agoaltos: Provide interface for STM LCD driver.
Keith Packard [Mon, 27 Aug 2012 20:34:12 +0000 (13:34 -0700)]
altos: Provide interface for STM LCD driver.

This provides a simple function interface for driving the LCD segments
in the STM chip. It also uses the update complete interrupt to block
LCD users during flush.

Signed-off-by: Keith Packard <keithp@keithp.com>
11 years agoaltos: Rename drivers/ao_lco to drivers/ao_lco_cmd
Keith Packard [Mon, 27 Aug 2012 20:32:41 +0000 (13:32 -0700)]
altos: Rename drivers/ao_lco to drivers/ao_lco_cmd

These contain command line functions for testing the cmac and lco
features. Now that there's a telelco-specific ao_lco interface file,
it's useful to have both for testing.

Signed-off-by: Keith Packard <keithp@keithp.com>
11 years agoaltos: Trigger sample complete when all data are ready
Keith Packard [Sun, 26 Aug 2012 16:53:16 +0000 (09:53 -0700)]
altos: Trigger sample complete when all data are ready

This has each sensor mark a bit in the current data record which is
then sent for processing when all of the data are present.

Signed-off-by: Keith Packard <keithp@keithp.com>
11 years agoaltos: Shrink STM stack size
Keith Packard [Sun, 26 Aug 2012 16:52:27 +0000 (09:52 -0700)]
altos: Shrink STM stack size

512 bytes should be enough for anybody.

Signed-off-by: Keith Packard <keithp@keithp.com>
11 years agoaltos: Make ao_cur_task_index track ao_cur_task in ao_yield
Keith Packard [Sun, 26 Aug 2012 16:49:34 +0000 (09:49 -0700)]
altos: Make ao_cur_task_index track ao_cur_task in ao_yield

This keeps the two main task references (index and pointer) in
agreement during task switching, avoiding an extra assignment at the
end of the task switching loop.

Signed-off-by: Keith Packard <keithp@keithp.com>
11 years agoaltos: Make 'pad' driver useful with telefire v0.1
Keith Packard [Sun, 26 Aug 2012 16:47:05 +0000 (09:47 -0700)]
altos: Make 'pad' driver useful with telefire v0.1

This reports correct status bits over the radio and to the LEDs for
all four channels, and also makes the firing test command control all
four relays.

Signed-off-by: Keith Packard <keithp@keithp.com>
11 years agoaltos: Add debug command for 74hc597 driver
Keith Packard [Sun, 26 Aug 2012 16:45:03 +0000 (09:45 -0700)]
altos: Add debug command for 74hc597 driver

This dumps the current state of the 74hc597 chip.

Note that this shows that the 74hc597 driver doesn't work, and that
the circuit used in telefire v0.1 can't work.

Signed-off-by: Keith Packard <keithp@keithp.com>
11 years agoaltos: Allow sharing of radio DMA with aes engine
Keith Packard [Sun, 26 Aug 2012 16:43:34 +0000 (09:43 -0700)]
altos: Allow sharing of radio DMA with aes engine

otherwise, telefire doesn't have enough DMA channels.

Signed-off-by: Keith Packard <keithp@keithp.com>
11 years agoaltos: Configure telefire SPI and LEDs correctly
Keith Packard [Fri, 24 Aug 2012 07:46:55 +0000 (00:46 -0700)]
altos: Configure telefire SPI and LEDs correctly

This places the telefire SPI bus on USART1 option 2 and
marks the various LED functions with symbolic names.

Signed-off-by: Keith Packard <keithp@keithp.com>
11 years agoaltos: telelaunch doesn't need ao_radio_cmac_init
Keith Packard [Fri, 24 Aug 2012 07:44:35 +0000 (00:44 -0700)]
altos: telelaunch doesn't need ao_radio_cmac_init

This function was used to initialize the LCO functions, which were
moved to ao_lco.c a few commits back, so ao_radio_cmac_init doesn't
even exist anymore.

Signed-off-by: Keith Packard <keithp@keithp.com>
11 years agoaltos: Get ao_pad.c working on telefire v0.1
Keith Packard [Fri, 24 Aug 2012 07:42:32 +0000 (00:42 -0700)]
altos: Get ao_pad.c working on telefire v0.1

Monitor all four channels, allow any channel to be fired.
Turn on power LED at startup time.

Signed-off-by: Keith Packard <keithp@keithp.com>
11 years agoaltos: Split out LCO functions from ao_radio_cmac.c to ao_lco.c
Keith Packard [Fri, 24 Aug 2012 07:40:27 +0000 (00:40 -0700)]
altos: Split out LCO functions from ao_radio_cmac.c to ao_lco.c

These functions are not used in the telelaunch or telefire nodes, so
don't force them to be included.

Signed-off-by: Keith Packard <keithp@keithp.com>
11 years agoaltos: Have radio_cmac turn on LEDs as appropriate
Keith Packard [Fri, 24 Aug 2012 07:39:46 +0000 (00:39 -0700)]
altos: Have radio_cmac turn on LEDs as appropriate

Use AO_LED_RX and AO_LED_TX defines if present to control LEDs during
radio operations.

Signed-off-by: Keith Packard <keithp@keithp.com>
11 years agoaltos: Add 'ao_led_set_mask' in the PCA9922 driver
Keith Packard [Fri, 24 Aug 2012 07:34:55 +0000 (00:34 -0700)]
altos: Add 'ao_led_set_mask' in the PCA9922 driver

This lets a subset of the LEDs be controlled independent of other LED settings.

Signed-off-by: Keith Packard <keithp@keithp.com>
11 years agoaltos: Make cc1111 SPI pins configurable
Keith Packard [Fri, 24 Aug 2012 07:33:38 +0000 (00:33 -0700)]
altos: Make cc1111 SPI pins configurable

Allow either USART in any configuration. Still only supports one SPI
bus though.

Signed-off-by: Keith Packard <keithp@keithp.com>
11 years agoaltos: Disable telefire 'pad' listener when testing radio
Keith Packard [Fri, 24 Aug 2012 07:27:13 +0000 (00:27 -0700)]
altos: Disable telefire 'pad' listener when testing radio

Ensures that the radio testing won't block waiting for a firing mode
packet to arrive.

Signed-off-by: Keith Packard <keithp@keithp.com>
11 years agoaltosui: Check for JRE 1.7 in Windows installer
Keith Packard [Sun, 19 Aug 2012 17:02:16 +0000 (10:02 -0700)]
altosui: Check for JRE 1.7 in Windows installer

altosui runs fine with version 1.7 (on Linux at least), so allow that
version to satisfy the java check instead of requiring the user to
down-grade to 1.6

Signed-off-by: Keith Packard <keithp@keithp.com>
11 years agoHere's the button driver and event queue logic
Keith Packard [Sun, 19 Aug 2012 05:51:47 +0000 (22:51 -0700)]
Here's the button driver and event queue logic

These were neglected in the commit which was supposed to include them

Signed-off-by: Keith Packard <keithp@keithp.com>
11 years agoaltos: Add MMA655X driver
Keith Packard [Sun, 19 Aug 2012 04:26:34 +0000 (21:26 -0700)]
altos: Add MMA655X driver

Just debug code at this point, will complete on real hardware

Signed-off-by: Keith Packard <keithp@keithp.com>
11 years agoaltos/cc1111: Document SPI bus pin options
Keith Packard [Sun, 19 Aug 2012 04:25:34 +0000 (21:25 -0700)]
altos/cc1111: Document SPI bus pin options

Just a comment in the source code about which pins each option selects.

Signed-off-by: Keith Packard <keithp@keithp.com>
11 years agoaltos: Use split SPI bus for MS5607 sensor
Keith Packard [Sun, 19 Aug 2012 04:24:16 +0000 (21:24 -0700)]
altos: Use split SPI bus for MS5607 sensor

Leave CS low while releasing the SPI bus when waiting for conversion
complete -- other SPI bus users will use another set of pins.

Signed-off-by: Keith Packard <keithp@keithp.com>
11 years agoaltos: Allow STM SPI bus on multiple pin sets
Keith Packard [Sun, 19 Aug 2012 04:21:58 +0000 (21:21 -0700)]
altos: Allow STM SPI bus on multiple pin sets

This allows multiple STM pin groups to be used for each SPI
bus. Useful for the MS5607 sensor which signals conversion complete on
the MISO line.

Signed-off-by: Keith Packard <keithp@keithp.com>
11 years agoao-send-telem: make --realtime work
Mike Beattie [Tue, 7 Aug 2012 19:07:49 +0000 (07:07 +1200)]
ao-send-telem: make --realtime work

(add "break;" to the case statement for options)

Signed-off-by: Mike Beattie <mike@ethernal.org>
11 years agoMerge branch 'master' of git://git.gag.com/fw/altos
Mike Beattie [Tue, 7 Aug 2012 18:49:15 +0000 (06:49 +1200)]
Merge branch 'master' of git://git.gag.com/fw/altos

11 years agoMerge remote-tracking branch 'mjb/master'
Keith Packard [Tue, 7 Aug 2012 18:48:20 +0000 (11:48 -0700)]
Merge remote-tracking branch 'mjb/master'

11 years agoMerge branch 'master' of git://git.gag.com/fw/altos
Mike Beattie [Tue, 7 Aug 2012 18:46:56 +0000 (06:46 +1200)]
Merge branch 'master' of git://git.gag.com/fw/altos

11 years agoAdd ao-send-telem to .gitignore
Mike Beattie [Tue, 7 Aug 2012 18:45:03 +0000 (06:45 +1200)]
Add ao-send-telem to .gitignore

Signed-off-by: Mike Beattie <mike@ethernal.org>
11 years agoaltos: Fix .sdcdbrc file for telebt-v0.1
Keith Packard [Tue, 7 Aug 2012 18:32:16 +0000 (11:32 -0700)]
altos: Fix .sdcdbrc file for telebt-v0.1

Signed-off-by: Keith Packard <keithp@keithp.com>
11 years agoaltos: Oops. Serial 1 stdin was busted by typo
Keith Packard [Tue, 7 Aug 2012 18:30:47 +0000 (11:30 -0700)]
altos: Oops. Serial 1 stdin was busted by typo

A typo in the symbol used to enable stdin wakeups from serial1 caused
the input to pend until some other wakeup occurred.

This also makes the serial1 hw flow control pin selects in config 2
work right, although those aren't used by any current product

Signed-off-by: Keith Packard <keithp@keithp.com>
11 years agoaltos: Add button driver and event queue
Keith Packard [Tue, 7 Aug 2012 05:53:52 +0000 (22:53 -0700)]
altos: Add button driver and event queue

With this, a single task can wait for any button or quadrature input
device.

Signed-off-by: Keith Packard <keithp@keithp.com>
11 years agoaltos: Support multiple quadrature encoders.
Keith Packard [Tue, 7 Aug 2012 04:54:58 +0000 (21:54 -0700)]
altos: Support multiple quadrature encoders.

Signed-off-by: Keith Packard <keithp@keithp.com>
11 years agoaltos: Fix up quadrature driver
Keith Packard [Tue, 7 Aug 2012 03:20:32 +0000 (20:20 -0700)]
altos: Fix up quadrature driver

Mostly works now, should work reliably with a bit of input filtering.

Signed-off-by: Keith Packard <keithp@keithp.com>
11 years agoSigned-off-by: Keith Packard <keithp@keithp.com>
Keith Packard [Tue, 7 Aug 2012 02:35:02 +0000 (19:35 -0700)]
Signed-off-by: Keith Packard <keithp@keithp.com>
altos: Test quadrature driver

11 years agoaltos: Add quadrature driver
Keith Packard [Tue, 7 Aug 2012 02:34:34 +0000 (19:34 -0700)]
altos: Add quadrature driver

Signed-off-by: Keith Packard <keithp@keithp.com>
11 years agoaltos: Add ao_gpio_get and ao_exti_set_mode
Keith Packard [Tue, 7 Aug 2012 02:33:44 +0000 (19:33 -0700)]
altos: Add ao_gpio_get and ao_exti_set_mode

Needed to support general GPIO interrupts

Signed-off-by: Keith Packard <keithp@keithp.com>
11 years agoaltos: Build ao_kalman.h from cc1111 subdirs as needed
Keith Packard [Sun, 5 Aug 2012 21:58:40 +0000 (14:58 -0700)]
altos: Build ao_kalman.h from cc1111 subdirs as needed

Signed-off-by: Keith Packard <keithp@keithp.com>
11 years agoAdjust service to be persistent.
Mike Beattie [Sun, 26 Feb 2012 09:30:09 +0000 (22:30 +1300)]
Adjust service to be persistent.

* Run as a foreground service -> high priority
* Notification set to display as "Ongoing".

Changed logo to be in colour at keithp's request. Greyscale logos still present as *_g.png

Signed-off-by: Mike Beattie <mike@ethernal.org>
11 years agomove from Debian packaged sdcc to new cc1111 package forked from 2.9.0-5
Bdale Garbee [Mon, 11 Jun 2012 02:04:24 +0000 (20:04 -0600)]
move from Debian packaged sdcc to new cc1111 package forked from 2.9.0-5

11 years agosrc/cc1111: Enable SPI slave mode
Keith Packard [Sun, 5 Aug 2012 19:17:25 +0000 (12:17 -0700)]
src/cc1111: Enable SPI slave mode

This is untested...

Signed-off-by: Keith Packard <keithp@keithp.com>
11 years agosrc/cc1111: Allow serial0 without serial1
Keith Packard [Sun, 5 Aug 2012 19:16:25 +0000 (12:16 -0700)]
src/cc1111: Allow serial0 without serial1

The ao_serial_speed structure is needed by serial0 too.

Signed-off-by: Keith Packard <keithp@keithp.com>
11 years agosrc/cc1111: Add ao_gpio_set macro
Keith Packard [Sun, 5 Aug 2012 19:15:36 +0000 (12:15 -0700)]
src/cc1111: Add ao_gpio_set macro

Allows general GPIO-using code to run on cc1111

Signed-off-by: Keith Packard <keithp@keithp.com>
11 years agoaltosui: Move 'implements Runnable' from AltosSerial to AltosLink
Keith Packard [Sun, 5 Aug 2012 05:58:48 +0000 (22:58 -0700)]
altosui: Move 'implements Runnable' from AltosSerial to AltosLink

AltosLink is the class providing the 'run' method, after all...

Signed-off-by: Keith Packard <keithp@keithp.com>
11 years agoReduce size of textview.
Mike Beattie [Thu, 2 Aug 2012 11:38:26 +0000 (23:38 +1200)]
Reduce size of textview.

Signed-off-by: Mike Beattie <mike@ethernal.org>
11 years agoAltosDroid: Begin re-working Bluetooth code
Mike Beattie [Thu, 2 Aug 2012 10:09:24 +0000 (22:09 +1200)]
AltosDroid: Begin re-working Bluetooth code

* Move to using explicit 'magic' UUID, rather than java reflection
* Re-work UI to make it more useful for testing
* Use Insecure RFCOMM only, and remove code that differentiates.

Signed-off-by: Mike Beattie <mike@ethernal.org>
11 years agoFix min/target SDK versions
Mike Beattie [Thu, 2 Aug 2012 09:20:23 +0000 (21:20 +1200)]
Fix min/target SDK versions

Signed-off-by: Mike Beattie <mike@ethernal.org>
11 years agoMerge branch 'master' of ssh://mjb@git.ethernal.org/~/git/altos
Mike Beattie [Thu, 2 Aug 2012 09:18:15 +0000 (21:18 +1200)]
Merge branch 'master' of ssh://mjb@git.ethernal.org/~/git/altos

11 years agoRe-work external lib support for newer Android SDK
Mike Beattie [Thu, 2 Aug 2012 09:16:54 +0000 (21:16 +1200)]
Re-work external lib support for newer Android SDK

* Remove older *.properties methods of locating lib dir
* clean up Eclipse classpath file
* adjust Makefile.am to link AltosLib.jar into libs/

Signed-off-by: Mike Beattie <mike@ethernal.org>
11 years agoIgnore autogenerated file: altosui/Info.plist
Mike Beattie [Tue, 31 Jul 2012 08:05:35 +0000 (20:05 +1200)]
Ignore autogenerated file: altosui/Info.plist

Signed-off-by: Mike Beattie <mike@ethernal.org>
11 years agoDon't build ao-stmload if stlink is not available.
Mike Beattie [Tue, 31 Jul 2012 08:04:34 +0000 (20:04 +1200)]
Don't build ao-stmload if stlink is not available.

Signed-off-by: Mike Beattie <mike@ethernal.org>
11 years agoaltos: Add driver for STM internal flash
Keith Packard [Mon, 30 Jul 2012 02:48:08 +0000 (19:48 -0700)]
altos: Add driver for STM internal flash

Signed-off-by: Keith Packard <keithp@keithp.com>
11 years agoaltos: Add telefire-v0.1
Keith Packard [Mon, 30 Jul 2012 02:44:56 +0000 (19:44 -0700)]
altos: Add telefire-v0.1

Signed-off-by: Keith Packard <keithp@keithp.com>
11 years agoaltos: Add software AES implementation
Keith Packard [Mon, 30 Jul 2012 02:42:53 +0000 (19:42 -0700)]
altos: Add software AES implementation

This is untested

Signed-off-by: Keith Packard <keithp@keithp.com>
11 years agoaltos/cc1111: Fix serial 0 option 2 pins definitions
Keith Packard [Mon, 30 Jul 2012 02:36:50 +0000 (19:36 -0700)]
altos/cc1111: Fix serial 0 option 2 pins definitions

tx/rx are 4/5, rts/cts are 2/3

Signed-off-by: Keith Packard <keithp@keithp.com>
11 years agoaltosui: Remove duplicate values from info table. Add altitude
Keith Packard [Mon, 30 Jul 2012 02:35:15 +0000 (19:35 -0700)]
altosui: Remove duplicate values from info table. Add altitude

No need to have state/call/serial/flight data, those are all in the
header. Having altitude makes Monitor Idle slightly more useful.

Signed-off-by: Keith Packard <keithp@keithp.com>
11 years agoaltosui: Handle Monitor Idle errors better
Keith Packard [Mon, 30 Jul 2012 02:34:00 +0000 (19:34 -0700)]
altosui: Handle Monitor Idle errors better

Deal with missing data by checking for MISSING in more places.
Handle serial communication failures during send by reporting back
from libaltos.

Signed-off-by: Keith Packard <keithp@keithp.com>
11 years agoAdd ability to re-play telemetry through TeleDongle
Keith Packard [Sun, 29 Jul 2012 23:22:23 +0000 (16:22 -0700)]
Add ability to re-play telemetry through TeleDongle

This adds a new command to TeleDongle to send arbitrary data, and then
creates a new tool, 'ao-send-telem' that replays existing telemetry
files through TeleDongle.

Signed-off-by: Keith Packard <keithp@keithp.com>
11 years agoaltos: Move ao_radio_cmac.c to core (it doesn't depend on hardware)
Keith Packard [Sun, 22 Jul 2012 22:18:27 +0000 (15:18 -0700)]
altos: Move ao_radio_cmac.c to core (it doesn't depend on hardware)

Signed-off-by: Keith Packard <keithp@keithp.com>
11 years agoaltosui: Move AltosIgnite.java to altoslib
Keith Packard [Sun, 22 Jul 2012 18:53:44 +0000 (11:53 -0700)]
altosui: Move AltosIgnite.java to altoslib

To be shared with altosdroid eventually

Signed-off-by: Keith Packard <keithp@keithp.com>
11 years agotools: Use pkgconfig to find stlink for ao-stmload
Keith Packard [Fri, 20 Jul 2012 19:04:17 +0000 (12:04 -0700)]
tools: Use pkgconfig to find stlink for ao-stmload

Signed-off-by: Keith Packard <keithp@keithp.com>
11 years agoAdd stlink pinout
Keith Packard [Fri, 20 Jul 2012 18:08:22 +0000 (11:08 -0700)]
Add stlink pinout

Signed-off-by: Keith Packard <keithp@keithp.com>
11 years agoaltosui: Delay starting KML output for flight and GPS coords
Keith Packard [Thu, 19 Jul 2012 16:46:20 +0000 (09:46 -0700)]
altosui: Delay starting KML output for flight and GPS coords

Don't start outputing KML data until the telem record containing
flight number and GPS coordinates are present.

Signed-off-by: Keith Packard <keithp@keithp.com>
11 years agotelescience: correctly calculating rate values with higher resolution
Robert Garbee [Thu, 19 Jul 2012 00:41:00 +0000 (18:41 -0600)]
telescience: correctly calculating rate values with higher resolution

11 years agoMerge branch 'master' of ssh://git.gag.com/scm/git/fw/altos
Robert Garbee [Wed, 18 Jul 2012 20:25:27 +0000 (14:25 -0600)]
Merge branch 'master' of ssh://git.gag.com/scm/git/fw/altos

11 years agoICP3 working
Robert Garbee [Wed, 18 Jul 2012 20:24:05 +0000 (14:24 -0600)]
ICP3 working

11 years agoTimer 3 working with slower clock and all 16 bits.
Robert Garbee [Wed, 18 Jul 2012 19:41:27 +0000 (13:41 -0600)]
Timer 3 working with slower clock and all 16 bits.

11 years agoaltosdroid: Start adding an AltosLink subclass for android
Keith Packard [Wed, 18 Jul 2012 07:03:54 +0000 (00:03 -0700)]
altosdroid: Start adding an AltosLink subclass for android

Will talks over bluetooth while providing an AltosLink APi

Signed-off-by: Keith Packard <keithp@keithp.com>
11 years agoaltosui: Make scan UI handle incremental telem data
Keith Packard [Wed, 18 Jul 2012 07:01:51 +0000 (00:01 -0700)]
altosui: Make scan UI handle incremental telem data

The new telem format doesn't send everything in each telem packet, so
we need to handle updating information incrementally in the scan
results. This involved clearing old scan data when switching
frequencies and then updating existing entries with new data as it arrives.

Signed-off-by: Keith Packard <keithp@keithp.com>
11 years agoaltos: Toggling telemetry monitoring would replay the telem queue
Keith Packard [Wed, 18 Jul 2012 06:59:13 +0000 (23:59 -0700)]
altos: Toggling telemetry monitoring would replay the telem queue

Using the 'm' command to turn telem off and back on would end up going
around the whole telemetry queue replaying everything there as the
wait loop would exit when disabling monitoring even if the ring was empty.

Signed-off-by: Keith Packard <keithp@keithp.com>
11 years agoaltos: With debug cables disconnected, CC1120 seems happy at +16dBm
Keith Packard [Wed, 18 Jul 2012 04:06:07 +0000 (21:06 -0700)]
altos: With debug cables disconnected, CC1120 seems happy at +16dBm

Let's see how it goes...

Signed-off-by: Keith Packard <keithp@keithp.com>
11 years agoaltosui: Accept variations in spacing for igniter status reply
Keith Packard [Wed, 18 Jul 2012 04:04:58 +0000 (21:04 -0700)]
altosui: Accept variations in spacing for igniter status reply

Megametrum uses different white space; just deal with it here.

Signed-off-by: Keith Packard <keithp@keithp.com>
11 years agoaltoslib: Move idle monitor managing code to altoslib
Keith Packard [Wed, 18 Jul 2012 04:04:23 +0000 (21:04 -0700)]
altoslib: Move idle monitor managing code to altoslib

More stuff to be shared (potentially)

Signed-off-by: Keith Packard <keithp@keithp.com>
11 years agoaltos: Megametrum ADC values are 12 bits, discard low 4 for telemetry
Keith Packard [Wed, 18 Jul 2012 03:44:55 +0000 (20:44 -0700)]
altos: Megametrum ADC values are 12 bits, discard low 4 for telemetry

We've only got space for 8 bits for the ADC values for pyro channels,
discard the low 4 bits instead of the low 8 bits.

Signed-off-by: Keith Packard <keithp@keithp.com>
11 years agoaltoslib: Don't use MISSING values in max computations
Keith Packard [Wed, 18 Jul 2012 03:43:31 +0000 (20:43 -0700)]
altoslib: Don't use MISSING values in max computations

Early telemetry state may be missing critical data, don't use MISSING
values in computing max ranges.

Signed-off-by: Keith Packard <keithp@keithp.com>
11 years agoaltoslib: Fix MM conversion functions
Keith Packard [Wed, 18 Jul 2012 03:42:42 +0000 (20:42 -0700)]
altoslib: Fix MM conversion functions

Pressure is already reported in Pa, no need to convert that.
Voltage divider computations were backwards.

Signed-off-by: Keith Packard <keithp@keithp.com>
11 years agofirst work on PWM input to TeleScience, 'p' command displays timer 1
Robert Garbee [Tue, 17 Jul 2012 19:23:48 +0000 (13:23 -0600)]
first work on PWM input to TeleScience, 'p' command displays timer 1

11 years agoaltos: Place STM config values at fixed addresses for re-use
Keith Packard [Tue, 17 Jul 2012 08:24:52 +0000 (01:24 -0700)]
altos: Place STM config values at fixed addresses for re-use

Just like cc1111, stick the serial number and radio calibration values
at known fixed addresses so that when re-flashing the board, we can go
find the existing values.

Signed-off-by: Keith Packard <keithp@keithp.com>
11 years agoAdd ao-stmload tool
Keith Packard [Tue, 17 Jul 2012 08:18:45 +0000 (01:18 -0700)]
Add ao-stmload tool

This loads an ELF image through the STlink programming interface using
the stlink utility library

Signed-off-by: Keith Packard <keithp@keithp.com>
11 years agoaltosui: Skip unknown data when parsing ADC for idle monitoring
Keith Packard [Mon, 16 Jul 2012 22:36:20 +0000 (15:36 -0700)]
altosui: Skip unknown data when parsing ADC for idle monitoring

This resolves an infinite loop when talking to megametrum.

Signed-off-by: Keith Packard <keithp@keithp.com>
11 years agoaltosui: Move serial datastream parser to altoslib
Keith Packard [Mon, 16 Jul 2012 22:35:11 +0000 (15:35 -0700)]
altosui: Move serial datastream parser to altoslib

instead of having it in altosui

Signed-off-by: Keith Packard <keithp@keithp.com>
11 years agoaltos: megametrum depends on ao_companion.h
Keith Packard [Mon, 16 Jul 2012 22:34:01 +0000 (15:34 -0700)]
altos: megametrum depends on ao_companion.h

Signed-off-by: Keith Packard <keithp@keithp.com>
11 years agoaltos: Enable pyro channel control in telepyro
Keith Packard [Mon, 16 Jul 2012 22:32:26 +0000 (15:32 -0700)]
altos: Enable pyro channel control in telepyro

This should make the board actually work now.

Signed-off-by: Keith Packard <keithp@keithp.com>
11 years agoaltos: Add manual firing command for extra pyro channels
Keith Packard [Mon, 16 Jul 2012 22:30:29 +0000 (15:30 -0700)]
altos: Add manual firing command for extra pyro channels

In parallel with the existing igniter commands, this tests the
programmable pyro channels

Signed-off-by: Keith Packard <keithp@keithp.com>
11 years agoaltos: Use 'HAS_ORIENT' to enable orientation selection in pyro code
Keith Packard [Mon, 16 Jul 2012 22:27:58 +0000 (15:27 -0700)]
altos: Use 'HAS_ORIENT' to enable orientation selection in pyro code

Don't expose orientation options when no orientation data is available

Signed-off-by: Keith Packard <keithp@keithp.com>
11 years agoaltos: Pass flight dynamics to companion boards
Keith Packard [Mon, 16 Jul 2012 22:25:47 +0000 (15:25 -0700)]
altos: Pass flight dynamics to companion boards

Necessary for TelePyro

Signed-off-by: Keith Packard <keithp@keithp.com>
11 years agoaltos: Make ao_tick_count visible
Keith Packard [Mon, 16 Jul 2012 22:24:21 +0000 (15:24 -0700)]
altos: Make ao_tick_count visible

Necessary to fetch it when interrupts are already disabled as we can't
call ao_time then.

Signed-off-by: Keith Packard <keithp@keithp.com>
11 years agoaltos: Remove some debug code from avr ADC driver
Keith Packard [Mon, 16 Jul 2012 22:21:21 +0000 (15:21 -0700)]
altos: Remove some debug code from avr ADC driver

Signed-off-by: Keith Packard <keithp@keithp.com>
11 years agoaltos: Make sure telepyro ao_product.h is built before .o files
Keith Packard [Mon, 16 Jul 2012 22:18:12 +0000 (15:18 -0700)]
altos: Make sure telepyro ao_product.h is built before .o files

Signed-off-by: Keith Packard <keithp@keithp.com>
11 years agoaltos: Make storage addresses datatype configurable
Keith Packard [Mon, 16 Jul 2012 21:47:53 +0000 (14:47 -0700)]
altos: Make storage addresses datatype configurable

No sense using 32 bits for tiny hardware

Signed-off-by: Keith Packard <keithp@keithp.com>
11 years agosrc: Add driver for AVR internal eeprom. Use for telepyro config.
Keith Packard [Mon, 16 Jul 2012 21:44:40 +0000 (14:44 -0700)]
src: Add driver for AVR internal eeprom. Use for telepyro config.

Signed-off-by: Keith Packard <keithp@keithp.com>
11 years agoaltos: No space for pyro help on TP v0.1
Keith Packard [Mon, 16 Jul 2012 21:40:49 +0000 (14:40 -0700)]
altos: No space for pyro help on TP v0.1

AVR doesn't have enough ram to hold the help messages, and we can't
use them in flash.

Signed-off-by: Keith Packard <keithp@keithp.com>
11 years agoaltos: Remove unused 'func' from ao_config_set
Keith Packard [Mon, 16 Jul 2012 21:39:05 +0000 (14:39 -0700)]
altos: Remove unused 'func' from ao_config_set

Signed-off-by: Keith Packard <keithp@keithp.com>
11 years agoaltos/avr: Remove debugging command from USB driver
Keith Packard [Mon, 16 Jul 2012 21:37:58 +0000 (14:37 -0700)]
altos/avr: Remove debugging command from USB driver

Signed-off-by: Keith Packard <keithp@keithp.com>
11 years agoaltos/avr: Remove debugging printf in avr stdio startup
Keith Packard [Mon, 16 Jul 2012 21:36:51 +0000 (14:36 -0700)]
altos/avr: Remove debugging printf in avr stdio startup

Signed-off-by: Keith Packard <keithp@keithp.com>
11 years agosrc: Add explicit 'pin' argument to ao_enable_output
Keith Packard [Sat, 14 Jul 2012 09:44:17 +0000 (02:44 -0700)]
src: Add explicit 'pin' argument to ao_enable_output

This lets the cc1111 use the atomic bit operation instead of a mask,
which is immune to interrupt issues as well as being a shorter code sequence.

Signed-off-by: Keith Packard <keithp@keithp.com>
11 years agoaltos/megametrum: Support the four additional pyro channels
Keith Packard [Sat, 14 Jul 2012 08:29:50 +0000 (01:29 -0700)]
altos/megametrum: Support the four additional pyro channels

These use the new pyro code to allow for some flexibility in programming.

Signed-off-by: Keith Packard <keithp@keithp.com>
11 years agoaltos/stm: Expose ao_gpio_set which sets a specific GPIO pin
Keith Packard [Sat, 14 Jul 2012 08:28:55 +0000 (01:28 -0700)]
altos/stm: Expose ao_gpio_set which sets a specific GPIO pin

Will need versions for other architectures

Signed-off-by: Keith Packard <keithp@keithp.com>
11 years agostm: running out of memory in MM -- reduce stack to 668 bytes
Keith Packard [Sat, 14 Jul 2012 08:28:31 +0000 (01:28 -0700)]
stm: running out of memory in MM -- reduce stack to 668 bytes

Signed-off-by: Keith Packard <keithp@keithp.com>
11 years agoaltos: Add arbitrary pyro channel support
Keith Packard [Sat, 14 Jul 2012 08:26:38 +0000 (01:26 -0700)]
altos: Add arbitrary pyro channel support

Programmed by specifying a conjunction of flight conditions that
trigger the igniter to fire.

Signed-off-by: Keith Packard <keithp@keithp.com>
11 years agoaltos/stm: Force STM stack to start at the top of RAM
Keith Packard [Sat, 14 Jul 2012 08:24:14 +0000 (01:24 -0700)]
altos/stm: Force STM stack to start at the top of RAM

Using a fixed size means crashing if there's not enough space for
that, or wasting memory if there's too much.

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