summaryrefslogtreecommitdiff
path: root/src/cc1111
Commit message (Collapse)AuthorAge
* altos: Remove unused AES code from teledongle and tidongleKeith Packard2012-06-04
| | | | | | Leave this out as neither of these products need it. Signed-off-by: Keith Packard <keithp@keithp.com>
* altos: Remove accel_ref from pre v1.1 TM firmwareKeith Packard2012-06-04
| | | | | | | V1.0 needs RAM space for flash buffer, leaving too little room for this extra data. Signed-off-by: Keith Packard <keithp@keithp.com>
* altos: Add support for MegaAccel daughter card.Keith Packard2012-06-01
| | | | | | | | | Switches all acceleration computation to using the MegaAccel accelerometer to ensure support for high-g flights. MPU6000 values continue to be logged as normal Signed-off-by: Keith Packard <keithp@keithp.com>
* altos: Clean up ADC selection for cc1111Keith Packard2012-05-28
| | | | | | Depend directly on product defines instead of trying to guess Signed-off-by: Keith Packard <keithp@keithp.com>
* altos: All cc1111 products have a radioKeith Packard2012-05-28
| | | | Signed-off-by: Keith Packard <keithp@keithp.com>
* altos: Make telemini-v1.0 compile with new ao_data structureKeith Packard2012-05-27
| | | | Signed-off-by: Keith Packard <keithp@keithp.com>
* altos: Make telemetrum-v1.1 compile with new ao_data structureKeith Packard2012-05-27
| | | | Signed-off-by: Keith Packard <keithp@keithp.com>
* altos: Starting to write cc1120 driverKeith Packard2012-04-17
| | | | | | | This does "something" in radio test mode, appearing to generate a 730MHz signal. 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: Add support for multiple SPI busses and sharing device driversKeith Packard2012-04-14
| | | | | | | | | | | | | | | | The STM32L151 has several SPI busses, and we want to use more than one, so add a 'bus' parameter to the SPI interfaces. To avoid wasting time on AVR and CC1111 processors which only use one SPI bus, elide those parameters from the actual functions by wrapping them with macros. Configuring chip select is now all macroized so that each chip can have its own version, allowing the STM to share the various SPI device drivers with the cc1111 and avr processors. Note that only the M25 driver has been ported; porting the others is 'trivial', but not necessary at this point. 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>
* altos: Move cc1111 AES driver to cc1111 directoryKeith Packard2012-03-31
| | | | Signed-off-by: Keith Packard <keithp@keithp.com>
* altos: Require callsign match in packet codeKeith Packard2012-03-26
| | | | | | | | | | | Ignore packets with mismatching callsigns to avoid accidental connections between devices controlled by different stations. As a special case, if the device is configured with the default callsign (N0CALL), then let anyone connect. This allows configuration of new devices without needing to change the ground station callsign. Signed-off-by: Keith Packard <keithp@keithp.com>
* altos: Set correct registers for serial0 baudKeith Packard2012-01-03
| | | | | | oops. not going to work very well setting serial 1. 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: More _asm -> __asm changesKeith Packard2011-12-30
| | | | | | Missed a few last time 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>
* altos: SDCC 3.1 wants __at instead of atKeith Packard2011-12-30
| | | | | | Older SDCC would accept __at, so just replace all occurances unconditionally. Signed-off-by: Keith Packard <keithp@keithp.com>
* altos: Create TeleMetrum v1.2 directoryKeith Packard2011-12-17
| | | | | | | The hardware is software-compatible with v1.1, but it's nice to have the right version number in all of the files. Signed-off-by: Keith Packard <keithp@keithp.com>
* altos: Set default flight log max to 127k on TM v0.1Keith Packard2011-11-12
| | | | | | The flash part on v0.1 boards is only 128kB. 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: Set SPI fill value each time it is used.Keith Packard2011-11-12
| | | | | | | This ensures that the final MOSI pin value will be high after a receive is finished. Signed-off-by: Keith Packard <keithp@keithp.com>
* altos: Initialize DMA config address at boot timeKeith Packard2011-11-12
| | | | | | | Instead of resetting these each time a transfer is started, just set them once at boot time. Signed-off-by: Keith Packard <keithp@keithp.com>
* altos: debounce buttonsKeith Packard2011-11-12
| | | | | | | Provide API to clear out any button events that happen during startup, and then discard button events 'too close' together. 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: Flip button IRQ initialization aroundKeith Packard2011-10-23
| | | | | | This matches what the docs suggest Signed-off-by: Keith Packard <keithp@keithp.com>
* altos: Fix battery voltage computation.Keith Packard2011-10-23
| | | | | | Full scale is 4.95V, not 3.333V. 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: Add LEGACY_MONITOR defines to more programsKeith Packard2011-10-15
| | | | | | | Make all monitoring programs define whether they want all of the old telemetry formats too. Signed-off-by: Keith Packard <keithp@keithp.com>
* altos: oops -- forgot to add the cc1111 string codeKeith Packard2011-10-11
| | | | | | | This is required for all cc1111 builds now; it provides xdata string functions. 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>
* altos: Improve TM v1.0 apogee estimateKeith Packard2011-10-08
| | | | | | | | | | | | | | | | | | | | | v1.0 boards have noisy accelerometer data caused by interactions between RF transmission and the accelerometer measurements; this noise generates a negative bias in the accelerometer readings. The net effect is that the estimated speed is lower than the actual speed, causing early an apogee estimate. By increasing the sigma value for accelerometer data, the kalman filter 'trusts' the acceleration data less, putting more weight on the barometer data. This causes the estimated time of apogee to be closer to the correct value. This reduces the response to changes in acceleration. This new value is applied solely to TeleMetrum v1.0 boards. v1.1 boards correct for this error, and hence can use the correct sigma value for the accelerometer. 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
* Merge remote-tracking branch 'origin/simple-quiet' into multiarchKeith Packard2011-10-07
| | | | | | | Conflicts: configure.ac fix version number
* Merge remote-tracking branch 'uniarch/master' into multiarchKeith Packard2011-10-07
| | | | | | | Conflicts: src/core/ao_cmd.c Use ao_arch_reboot after waiting for a second
* 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: Report continuity in telebtKeith Packard2011-08-28
| | | | | | Report continuity values from remote altimeter Signed-off-by: Keith Packard <keithp@keithp.com>
* altos: Remove RSSI reporting from telebtKeith Packard2011-08-28
| | | | | | | Telebt uses one LED for bluetooth connection and the other for telem packet reception leaving none for RSSI. Signed-off-by: Keith Packard <keithp@keithp.com>
* altos: move igniter defines back to ao_pins.hKeith Packard2011-08-27
| | | | | | so that ao_launch gets them too 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: 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: Start telelaunch productKeith Packard2011-08-27
| | | | | | Looks a lot like TM, but without the flight code. 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>