summaryrefslogtreecommitdiff
path: root/src
Commit message (Collapse)AuthorAge
* Merge branch 'master' into hacking-cc1120aprsKeith Packard2012-12-16
|\
| * Merge branch 'micropeak-1.1'Keith Packard2012-12-12
| |\
| | * altos: Log in-flight data for MicroPeakKeith Packard2012-12-12
| | | | | | | | | | | | | | | | | | | | | | | | This logs the low 16 bits of the pressure value to the remaining on-chip eeprom. It can be read out with a standard AVR programming dongle. Signed-off-by: Keith Packard <keithp@keithp.com>
| | * altos: Add load-slow target for MicroPeakKeith Packard2012-12-12
| | | | | | | | | | | | | | | | | | | | | This sets the programming clock to 1/4 of the 250kHz clock used by the MicroPeak firmware, allowing the device to be reprogrammed. Signed-off-by: Keith Packard <keithp@keithp.com>
| | * altos: Tim Van Milligan suggestion for µP -- delay before showing last flightKeith Packard2012-12-11
| | | | | | | | | | | | | | | | | | This gives the user time to move their finger out of the way of the LED. Signed-off-by: Keith Packard <keithp@keithp.com>
| * | Merge branch 'micropeak-1.1'Keith Packard2012-12-11
| |\|
| | * altos: Increase MicroPeak blink times a bitKeith Packard2012-12-11
| | | | | | | | | | | | | | | | | | | | | make the 0 longer (1 sec now), and make the time between digits longer (also 1 sec now) Signed-off-by: Keith Packard <keithp@keithp.com>
| * | Merge branch 'micropeak-1.1'Keith Packard2012-12-09
| |\|
| | * altos: Use alt_t value to hold displayed height in micropeakmicropeak-build-2012-12-09Keith Packard2012-12-09
| | | | | | | | | | | | | | | | | | | | | Heights are 32 bits (to get .1 meter resolution) in micropeak; make sure we have enough bits while blinking out the computed value. Signed-off-by: Keith Packard <keithp@keithp.com>
| | * altos: Make sure pa to altitude conversion is done with 32 bitsKeith Packard2012-12-09
| | | | | | | | | | | | | | | | | | | | | We need 32 bits to hold intermediate values, even if the final altitude is reported in only 16 bits. Signed-off-by: Keith Packard <keithp@keithp.com>
| | * altos: Store altitude in 32-bits for MicroPeakKeith Packard2012-12-09
| | | | | | | | | | | | | | | | | | Needs all 32 bits to store .1 meter resolution Signed-off-by: Keith Packard <keithp@keithp.com>
* | | altos: Wire up another CC1120 GPIO to get MARC status changesKeith Packard2012-12-16
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | When the radio drops out of RX or TX mode due to an error, it changes the MARC status, and sends pulse down a configured GPIO. Use this to tell when something 'bad' happened during TX or RX so that we can recover from losing the SPI bus in the middle of transmission or reception. Without this, the radio would change state and we'd never know, leaving the radio code waiting for an interrupt that would never arrive. Signed-off-by: Keith Packard <keithp@keithp.com>
* | | altos: Test APRS rounding by using coordinates near the boundaryKeith Packard2012-12-16
| | | | | | | | | | | | | | | | | | | | | This selects lat/lon and altitude near the rounding boundary to check that the resulting APRS data is correctly computed. Signed-off-by: Keith Packard <keithp@keithp.com>
* | | altos: Document what HAS_BOOT_RADIO does in the m25 driverKeith Packard2012-12-16
| | | | | | | | | | | | | | | | | | | | | HAS_BOOT_RADIO causes the m25 driver to abort any ongoing receive in case that is holding the SPI bus. Signed-off-by: Keith Packard <keithp@keithp.com>
* | | altos: Round APRS data correctlyKeith Packard2012-12-16
| | | | | | | | | | | | | | | | | | | | | Apply rounding once at the start of the computation, then truncate after that. Signed-off-by: Keith Packard <keithp@keithp.com>
* | | altos: Stop including profiling and stack guard code in megametrumKeith Packard2012-12-07
| | | | | | | | | | | | | | | | | | These take CPU time and memory and are intended only for debugging Signed-off-by: Keith Packard <keithp@keithp.com>
* | | altos: Fix aprs test to not allow callsign configurationKeith Packard2012-12-07
| | | | | | | | | | | | | | | | | | There's no configuration to take a callsign from... Signed-off-by: Keith Packard <keithp@keithp.com>
* | | altos: Use configured callsign in APRS packetsKeith Packard2012-12-07
| | | | | | | | | | | | | | | | | | Instead of hard-coding my own call sign... Signed-off-by: Keith Packard <keithp@keithp.com>
* | | altos: Make APRS interval configurableKeith Packard2012-12-07
| | | | | | | | | | | | | | | | | | | | | This provides a separate configuration value for APRS, allowing the interval between APRS reports to vary. Signed-off-by: Keith Packard <keithp@keithp.com>
* | | altos: Fix up APRS packet sending code in cc1120 driverKeith Packard2012-12-07
| | | | | | | | | | | | | | | | | | | | | | | | This fixes the FIFO management, ensuring that the data are streamed into the radio fast enough to keep the packet continuous. Sounds like it works, but testing with an actual APRS receiver is required. Signed-off-by: Keith Packard <keithp@keithp.com>
* | | Merge branch 'master' into aprsKeith Packard2012-12-07
|\| |
| * | altos: fix functions calling pollchar to use 'int' to hold the valueKeith Packard2012-12-07
| | | | | | | | | | | | | | | | | | | | | | | | AO_READ_AGAIN doesn't fit in a char anymore now that stdio is 8-bit clean, everyone using pollchar must use an 'int' variable to capture the whole value from pollchar. Signed-off-by: Keith Packard <keithp@keithp.com>
| * | altos: Change 'flight-number' to 'current-flight'Keith Packard2012-12-06
| | | | | | | | | | | | | | | | | | Avoids ambiguity with stored flight info, which starts lines with 'flight'. Signed-off-by: Keith Packard <keithp@keithp.com>
| * | altos: Shrink 'ao_version' by calling printf fewer timesKeith Packard2012-12-06
| | | | | | | | | | | | | | | | | | | | | Each printf call costs quite a bit of code space on the cc1111, so instead of making multiple short calls, make one longer one. Signed-off-by: Keith Packard <keithp@keithp.com>
* | | altos: Send APRS packets even during ascentKeith Packard2012-12-06
| | | | | | | | | | | | | | | | | | If you're using APRS, presumably you want to watch the rocket going up too. Signed-off-by: Keith Packard <keithp@keithp.com>
* | | altos: Allow telemetry, rdf and APRS to be individually controlledKeith Packard2012-12-06
| | | | | | | | | | | | | | | | | | | | | But, only when APRS is available so that TeleMetrum and TeleMini don't change behaviour Signed-off-by: Keith Packard <keithp@keithp.com>
* | | altos: Hook up APRS to telemetry loopKeith Packard2012-12-06
| | | | | | | | | | | | | | | | | | Send APRS packet once every 2 seconds Signed-off-by: Keith Packard <keithp@keithp.com>
* | | altos: Hook APRS up to the radioKeith Packard2012-12-06
| | | | | | | | | | | | | | | | | | | | | This adds an arbitrary-length packet writing function to the radio code. Signed-off-by: Keith Packard <keithp@keithp.com>
* | | altos: Prepare APRS for use within altos itselfKeith Packard2012-12-05
| | | | | | | | | | | | | | | | | | | | | Make all variables static, const-ify constants, change the public name of the single entry point. Signed-off-by: Keith Packard <keithp@keithp.com>
* | | altos: Start restructuring APRS code to create and send packetsKeith Packard2012-12-05
| | | | | | | | | | | | Signed-off-by: Keith Packard <keithp@keithp.com>
* | | altos: Remove a bunch of time bits from the APRS codeKeith Packard2012-12-05
| | | | | | | | | | | | Signed-off-by: Keith Packard <keithp@keithp.com>
* | | altos: Remove APRS sine-wave tableKeith Packard2012-12-05
| | | | | | | | | | | | | | | | | | | | | We're generating a lovely square wave, which appears to be decoded just fine thankyouverymuch. Signed-off-by: Keith Packard <keithp@keithp.com>
* | | altos: More APRS trimmingKeith Packard2012-12-05
| | | | | | | | | | | | Signed-off-by: Keith Packard <keithp@keithp.com>
* | | altos: Remove more unused APRS codeKeith Packard2012-12-05
| | | | | | | | | | | | | | | | | | Getting down to a reasonable amount of code. Signed-off-by: Keith Packard <keithp@keithp.com>
* | | altos: Reduce printf calls in APRS packet generationKeith Packard2012-12-05
| | | | | | | | | | | | | | | | | | Merge all of the data into a single printf call Signed-off-by: Keith Packard <keithp@keithp.com>
* | | altos: Strip out everything but the basic position reporting from APRSKeith Packard2012-12-05
| | | | | | | | | | | | | | | | | | | | | Any useful data will be sent over the digital link; APRS is strictly for position tracking Signed-off-by: Keith Packard <keithp@keithp.com>
* | | Signed-off-by: Keith Packard <keithp@keithp.com>Keith Packard2012-12-05
| | | | | | | | | | | | | | | | | | altos: Switch APRS to standard position reporting form Stop using NMEA sentences for position
* | | altos: Add missing ao_aprs.h fileKeith Packard2012-12-05
| | | | | | | | | | | | | | | | | | This has defines for the planned APRS interface Signed-off-by: Keith Packard <keithp@keithp.com>
* | | altos: Generate all of the APRS messagesKeith Packard2012-12-05
| | | | | | | | | | | | | | | | | | | | | Note that two of them are in NMEA form, which some receivers appear not to parse Signed-off-by: Keith Packard <keithp@keithp.com>
* | | altos: Add test scaffolding for APRSKeith Packard2012-12-05
| | | | | | | | | | | | | | | | | | | | | | | | This moves some test code out of ao_aprs.c and into ao_aprs_test.c, and then adds Makefile fragments to compile and run the resulting program, creating a wav file as output Signed-off-by: Keith Packard <keithp@keithp.com>
* | | altos: Make aprs code output encoded packets to stdoutKeith Packard2012-12-05
| | | | | | | | | | | | | | | | | | | | | This generates a .wav file containing a single APRS packet. This has been tested and appears to be successfully decoded by an APRS receiver. Signed-off-by: Keith Packard <keithp@keithp.com>
* | | altos: Add Pico Beacon code as ao_aprs.cKeith Packard2012-12-05
|/ / | | | | | | | | | | | | | | | | | | | | | | Pico Beacon hooks a GPS to an AD9954 DDS radio chip with a PIC. It directly synthesizes the necessary AX.25 packets to do APRS reporting. We're going to appropriate the code for use in Mega Metrum to (optionally) broadcast APRS packets. http://ad7zj.net/kd7lmo/aprsbeacon_code.html Signed-off-by: Keith Packard <keithp@keithp.com> (
* | altos: Break out GPS speed resetting sequenceKeith Packard2012-12-04
| | | | | | | | | | | | | | To set the GPS speed, we delay for 1/2 sec, change speed, then delay for another 1/2 sec. Signed-off-by: Keith Packard <keithp@keithp.com>
* | altos: shrink ao_companion_status by merging printf callsKeith Packard2012-12-04
| | | | | | | | | | | | | | Multiple printf calls are longer than one big one, so merge these together to save some code space Signed-off-by: Keith Packard <keithp@keithp.com>
* | altos: Make skytraq reflashing code try both 9600 and 4800 baudKeith Packard2012-11-30
| | | | | | | | | | | | | | This lets it communicate with the ROM code which boots at 4800 baud instead of 9600 baud. Signed-off-by: Keith Packard <keithp@keithp.com>
* | altos: Add support for reflashing skytraq GPS chipsKeith Packard2012-11-30
| | | | | | | | | | | | | | | | | | | | This simply switches the skytraq port to 115200 baud and then essentially connects it directly to the USB port by forwarding bytes in both directions. Once started, the only way out is to reboot the board. Signed-off-by: Keith Packard <keithp@keithp.com>
* | altos: Expose GPS serial fifo on MegaMetrumKeith Packard2012-11-30
| | | | | | | | | | | | Necessary for direct access by the GPS reflashing code Signed-off-by: Keith Packard <keithp@keithp.com>
* | altos: Add ao_task_minimize_latency to reduce IRQ delaysKeith Packard2012-11-30
| | | | | | | | | | | | | | | | | | | | | | | | | | | | When set, this causes the task switching code to avoid blocking IRQs while looking for an idle task as that can increase IRQ latencies enough to drop characters at 115200 baud on the cc1111. Note that this *also* eliminates the ability to use low power modes as we cannot know at any point whether some interrupt has come along and woken a task. Has no effect when using task queues as those require IRQs to be blocked while looking at the queue. Shouldn't be a problem there though as the check for no running tasks is very cheap. Signed-off-by: Keith Packard <keithp@keithp.com>
* | altos: Use ao_xmemcpy in ao_log_telem.cKeith Packard2012-11-30
| | | | | | | | | | | | This eliminates the libc generic version in TeleTerra Signed-off-by: Keith Packard <keithp@keithp.com>
* | altos: Add support for 115200 baud serial ratesKeith Packard2012-11-30
| | | | | | | | | | | | Necessary for flashing skytraq chips Signed-off-by: Keith Packard <keithp@keithp.com>