269 Commits

Author SHA1 Message Date
Lorenz Meier
10eb5de5ce Add vehicle config list for downstream config tools 2015-07-02 22:23:23 +02:00
Mark Charlebois
851a020461 Eagle: posix-arm and qurt changes to support Eagle HW platform
The Eagle HW platform contains both a Krait (ARMv4hf compatible) cpu
cluster and a Hexagon DSP running QuRT.

These changes support the PX4 build for Eagle.

Signed-off-by: Mark Charlebois <charlebm@gmail.com>
2015-07-01 09:48:50 -07:00
Lorenz Meier
454becdae5 Merged release_v1.0.0 branch into master 2015-06-25 21:45:17 +02:00
Lorenz Meier
c402d0c2f7 Commander: updated mag calibration routine, matlab script updates 2015-06-25 14:44:24 +02:00
Lorenz Meier
e28e4cb84c Matlab mag: Update to real scaling, resulting fits confirm results 2015-06-25 14:44:23 +02:00
Lorenz Meier
a4a6e69521 Matlab tools: Add ellipsoid fit 2015-06-25 14:44:23 +02:00
Lorenz Meier
baca229b95 Tools: Add Matlab script to plot mag data 2015-06-25 14:44:23 +02:00
Mark Charlebois
834e3c0587 SITL: updated README and rc.S
Changed rc.S to rcS.

Updated README.md to explain the require directory structure and
where to run mainapp from for SITL to work correctly.

Signed-off-by: Mark Charlebois <charlebm@gmail.com>
2015-06-15 15:48:12 -07:00
Mark Charlebois
729653ba71 SITL: changed posix_default to posix_sitl
The SITL build is now the default posix build.

The linker script for posix was moved to makefiles/posix.
The rc.S file was moved to posix-configs/SITL/init/
The POSIXTEST board definition is now SITL

To run the SITL test run:

make sitlrun

This replaces the make posixrun target.

The build directory is now Build/posix_sitl.build/

Signed-off-by: Mark Charlebois <charlebm@gmail.com>
2015-06-15 09:51:07 -07:00
Mark Charlebois
c9be962f4c POSIX: Modified posix_run.sh to create rootfs dirs
The default rootfs is now in:

Build/posix_default.build/rootfs/

The subdirs fs/microsd and eeprom are now created if they do not exist.

Signed-off-by: Mark Charlebois <charlebm@gmail.com>
2015-06-11 21:44:21 -07:00
Mark Charlebois
0c43803ec7 POSIX: Fixed syntax error in posix_apps.py
Signed-off-by: Mark Charlebois <charlebm@gmail.com>
2015-06-11 21:03:45 -07:00
Mark Charlebois
aaac4708a5 Merge branch 'bringup-m1' of https://github.com/mcharleb/Firmware into bringup-m2
Conflicts:
	Tools/posix_apps.py

Signed-off-by: Mark Charlebois <charlebm@gmail.com>
2015-06-11 20:38:47 -07:00
Mark Charlebois
83bcb95999 POSIX: Added sleep command
The baro was not fully initialized when the sensors module tried to
open it. Added a sleep command and a sleep 2 to rc.S so the baro
is initialized by the time the sensors module tried to read it.

Fixed other noisy errors

Signed-off-by: Mark Charlebois <charlebm@gmail.com>
2015-06-11 17:28:46 -07:00
Kyle Manna
c593451e5d Tools: Convert Python 2 syntax to Python 3 compatible
* The `print """` syntax appears invalid in Python 3 which is the
  default for the Python binary on my system (and soon many more).
* Convert the file (using `2to3`) to a version that's compatible with
  Python 2 and Python 3.
* Tested against Python 2.7.10 and 3.4.3.
2015-06-11 00:07:54 -07:00
Ban Siesta
f73a942c05 Tools: don't try to generate messages for hidden files starting with a
dot.
2015-05-24 09:24:17 +01:00
Mark Charlebois
00296ba241 POSIX: Fixed uint64_t print in generated topic_listener.cpp
Signed-off-by: Mark Charlebois <charlebm@gmail.com>
2015-05-19 16:42:55 -07:00
Mark Charlebois
884f62878d QuRT: pthread API now working
The use of std::map and static initialization was an issue.

