summaryrefslogtreecommitdiff
path: root/src
Commit message (Collapse)AuthorAge
...
* altos: Add erase command to stm-flash app. Validate addresses.Keith Packard2013-05-07
| | | | | | | | This also leaves the code writing fixed values and printing read data in ascii instead of binary. Useful for debugging, will want changing for the product. Signed-off-by: Keith Packard <keithp@keithp.com>
* altos: Fix STM flash programmingKeith Packard2013-05-07
| | | | | | | | | | | Wait for flash to go non-busy after writing or erasing a page and before jumping back out of the RAM code. Export a separate 'erase' operation for testing. Re-lock flash after every operation. Signed-off-by: Keith Packard <keithp@keithp.com>
* altos: Validate boot chain start addressKeith Packard2013-05-07
| | | | | | | | | | If the first block of boot memory has been smashed, and the start address is bogus, don't bother trying to jump to the application. This makes the system more resiliant to flash failures, presuming the loader erases the first block, programs the other blocks and then finally comes back to program the first block. Signed-off-by: Keith Packard <keithp@keithp.com>
* altos: Mark .boot section as (NOLOAD)Keith Packard2013-05-07
| | | | | | | | | For some reason, the silly linker marks things in section .boot as data rather than bss, so they'd end up initialized by default. Force them to be NOLOAD so they preserve values across reboot so that boot chaining works properly. Signed-off-by: Keith Packard <keithp@keithp.com>
* altos: Fix up stm-flash output file name. Use discovery LED pinsKeith Packard2013-05-07
| | | | | | | | | | Include the AltOS version in the file name, just like any other AltOS program. Switch the LEDs to the discovery board as we're using that. Eventually, we'll stop using LEDs entirely. Signed-off-by: Keith Packard <keithp@keithp.com>
* altos: Add actual flashing functions to stm-flash appKeith Packard2013-05-07
| | | | Signed-off-by: Keith Packard <keithp@keithp.com>
* altos: Clean up boot loader supportKeith Packard2013-05-07
| | | | | | | Split out code into separate files. Add support for getting back to boot loader from application. Signed-off-by: Keith Packard <keithp@keithp.com>
* altos: Add program flash functionKeith Packard2013-05-07
| | | | | | | | And get it loaded to RAM so it can execute correctly. Nothing calls it yet... Signed-off-by: Keith Packard <keithp@keithp.com>
* altos: Make stm-flash capable of switching to applicationKeith Packard2013-05-07
| | | | | | | This shrinks the base OS load down a bit as well so that stm-flash fits comfortably in the first 8kB of memory. Signed-off-by: Keith Packard <keithp@keithp.com>
* Add STM self-flashing loaderKeith Packard2013-05-07
| | | | | | | This allows the real application to get loaded at 0x2000 and jumps to that at startup time if the boot pin is set appropriately Signed-off-by: Keith Packard <keithp@keithp.com>
* altos: Sanity check barometer before going to pad modeKeith Packard2013-05-07
| | | | | | | Make sure the barometer is reporting some sensible value before letting TM try to fly the rocket. Signed-off-by: Keith Packard <keithp@keithp.com>
* altos: Elide M25 debug output from storage info commandKeith Packard2013-05-07
| | | | | | | This is just chip-specific info that no UI actually needs. It takes a bunch of ROM to write it though, making TeleMetrum not have much space left. Signed-off-by: Keith Packard <keithp@keithp.com>
* altos: Set APRS deviation to 3kHzKeith Packard2013-05-07
| | | | | | | | I finally found a bunch of references to APRS on the net and they all appear to assume a 3kHz deviation. Let's see if this works better with Yaesu radios. Signed-off-by: Keith Packard <keithp@keithp.com>
* altos/test: Fix warning in ao_aprs_testKeith Packard2013-05-07
| | | | | | Was not forward-declaring ao_radio_send_aprs, causing a warning Signed-off-by: Keith Packard <keithp@keithp.com>
* altos: Use SYSTICK on STM32LKeith Packard2013-05-07
| | | | | | | It's probably more power efficient than using one of the timers, and it's certainly easier to configure. Signed-off-by: Keith Packard <keithp@keithp.com>
* altos: Mark GPS telemetry packets with GPS time stampKeith Packard2013-05-07
| | | | | | | | This provides a reasonable accurate indication of the system time when the GPS location data was received, and also makes sure GPS packets get some timestamp when no other telemetry is being transmitted. Signed-off-by: Keith Packard <keithp@keithp.com>
* altos: Use separate exception stack on STM32LKeith Packard2013-05-07
| | | | | | | | This reserves 512 bytes of memory for a stack, then makes sure that exceptions continue to use that stack while processes use the per-task stack. Signed-off-by: Keith Packard <keithp@keithp.com>
* altos: Reduce stack usage of FAT driver and loggerKeith Packard2013-05-07
| | | | | | | | Move some large stack arrays to static storage. Also eliminates some printf error messages which don't seem that useful except for debugging. Signed-off-by: Keith Packard <keithp@keithp.com>
* altos: Open up the DVGA gain to use all of the available settingsKeith Packard2013-05-07
| | | | | | | We usually work in RF quiet areas; let the AGC hardware try all of the available gain settings. Signed-off-by: Keith Packard <keithp@keithp.com>
* altos: Stop using telelco v0.2 top LEDS for radio TX/RXKeith Packard2013-05-07
| | | | | | | The top LEDs are now used for signal strength; a red LED indicates failed communcations, so we don't need to blink stuff and annoy the user. Signed-off-by: Keith Packard <keithp@keithp.com>
* altos: Make cc1120 driver return false on recv timeoutKeith Packard2013-05-07
| | | | | | Was returning an uninitialized value, which was often not zero Signed-off-by: Keith Packard <keithp@keithp.com>
* altos: Reconfigure CC1120 receiver to match our usageKeith Packard2013-05-07
| | | | | | | Open up the AGC to the full range. Set the AGC ref based on our receive BW (100kHz). Signed-off-by: Keith Packard <keithp@keithp.com>
* altos: Compute "real" RSSI value in radio code as neededKeith Packard2013-05-07
| | | | | | | | | Instead of dragging around the weird CC1111 RSSI values, just compute a dBm value in a signed 8-bit integer, ao_radio_rssi. Use that everywhere we need RSSI internally. We leave the weird CC1111 value in the packet reply as that's what the host expects. Signed-off-by: Keith Packard <keithp@keithp.com>
* altos: More .gitignore bitsKeith Packard2013-05-07
| | | | | | stm-demo Signed-off-by: Keith Packard <keithp@keithp.com>
* altos: Add a bunch of .gitignore filesKeith Packard2013-05-07
| | | | | | Ignore ao_product.h and built binaries Signed-off-by: Keith Packard <keithp@keithp.com>
* altos: Add ublox checksum app to generate ublox config linesKeith Packard2013-05-07
| | | | Signed-off-by: Keith Packard <keithp@keithp.com>
* altos: Add .gitignore to kalman test dirKeith Packard2013-05-07
|
* altos: Build test framework for kalman filterKeith Packard2013-05-07
| | | | | | | This has some known flight data and generates kalman filter information for them to test Signed-off-by: Keith Packard <keithp@keithp.com>
* altos: Ignore ao_aes_test binaryKeith Packard2013-05-07
| | | | Signed-off-by: Keith Packard <keithp@keithp.com>
* altos/test: Add telemega plot helper scriptKeith Packard2013-05-07
| | | | Signed-off-by: Keith Packard <keithp@keithp.com>
* altos: Add nickle micropeak log parsing codeKeith Packard2013-05-07
| | | | | | I think this was just some debugging stuff, but it doesn't seem useless Signed-off-by: Keith Packard <keithp@keithp.com>
* altos: Add telelco-v0.2 projectKeith Packard2013-05-07
| | | | Signed-off-by: Keith Packard <keithp@keithp.com>
* altos: Allow LCD segments to not be multiplexed across digitsKeith Packard2013-05-07
| | | | | | | This allows each LCD segment to be individually configured as to which COM and which SEG drives it, permitting maximum flexibility in wiring. Signed-off-by: Keith Packard <keithp@keithp.com>
* altos: Clear any broken cc1120 TX fifo bits before transmittingKeith Packard2013-05-07
| | | | | | | | This just goes and clears the transmitter before using it, just in case it got wedged somehow. It also clears the bits while waiting for the radio to go idle, otherwise it'd never make it. Signed-off-by: Keith Packard <keithp@keithp.com>
* altos: Make cc1120 driver wait for TX finishedKeith Packard2013-05-07
| | | | | | | | | | Otherwise, we may come in and try to use the radio again too quickly, causing it to go into a TX fifo error state. This change watches the MARC status until the transmitter is explicitly marked as finished. Signed-off-by: Keith Packard <keithp@keithp.com>
* altos: Provide timeout value to ao_radio_recvKeith Packard2013-05-07
| | | | | | | | | Instead of using ao_alarm around calls to ao_radio_recv, provide an explicit timeout value as needed by radio functions with more complicated system interaction than the cc1111. The timeout is 8 bits of clock ticks. Signed-off-by: Keith Packard <keithp@keithp.com>
* altos: Build test framework for AES codeKeith Packard2013-05-07
| | | | | | Simple CBC-CMAC test with a constant 0 key and constant 0 data for now. Signed-off-by: Keith Packard <keithp@keithp.com>
* altos: Make telemega-v0.3 binary use the right nameKeith Packard2013-05-07
| | | | Signed-off-by: Keith Packard <keithp@keithp.com>
* altos/stm: Remove USB EP0 taskKeith Packard2013-05-07
| | | | | | | Handl EP0 actions from interrupt handler. This allows USB to be used in a taskless environment, like the STM flash loader Signed-off-by: Keith Packard <keithp@keithp.com>
* altos/stm: Always declare all romconfig variablesKeith Packard2013-05-07
| | | | | | | | I haven't figured out how to assign addresses for specific initialized variables, so we'll just have to always declare all of them and make sure that we add new ones at the end. Signed-off-by: Keith Packard <keithp@keithp.com>
* altos: Call ao_task_init before initializing any driversKeith Packard2013-05-07
| | | | | | | | When using task queues, the sleep queues must be initialized before any invocation of ao_wakeup or the OS will crash. Just make sure ao_task_init is always invoked early in the task process to get that done. Signed-off-by: Keith Packard <keithp@keithp.com>
* altos: Expose ao_put_string functionKeith Packard2013-05-07
| | | | | | This works like puts, except it doesn't add a trailing newline. Signed-off-by: Keith Packard <keithp@keithp.com>
* altos: All STM ADC users need to declare HAS_ADC_TEMPKeith Packard2013-04-27
| | | | | | Otherwise we can't configure the ADC unit correctly at boot time Signed-off-by: Keith Packard <keithp@keithp.com>
* altos: Build telemega-v0.3 by defaultKeith Packard2013-04-27
| | | | Signed-off-by: Keith Packard <keithp@keithp.com>
* altos: Add TeleMega v0.3 supportKeith Packard2013-04-25
| | | | | | Includes adding SPI support to the MPU6000 driver Signed-off-by: Keith Packard <keithp@keithp.com>
* altos: Add MR25 everspin MRAM driverKeith Packard2013-04-25
| | | | Signed-off-by: Keith Packard <keithp@keithp.com>
* altos: Make SD card driver compile without radio supportKeith Packard2013-04-25
| | | | | | | | The SD card driver blocks the radio when trying to access the card as that operation appears very sensitive to RFI. This fix makes the driver work when there *isn't* a radio driver in the same device. Signed-off-by: Keith Packard <keithp@keithp.com>
* altos: Re-generate TeleMega bitsKeith Packard2013-04-22
| | | | | | Lost in the great megametrum rename Signed-off-by: Keith Packard <keithp@keithp.com>
* name change from MegaMetrum to TeleMegaBdale Garbee2013-04-22
|
* Move cortex toolchain to /opt/cortexKeith Packard2013-04-22
| | | | Signed-off-by: Keith Packard <keithp@keithp.com>