1
0
mirror of https://bitbucket.org/librepilot/librepilot.git synced 2024-12-04 12:24:11 +01:00
Commit Graph

223 Commits

Author SHA1 Message Date
Stacey Sheldon
4da671fc82 build: change firmware files from .opf to .opfw extensions 2011-05-25 00:20:02 -04:00
Oleg Semyonov
66804076b8 build: fix release/Makefile for *.opf files and changed targets 2011-05-24 23:49:51 -04:00
Stacey Sheldon
91cb294730 build: remove redundant PHONY for size target 2011-05-24 01:10:40 -04:00
Stacey Sheldon
0eb92fad91 build: refactor jtag program and add jtag wipe target
Macros for JTAG program and wipe for each target are now
provided in firmware-defs.mk.

The _wipe target for each firmware and bootloader image will
erase either the bootloader (bl_*_wipe) or firmware (fw_*_wipe)
bank.
2011-05-24 01:10:31 -04:00
Stacey Sheldon
9973fda23b build: define bootloader and firmware bank spans
The board-info.mk files now define the start and size
of the bootloader and the firmware banks.
2011-05-24 01:03:01 -04:00
Stacey Sheldon
96827eecff build: Make all flight sw use pios_board_info_blob
Now that every bootloader build has a board info blob,
make all fw and bl images use it.

The following MACROS are removed:
  BOARD_TYPE, BOARD_REVISION, BOOTLOADER_VERSION,
  START_OF_USER_CODE, HW_TYPE

These values are now ONLY available from the bootloader
flash via the pios_board_info_blob symbol.  These values
must not be #defined or otherwise hard-coded into the
firmware in any way.  The bootloader flash is the only
valid source for this information.

NOTE: To ensure that we have an upgrade path from an
      old bootloader (without board_info_blob) to a
      new bootloader (with board_info_blob), it is
      essential that the bu_* targets do not depend
      on (or validate) the board_info_blob being present
      in the bootloader flash.
2011-05-24 00:58:10 -04:00
Stacey Sheldon
6e406c0232 build: remove all remaining use of -DUSE_BOOTLOADER
The USE_BOOTLOADER compile flag was only being used
to determine where the ISR vector table was located.

