Commit Graph

229 Commits

Author SHA1 Message Date
Beat Küng f8dd833a14 onmibus-f4sd: add ADC support 2018-05-31 19:13:00 +02:00
Daniel Agar 6ca078425e Jenkins archive nuttx bin file 2018-05-31 07:38:07 +02:00
Daniel Agar 3e843ba2d2 posix main add SIGSEGV handler 2018-05-28 08:40:05 +02:00
Anthony Lamping 780d147c01 cmake: package don't use bin and share dirs 2018-05-25 01:32:26 -04:00
Anthony Lamping ef5de4de87 cmake: package create tarball 2018-05-25 01:32:26 -04:00
Anthony Lamping 0e80210f33 cmake: package px4 with sitl_gazebo plugins for jenkins ROS tests 2018-05-25 01:32:26 -04:00
Joshua Whitehead 3b6b1ee066 Use Nuttx defconfig defines to determine arch (#9516)
These hard coded paths assume all Nuttx targets are ARMv7-M targets. Updating them to use ${CONFIG_ARCH} and ${CONFIG_ARCH_FAMILY} instead allows for the architecture defined by the incoming Nuttx defconfig to be correctly targeted.
2018-05-23 15:20:39 -04:00
Roman 464db32567 removed error message in qurt stub implementation of putchar
Signed-off-by: Roman <bapstroman@gmail.com>
2018-05-23 10:08:28 -04:00
Daniel Agar 305e1b7b95 qurt cmake dependency fixes 2018-05-23 10:08:28 -04:00
Daniel Agar 48724e44dd NuttX build use 'all' target within each lib 2018-05-22 15:17:21 -04:00
DanielePettenuzzo b822966e8e crazyflie: support for sd card board via SPI 2018-05-22 12:21:45 +02:00
nathan 5483b59674 bring omnibusf4 defconfig up to date via menuconfig 2018-05-20 11:54:17 +02:00
nathan f754d092f8 Initial omnibusf4sd target support
Flight tested: ekf2 w/ mag and compass by @nathantsoi: https://logs.px4.io/plot_app?log=79b81031-cf1e-41f0-890b-d6cd7d559766

NOTE: external I2C devices need a pullup. I have tested with a 3.3v 2.2k pullup.

Working:
 - mpu6000, bench tested and verified via nsh
 - fmu
 - all 6 ch output bench tested w/ pwm and oneshot via nsh
 - ppm input bench tested
 - dsm input bench tested
 - bmp280, bench tested and verified via nsh
 - hmc5883, bench tested and verified via nsh, but requires an external i2c pullup
 - gps on uart6
 - startuplog, nsh, mavlink on uart4, but params are not sent for some reason. RSSI pin is TX, MOTOR 5 is RX (normal mode, 57600 baud)
 - rgbled over i2c, bench tested and workingp
 - sbus via the shared sbus/ppm pin (which includes an inverter to the mcu SBUS in pin), remove the solder bridge or jumper to the ppm pin before use

Not yet implemented:
  - ADC
  - OSD: passthrough video is untested, use at your own risk until a basic driver is implemented.
2018-05-20 11:54:17 +02:00
Daniel Agar dc1e91137a cmake add bloaty helpers for nuttx and use in Jenkins 2018-05-17 18:27:00 -04:00
Matthias Grob 58dd7be12a Cygwin: enable arm nuttx upload within cygwin
In the Cygwin environment the native Windows serial COM# ports get mapped
to /dev/ttyS# for POSIX compatibility. While # is one number lower inside
the environment than the COM port number because it's 0 indexed instead
of 1.

I added the necessary handling to all the dependent parts I found which
allows uploading to /dev/ttyS# when the cygwin platform is detected.
Now the usual "make px4fmu-v4 upload" and
"./Tools/upload.sh build/px4fmu-v4_default/px4fmu-v4_default.px4" work.
2018-05-09 11:31:42 +02:00
Beat Küng 9772380779 posix main: avoid declaring px4_main_t, include the correct header instead 2018-05-09 07:59:46 +02:00
Daniel Agar 5de5d6ea49 Jenkins simple mission code coverage build 2018-05-05 19:49:50 -04:00
David Sidrane cc061885f0 nxphlite-v3:Remove OTG config qualifier
This board supports USB but not doen not support OTG.
2018-05-01 11:33:29 -07:00
PX4 Jenkins 1d9bf83c51 Update submodule nuttx to latest Mon Apr 30 20:26:28 CDT 2018
- nuttx in PX4/Firmware (8404889098): 65b87d092a
    - nuttx current upstream: 0ac630e6d0
    - Changes: 65b87d092a...0ac630e6d0

    0ac630e 2018-04-28 David Sidrane - [BACKPORT] Merged in david_s5/nuttx/master_kinetis_usb_fixes (pull request #634)
2018-05-01 11:33:29 -07:00
Daniel Agar 8404889098 delete unused ADCSIM
- set BOARD_NUMBER_BRICKS to 0 for boards without analog power bricks
2018-04-29 21:48:54 -04:00
Daniel Agar ea3acb7121 cmake remove circular linking and reorganize
- px4_add_module now requires MAIN
 - px4_add_library doesn't automatically link
2018-04-29 21:48:54 -04:00
Daniel Agar 5f175f9712
Update submodule nuttx to latest px4_firmware_nuttx-7.22+ (#9354)
- Changes: fe0dc6c41a...65b87d092a

    65b87d0 2018-04-19 Daniel Agar - [PX4 BACKPORT] Merged in dagar/nuttx/pr-stm32f777_typo (pull request #628)
2018-04-23 00:18:19 -04:00
Daniel Agar 90b81cf4c4 move check stack to cmake and run in Jenkins 2018-04-13 23:24:34 -04:00
Daniel Agar 036d920070 NuttX cleanup debug helpers and add profile target 2018-04-09 12:07:05 -04:00
Daniel Agar 735c5544ae tests add ctlmath and use float FLT_EPSILON 2018-04-09 02:23:26 -04:00
barzanisar 7ac3c97aad Improve the Crazyflie MAVLink tunnel to increase efficiency
This change fragments MAVLink packets more efficiently and therefore increases the net throughput. This in turn makes the connection significantly more stable and the Crazyflie experience overall more usable.
2018-04-05 18:11:03 +02:00
Lorenz Meier 8c28591f2d FMUv5: Swap debug and PX4 IO serial ports to avoid DMA channel resource overlap
This is necessary to be able to use DMA on the IO link. We free one channel by disabling DMA entirely on the debug console.
2018-04-04 12:08:34 +02:00
Daniel Agar 68a9d213d2 NuttX track px4_firmware_nuttx-7.22+ branch 2018-04-02 15:58:04 -04:00
barzanisar 691a5c6532 Beat's changes in syslink work so reverting this
No need for this since beat's changes in syslink_main.cpp work for connecting crazyflie to QGC. 
Will open a separate PR for it.
2018-03-16 14:13:21 +01:00
barzanisar 0f79222ff9 This makes QGC connect with crazyflie
Discussed in https://github.com/PX4/Firmware/issues/8924
2018-03-16 09:31:58 +01:00
Daniel Agar bb7466c596 move rgbled i2c address into driver 2018-03-14 14:38:40 -04:00
Jan Okle 63121b74df NuttX update - fix kinetis transmission status handling in the serial interrupt (#8944)
efc3d9e92b
2018-03-12 11:56:59 +01:00
Simone Guscetti dbdb2c9c22 px4-fmuv5: config fix stm32f7 max SD card speed
In the stm32f7 the configuration variable for SD card with DMA changed from CONFIG_STM32_SDIO_DMA to CONFIG_STM32F7_SDMMC_DMA
the maximum clock speed of 16MHz can now be achieved.
2018-03-09 14:54:54 +01:00
Daniel Agar 38f5f60a1e pwm_out_sim cleanup
- move to ModuleBase
 - strip down to PWM 8 and 16 modes only
 - remove all dead code
 - implement missing pwm ioctls (current value, rates, etc)
 - default rate 50Hz -> 400Hz
2018-03-04 14:12:15 -05:00
Roman 2886fe8da3 posix-configs: added sitl startup script for gazebo quad tiltrotor model
Signed-off-by: Roman <bapstroman@gmail.com>
2018-02-22 15:10:22 -05:00
Daniel Agar f7a17ad5e5
cmake improve ROMFS dependencies for px4io inclusion (#8860)
- fixes #8858
2018-02-09 12:57:34 -05:00
Daniel Agar 102c0ead53 cmake consolidate px4 executable builds and upload 2018-02-01 09:00:13 -05:00
Daniel Agar 2ff81393bc move posix, nuttx, qurt components into platforms 2018-01-31 17:17:07 +01:00
Matthias Grob 463217a5f9 Cygwin: repair NuttX build (#8737)
* Cygwin: repaired NuttX build after 1f63d85869
all the NuttX specific WINTOOL define handling was skiped in cmake Make.defs generation
The Nuttx build is makfile based and needs its cygwin treatment

Additionally the ${PX4_SOURCE_DIR}/src/include which was added through cmake needs path conversion

The two root causes for the special handling are:
- ARM GCC for Windows doesn't support cygwin paths passed as an argument
  so they need to be either relative or converted via cypath tool
- Symbolic links are totally different under Windows and because NuttX uses them extensively
  it has special handling scripts that need to be fed with the correct defines

* Cygwin: NuttX include paths all converted in Make.defs.in

differentiate between WINTOOL define (MSYS & cygwin) and cygwin using uname command:
- MSYS needs symbolic link handling for ARM GCC but no path conversion
- Cygwin needs both
2018-01-20 23:26:12 -05:00
Daniel Agar 5ab6834fed NuttX Make.defs.in ignore -Werror=logical-op
This is a temporary workaround for equal expressions in chip/sam_xdmac.c
and can be reverted once fixed properly in NuttX. Needed for the GCC 7
upgrade in #8551.
2018-01-15 12:57:29 -05:00
Nicolas de Palezieux f600cfbb9f Add support for testing precision landing in SITL simulation 2018-01-15 10:27:23 +01:00
Daniel Agar 1f63d85869
NuttX generate Make.defs per config from PX4 cmake (#8573) 2018-01-05 22:47:10 -05:00
Matthias Grob c0c0666d5c Cygwin: use absolute path with cygpath conversion to the linker script again
because the relative path is interpreted differently on linux, mac and windows
2018-01-05 14:47:33 -05:00
Daniel Agar 275f462136 cmake determine relative path for firmware linking 2018-01-05 14:47:33 -05:00
Daniel Agar bf84cf0dcf Cygwin: use relative paths where needed 2018-01-05 14:47:33 -05:00
Matthias Grob be8adbfdf3 Cygwin: refactored & simplified some of the OS define logic 2018-01-05 14:47:33 -05:00
Matthias Grob 2186f7b1b1 Cygwin: Enable ARM build of px4fmu-vX_default under Windows Cygwin Environment 2018-01-05 14:47:33 -05:00
Matthias Grob 70de169f15 Cygwin: Enable build of SITL jMAVsim under Windows using the Cygwin Unix-like environment
Most of the incompatitbilities are luckily similar to the darwin build.
- New target OS __PX4_CYGWIN added because in other build environments on Windows defines will very likely be completely different
- added all necessary exeptions to the defines
- disabled priorities completely because on Windows they are defined 1-32 and with all the arbitrary +40 -40 priority settings there were a lot of problems
  not only did some threads/"virtual tasks" not start because of out of bound priorities but also the resulting scheduling was totally random and inadequate
  with default priorities it ran toally fine during my first tests, should be rethought when windows is used onboard in the future
2018-01-05 14:47:33 -05:00
Daniel Agar 02c4ec9b2a move nuttx-configs to platforms/nuttx 2018-01-05 14:21:31 -05:00
Daniel Agar 62c2fbb443 move Images to platforms/nuttx 2018-01-05 14:21:31 -05:00
Daniel Agar 2dcd617a8f move Debug to platforms/nuttx 2018-01-05 14:21:31 -05:00
Daniel Agar f2cd5e3e9f move src/firmware/ to platforms 2018-01-05 14:21:31 -05:00
Daniel Agar 678e2c415d move cmake/${OS} to platforms 2018-01-05 14:21:31 -05:00
Daniel Agar b4f570e459 NuttX update to latest 7.22+ with pipes poll fix
https://github.com/PX4-NuttX/nuttx/pull/7
2017-12-07 14:09:59 -05:00
Daniel Agar 1a9e2ac789 cmake NuttX wrapper work around windows cygwin path issues 2017-12-01 02:04:28 -05:00
Daniel Agar d1a4c2dcd0 cmake handle git submodule depdencies 2017-11-23 00:22:45 -05:00
Daniel Agar 1a4f4b083c
cmake nuttx keep builtins generated by nuttx apps (#8323) 2017-11-20 20:20:05 -05:00
Daniel Agar c1c176d65b cmake nuttx build net if enabled 2017-11-18 20:52:10 +01:00
Daniel Agar 7608cec1ed cmake NuttX improve builtin generation dependencies 2017-11-18 11:52:55 -05:00
Daniel Agar d35de9b4e3 cmake nuttx copy source into build with relative paths
- this works around cygwin path issues on windows
2017-11-18 11:52:55 -05:00
Lucas De Marchi 3a84d4cfeb build: fix NuttX menuconfig
There was and extra "nuttx" dir:
	cp: cannot stat '/home/lucas/p/dronecode/PX4/Firmware/build/aerofc-v1_default/NuttX/nuttx/nuttx/.config': No such file or directory
	FAILED: NuttX/CMakeFiles/menuconfig

And the board fixup being executed from the wrong working directory:
	nuttx-configs/aerofc-v1/nsh/defconfig
	fatal: Path 'nuttx-configs/aerofc-v1/nsh/defconfig' does not exist in 'HEAD'
2017-10-12 10:00:51 +02:00
Daniel Agar 8d07c647f7 NuttX improve apps builtins dependencies 2017-10-05 11:28:10 -10:00
Daniel Agar 9ce3412a93 NuttX board build not needed (#8029) 2017-09-29 06:48:25 -10:00
David Sidrane 95cea13090 Updated nuttx and apps submodules for 1.7 Release
Tied to nuttx, apps  px4_firmware_nuttx-master
     rebased on upstream nuttx master @ 3647ace55958c094cfe93f07092d308a768f5ca3
     rebased on upstream apps master @ 21c9b793e2ca6f4e86388c80d7af5c466de5e71c
2017-09-29 10:13:51 -04:00
Daniel Agar 2113772443 improve nuttx verbose build 2017-09-29 10:13:51 -04:00
Daniel Agar 03784c6b01 nuttx fix px4 builtin generation dependency 2017-09-29 10:13:51 -04:00
Daniel Agar e38136fc9f NuttX build re-enable hard link copy and improve builtin_list 2017-09-29 10:13:51 -04:00
David Sidrane bb71e47ddf Updated nuttx submoulde 7.22+ w/i2c fix ==px4_firmware_nuttx-master
Latest nuttx 7.22+ with PX4 contrib for stm32 f4 I2C hang.
2017-09-29 10:13:51 -04:00
David Sidrane 0f028fda3b Update nuttx and apps submodule to 7.22+ ==px4_firmware_nuttx-master
Prep for Nuttx Upgrade - still needs i2c fix
2017-09-29 10:13:51 -04:00
David Sidrane 3c384f1890 Updated nuttx and apps submudule 7.22+ ==px4_firmware_nuttx-master 2017-09-29 10:13:51 -04:00
David Sidrane f83df2a9a6 Updated nuttx submodule 7.22+
Updated to latest upstream with PX4 contrib for STM32 I2C that
  fixes an hang in driver.
2017-09-29 10:13:51 -04:00
David Sidrane 1c6dc4b84c Updated nuttx and apps submodules to Nuttx 7.22+ ==px4_firmware_nuttx-master 2017-09-29 10:13:51 -04:00
David Sidrane 822b390420 Update nuttx and apps submodule 7.21+==px4_firmware_nuttx-master 2017-09-29 10:13:51 -04:00
David Sidrane f641c1e15e Updated nuttx submodule 7.21+ ==px4_firmware_nuttx-master 2017-09-29 10:13:51 -04:00
David Sidrane 8b2ee2cb33 Updated nuttx submodule 7.21+ 2017-09-29 10:13:51 -04:00
David Sidrane 929c5d9b5e Updated NuttX submodule with upstream 7.21+ 2017-09-29 10:13:51 -04:00
Daniel Agar 01b3e6fd25 NuttX upgrade cmake wrapper (#7873)
* NuttX cmake

* px4_macros:Pass the stringified predicate as second arg to static assert

   CC_ASSERT mapes to the c++ static_assert or provides the same
   funtionality for c via the other macros. The c++ static assert
   takes 2 argumants the prdicate and a message. This fixes the
   lacking second argument.

* Updated nuttx and apps submodule to upstream nuttx 7.21+==master

   This is the latest uptake of upstream nuttx and apps.

* ROMFS generate with xxd instead of objcopy

* delete nuttx-patches

* NuttX update submodules to latest px4_nuttx-master

* fix nuttx apps and board dependency

* docker_run update to latest container 2017-08-29

* cmake ROMFS portable sed usage

* NuttX update submodules to latest px4_nuttx-master
2017-09-29 10:13:51 -04:00
Lorenz Meier f36f54c621 Restructuring of generic middleware support files, wrapping of the main ROS calls, skeletons for publishers / subscribers 2014-11-09 11:57:34 +01:00
px4dev b80575fcff Break up the firmware build into a 'make export' phase for NuttX on a per-board basis, and then a separate per-config phase that allows us to avoid re-building NuttX all the time, and ship more than one firmware config for a given board.
This is a first cut; it builds one firmware for each of FMU and IO.
2013-02-23 22:00:58 -08:00