| Commit message (Collapse) | Author | Age |
| ... | |
| | |
| |
| |
| |
| |
| | |
Still no data, but at least the carrier comes up on frequency now.
Signed-off-by: Keith Packard <keithp@keithp.com>
|
| | |
| |
| |
| |
| |
| | |
No configuration of power level yet, just the bare driver.
Signed-off-by: Keith Packard <keithp@keithp.com>
|
| | |
| |
| |
| |
| |
| | |
Doesn't actually do anything yet, but should initialize the chip at least
Signed-off-by: Keith Packard <keithp@keithp.com>
|
| | |
| |
| |
| |
| |
| | |
Includes support for sending telemetry, RDF and APRS tones
Signed-off-by: Keith Packard <keithp@keithp.com>
|
| | |
| |
| |
| |
| |
| | |
Just lights up the GPS and USB
Signed-off-by: Keith Packard <keithp@keithp.com>
|
| | |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
works
Would be nice to be able to explicitly define addresses for the
romconfig variables, but I can't figure out how to make that
work. Instead, just explicitly load the files in teh right order to
make things land in the right places.
Signed-off-by: Keith Packard <keithp@keithp.com>
|
| | |
| |
| |
| |
| |
| | |
Uses objcopy -O ihex to extract the initialized bits from an elf file
Signed-off-by: Keith Packard <keithp@keithp.com>
|
| | |
| |
| |
| |
| |
| |
| | |
Change from development testing code to something that actually reads
and writes data from the USB link.
Signed-off-by: Keith Packard <keithp@keithp.com>
|
| | |
| |
| |
| |
| |
| | |
Both ao-stmload and the eventual java loader will support ihx files.
Signed-off-by: Keith Packard <keithp@keithp.com>
|
| | |
| |
| |
| |
| |
| |
| |
| | |
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>
|
| | |
| |
| |
| |
| |
| |
| |
| | |
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>
|
| | |
| |
| |
| |
| |
| | |
This works like puts, except it doesn't add a trailing newline.
Signed-off-by: Keith Packard <keithp@keithp.com>
|
| | |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
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>
|
| | |
| |
| |
| |
| |
| |
| |
| | |
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>
|
| | |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
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>
|
| | |
| |
| |
| |
| |
| |
| |
| | |
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>
|
| | |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
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>
|
| | |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
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>
|
| | |
| |
| |
| |
| |
| |
| |
| |
| | |
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>
|
| | |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
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>
|
| | |
| |
| |
| | |
Signed-off-by: Keith Packard <keithp@keithp.com>
|
| | |
| |
| |
| |
| |
| |
| | |
Split out code into separate files.
Add support for getting back to boot loader from application.
Signed-off-by: Keith Packard <keithp@keithp.com>
|
| | |
| |
| |
| |
| |
| |
| |
| | |
And get it loaded to RAM so it can execute correctly.
Nothing calls it yet...
Signed-off-by: Keith Packard <keithp@keithp.com>
|
| | |
| |
| |
| |
| |
| |
| |
| | |
The help command was rewritten to avoid using printf, but the
rewrite used 'const' instead of the required '__code' to point at
constant strings.
Signed-off-by: Keith Packard <keithp@keithp.com>
|
| | |
| |
| |
| |
| |
| |
| | |
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>
|
| |/
|
|
|
|
|
| |
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>
|
| |
|
|
|
|
| |
This makes stm-demo run on the discovery board again.
Signed-off-by: Keith Packard <keithp@keithp.com>
|
| |\ |
|
| | |
| |
| |
| | |
Signed-off-by: Mike Beattie <mike@ethernal.org>
|
| | |
| |
| |
| |
| |
| | |
Move it from SDCC to ARM targets as Jenkins doesn't have an ARM compiler.
Signed-off-by: Keith Packard <keithp@keithp.com>
|
| | |
| |
| |
| |
| |
| | |
Adapt to changes in OS interfaces
Signed-off-by: Keith Packard <keithp@keithp.com>
|
| |\ \ |
|
| | |\ \ |
|
| | |\ \ \ |
|
| | | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | | |
Most of the chip can run at 8MHz, but extended register access is
limited to 6.1MHz. Instead of pushing things, just run the SPI bus at
4MHz.
Signed-off-by: Keith Packard <keithp@keithp.com>
|
| | | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | | |
With the GPIO pins set to 10MHz now, we can run SPI at the maximum
possible speed (8MHz).
Signed-off-by: Keith Packard <keithp@keithp.com>
|
| | | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | | |
The GPIO pin settings affect the output impedence, and hence the
maximum speed for SPI. Cranking these to suitable values allows SPI to
run at full speed.
Signed-off-by: Keith Packard <keithp@keithp.com>
|
| | | | | |
| | | | |
| | | | |
| | | | | |
Signed-off-by: Keith Packard <keithp@keithp.com>
|
| | | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | | |
Made the interface use void * for pointers and uint16_t for lengths
Signed-off-by: Keith Packard <keithp@keithp.com>
|
| | | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | | |
These might do something, and should at least bring up USB
Signed-off-by: Keith Packard <keithp@keithp.com>
|
| | |_|_|/
|/| | |
| | | |
| | | |
| | | |
| | | | |
This cleans up a few values, adds more comments and a few more NVIC fields.
Signed-off-by: Keith Packard <keithp@keithp.com>
|
| | | | |
| | | |
| | | |
| | | |
| | | |
| | | | |
Shared code for building pressure tables
Signed-off-by: Keith Packard <keithp@keithp.com>
|
| | | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | | |
This interpolates the missing values to provide a reasonable testing
environment for the Micropeak flight firmware.
Signed-off-by: Keith Packard <keithp@keithp.com>
|
| | |_|/
|/| |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
From Tridge -- MPU6000 rev C4 and C5 are broken, having accelerometer
values in the wrong range. This commit just adds comments which note
this; experimentation will be required to actually sort out what's
going on.
Signed-off-by: Keith Packard <keithp@keithp.com>
|
| | | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
This filters altitudes more accurately and also allows tracking of
acceleration, which is used to discard height data generated by
ejection charge noise
Signed-off-by: Keith Packard <keithp@keithp.com>
|
| | | |
| | |
| | |
| | | |
Signed-off-by: Keith Packard <keithp@keithp.com>
|
| | |/
|/|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
Finally found a couple of decent references on how to set the model
(process) error covariance matrix. The current process matrix turns
out to be correct for a continuous kalman filter (which isn't
realizable, of course). For a discrete filter, the error in modeled
acceleration (we model it as a constant) needs to be propogated to the
speed and position portions of the matrix.
The correct matrix is seen in this paper:
On Reduced-Order Kalman Filters For GPS Position Filtering
J. Shima
6/2/2001
This references an older paper which is supposed to describe the
derivation of the matrix:
Singer, R.A., “Estimating Optimal Tracking Filter Performance for Manned Maneuvering Targets,”
IEEE Transactions of Aerospace and Electronic Systems, AES-5, July 1970, pp. 473-483.
This change has a minor effect on the computed correction
coefficients; it should respond more reasonably to acceleration
changes now.
Signed-off-by: Keith Packard <keithp@keithp.com>
|
| |\| |
|
| | |
| |
| |
| |
| |
| |
| |
| |
| | |
This saves a ring of 16 samples while waiting for boost, and then goes
back through those looking for the first sample higher than the ground
and writes the remaining ones to the log so that we get a more
complete log of the flight
Signed-off-by: Keith Packard <keithp@keithp.com>
|
| | |\ |
|