Provide this explicitly from the linker since it knows
exactly where it is putting the ISR vector table.
2011-05-23 18:21:42 -04:00
Stacey Sheldon
0a67730d0f build: refactor fw, bl and bu rules
- New macros for fw, bl and bu rules in top-level make
- Per-board info factored into make/board/*/board-info.mk
- Per-board info now shared btw. fw, bl and blupd for each board
   - BOARD_TYPE, BOARD_REVISION, BOOTLOADER_VERSION, HW_TYPE
   - MCU, CHIP, BOARD, MODEL, MODEL_SUFFIX
   - START_OF_BL_CODE, START_OF_FW_CODE
- blupd_* goals renamed to bu_*
- all_blupd goal renamed to all_bu
- firmware goals renamed to fw_*, board name goals are preserved
- bu_*_program now writes updater to correct address for all boards
- BL updater firmware builds now produce .opf format including
  version info blob.
- BL updater firmware name now includes board name.
- INS makefile brought up to date w.r.t. linker scripts
2011-05-23 18:21:42 -04:00
Stacey Sheldon
6ec6425f5e build: build opf images including firmware + version blob 2011-05-22 10:55:13 -04:00
Oleg Semyonov
bac95dae11 OP-483: get rid of -D install switch (doesn't work on Mac) and use mkdir -p instead 2011-05-14 23:17:08 +03:00
Oleg Semyonov
37868a4c10 OP-483: add install target for firmware
make INSTALL_DIR=dir INSTALL_PFX=pfx INSTALL_SFX=sfx install
installs binary file into specified install directory adding
optional prefix and/or suffix.
2011-05-13 11:25:32 +03:00
Stacey Sheldon
29ec2f198b build: convert all app loads to require bootloaders
This change is made up of a number of tightly coupled
changes:
 - Deprecate the use of the USE_BOOTLOADER command-line
   option.  It is now hard-coded in each Makefile.
   Overriding it on the command line is not allowed.
 - Split apart the memory declaration and the section
   declaration in all linker files (*_memory.ld and
   *_sections.ld).
 - Describe the split between bootloader and app sections
   of flash in each board's _memory.ld file.
 - Change program target to selectively erase flash so
   that the installed bootloader is preserved across even
   JTAG programming operations.
 - All elf files are built with debug symbols and are not
   stripped.  This should help debugging with gdb.  The
   images programmed on the boards are all .bin files now
   which do not include symbols.
2011-05-08 12:40:29 -04:00
Stacey Sheldon
7e99419c8a build: Add support for %.bin.o generation
The .bin.o rule places the contents of a raw .bin file
into an .o file wrapped within fixed symbols for start
and end.  This can be used to embed a binary file inside
of an executable.

The symbols for the embedded binary blob are:
 _binary_start
 _binary_end
 _binary_size

NOTE: The way the .bin.o rule is currently written, you
can only embed one binary blob in an executable since the
symbol names will collide if you add multiple blobs.  This
limitation is easily removed later if necessary.
2011-05-07 18:05:50 -04:00
David Buzz Carlson
c93ab7e723 Change CC, OP MB, and AHRS to use bootloader by default.
Also change AttitudeActual to update at 10Hz rather than 2 Hz.  The increased bandwidth is minimal and the resulting "polish" that it adds to the look-and-feel of the GCS is signifcant.
2011-05-02 00:50:42 -07:00
James Cotton
5f776f0b58 Merge branch 'master' into OP-439_CorvusCorax_Bootloader-Makefile-and-OpenOCD-config-for-Linux 2011-04-27 23:41:35 -05:00
James Cotton
69d03ca101 OP-439: Simplify further. Abstract most of the OOCD flags into the common
firmware include and delete all the extra foss-jtag config files.  There is now
a legacy file for the revA board a second for AHRS that changes the port
2011-04-24 10:19:00 -05:00
Corvus Corax
ee7179bd53 OP-439 unified OpenOCD config for mac os x and Linux, Makefiles adapted accordingly 2011-04-24 12:10:33 +02:00
Corvus Corax
5d952f81e3 PIOS: BL_HELPER: refactored function names 2011-04-23 21:11:17 +02:00
Corvus Corax
150464344d BL_HELPER: call CRC_Ini() from within CRC check function 2011-04-23 20:55:21 +02:00
Corvus Corax
357bc369db PIOS: Bootloader Helper functions should sit in HAL, not duplicated in every single architecture. 2011-04-23 19:40:41 +02:00
peabody124
99c00fb9fe Revert changes to AHRS Makefile. Need to keep DEBUG=NO.
git-svn-id: svn://svn.openpilot.org/OpenPilot/trunk@3155 ebee16cc-31ac-478f-84a7-5cbb03baadba
2011-04-11 18:47:36 +00:00
jonathan
9f5c393672 OP-191: Add svn:eol-style property for native line endings on checkout;
Add (temporarily disabled) hooks for the rotational misalignment between the accelerometer and magnetometer.

git-svn-id: svn://svn.openpilot.org/OpenPilot/trunk@3151 ebee16cc-31ac-478f-84a7-5cbb03baadba
2011-04-10 18:37:32 +00:00
peabody124
487b039229 Earlier patch broke coding conventions for line endings
git-svn-id: svn://svn.openpilot.org/OpenPilot/trunk@3062 ebee16cc-31ac-478f-84a7-5cbb03baadba
2011-03-22 12:47:15 +00:00
peabody124
cfb2ca4e1b OP-192 Fix ahrs mag problems from TWOSTEP mag units
git-svn-id: svn://svn.openpilot.org/OpenPilot/trunk@3061 ebee16cc-31ac-478f-84a7-5cbb03baadba
2011-03-22 12:46:50 +00:00
jonathan
5d23666839 OP-191: Merge from full-calibration branch. Add orthogonality calibration to the accelerometer, and use it. Also adjust the treatment of accelerometer scale factors, such that the diagonal elements of the calibration scale factor matrix are positive.
git-svn-id: svn://svn.openpilot.org/OpenPilot/trunk@3057 ebee16cc-31ac-478f-84a7-5cbb03baadba
2011-03-21 00:51:45 +00:00
peabody124
b2abc73ae3 AHRS: Move getting mag data back into the main loop
git-svn-id: svn://svn.openpilot.org/OpenPilot/trunk@2998 ebee16cc-31ac-478f-84a7-5cbb03baadba
2011-03-07 19:28:25 +00:00
peabody124
aea0695f70 AHRS: Move out of bound checks to main loop instead of when getting the accel
data

git-svn-id: svn://svn.openpilot.org/OpenPilot/trunk@2997 ebee16cc-31ac-478f-84a7-5cbb03baadba
2011-03-07 19:28:11 +00:00
loris
463403ee82 OP-316 - UAVObject units Fix accelerations units
Fix default calibration values

git-svn-id: svn://svn.openpilot.org/OpenPilot/trunk@2869 ebee16cc-31ac-478f-84a7-5cbb03baadba
2011-02-24 02:52:19 +00:00
stac
6700a74782 makefile: refactor makefiles and clean up output
This significantly reduces the amount of duplication
across the various firmware makefiles.

The new firmware-defs.mk file should contain only
macros/declarations that will apply to all firmware
makefiles.

git-svn-id: svn://svn.openpilot.org/OpenPilot/trunk@2854 ebee16cc-31ac-478f-84a7-5cbb03baadba
2011-02-23 04:18:53 +00:00
pip
f75539dcc6 Reverted GYRO calibration detection.
git-svn-id: svn://svn.openpilot.org/OpenPilot/trunk@2791 ebee16cc-31ac-478f-84a7-5cbb03baadba
2011-02-14 09:01:47 +00:00
pip
74502852c3 Added GYRO calibration detection into the adc_callback() routine - to pass raw values when calibrating the gyro's.
git-svn-id: svn://svn.openpilot.org/OpenPilot/trunk@2780 ebee16cc-31ac-478f-84a7-5cbb03baadba
2011-02-13 20:04:25 +00:00
stac
66a9d53d0a hwinit: Convert I2C driver to dynamic init
git-svn-id: svn://svn.openpilot.org/OpenPilot/trunk@2773 ebee16cc-31ac-478f-84a7-5cbb03baadba
2011-02-12 22:19:54 +00:00
stac
3fda65c5d3 hwinit: Convert SPI drivers to dynamic init
git-svn-id: svn://svn.openpilot.org/OpenPilot/trunk@2772 ebee16cc-31ac-478f-84a7-5cbb03baadba
2011-02-12 22:19:50 +00:00
stac
841b0d3d6d hwinit: Convert COM and USART to dynamic init
git-svn-id: svn://svn.openpilot.org/OpenPilot/trunk@2771 ebee16cc-31ac-478f-84a7-5cbb03baadba
2011-02-12 22:19:43 +00:00
peabody124
ebb8596db0 AHRS: FIx calibration. Move the mag data processing into the loop that acquires accel and gyro
data.  I don't like this but because of the way the calibration routine works
(sets all gains to 1) this makes the values so far out or range the EKF doesn't
get to run and the mag wasn't previously being updated.

git-svn-id: svn://svn.openpilot.org/OpenPilot/trunk@2765 ebee16cc-31ac-478f-84a7-5cbb03baadba
2011-02-09 05:17:32 +00:00
stac
4e6b539086 debugpins: Add definitions for debug pins
Not yet used anywhere but will eventually allow
debug pins to be assigned during runtime init based
on configuration found in a new uavobject.

git-svn-id: svn://svn.openpilot.org/OpenPilot/trunk@2741 ebee16cc-31ac-478f-84a7-5cbb03baadba
2011-02-06 01:03:06 +00:00
peabody124
810fa70856 UAVObjects: Remove the raw versus filtered fields in the sensor data. Save
some memory.

git-svn-id: svn://svn.openpilot.org/OpenPilot/trunk@2706 ebee16cc-31ac-478f-84a7-5cbb03baadba
2011-02-03 02:42:39 +00:00
pip
5daf6fd1c0 Added PIP_DUMP_RAW option in ahrs.c and brought back public acces to function PIOS_ADC_GetOverSampling(void).
git-svn-id: svn://svn.openpilot.org/OpenPilot/trunk@2623 ebee16cc-31ac-478f-84a7-5cbb03baadba
2011-01-29 15:59:35 +00:00
corvus
0cc957bc9c reverting bad commit of these files
git-svn-id: svn://svn.openpilot.org/OpenPilot/trunk@2605 ebee16cc-31ac-478f-84a7-5cbb03baadba
2011-01-28 12:31:13 +00:00
corvus
e6004ae95e PiOS.posix - split up FreeRTOS port into a linux version (original FreeRTOS linux code) and a non linux POSIX compatible version (Mac OSX, BSD, ...) - OS detection by Makefile.posix
git-svn-id: svn://svn.openpilot.org/OpenPilot/trunk@2604 ebee16cc-31ac-478f-84a7-5cbb03baadba
2011-01-28 12:26:45 +00:00
peabody124
1daabba5c1 Build: Change the lower makefiles to use forward slashes but also create
directories on
windows

git-svn-id: svn://svn.openpilot.org/OpenPilot/trunk@2585 ebee16cc-31ac-478f-84a7-5cbb03baadba
2011-01-24 20:01:06 +00:00
peabody124
ba1d519192 Get CC working with new file locations and also fix AHRS build to work with
these locations

git-svn-id: svn://svn.openpilot.org/OpenPilot/trunk@2581 ebee16cc-31ac-478f-84a7-5cbb03baadba
2011-01-24 08:14:00 +00:00
sambas
826ce00bf4 another one for Big Mess
git-svn-id: svn://svn.openpilot.org/OpenPilot/trunk@2546 ebee16cc-31ac-478f-84a7-5cbb03baadba
2011-01-23 18:18:52 +00:00
stac
2d53902148 UAVObjects-flight: Move generated files into build dir
git-svn-id: svn://svn.openpilot.org/OpenPilot/trunk@2520 ebee16cc-31ac-478f-84a7-5cbb03baadba
2011-01-22 17:38:15 +00:00
pip
7bcdcee5ad Capitalised #define values
git-svn-id: svn://svn.openpilot.org/OpenPilot/trunk@2507 ebee16cc-31ac-478f-84a7-5cbb03baadba
2011-01-21 16:48:03 +00:00
pip
500a199a70 Added deg_to_rad & rad_to_deg to help understanding calculations.
git-svn-id: svn://svn.openpilot.org/OpenPilot/trunk@2501 ebee16cc-31ac-478f-84a7-5cbb03baadba
2011-01-21 10:52:41 +00:00
pip
5f87966727 Corrected "mag_data.raw.axis[]" indexing errors
git-svn-id: svn://svn.openpilot.org/OpenPilot/trunk@2482 ebee16cc-31ac-478f-84a7-5cbb03baadba
2011-01-19 15:20:17 +00:00
edouard
b3ca037308 OP-277 Update all files to use a BOARD_TYPE and BOARD_REVISION scheme through the whole codebase.
git-svn-id: svn://svn.openpilot.org/OpenPilot/trunk@2458 ebee16cc-31ac-478f-84a7-5cbb03baadba
2011-01-16 20:41:55 +00:00
peabody124
0259b6d1f1 OP-269 PIOS/ADC: First part of conversion to driver structures
git-svn-id: svn://svn.openpilot.org/OpenPilot/trunk@2444 ebee16cc-31ac-478f-84a7-5cbb03baadba
2011-01-16 02:45:39 +00:00
peabody124
d4460aa97f Deleting unused file from svn
Conflicts:

	flight/AHRS/ahrs_adc.c

git-svn-id: svn://svn.openpilot.org/OpenPilot/trunk@2442 ebee16cc-31ac-478f-84a7-5cbb03baadba
2011-01-16 02:45:31 +00:00