| Commit message (Collapse) | Author | Age |
|
|
|
|
|
|
|
| |
Clearly the pin isn't quite ready just after it's been configured, so
hang around for a while (100 nops) to let things setting down before
testing the value of the pin. Makes booting a lot more reliable.
Signed-off-by: Keith Packard <keithp@keithp.com>
|
|
|
|
|
|
|
| |
Split the flash loader prototype into pieces so that each product can
build a custom flash loader with very little code.
Signed-off-by: Keith Packard <keithp@keithp.com>
|
|
|
|
| |
Signed-off-by: Keith Packard <keithp@keithp.com>
|
|
|
|
|
|
| |
This saves enough memory to fit in under 4kB
Signed-off-by: Keith Packard <keithp@keithp.com>
|
|
|
|
|
|
|
|
| |
.rodata* needs to be in flash; otherwise strings get left in ram.
Failing to align sections makes the initialized data get dumped into
the wrong place in memory.
Signed-off-by: Keith Packard <keithp@keithp.com>
|
|
|
|
|
|
| |
stm requires AO_BOOT_LOADER_BASE now
Signed-off-by: Keith Packard <keithp@keithp.com>
|
|
|
|
|
|
|
| |
This causes the flash loader startup code to fall into the loader when
the application sets the boot address to zero.
Signed-off-by: Keith Packard <keithp@keithp.com>
|
|
|
|
|
|
|
| |
This lets the self flashing loader be linked without any of the stdio
code, which saves a bunch of memory.
Signed-off-by: Keith Packard <keithp@keithp.com>
|
|
|
|
|
|
| |
Allows that value to change
Signed-off-by: Keith Packard <keithp@keithp.com>
|
|
|
|
|
|
| |
Includes the boot chain stuff
Signed-off-by: Keith Packard <keithp@keithp.com>
|
|
|
|
|
|
| |
With the flash loader now < 4kB, we can use the spare 4kB for applications
Signed-off-by: Keith Packard <keithp@keithp.com>
|
|
|
|
|
|
| |
Saves 4kB of flash space for applications.
Signed-off-by: Keith Packard <keithp@keithp.com>
|
|
|
|
|
|
|
| |
This removes all of the support for the base 100Hz timer from the
system, saving space when not needed
Signed-off-by: Keith Packard <keithp@keithp.com>
|
|
|
|
|
|
| |
The necessary data structures aren't defined in this case.
Signed-off-by: Keith Packard <keithp@keithp.com>
|
|
|
|
|
|
| |
No need to loop if there's only one
Signed-off-by: Keith Packard <keithp@keithp.com>
|
|
|
|
|
|
|
| |
The STM flash loader wants to be taskless too, share this very simple
implementation of sleep/wakeup.
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>
|
|
|
|
|
|
|
|
| |
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>
|
|
|
|
|
|
|
| |
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>
|
|
|
|
|
|
|
| |
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>
|
|
|
|
|
|
|
| |
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>
|
|
|
|
|
|
|
|
| |
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>
|
|
|
|
|
|
| |
Was not forward-declaring ao_radio_send_aprs, causing a warning
Signed-off-by: Keith Packard <keithp@keithp.com>
|
|
|
|
|
|
|
| |
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>
|
|
|
|
|
|
|
|
| |
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>
|
|
|
|
|
|
|
|
| |
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>
|
|
|
|
|
|
|
|
| |
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>
|
|
|
|
|
|
|
| |
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>
|
|
|
|
|
|
|
| |
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>
|
|
|
|
|
|
| |
Was returning an uninitialized value, which was often not zero
Signed-off-by: Keith Packard <keithp@keithp.com>
|
|
|
|
|
|
|
| |
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>
|
|
|
|
|
|
|
|
|
| |
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>
|
|
|
|
|
|
| |
stm-demo
Signed-off-by: Keith Packard <keithp@keithp.com>
|
|
|
|
|
|
| |
Ignore ao_product.h and built binaries
Signed-off-by: Keith Packard <keithp@keithp.com>
|
|
|
|
| |
Signed-off-by: Keith Packard <keithp@keithp.com>
|
| |
|
|
|
|
|
|
|
| |
This has some known flight data and generates kalman filter
information for them to test
Signed-off-by: Keith Packard <keithp@keithp.com>
|
|
|
|
| |
Signed-off-by: Keith Packard <keithp@keithp.com>
|
|
|
|
| |
Signed-off-by: Keith Packard <keithp@keithp.com>
|