Commit Graph

42 Commits

Author SHA1 Message Date
Mark Charlebois 1ca05aaa64 orb_advert_t changed to void * and checks changed to nullptr
The existing orb_advert_t use thoughout the code sometimes tries
to treat it as a file descriptor and there are checks for < 0
and ::close calls on orb_advert_t types which is an invalid use
of an object pointer, which is what orb_advert_t really is.

Initially I had changed the -1 initializations to 0 but it was
suggested that this should be nullptr. That was a good recommendation
but the definition of orb_advert_t had to change to void * because
you cannot initialize a uintptr_t as nullptr.

Signed-off-by: Mark Charlebois <charlebm@gmail.com>
2015-05-27 14:42:49 -07:00
Mark Charlebois a734fc96d1 extensive orb_advert_t fixes
The calls to orb_advertise were being mishandled throughout the code.
There were ::close() calls on memory pointers, there were checks
against < 0 when it is a pointer to a object and values larger than
0x7ffffffff are valid. Some places orb_advert_t variables were
being initialized as 0 other places as -1.

The orb_advert_t type was changed to uintptr_t so the pointer value
would not be wrapped as a negative number. This was causing a failure
on ARM.

Tests for < 0 were changed to == 0 since a null pointer is the valid
representation for error, or uninitialized.

Signed-off-by: Mark Charlebois <charlebm@gmail.com>
2015-05-27 14:41:33 -07:00
Ban Siesta 414f3330b3 px4flow: tell the user which PX4FLOW couldn't be connected 2015-05-25 18:34:31 +01:00
Ban Siesta 9f314dd191 drivers: corrected log string 2015-05-24 20:56:25 +01:00
Ban Siesta 69cbbd9b5e distance_sensor: changed all distance sensors to orb_advertise_multi 2015-05-24 19:20:25 +01:00
Ban Siesta 517acd4586 px4flow: publish sonar distance to distance_sensor topic as well 2015-05-24 17:31:16 +01:00
Ban Siesta 362fc205b3 drivers: various whitespace 2015-05-24 10:05:42 +01:00
Ban Siesta 21dfd0243d drivers: use new ringbuffer namespace everywhere 2015-05-24 10:04:38 +01:00
Mark Charlebois 190814bc97 Merge remote-tracking branch 'upstream/master' into linux
Signed-off-by: Mark Charlebois <charlebm@gmail.com>

Conflicts:
	src/drivers/rgbled/rgbled.cpp
	src/modules/commander/PreflightCheck.cpp
	src/modules/commander/airspeed_calibration.cpp
	src/modules/commander/calibration_routines.cpp
	src/modules/commander/gyro_calibration.cpp
	src/modules/commander/mag_calibration.cpp
	src/modules/mc_att_control/mc_att_control_main.cpp
2015-04-28 11:48:26 -07:00
Lorenz Meier ebaac07ab2 PX4 flow driver: Let user know we just did not find one 2015-04-27 09:07:53 +02:00
Mark Charlebois 9758112e31 Use px4_config.h instead of nuttx/config.h
Modified code to use OS independent header file for config settings.

Signed-off-by: Mark Charlebois <charlebm@gmail.com>
2015-04-20 10:55:41 -07:00
Lorenz Meier 113b0ab51b px4flow: Drop default conversion interval to 10Hz to avoid flooding tthe bus. 2015-02-13 09:13:20 +01:00
Lorenz Meier fac158f7e5 Board drivers: Move to 0-based index 2015-02-09 22:56:22 +01:00
James Goppert cbf4a5af16 Simplified i2c handling for flow. 2015-01-24 14:25:58 -05:00
M.H.Kabir 32bfc6cdb8 Minor re-addition 2014-12-30 16:32:16 +05:30
M.H.Kabir ce03794eca Merge remote-tracking branch 'upstream/master' into flow_orient
Conflicts:
	src/drivers/px4flow/px4flow.cpp
2014-12-30 16:23:52 +05:30
Lorenz Meier 7bed5b382f Clean up docs in PX4FLOW driver 2014-12-30 10:28:35 +01:00
M.H.Kabir 33653b25c6 fix Z rotation 2014-12-27 23:25:08 +05:30
M.H.Kabir 11a14c2c3d Add rotation switching to flow from mavlink 2014-12-27 23:16:09 +05:30
M.H.Kabir d40168dc4b Add support for rotations of PX4flow 2014-12-27 23:01:31 +05:30
Daniel Agar d511e39ea7 turn on -Werror and fix resulting errors 2014-12-22 17:56:59 -05:00
Lorenz Meier cbcd1ea1d1 Merged PX4Flow driver changes 2014-11-26 07:43:19 +01:00
Lorenz Meier afcbab7fba PX4FLOW driver: Prevent sensor from spamming the system on errors. Use the perf system call to look at error counters. 2014-11-12 13:37:58 +01:00
Julian Oes 14b5732c6e px4flow: small verbose output fix 2014-11-12 13:26:10 +10:00
Lorenz Meier 078e81a5cb Build for ESC bus conditionally 2014-10-31 11:42:36 +01:00
dominiho 4689c2db0a removed debug printf, adjusted test routine single read 2014-10-30 17:51:49 +01:00
dominiho 9f64953bb9 replaced optical_flow mavlink message with optical_flow_rad, added gyro_temperature, adapted sd2log for px4flow integral frame 2014-10-30 16:39:02 +01:00
dominiho 4a3a16475e scan also 3rd available bus 2014-10-28 15:05:41 +01:00
dominiho 2e4931e3ca deleted last PX4FLOW_BUS to enable scan on both buses 2014-10-28 14:04:50 +01:00
Lorenz Meier f443b77ae9 Kill last usleep() 2014-10-28 13:24:12 +01:00
Lorenz Meier 774ff3db31 Scan both buses 2014-10-28 13:22:25 +01:00
Lorenz Meier 16f33ee6b5 More formatting fixes 2014-10-28 13:17:00 +01:00
Lorenz Meier fd4418278e More formatting and cast fixes 2014-10-28 13:14:37 +01:00
Lorenz Meier 1418254fca Formatting fixes 2014-10-28 13:10:39 +01:00
Lorenz Meier 8a0ad6075c Merged master 2014-10-28 13:02:35 +01:00
Lorenz Meier 08a52ee17e Fixed formatting of flow driver 2014-10-28 12:54:27 +01:00
Lorenz Meier 1d29093f3d Flow driver: auto-format fixes 2014-10-28 12:53:24 +01:00
dominiho 276dc7fbbc added px4flow integral frame, adjusted px4flow i2c driver, adjusted postition_estimator_inav 2014-10-28 12:35:20 +01:00
Andrew Tridgell ae29d04ff5 px4flow: try a 22 byte transfer in probe()
this allows us to distinguish between a ll40ls and px4flow on I2C
address 0x42
2014-10-28 21:05:57 +11:00
Julian Oes d0f5eca5be px4flow: removed flow report in driver, just use uORB topic 2014-08-25 13:13:07 +02:00
dominiho fc877f9c20 changed px4flow I2C address to default value 2014-03-19 16:13:17 +01:00
dominiho 11f12b4dfe added i2c px4flow driver 2014-03-13 15:43:52 +01:00