summaryrefslogtreecommitdiff
path: root/src/core/ao.h
Commit message (Collapse)AuthorAge
...
* altos: Legacy telemetry needs original ADC recordKeith Packard2012-06-04
| | | | | | | | The legacy telemetry packets included the raw ADC structure directly, so make sure that doesn't change further, allowing teledongle firmware to remain compatible with old TM firmware. Signed-off-by: Keith Packard <keithp@keithp.com>
* altos: Finish ms5607 supportKeith Packard2012-05-18
| | | | | | | | | | This has the MS5607 polling once each tick for pressure and temperature and then saving that in a global variable. The command UI provides for dumping the prom data so that an eeprom file can have raw sensor data along with the conversion factors necessary to compute useful values. Signed-off-by: Keith Packard <keithp@keithp.com>
* altos: Add conversion between Pa and metersKeith Packard2012-05-18
| | | | | | To be used with the MS5607 which generates data in calibrated units. Signed-off-by: Keith Packard <keithp@keithp.com>
* altos: Pull more interfaces out of ao.h and move to separate filesKeith Packard2012-04-14
| | | | | | This moves the aes, btm, companion, lcd and packet interfaces out of ao.h Signed-off-by: Keith Packard <keithp@keithp.com>
* altos: Massive product config cleanupKeith Packard2012-04-14
| | | | | | | | Support multiple serial ports more cleanly Split out parts of ao.h into separate feature header files Signed-off-by: Keith Packard <keithp@keithp.com>
* altos: Start adding apogee lockout supportKeith Packard2012-04-14
| | | | | | Remove radio channel support too. Signed-off-by: Keith Packard <keithp@keithp.com>
* altos: Make ao_config_set_radio publicKeith Packard2012-04-07
| | | | | | Allows other bits of code to reset the radio parameters. Signed-off-by: Keith Packard <keithp@keithp.com>
* altos: Make ao_freq_to_set reentrantKeith Packard2012-04-07
| | | | | | Save a bunch of data space this way. Signed-off-by: Keith Packard <keithp@keithp.com>
* altos: Add DMA, SPI and MS5607 driversKeith Packard2012-04-06
| | | | Signed-off-by: Keith Packard <keithp@keithp.com>
* altos: Move SPI functions to architecture-specific locationKeith Packard2012-04-02
| | | | | | | | Some architecture specific stuff needs to use core altos code, so create new ao_arch_funcs.h files per architecture that get pulled in at the end of ao.h Signed-off-by: Keith Packard <keithp@keithp.com>
* altos: Move cc1111 DMA engine interface to cc1111/ao_arch.h from ao.hKeith Packard2012-03-31
| | | | | | It's hardware specific Signed-off-by: Keith Packard <keithp@keithp.com>
* Allow for more than 8 LEDsKeith Packard2012-03-28
| | | | | | Provide hook for architecture-specific LED mask (AO_LED_TYPE) Signed-off-by: Keith Packard <keithp@keithp.com>
* Allow for more than one serial port in core AltOSKeith Packard2012-03-28
| | | | Signed-off-by: Keith Packard <keithp@keithp.com>
* Add AO_PANIC_STACKKeith Packard2012-03-28
| | | | | | Provide a panic code for stack overflow. Signed-off-by: Keith Packard <keithp@keithp.com>
* 'stdin' is a special name in some compiler environments, don't use it.Keith Packard2012-03-28
| | | | | | Switch to 'in' in the prototype for altos_serial_set_stdin. Signed-off-by: Keith Packard <keithp@keithp.com>
* Do radio settings solely by frequencyKeith Packard2012-03-26
| | | | | | | Compute the radio setting needed based on the calibration value provided and the requested frequency. Signed-off-by: Keith Packard <keithp@keithp.com>
* altos: flush stdout when fifo from arduino serial port is emptyKeith Packard2012-01-03
| | | | | | This avoids leaving bytes pending inside altos Signed-off-by: Keith Packard <keithp@keithp.com>
* altos: Add support for UART0 in async modeKeith Packard2012-01-03
| | | | | | And copy bytes from it to stdout. Signed-off-by: Keith Packard <keithp@keithp.com>
* altos: Clean up for SDCC 3.1 - more keywordsKeith Packard2011-12-30
| | | | | | | | _asm -> __asm sbit -> __sbit remove variables named 'data' Signed-off-by: Keith Packard <keithp@keithp.com>
* altosui: Add ao_lcd_cursor_on/offKeith Packard2011-11-12
| | | | | | This shows or hides a blinking cursor on the LCD. Signed-off-by: Keith Packard <keithp@keithp.com>
* altos: Add configurable set of channels for TTKeith Packard2011-11-12
| | | | | | | This adds the channel list for TT, which will be configured by AltosUI. Signed-off-by: Keith Packard <keithp@keithp.com>
* altos: Export 'ao_cmd_is_white' for use by other codeKeith Packard2011-11-12
| | | | | | This function tests the current input character. Signed-off-by: Keith Packard <keithp@keithp.com>
* altos: Handle internal and external telem monitoring requestsKeith Packard2011-11-12
| | | | | | | | | | | | Record separate internal vs external monitoring state, allowing both to happen at the same time, and when either is turned off, the other keeps working. This also adds disable/enable so that other radio users can temporarily take over the radio; monitoring will resume when the other radio user is finished. Signed-off-by: Keith Packard <keithp@keithp.com>
* altos: Make ao_xmem funcs require __xdata void * instead of castingKeith Packard2011-11-11
| | | | | | | | | | | | Having an explicit cast in the ao_xmem wrapper macros caused the compiler to generate garbage values for pdata addresses, making the upper byte 0x00 instead of the required 0xf0. Removing the casts from the ao_xmem macros exposed this problem, so a new PDATA_TO_XDATA macros was added, along with a CODE_TO_XDATA macro which serve to cast pointers, with suitable address modifications, so that things work again. Signed-off-by: Keith Packard <keithp@keithp.com>
* altos: Bring up basic TeleTerra v0.2 UImultiarchKeith Packard2011-10-26
| | | | | | Lots of fun stuff here -- multiple panes of information. Signed-off-by: Keith Packard <keithp@keithp.com>
* altos: Add battery voltage sampling driverKeith Packard2011-10-23
| | | | | | | For devices without a full ADC compliment, this just samples the battery pin and converts to mV. Signed-off-by: Keith Packard <keithp@keithp.com>
* altos: Add button driver and sample userKeith Packard2011-10-23
| | | | | | Hook up the teleterra buttons and have them beep Signed-off-by: Keith Packard <keithp@keithp.com>
* altos: Split out arch-specific bits of LCD driverKeith Packard2011-10-11
| | | | | | The arch-specific section just puts a single nibble to the device. Signed-off-by: Keith Packard <keithp@keithp.com>
* Bump to 1.0.9.31.0.9.3Keith Packard2011-10-11
| | | | | | TeleScience and TelePyro now work. Signed-off-by: Keith Packard <keithp@keithp.com>
* altos: Write xdata versions of memory functions1.0.9.1Keith Packard2011-10-07
| | | | | | | | | | | | | | | | These are significantly smaller than the general pointer versions from libc on the cc1111. Signed-off-by: Keith Packard <keithp@keithp.com> Conflicts: src/Makefile.proto src/cc1111/ao_adc.c src/cc1111/ao_packet_master.c src/core/ao.h Fix up the new makefiles
* altos: Add TelePyro v0.1 supportKeith Packard2011-09-21
| | | | Signed-off-by: Keith Packard <keithp@keithp.com>
* altos: Pre-compute RDF packet len at compile timeKeith Packard2011-09-21
| | | | | | | Instead of computing the RDF packet len at run time, which takes a pile of code space. Signed-off-by: Keith Packard <keithp@keithp.com>
* altos: SPI slave code is now per-productKeith Packard2011-09-21
| | | | | | | We can't write general purpose SPI slave code as we must eliminate any latency because the SPI ports have no buffering. Signed-off-by: Keith Packard <keithp@keithp.com>
* altos: don't beep igniter continuity for telenanoKeith Packard2011-08-28
| | | | | | Without any igniters, it's not nice to annoy people. Signed-off-by: Keith Packard <keithp@keithp.com>
* altos: add 'report' to telebtKeith Packard2011-08-28
| | | | | | | This beeps out flight state changes and max altitude at landing, just like the altimeter. Signed-off-by: Keith Packard <keithp@keithp.com>
* altos: Share log code between telescience and telebt. Add telebt logKeith Packard2011-08-27
| | | | | | | | Telescience and telebt both log data in 32-byte chunks, so share some code which manages that between the two products. Add simple telemetry logging to telebt. Signed-off-by: Keith Packard <keithp@keithp.com>
* altos: Implement remote launch protocolKeith Packard2011-08-27
| | | | | | | | Uses the radio_cmac module to provide secure communication. Keeps igniter closed for 500ms. Provides remote status for arming and ignition. Signed-off-by: Keith Packard <keithp@keithp.com>
* altos: Get AES CBC-MAC packet transfers runningKeith Packard2011-08-27
| | | | | | | | | This just has simple command-line based packet transfers for testing. This also adds special ao_telelaunch bits where the launch control code will live. Signed-off-by: Keith Packard <keithp@keithp.com>
* altos: More work on AES bitsKeith Packard2011-08-27
| | | | Signed-off-by: Keith Packard <keithp@keithp.com>
* altos: Start work on AES and raw radio interfaces.Keith Packard2011-08-27
| | | | | | We probably don't want this raw radio interface, but it's a start. Signed-off-by: Keith Packard <keithp@keithp.com>
* altos: Add 'send all baro' compile-time optionKeith Packard2011-08-27
| | | | | | | | | | | | This option creates a new packet type that delivers full sensor-rate barometer telemetry data to allow for off-line analysis of flight algorithms using all of the data, rather than the slower rate provided either over telemetry or stored in the eeprom file. Define AO_SEND_ALL_BARO and this will get built in. Perhaps this could be a run-time option... Signed-off-by: Keith Packard <keithp@keithp.com>
* altos: re-order ao_task to match single-arch codeidentical-buildKeith Packard2011-08-26
| | | | | | | This is just for testing to make the new build match the old build exactly. Signed-off-by: Keith Packard <keithp@keithp.com>
* altos: Integrate telescience supportKeith Packard2011-08-26
| | | | | | Adds a few drivers including an LCD driver Signed-off-by: Keith Packard <keithp@keithp.com>
* altos: get avr-demo to build. Pull in AVR drivers and LCD driverKeith Packard2011-08-25
| | | | | | | This completes the basic task of making an AVR version of altos by getting the Teensy 'avr-demo' program to build. Signed-off-by: Keith Packard <keithp@keithp.com>
* altos: add GCC/SDCC compat macros, init_stack, save_context and GCC stdio hooksKeith Packard2011-08-25
| | | | | | | | | | | | | | More arch-indepdency bits. GCC stdio is different from SDCC, so create suitable code in avr/ao_avr_stdio.c Create macros to initialize the task stack frame and save the task context. Add GCC/SDCC type definition compatibility macros Signed-off-by: Keith Packard <keithp@keithp.com>
* altos: AVR changes - create ao_arch.h files, define ao_arch_rebootKeith Packard2011-08-25
| | | | | | | | Start pulling changes needed for avr port; architecture-specific code will live in <architcture>/ao_arch.h. This first change defines the ao_arch_reboot macro to reboot the microcontroller. Signed-off-by: Keith Packard <keithp@keithp.com>
* altos: Restructure altos build to prepare for multi-arch supportKeith Packard2011-08-25
Split out sources into separate directories: core: architecture and product independent bits cc1111: cc1111-specific code drivers: architecture independent drivers product: product-specific sources and Makefile fragments util: scripts for building stuff This should have no effect on the built products, but testing is encouraged Signed-off-by: Keith Packard <keithp@keithp.com>