summaryrefslogtreecommitdiff
path: root/src
Commit message (Collapse)AuthorAge
...
* 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>
* altos: update .gitignore filesMike Beattie2013-04-22
| | | | Signed-off-by: Mike Beattie <mike@ethernal.org>
* document my snazzy new 4-pin to MM v0.1 debug cableBdale Garbee2013-04-20
|
* altos: Make sure the packet format is set reasonably for radio testKeith Packard2013-04-12
| | | | | | Dunno if this matters, but it might as well be set reasonably Signed-off-by: Keith Packard <keithp@keithp.com>
* altos: Don't include bufio debug commands by defaultKeith Packard2013-04-12
| | | | | | We shouldn't need these Signed-off-by: Keith Packard <keithp@keithp.com>
* altos: Stick a mutex around FAT operationsKeith Packard2013-04-12
| | | | | | This allows the command line and logging operations to occur safely in parallel Signed-off-by: Keith Packard <keithp@keithp.com>
* altos: Delay while waking up SD card a bitKeith Packard2013-04-12
| | | | | | | | This seems to make bringing the card from idle to ready mode more reliable. If you spam the card with requests, it will eventually whinge and shut down communications. Signed-off-by: Keith Packard <keithp@keithp.com>
* altoslib/altosui: Carry receiver status around in AltosListenerStateKeith Packard2013-04-09
| | | | | | | | | | This moves the crc_errors into the new structure and adds a receiver battery voltage value there as well. Now the receiver status can be monitored separately from the flight status. That also means that code receiving state updates should be prepared to accept missing listener or flight state values. Signed-off-by: Keith Packard <keithp@keithp.com>
* altos: Monitor battery voltage on telebtKeith Packard2013-04-09
| | | | Signed-off-by: Keith Packard <keithp@keithp.com>
* altos: Create telebt-v1.0 product. Remove old telebt productsKeith Packard2013-04-08
| | | | Signed-off-by: Keith Packard <keithp@keithp.com>
* altos: Try RDF mode for TX calibrationKeith Packard2013-04-06
| | | | | | | | Trying to get the radio to stop modulating the carrier when calibrating the radio, we'll try RDF mode which says no preamble or sync data. This might shift the frequency though? Signed-off-by: Keith Packard <keithp@keithp.com>
* Set telegps USB id to 0025Keith Packard2013-04-02
| | | | | | It was accidentally using the same ID as megadongle... Signed-off-by: Keith Packard <keithp@keithp.com>
* altos: Shorten SD initialization timeouts.Keith Packard2013-04-02
| | | | | | This makes failure when no card is present much quicker. Signed-off-by: Keith Packard <keithp@keithp.com>
* altos: Horrible kludge -- disable radio while talking with SD cardKeith Packard2013-04-01
| | | | | | | The SD card really doesn't like the RFI generated by our enormous radio, so just lock the radio out while working with the card. Signed-off-by: Keith Packard <keithp@keithp.com>
* altos: Add defines for the specific pins used for telegps SPIKeith Packard2013-04-01
| | | | | | These aren't needed at this point, but who knows? Signed-off-by: Keith Packard <keithp@keithp.com>
* altos: Retry SD card I/O. Use time for timeouts instead of countsKeith Packard2013-04-01
| | | | | | | | | | Sometimes I/O operations may fail; give the card a chance and retry the operation in case it works the next time. Replace the loop counts with loops that check the clock so that they'll have consistent timeouts even if the CPU or SPI speed changes. Signed-off-by: Keith Packard <keithp@keithp.com>
* altos: Provide build hooks for sampling profiler in telegpsKeith Packard2013-04-01
| | | | | | Might prove useful if the CPU is ever doing anything? Signed-off-by: Keith Packard <keithp@keithp.com>
* altos: Add a FAT test that re-writes the same file multiple timesKeith Packard2013-04-01
| | | | | | This caught a bunch of FAT cluster chain allocation bugs. Signed-off-by: Keith Packard <keithp@keithp.com>
* altos: Support open on multiple simultaneous FAT filesKeith Packard2013-04-01
| | | | | | | Need to be able to see the contents of a log file, even if the logger is running. Signed-off-by: Keith Packard <keithp@keithp.com>
* altos: Make sure FAT cluster allocation works for size zero filesKeith Packard2013-04-01
| | | | | | | There were some rounding errors mis-computing the number of clusters needed, and the logic to figure out how to re-connect a chain was broken. Signed-off-by: Keith Packard <keithp@keithp.com>
* altos: let FAT tracing work in ao_fat_test as neededKeith Packard2013-04-01
| | | | | | | This allows the FAT DBG hooks to be enabled even if some other module turned DBG off. Signed-off-by: Keith Packard <keithp@keithp.com>
* altos: Flush the on-board mega log after every sample interval.Keith Packard2013-04-01
| | | | | | | | SPI flash parts don't need flushing, but the SD card does. Make sure the SD card contents are sane after every logging interval has passed by flushing all dirty blocks to the device. Signed-off-by: Keith Packard <keithp@keithp.com>
* altos: Create the log file if it doesn't already existKeith Packard2013-03-31
| | | | | | open will return failure unless the file already exists. Signed-off-by: Keith Packard <keithp@keithp.com>
* altos: Make ao_fat_readdir return real error values instead of 1/0Keith Packard2013-03-31
| | | | | | | This way, we can distinguish between 'something bad happened' and 'you're at the end of the directory'. Signed-off-by: Keith Packard <keithp@keithp.com>
* altos: Increase SD card timeout at startup timeKeith Packard2013-03-31
| | | | | | | Sometimes the SD card takes 'a while' to go into idle mode at first power up. Just hang around waiting for a long time. Signed-off-by: Keith Packard <keithp@keithp.com>
* altos: Fix command-line FAT filename parsingKeith Packard2013-03-31
| | | | | | Pad extension with spaces Signed-off-by: Keith Packard <keithp@keithp.com>
* altos: Unmount file system after each testing pass in ao_fat_testKeith Packard2013-03-31
| | | | | | Otherwise, we use stale data and 'bad things' happen. Signed-off-by: Keith Packard <keithp@keithp.com>
* altos: Don't add fat commands when building ao_fat_testKeith Packard2013-03-31
| | | | Signed-off-by: Keith Packard <keithp@keithp.com>
* altos/stm: Always check for idle IN buffer before sendingKeith Packard2013-03-31
| | | | | | | | | | | | | | Unlike the AVR and CC1111 USB drivers, the STM usb driver queues IN bytes in a local buffer instead of in the driver; this means that the driver is queuing bytes while the previous IN packet is queued for the host, which allows for overlapping execution. It also means that when the local buffer is full, we must check to see if the host has picked up the previous IN packet before trying to queue another IN packet for transmission. This is done by always waiting for the IN buffer to be ready before sending data. Signed-off-by: Keith Packard <keithp@keithp.com>
* altos/stm: Add debugging mechanism to STM USB driverKeith Packard2013-03-31
| | | | | | | | This adds a pile of debugging hooks to the USB driver to try and isolate various lockup-related issues. It's all disabled by default, of course. Signed-off-by: Keith Packard <keithp@keithp.com>
* altos: Do not release interrupts from any pollchar functionKeith Packard2013-03-31
| | | | | | | | | | | getchar relies on interrupts being blocked across the pollchar calls and into the sleep call or it may go to sleep with data pending. This prefixes all pollchar functions with _ to indicate that they are to be called with interrupts blocked and eliminates all interrupt manipulation calls from within the pollchar functions. Signed-off-by: Keith Packard <keithp@keithp.com>
* altos: Add sdcard read/write tracingKeith Packard2013-03-31
| | | | | | This just dumps info in trace mode about read and write commands Signed-off-by: Keith Packard <keithp@keithp.com>
* altos: Move fat mount information to separate command.Keith Packard2013-03-31
| | | | | | | This makes the mount report precise error information and then prints that with the 'M' command. Signed-off-by: Keith Packard <keithp@keithp.com>
* altos: Disable CC115L debug commandsKeith Packard2013-03-31
| | | | | | now that it appears to work, leave these disabled by default Signed-off-by: Keith Packard <keithp@keithp.com>
* altos: Add SD card writing functionKeith Packard2013-03-31
| | | | | | | Now that the FAT code seems to be operational, go back and add SD writing. Signed-off-by: Keith Packard <keithp@keithp.com>
* altos: Add logging and telem to telegpsKeith Packard2013-03-30
| | | | | | | | | | | | This turns on telemetry, APRS, RDF and data logging for telegps. Data is logged as soon as GPS has a date to create the right filename, using files of the form YYYYMMDD.LOG which just barely fits in a FAT filename. Telemetry/RDF/APRS are all separately controllable. Signed-off-by: Keith Packard <keithp@keithp.com>
* altos: Export ao_fat_sync and ao_fat_full functionsKeith Packard2013-03-30
| | | | | | | ao_fat_sync() flushes the bufio data to disk along with any fsinfo changes. ao_fat_full() returns whether the file system is full. Signed-off-by: Keith Packard <keithp@keithp.com>
* altos: Lock cc115l radio mutex when using global radio valuesKeith Packard2013-03-30
| | | | | | | This moves the locking up above the global state variable uses so that multiple radio users (as if we had any) won't collide. Signed-off-by: Keith Packard <keithp@keithp.com>
* altos: Configure cc115l sync byte count for each radio modeKeith Packard2013-03-30
| | | | | | two sync bytes for packet mode, disable sync for rdf/aprs mode. Signed-off-by: Keith Packard <keithp@keithp.com>