Commit Graph
43 Commits
Author SHA1 Message Date
Pavel Kirienko e2b801a323 Fixes 2911 2015-09-27 12:25:15 +02:00
Lorenz Meier 21d1b4ba2e Merged beta into master 2015-08-22 14:06:01 +02:00
Pavel Kirienko 3860dbdc8c UAVCAN Barometer driver fix - reporting temperature in Celsius degrees, not in Kelvin 2015-08-22 13:54:56 +02:00
Pavel Kirienko 473d321af8 UAVCAN Magnetometer driver update - no logical changes 2015-08-22 13:54:56 +02:00
Mark Charlebois a589d15c52 Refactored debug() and log() in CDev
These functions used vprintf which is not available on all platforms.
They also do not enable line and file debug output.

Changed to macros that preserve the output format.  Uses new macro that
can be used to implement per object, runtime selectable logging

Signed-off-by: Mark Charlebois <charlebm@gmail.com>
2015-08-11 12:07:06 -07:00
David Sidrane 22d46fa733 Merged master_uavcan_modular src/modules/uavcan/ 2015-07-09 11:22:35 -10:00
Lorenz Meier c9fefe236b Merged release into master 2015-06-13 11:06:01 +02:00
David Sidrane 68276ff345 Back Port from Master - Changes to build on latest uavcan master with FW upload and Node ID 2015-06-05 06:43:10 -10:00
David Sidrane 2d796f408d Ran Astyle 2015-06-04 03:27:40 -10:00
David Sidrane 6155a1557f Changes to build on latest uavcan master with FW upload and Node ID allocation 2015-06-04 02:37:59 -10:00
Mark Charlebois 31923c3add On more fixup for orb_advert_t changed to void *
Reviewed all changes in pull request and made sure all cpp files
check orb_advert_t types against nullptr and c files check against
NULL.

Signed-off-by: Mark Charlebois <charlebm@gmail.com>
2015-05-27 14:42:49 -07:00
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 21dfd0243d drivers: use new ringbuffer namespace everywhere 2015-05-24 10:04:38 +01:00
Andrew Tridgell a4bece7595 uavcan-baro: use RingBuffer for read() support 2015-04-04 10:20:51 +02:00
Holger Steinhaus d06761bba8 uavcan-baro: add read()-style interface to baro device 2015-04-04 10:20:38 +02:00
Daniel Agar 8aae66b893 trivial code style cleanup round 2 2015-03-27 23:38:58 -04:00
Lorenz Meier 1a91c7da79 UAVCAN: Move to 0-based indices 2015-02-09 22:56:23 +01:00
Pavel Kirienko 2f7a9eaf65 Fix for a compilation failure 2015-01-29 16:33:53 +01:00
Lorenz Meier 1cc4c808a8 Upgrade UAVCAN to multi pub/sub A API 2015-01-29 16:33:53 +01:00
Ban Siesta 25fc9d791a renaming of gps time to UTC time 2015-01-04 10:43:28 +00:00
Holger Steinhaus 2ce2d26d52 UAVCAN: preserve original UAVCAN message timestamps 2014-11-18 14:58:04 +01:00
Holger Steinhaus e026324784 UAVCAN: fix mag report timestamp 2014-11-13 16:58:41 +01:00
Holger Steinhaus 16d74e3c31 UACVAN: add read()-style interface to mag device 2014-11-13 16:17:35 +01:00
Holger Steinhaus 0fa622f22b UAVCAN: declare mag external again to allow different rotation than the internal mag 2014-11-13 16:17:35 +01:00
Holger Steinhaus 4d489ef7f4 UAVCAN: improve mag compatibility 2014-11-13 16:17:35 +01:00
Holger Steinhaus 50b410664f UAVCAN: set bus number part of device_id to zero 2014-11-11 17:04:28 +01:00
Holger Steinhaus 51ffb887c3 UAVCAN: initialize device id for mag and baro to allow DEVIOCGDEVICEID ioctl to return useful data 2014-11-11 11:29:35 +01:00
Pavel Kirienko 1d038eed04 UAVCAN: GNSS fix message update 2014-09-03 22:44:16 +04:00
Pavel Kirienko eab701b896 Improved UAVCAN status reporting 2014-08-26 00:52:33 +04:00
Pavel Kirienko 3866b5a5fe Resource leak fix 2014-08-24 03:02:52 +04:00
Pavel Kirienko e9da830316 UAVCAN: initializing all bridges by default 2014-08-24 00:06:47 +04:00
Pavel Kirienko 0f124963d4 UAVCAN: Minor improvement of the GNSS bridge 2014-08-23 23:43:01 +04:00
Pavel Kirienko ce73be514e UAVCAN: Proper CDev initialization from sensor bridges 2014-08-23 23:30:49 +04:00
Pavel Kirienko 4e0d7c6b0e UAVCAN: redundant sensors support 2014-08-23 23:14:59 +04:00
Pavel Kirienko 7132141cc4 UAVCAN: Printing all known sensor bridge names with usage info 2014-08-22 20:33:35 +04:00
Pavel Kirienko 6870cd4d3d UAVCAN baro driver 2014-08-22 20:15:11 +04:00
Pavel Kirienko 6ebd59c633 UAVCAN: improved sensor bridge factory 2014-08-22 15:52:35 +04:00
Pavel Kirienko bdc2ecd9f6 Too much Ctrl+C Ctrl+V 2014-08-22 15:41:21 +04:00
Pavel Kirienko e32ff6004b UAVCAN mag driver fix 2014-08-22 15:31:08 +04:00
Pavel Kirienko 29dbe8aed5 UAVCAN magnetometer driver 2014-08-22 14:27:32 +04:00
Pavel Kirienko f820010a2b UAVCAN GNSS subscription name fix 2014-08-22 13:24:31 +04:00
Pavel Kirienko 0d9f6b6e2e UAVCAN: Refactored and generalized sensor bridge support 2014-08-22 01:52:23 +04:00