The code was refactored to not use static initialization.

Signed-off-by: Mark Charlebois <charlebm@gmail.com>
2015-05-13 16:21:52 -07:00
Mark Charlebois
3db5f3bb3b QuRT: toolchain changes
Reworking toolchain and main.cpp for QuRT to a final link can be
done and the apps.h file is autogenerated.

Signed-off-by: Mark Charlebois <charlebm@gmail.com>
2015-05-12 11:37:28 -07:00
Mark Charlebois
4216a0d64d POSIX: remove check for /tmp/ttyS{0|1}
The posix build now disables the UART code in mavlink.

Signed-off-by: Mark Charlebois <charlebm@gmail.com>
2015-05-07 10:46:10 -07:00
Mark Charlebois
6db77dc8bb Experimental virtual file support
QuRT does not have a filesystem, so creating a virtual filesystem
that could be implemented as an in-memory file or a remote file
over fastRPC.

Signed-off-by: Mark Charlebois <charlebm@gmail.com>
2015-05-06 22:12:45 -07:00
Mark Charlebois
872e1ebda0 GCC fixes for warnings
GCC was more picky about prototypes for inlines being required.

The generate_listener.py script used incorrect printf formats and
was casting %f params to float, but printf casts all %f params to
double per the spec.

Signed-off-by: Mark Charlebois <charlebm@gmail.com>
2015-05-06 11:45:23 -07:00
Mark Charlebois
12a25e4b63 Merge remote-tracking branch 'upstream/master' into linux
Signed-off-by: Mark Charlebois <charlebm@gmail.com>

Conflicts:
	makefiles/firmware.mk
	src/modules/commander/module.mk
	src/modules/mavlink/mavlink_ftp.h
	src/modules/mavlink/mavlink_tests/module.mk
2015-05-04 16:36:59 -07:00
tumbili
4b34d0c297 improved topic listener 2015-05-04 23:10:23 +02:00
Thomas Gubler
07f6165290 make parameter parser work with python3 2015-05-04 14:04:09 +02:00
Mark Charlebois
8e589adb24 topic_listener: added missing build deps
The posix build would complain that toipc_listener.cpp did not exist
and there was no rule to create it.

The required rule was added to src/systemcmds/topic_listener/module.mk

The script generate_listener.py is run from the Build tree and needs to
access $(PX4_BASE)/msgs so $(PX4_BASE) is now passed as an argument to
generate_listener.py

Signed-off-by: Mark Charlebois <charlebm@gmail.com>
2015-04-26 20:02:58 -07:00
tumbili
3af6e9d76e added autogenerated code for topic listener tool 2015-04-26 22:17:16 +02:00
Mark Charlebois
f63ab3d5e3 Merge branch 'master' into linux
Signed-off-by: Mark Charlebois <charlebm@gmail.com>

Conflicts:
	makefiles/firmware.mk
2015-04-22 10:38:46 -07:00
Mark Charlebois
19162ba5be Posix: Changed PreflightCheck to read Vdev
PreflightCheck was failing because it was trying to read actual
devices instad of virtual devices.

ADCSIM had a LINUXTEST ifdef that was removed.

posix_run.sh was using the wrong path

Signed-off-by: Mark Charlebois <charlebm@gmail.com>
2015-04-21 17:14:52 -07:00
Don Gagne
6bf0a2618b Add support for board attribute to parse output
This allows for writing parameter meta data which is specific to a
board type
2015-04-21 12:31:08 -07:00
Mark Charlebois
f3b5076d70 Linux to posix conversion
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>
2015-04-21 09:53:09 -07:00
Mark Charlebois
6ce0b7b753 QuRT: added missing make pieces
Signed-off-by: Mark Charlebois <charlebm@gmail.com>
2015-04-20 11:37:51 -07:00
Mark Charlebois
d2f0572ce6 Linux: added builtins to show devices and topics
list_devices will list virtual devices starting with "/dev/".
list_topics will list topics ("/obj/")

