Commit Graph
524 Commits
Author SHA1 Message Date
Daniel Agar e927f3e040 clang-tidy modernize-use-nullptr 2017-02-01 22:15:50 -05:00
Paul Riseborough 253683af5f drivers: Don't require driver level gyro offsets to be non-zero 2017-02-01 08:40:23 +01:00
Paul Riseborough c00c638b77 Remove IMU calibration parameter checks 2017-02-01 08:40:23 +01:00
Daniel Agar 501f866bf5 astyle src/platforms/posix 2017-01-29 01:18:32 +01:00
Roman c065dc1930 bebop bus wrapper: fix logging of rpm and rpm setpoint
Signed-off-by: Roman <bapstroman@gmail.com>
2017-01-28 20:18:01 +01:00
Roman 1d4d57c4db bebop bus wrapper: log actual and setpoint motor speed
Signed-off-by: Roman <bapstroman@gmail.com>
2017-01-28 20:18:01 +01:00
Roman 0c7c5977ae bebop motor driver: better naming, removed unused header file
Signed-off-by: Roman <bapstroman@gmail.com>
2017-01-28 20:18:01 +01:00
David Sidrane af12816296 posix derived targets use BOARD_OVERRIDE_CPU_VERSION for mcu_version 2017-01-26 08:39:12 +01:00
David Sidrane 93f2cf077f posix derrived targes use BOARD_OVERRIDE_UUID 2017-01-25 07:43:11 +01:00
David Sidrane df1ed22cf9 Distribute sitl and board based assets for posix targets
This adds a src/board/<bebop|eagle|excelsior|rpi|sitl>/board_config.h
   to configure the build as is done with the Nuttx targets

   src/platforms/posix/include/board_config.h has been renamed to
   src/platforms/posix/include/system_config.h to allow the common
   posix defines to be included with the board specific defines.
2017-01-21 11:45:36 +01:00
Michael Schaeuble 7aea2ca030 BebopFlow: Add V4L2 interface and image functionality 2017-01-20 23:09:13 +01:00
Michael Schaeuble f572752412 BebopFlow: Add initial PX4 app and structure 2017-01-20 23:09:13 +01:00
Michael Schaeuble 85aa710414 BebopRangeFinder: Integration into build and starup 2017-01-20 23:09:13 +01:00
Michael Schaeuble 6cb659c8ef BebopRangeFinder: Add DF wrapper for Bebop's height sensor 2017-01-20 23:09:13 +01:00
Lorenz Meier 9f0d588989 Simulated drivers: Use fake device IDs 2017-01-19 19:24:52 +01:00
Lorenz Meier 49a29ee775 Fix up DriverFramework wrappers, bring them back to the real device ID they have already in-built 2017-01-19 19:24:52 +01:00
Paul Riseborough edbe68f833 posix drivers: use orb instance as surrogate sensor ID for simulated IMU 2017-01-19 19:24:52 +01:00
Paul Riseborough c21b4aaf2e posix drivers: Populate baro device ID
TODO - use unique HW ID
2017-01-19 19:24:52 +01:00
Paul Riseborough da87e3eb0a posix drivers: Populate device ID in sensor topics for simulated IMU 2017-01-19 19:24:52 +01:00
Paul Riseborough 961474f430 posix drivers: Populate device ID in sensor topics for mpu9250 2017-01-19 19:24:52 +01:00
Paul Riseborough 1009550262 posix drivers: Populate device ID in sensor topics for mpu6050 2017-01-19 19:24:52 +01:00
Paul Riseborough 48f81f24e1 posix drivers: Populate device ID in sensor topics for lsm9ds1 sensor 2017-01-19 19:24:52 +01:00
wangxdflight b693e29d64 enable px4 flight for excelsior(legacy) 2017-01-16 08:25:58 -08:00
Lorenz Meier 3d31914eb5 Tone alarm sim: Fix resource leak 2017-01-14 07:47:03 -08:00
Lorenz Meier 750ab87303 GPS Sim: Fix destructor 2017-01-03 14:44:45 +01:00
Lorenz Meier 9cfd46b87c Airspeed sim: Fix reset function 2017-01-03 14:44:45 +01:00
Lorenz Meier 8d4edd74b8 Platforms: Header cleanup 2016-12-27 21:00:51 +01:00
Anton Matosov 6d3116e30b Implement the way to run posix simulator directly from IDE without the need to reconfigure command lines, but use runner created via CMake
Steps to debug:
 * Run gazebo (or any other sim) server and client viewers via the terminal: `make posix_sitl_default gazebo_none_ide`
 * In your IDE select `px4_<mode>` target you want to debug (e.g. `px4_iris`)
 * Start debug session directly from IDE

This approach significantly reduces the debug cycle time because simulator (e.g. gazebo) is always running in background and you only re-run px4 process which is very light.
2016-12-26 15:38:25 +01:00
Lorenz Meier 8418be5fa5 Slowdown message: More descriptive and less often 2016-12-24 16:14:52 +01:00
David Sidrane c9f10107c0 Nuttx Upgrade:Adds sem_setprotocol 2016-12-21 08:34:21 +01:00
David Sidrane 0177e250f4 STM32 Serial Number location is defined in NuttX 2016-12-21 08:34:20 +01:00
Julian Oes de9cb46a56 spektrum_rc: move and clean up (untested) 2016-12-20 14:38:28 +01:00
Julian Oes c0fcffae76 spektrum_rc: make it compile 2016-12-20 14:38:28 +01:00
Lorenz Meier c14f1fbaec Add initial structure for Snapdragon Spektrum input 2016-12-20 14:38:28 +01:00
Michael Schaeuble ed2d28d5dc Use time-stamped integrator in Posix MPU6050 driver 2016-12-15 00:09:07 +01:00
Lorenz Meier 1926c7bca7 Revert "Implement the way to run posix simulator directly from IDE without the need to reconfigure command lines, but use runner created via CMake"
This reverts commit fff4934743.
2016-12-12 22:32:34 +01:00
Anton Matosov fff4934743 Implement the way to run posix simulator directly from IDE without the need to reconfigure command lines, but use runner created via CMake
Steps to debug:
 * Run gazebo (or any other sim) server and client viewers via the terminal: `make posix_sitl_default gazebo_none_ide`
 * In your IDE select `px4_<mode>` target you want to debug (e.g. `px4_iris`)
 * Start debug session directly from IDE

