- Jan 31, 2018
-
-
Daniel Agar authored
-
- Feb 17, 2017
-
-
Beat Küng authored
We need to protect access to the param_values array. This is dynamically allocated and resized (utarray_reserve() calls realloc). If some thread was iterating the array while another was resizing the array, the first one would iterate on a freed array, thus accessing invalid memory. On NuttX this could lead to hardfaults in rare conditions. Unfortunately we need to initialize the semaphore on startup, by calling sem_init(). This adds a param_init() method called by every board/config that uses the params (at least I think I've found all of them)
-
- Feb 02, 2017
-
-
Daniel Agar authored
-
- Jun 07, 2016
-
-
Julian Oes authored
-
- Mar 09, 2016
-
-
Julian Oes authored
-
- Feb 19, 2016
-
-
Mark Charlebois authored
Signed-off-by:
Mark Charlebois <charlebm@gmail.com>
-
Mark Charlebois authored
Signed-off-by:
Mark Charlebois <charlebm@gmail.com>
-
Mark Charlebois authored
This brings in many of the changes from the PX4 fork on ATLFLight. Signed-off-by:
Mark Charlebois <charlebm@gmail.com>
-
Mark Charlebois authored
Signed-off-by:
Mark Charlebois <charlebm@gmail.com>
-
Mark Charlebois authored
Signed-off-by:
Mark Charlebois <charlebm@gmail.com>
-
Mark Charlebois authored
This brings in many of the changes from the PX4 fork on ATLFLight. Signed-off-by:
Mark Charlebois <charlebm@gmail.com>
-
- Dec 01, 2015
-
-
Lorenz Meier authored
-
Lorenz Meier authored
-
Lorenz Meier authored
-
Lorenz Meier authored
-
- Sep 20, 2015
-
-
Lorenz Meier authored
-
Lorenz Meier authored
-
- Sep 12, 2015
-
-
Lorenz Meier authored
-
- Sep 11, 2015
-
-
Lorenz Meier authored
-
- Jul 16, 2015
-
-
devbharat authored
-
- Jun 11, 2015
-
-
Mark Charlebois authored
When px4_getpid() was called from the shell, there was no opaque thread ID to return. Added a special thread ID for the shell context. This ID only works for px4_getpid() and cannot be used for other px4_task_*() calls. Signed-off-by:
Mark Charlebois <charlebm@gmail.com>
-
- Jun 02, 2015
-
-
Mark Charlebois authored
The header file now contains all hrt workqueue related prototypes. Signed-off-by:
Mark Charlebois <charlebm@gmail.com>
-
Mark Charlebois authored
There is a race condition for the accel and mag polling rates. Whichever one gets set first, the other will be uninitialized. Set the mag polling rate to 1ms if uninitilized. Signed-off-by:
Mark Charlebois <charlebm@gmail.com>
-
- May 05, 2015
-
-
Mark Charlebois authored
The HRT call processing normally happens via HW timer interrupt handler. Since the POSIX port has no ISR handling, the HP work queue is used. Instead of irq_save() and irq_restore() calls to disable/enable interrupts, a mutex is used to protect each queue. Signed-off-by:
Mark Charlebois <charlebm@gmail.com>
-
Mark Charlebois authored
In STM32, the ISR handler calls hrt_call_invoke(). There is no interrupt timer inthe POSIX port so a work item is put on the high priority work queue to expire at the next event (in ticks) or at the next max delay interval. Counter wrapping is likely still not handled properly in this code. Signed-off-by:
Mark Charlebois <charlebm@gmail.com>
-
- Apr 21, 2015
-
-
Mark Charlebois authored
Changed "linux" target to "posix". Most of the changes are shared with QuRT and with OSX. The Linux specific parts are in for i2c which uses <linux/i2c.h> and <linux/i2c-dev.h>. There is also a check for __PX4_LINUX in mavlink for a tty ioctl that is not supported. Signed-off-by:
Mark Charlebois <charlebm@gmail.com>
-
- Apr 20, 2015
-
-
Mark Charlebois authored
Disabled gcc warnings that are tripped by Eigen. Removed signal code that is not needed in Linux port and was causing gcc warnings. Signed-off-by:
Mark Charlebois <charlebm@gmail.com>
-
Mark Charlebois authored
PX4 uses NuttX data structures throughout so those data structures were preserved and used to implement high and low priority queues. A unit test for the work queues was added. The polling rate of the queues are set in px4_config.h in CONFIG_SCHED_WORKPERIOD. The units are milliseconds. Signed-off-by:
Mark Charlebois <charlebm@gmail.com>
-
Mark Charlebois authored
Based on NuttX work queue code. Not yet functional. Signed-off-by:
Mark Charlebois <charlebm@gmail.com>
-
Mark Charlebois authored
Added more queue support to linux/px4_layer. Use virt char devices for ms5611, and mavlink. Added more HRT functionality. uORB latency test now fails. Likely due to bad HRT impl for Linux. Signed-off-by:
Mark Charlebois <charlebm@gmail.com>
-
Mark Charlebois authored
uORB module now compiles and runs for Linux using the virtual CDev implementation. Signed-off-by:
Mark Charlebois <charlebm@gmail.com>
-
Mark Charlebois authored
Fixes to compile with gcc Signed-off-by:
Mark Charlebois <charlebm@gmail.com>
-
Mark Charlebois authored
Uncomment the following line in setup.mk and comment out the line above to enable the Linux build. export PX4_TARGET_OS = linux The build uses the clang compiler by default. The final bundled executable is mainapp located in: Build/linux_default.build/mainapp When you run mainapp it will provide a list of the built-in apps. You can type in the commands to run such as: hello_main start Because the Linux build is threaded and does not support tasks or processes, it cannot call errx, exit() _exit(), etc. It also requires unique scoped variables to test if a thread is running or if an application should exit. The px4::AppMgr class was added in px4_app.h for this purpose. The hello sample app demonstrates how this is used. Signed-off-by:
Mark Charlebois <charlebm@gmail.com>
-
- Jul 13, 2014
-
-
Lorenz Meier authored
-
- Aug 22, 2013
-
-
Julian Oes authored
-
- Jun 25, 2013
-
-
Julian Oes authored
-
- Jun 01, 2013
-
-
Lorenz Meier authored
-
- Feb 24, 2013
-
-
px4dev authored
-
- Jan 06, 2013