Signed-off-by: Mark Charlebois <charlebm@gmail.com>
2015-04-20 11:37:50 -07:00
Mark Charlebois
87a8289a22 Linux: changed adc to adcsim and add barosim
The name of the app was adc but should have been adcsim.
Added a barometer simulator.

This will allow ms56711_linux to depend on real devices and not
simulation.

Signed-off-by: Mark Charlebois <charlebm@gmail.com>
2015-04-20 11:35:48 -07:00
Mark Charlebois
f0312d2da0 Linux: Added commands to show threads and devices
The list_tasks and list_devices commands will show
lists of running px4 threads and created virtual device nodes.

The list_builtins command was removes and the list of commands
will be shown if return is pressed.

Signed-off-by: Mark Charlebois <charlebm@gmail.com>
2015-04-20 11:35:47 -07:00
Mark Charlebois
80c5812861 Linux: run socat as user not as root
If sudo is used to run socat the tty cannot be opened by a regular user

Signed-off-by: Mark Charlebois <charlebm@gmail.com>
2015-04-20 11:35:47 -07:00
Mark Charlebois
cf71db74d7 Support to specify build time OS target
Now run:

make PX4_TARGET_OS=nuttx

or

make PX4_TARGET_OS=linux

To test the linux build and make sure that the required directories
exist, run:

make linuxrun

Signed-off-by: Mark Charlebois <charlebm@gmail.com>
2015-04-20 11:16:26 -07:00
Mark Charlebois
2cd44a24ea Linux: Added linker script support for param and added mc_att_control
Added linker script to resolve __param_start and __param_end.

Added mc_att_control to list of supported builtins.

Signed-off-by: Mark Charlebois <charlebm@gmail.com>
2015-04-20 11:16:26 -07:00
Mark Charlebois
526b0e68eb Linux: modified shell to not show _main suffix
The builtin commands all have _main suffix by convention so
no need to show _main. Also nsh calls the commmands without the
_main suffix.

Signed-off-by: Mark Charlebois <charlebm@gmail.com>
2015-04-20 11:15:13 -07:00
Mark Charlebois
520459062d Initial Linux support including execution shell
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>
2015-04-20 10:46:43 -07:00
Lorenz Meier
f8cf495494 Revert "Added ability for board specific meta data generation"
This reverts commit 9ac350a7d1c5c07a4e4ba7824744930f9110dedc.
2015-04-18 11:38:23 +02:00
Don Gagne
9ac350a7d1 Added ability for board specific meta data generation
Use new @board meta data attribute for board specific ifdef support
2015-04-18 11:14:12 +02:00
Don Gagne
202cfd21d0 Change to V2 spec of param meta data
Had to switch to ElementTree to get attribute support
2015-04-16 10:21:18 -07:00
Don Gagne
2fa0c333cb Add version number to parameter meta data 2015-04-15 14:53:06 -07:00
Don Gagne
05c351183f Parameter meta data fixes 2015-04-15 11:29:37 -07:00
Don Gagne
c8452bb9d6 Store parameter xml size
This is needed in order to decompress in QGroundControl
2015-04-14 19:17:30 -07:00
Andreas Antener
e2d27ade2e remove ROS install scripts, they are now in PX4/containers 2015-04-06 14:02:14 +02:00
Daniel Agar
5cc1a5dfda check_code_style exclude eigen 2015-03-27 19:08:44 -04:00
Lorenz Meier
7554eb515a Fix ROS install instructions 2015-03-25 01:02:29 -07:00
Lorenz Meier
8a584be530 Fix missing dependencies 2015-03-24 14:55:17 -07:00
Lorenz Meier
f26edd20f6 Add missing gflags 2015-03-24 14:50:22 -07:00