summaryrefslogtreecommitdiff
Commit message (Collapse)AuthorAge
...
* altos/stmf0: Support HPE clock sourceKeith Packard2016-04-02
| | | | | | Allows the use of crystals instead of requiring USB. Signed-off-by: Keith Packard <keithp@keithp.com>
* altos/stmf0: Add SPI driver.Keith Packard2016-04-02
| | | | | | | This also changes the DMA interface a bit so we can select for interrupts on only the interesting channels. Signed-off-by: Keith Packard <keithp@keithp.com>
* altos: Use mini logging for detherm, just without ADCKeith Packard2016-04-02
| | | | Signed-off-by: Keith Packard <keithp@keithp.com>
* altos: Add Detherm log format (easymini without ADC)Keith Packard2016-04-02
| | | | Signed-off-by: Keith Packard <keithp@keithp.com>
* altos: Allow for flight hardware without any ADC valuesKeith Packard2016-04-02
| | | | | | | Detherm has no ADC connections, so we don't need to disable the ADC when going to landed state. Signed-off-by: Keith Packard <keithp@keithp.com>
* altos: Add one-byte SPI output routine for LPC and STM coresKeith Packard2016-03-26
| | | | | | This allows for SPI output at interrupt time, one byte at a time. Signed-off-by: Keith Packard <keithp@keithp.com>
* altos/lpc: Add fast timerKeith Packard2016-03-26
| | | | | | This offers a faster timer callback for higher-precision operation Signed-off-by: Keith Packard <keithp@keithp.com>
* altos/stm: Allow apps to define different stack sizeKeith Packard2016-03-26
| | | | | | | While 512 bytes is a reasonable size, sometimes apps don't have that much stack space. Signed-off-by: Keith Packard <keithp@keithp.com>
* altos/stm: Validate current task SP in interrupt by looking at PSPKeith Packard2016-03-26
| | | | | | | | | We use a separate stack pointer for task code, which means we can verify that it is in range in any interrupt handler. This adds checks for the task stack (under #ifdef DEBUG) that run in ao_wakeup as well as at every timer interrupt. Signed-off-by: Keith Packard <keithp@keithp.com>
* altos/stm: Run scheduler code on interrupt stackKeith Packard2016-03-26
| | | | | | This provides a bit more room for tasks on their stack Signed-off-by: Keith Packard <keithp@keithp.com>
* altosui,telegps: Do not allow radio calibration to be editedKeith Packard2016-03-26
| | | | | | | This leads to sorrow for almost everyone. If you want to edit this, use a terminal program. Signed-off-by: Keith Packard <keithp@keithp.com>
* altosuilib: Control map debugging output with Serial.debugKeith Packard2016-03-26
| | | | | | This uses the same debug control as the serial output to monitor map downloading Signed-off-by: Keith Packard <keithp@keithp.com>
* altoslib: use env var LAUNCH_SITES to override default URLKeith Packard2016-03-26
| | | | | | This makes it easier to debug new launch site data before uploading. Signed-off-by: Keith Packard <keithp@keithp.com>
* libaltos: Fix warning in linux libaltos codeKeith Packard2016-03-20
| | | | | | Just returned the wrong name of the value Signed-off-by: Keith Packard <keithp@keithp.com>
* altosuilib: Note that Windows now supports BluetoothKeith Packard2016-03-20
| | | | Signed-off-by: Keith Packard <keithp@keithp.com>
* altosui: Delay between polling for igniter status in Fire IgnitersKeith Packard2016-03-20
| | | | | | | This gives a remote like time to report the full status instead of sending another request before the reply has been processed. Signed-off-by: Keith Packard <keithp@keithp.com>
* libaltos: Add Windows BT support. Split into separate source files.Keith Packard2016-03-20
| | | | | | Add Bluetooth support to Windows. Split libaltos into separate files. Signed-off-by: Keith Packard <keithp@keithp.com>
* ao-bringup: Use dfu-util to install flash loader on chaoskeyKeith Packard2016-03-18
| | | | Signed-off-by: Keith Packard <keithp@keithp.com>
* altos/stmf0: Construct .bin files for flash loadersKeith Packard2016-03-18
| | | | | | | This builds a .bin file which can be used with dfu-util instead of using openocd to load the initial flash loader. Signed-off-by: Keith Packard <keithp@keithp.com>
* ao-tools: Add ao-makebinKeith Packard2016-03-18
| | | | | | | | This constructs a raw binary or DFU format file for use with dfu-util, which can be used with a bare STM processor to load code before the boot loader is available. Signed-off-by: Keith Packard <keithp@keithp.com>
* ao-tools/lib: Add ao_hex_image_cat functionKeith Packard2016-03-18
| | | | | | | This takes two images and constructs a third containing the union of the contents along with 0xff bytes for any area between them. Signed-off-by: Keith Packard <keithp@keithp.com>
* ao-tools/lib: Remove trailing whitespace from ao-elf.cKeith Packard2016-03-18
| | | | Signed-off-by: Keith Packard <keithp@keithp.com>
* ao-tools/ao-dump-up: Remove spurious flight state stringsKeith Packard2016-03-18
| | | | | | MicroPeak doesn't have flight states like this... Signed-off-by: Keith Packard <keithp@keithp.com>
* Change how we detect and install javaKeith Packard2016-03-18
| | | | | | | | | | Detect by finding 'javaw.exe' in the current path and extracting the version from the program itself. Install by simply opening the web browser to java.com and letting the user install it themselves. Signed-off-by: Keith Packard <keithp@keithp.com>
* altos: Expose fast timer API from kernel/Keith Packard2016-03-18
| | | | | | This allows multiple SoCs to provide the same driver interface Signed-off-by: Keith Packard <keithp@keithp.com>
* altos: Fixed timing of panic display LED to be readableBart Massey2016-03-07
| | | | | | | | | | | When we don't have a beeper, there's no way to signal a 'warble' for panic. So, elide that bit. Second, panic can't use the scheduler and timer because those may not be running (or may have failed), and so it uses a delay loop. Add a configurable scale value to the panic loop so that the LED blinks can be read. For stm32f0 devices, scale that by the sysclk value to automatically make them of reasonable length.
* libaltos: Add unistd.h to get defines for various syscallsKeith Packard2016-03-06
| | | | Signed-off-by: Keith Packard <keithp@keithp.com>
* libaltos: jni_md.h moved to linux subdir in Java installKeith Packard2016-03-06
| | | | | | Add the linux subdir to CFLAGS to find it. Signed-off-by: Keith Packard <keithp@keithp.com>
* altos/stmf0: Fix build without second USB IN endpointKeith Packard2016-03-05
| | | | | | The code for the second IN endpoint was using the wrong ifdef. Signed-off-by: Keith Packard <keithp@keithp.com>
* ao-tools: Add ao-chaosreadKeith Packard2016-03-02
| | | | | | This reads from the raw descriptor to help validate the hardware. Signed-off-by: Keith Packard <keithp@keithp.com>
* ao-bringup: Switch to v1.0 for chaoskeyKeith Packard2016-03-02
| | | | | | | Not going to build any more v0.1 boards. Also, chaoskey now uses the unique ID for a serial, so we don't need to provide a serial number. Signed-off-by: Keith Packard <keithp@keithp.com>
* altos: Add ChaosKey v1.0 productKeith Packard2016-03-02
| | | | | | Much like ChaosKey v0.1, just different SoC package and a few wiring changes. Signed-off-by: Keith Packard <keithp@keithp.com>
* altos/chaoskey: Add another USB endpoint to read raw dataKeith Packard2016-03-02
| | | | | | | | | | | This replaces having the single output switch based on a pin value and allows us to box the device and still fetch raw data. For now, this will use a special libusb2 program, ao-chaosread, to pull bits as I haven't figure out how to make linux provide two /dev entries for one USB device. Signed-off-by: Keith Packard <keithp@keithp.com>
* altos/chaoskey: Use SoC device ID as serial numberKeith Packard2016-02-15
| | | | | | | | | To make manufacturing these devices tractable, we don't want to require a custom firmware load for each device, but we still want a unique serial number. Fortunately, the SoC provides a 96-bit ID which we can use. Signed-off-by: Keith Packard <keithp@keithp.com>
* altos/stmf0: Use device ID as usb serial number if requestedKeith Packard2016-02-15
| | | | | | | | This exposes the hardware device ID (which is unique per-chip) as the USB serial number, avoiding the need to create a custom ROM image for each device. Signed-off-by: Keith Packard <keithp@keithp.com>
* altos/chaoskey: Encode both hardware and software versions in product IDKeith Packard2016-02-15
| | | | | | | We have no other way of reporting the software version, so just encode it in the product ID. Signed-off-by: Keith Packard <keithp@keithp.com>
* altos/stmf0: Fix location of device_id registerKeith Packard2016-02-15
| | | | | | Copied from stm32l and never fixed. Signed-off-by: Keith Packard <keithp@keithp.com>
* altos: Another fix for non CDC-ACM devicesKeith Packard2016-02-08
| | | | | | | Need to set the bInterfaceNumber for the actual interface to zero when there isn't an INT interface before it. Signed-off-by: Keith Packard <keithp@keithp.com>
* Clean up stmf0 adc init.Bart Massey2016-02-08
| | | | | | This better matches the documented cal sequence. Signed-off-by: Keith Packard <keithp@keithp.com>
* altos/stmf0: Add missing ao_gpio.cKeith Packard2016-02-07
| | | | | | This contains the code for power managing the GPIO pins Signed-off-by: Keith Packard <keithp@keithp.com>
* altos: Add simple stats test to TRNG codeKeith Packard2016-02-07
| | | | | | | This detects broken hardware by making sure the standard deviation in the raw values used to compute each buffer is at least 128. Signed-off-by: Keith Packard <keithp@keithp.com>
* altos: Delay TRNG ADC long enough for HV supply to stabilizeKeith Packard2016-02-07
| | | | | | | Looks like it takes about 70ms for the supply to start running right, so delay after powering it up for that long. Signed-off-by: Keith Packard <keithp@keithp.com>
* altos/chaoskey-v0.1: Add power management and change USB classesKeith Packard2016-02-07
| | | | | | | Enable power management. Expose only a single IN endpoint. Signed-off-by: Keith Packard <keithp@keithp.com>
* altos: Add power management to TRNG driverKeith Packard2016-02-07
| | | | | | | Support suspend/resume of the TRNG power supply, delaying after resume to wait for it to stabilize. Signed-off-by: Keith Packard <keithp@keithp.com>
* altos: Allow USB drivers to skip CDC-ACM -specific descriptorsKeith Packard2016-02-07
| | | | | | | | For devices not providing the standard CDC-ACM interface, let them skip the various descriptors and interfaces to provide a more limited set of capabilities. Signed-off-by: Keith Packard <keithp@keithp.com>
* altos/stmf0: Add suspend/resume supportKeith Packard2016-02-07
| | | | | | Allow USB suspend to suspend USB, GPIOs and master clock. Signed-off-by: Keith Packard <keithp@keithp.com>
* altos: Add power management APIsKeith Packard2016-02-07
| | | | | | | This provides sequenced suspend/resume functionality, allowing modules to register for power management at configuration time. Signed-off-by: Keith Packard <keithp@keithp.com>
* altos/stmf0: Allow projects to specify non-default stack sizeKeith Packard2016-02-07
| | | | | | 512 may not be suitable for everyone. Signed-off-by: Keith Packard <keithp@keithp.com>
* altos: remove blank line in stmf0/ao_timer.cKeith Packard2016-02-07
| | | | Signed-off-by: Keith Packard <keithp@keithp.com>
* altos/chaoskey: Delay ADC reading for 250ms at startupKeith Packard2016-01-28
| | | | | | This lets the HV supply stabilize before we start sampling values. Signed-off-by: Keith Packard <keithp@keithp.com>