This approach significantly reduces the debug cycle time because simulator (e.g. gazebo) is always running in background and you only re-run px4 process which is very light.
2016-12-10 12:48:53 +01:00
lhc610github f559b6ca88 df_lsm9ds1_wrapper: apply calibration after rotation 2016-11-24 14:39:23 +01:00
Carlo Wood de85fbe1dc Remaining fixes needed before running Tools/fix_headers.sh
<systemlib/err.h> --> "systemlib/err.h" that fix_headers.sh
would miss because it comes after code it doesn't understand.

Effectively remove the '__EXPORT extern perf_counter_t perf_alloc('
line, because currently perf_alloc is defined to be NULL, and
after running fix_headers.sh that happens *before* this header
is included (the order of headers will be changed).

Do not define NULL to be (void*)0: that only works for C.
In fact, the conversions needed for NULL are so full of exceptions
that standard C++ introduced a new *keyword*: nullptr.
That's what we really should be using for C++ code.
In this case I just include the correct header to define NULL
the correct way.

Not really related to the header line:
Removed an #include <time.h> because I noted that px4_time.h
was already included... and moved a #include <sys/time.h>
to the top of the file (not really a fan of including headers
in the middle unless absolutely necessary).
Removed a include of queue.h because I noted it wasn't used.
2016-11-13 19:36:27 +01:00
Julian Oes 53e0bc5f12 POSIX: use up to 20 command line arguments
This fixes the case where more than 10 args were needed for instance
when starting mavlink with all its options.
2016-11-05 14:20:17 +01:00
Carlo Wood 5b52cd0fe6 Compile fixes for old/unused targets.
These are some changes that I needed to compile
most of the unsupported targets.

After this all (make list_config_targets) compile
for me except: posix_eagle_muorb, posix_sdflight_default
and qurt_eagle_legacy_driver_default.
2016-10-26 14:00:52 +02:00
Carlo Wood 6fc30c76a6 Clean up of app.h
app.h, generated from app.h_in, has unnecessary code duplication
and isn't a header file (it defines globals, static functions
and doesn't have a header guard, moreover, it has a 'using namespace
std;'). Because of this, a real headerfile that declares the stuff
defined in apps.h was missing leading to even more code duplication:
scattered forward declarations in .cpp files and an often repeated
type of std::map<std::string, px4_main_t>.

This patch moves cmake/qurt/apps.h_in to src/platforms/apps.cpp.in
(with some changes) and removes cmake/posix/apps.h_in.
Then src/platforms/apps.cpp.in is split into src/platforms/apps.cpp.in
and src/platforms/apps.h.in, splitting declarations from definitions.

A typedef is defined for the map (apps_map_type).

The main difference between cmake/posix/apps.h_in and
cmake/qurt/apps.h_in was that the first defined a global 'apps',
while qurt stores the apps in QShell. I opted to get rid of
the global variable (which are in general evil for various reasons)
and used the API of cmake/qurt/apps.h_in where a provided 'apps'
map is initialized with a call to init_app_map. Thus removing
the existing code duplication.
2016-10-22 08:31:14 +02:00
Julian Oes f8a1631077 DriverFramework/cmake_hexagon: use defines with DF
This changes the following defines:

__QURT -> __DF_QURT
__RPI -> __DF_RPI
__EDISON -> __DF_EDISON
__BEBOP -> __DF_BEBOP
__LINUX -> __DF_LINUX
2016-10-18 08:07:14 +02:00
Beat Küng b6b8892606 hrt_queue: add px4_posix.h include for px4_getpid() 2016-09-30 13:50:51 +02:00
Beat Küng e061842219 posix main: only try to generate symlinks if data path argument given
if not given, the dirs are either not needed (eg RPI) or assumed to
exist already
2016-09-30 13:50:51 +02:00
Beat Küng 241fd629ce ERROR macro: get rid of the many 'oddly, ERROR is not defined for c++', use PX4_ERROR 2016-09-30 13:50:51 +02:00
Beat Küng cf5338df02 accelsim: lower publisher rate to 250Hz 2016-09-30 13:50:51 +02:00
Beat Küng 27aaf244af fix accelsim: ACC_READ cannot be 0 (it's used to check if a bit is set)
before that, accel data was all 0, but since the gyrosim also publishes
accel data, it was not a problem.
2016-09-30 13:50:51 +02:00
Beat Küng d7ed47e2e5 px4_posix_tasks.cpp: make sure to copy the thread name into the thread data struct
The thread name is used from within the entry of the new thread, but the
provided name could live on the stack of the caller thread. Thus we need to
copy the name.
2016-09-30 13:50:51 +02:00
Beat Küng f25947b964 hrt_work_queue posix: only send a wake-up signal if not called from own thread
The simulated timer interrupt always adds a new scheduled work task, which
is called from the work queue thread. Sending the signal creates measurable
overhead (~5% of the px4 CPU runtime) and is unnecessary, since the thread
is not sleeping anyway.
2016-09-30 13:50:51 +02:00