Daniel Agar
64a3f0545f
cmake: move FindPythonInterp->FindPython
...
- cmake CMP0148 FindPythonInterp deprecated
2024-11-22 21:57:53 -05:00
Ramon Roche
7462e98e16
ci: publish pr images to registry
2024-11-22 16:08:12 -05:00
Ramon Roche
3240cf4dc7
ci: push px4-dev container to docker hub registry
2024-11-22 16:08:12 -05:00
Ramon Roche
f2bd3105ad
ci: tag container main & main-date
...
Make sure we always have a { branch name } container tag in addition to
a { branch name + date } tag. This way we have a rolling { branch name }
of the main and release branches
2024-11-22 16:08:12 -05:00
Ramon Roche
fb42770131
Tools: instal ccache on ubuntu
2024-11-22 16:05:58 -05:00
Ramon Roche
14468d49c1
ci: flash analysis updates
...
* updates comment instead of posting a new one each time
* runs on dronecode infra
2024-11-22 08:49:27 -08:00
bresch
14fe6c2167
ekf2: resetHeightTo -> resetAltitudeTo
...
The vertical position state is now an altitude, not just a local height
2024-11-22 15:13:47 +01:00
bresch
93c690f133
ekf2: do not inline getPosition
2024-11-22 15:13:47 +01:00
bresch
a224d38e52
lla: move implementation to cpp file
...
This reduces flash usage
2024-11-22 15:13:47 +01:00
bresch
aeb182a8ed
ekf2: rename resetAltitudeTo to initialiseAltitudeTo
...
This is to better show that the altitude is also used to set the origin.
2024-11-22 15:13:47 +01:00
bresch
30d98885b7
update change indicator
2024-11-22 15:13:47 +01:00
bresch
814a2706f5
ekf2: compensate for coriolis and transport rate accelerations
2024-11-22 15:13:47 +01:00
bresch
842212df6c
ekf2: update earth rate also without GNSS
2024-11-22 15:13:47 +01:00
bresch
6becccb217
update change indicator
2024-11-22 15:13:47 +01:00
bresch
a492457322
ekf2-derivation: build state struct based on type
2024-11-22 15:13:47 +01:00
bresch
13c5bd4412
ekf-flow: do not reset position when resetting to flow
...
Flow only provides velocity information
2024-11-22 15:13:47 +01:00
bresch
b19a6ee3b5
ekf2: store position state as lat/lon/alt
...
The position error state is still defined in a body-fixed NED frame but the
position state itself is latitude-longitude-altitude.
2024-11-22 15:13:47 +01:00
Ramon Roche
cf34b9d574
ci: fixes tag uploads and container tagging
2024-11-21 20:48:27 -05:00
Ramon Roche
0fca8e3a85
ci: build only if push event
2024-11-21 20:46:40 -05:00
Ramon Roche
884dee35a5
ci: container tag pattern updates
2024-11-21 20:46:40 -05:00
Daniel Agar
233cf17fa7
Jenkins: delete Jenkinsfile-compile/Jenkinsfile-hardware
...
- Jenkinsfile-compile is now redundant with github actions
- Jenkinsfile-hardware will be migrated to github actions once new test
rack hardware is available (old test rack server died)
2024-11-21 12:31:02 -05:00
Silvan Fuhrer
2f65644aeb
mixer module: remove unused functions
...
Signed-off-by: Silvan Fuhrer <silvan@auterion.com >
2024-11-21 11:57:50 -05:00
Julian Oes
746e26bf9e
listener: clear screen on multiple output
...
I suggest to clear the screen when using the listener with -n.
This way the updates don't just scroll by which isn't legible but
instead stay in place and update, similar to the top command.
2024-11-21 11:56:23 -05:00
PX4 BuildBot
10590fc597
Update submodule libfc-sensor-api to latest Thu Nov 21 12:38:53 UTC 2024
...
- libfc-sensor-api in PX4/Firmware (044d13635d ): https://gitlab.com/voxl-public/voxl-sdk/core-libs/libfc-sensor-api/commit/ca16e99074641a10d153961291243ede7720c2e2
- libfc-sensor-api current upstream: https://gitlab.com/voxl-public/voxl-sdk/core-libs/libfc-sensor-api/commit/85151aaf6ba8b24ce82b387e088452c63f7e2096
- Changes: https://gitlab.com/voxl-public/voxl-sdk/core-libs/libfc-sensor-api/compare/ca16e99074641a10d153961291243ede7720c2e2...85151aaf6ba8b24ce82b387e088452c63f7e2096
85151aa 2024-06-05 Eric Katzfey - Revert addition on slpi link interface. It will be moved to a separate project
e36286b 2024-06-04 Eric Katzfey - Merge branch 'master' of gitlab.com:voxl-public/voxl-sdk/core-libs/libfc-sensor-api
43a513f 2024-06-04 Eric Katzfey - Added new slpi link interface
490608b 2024-05-08 Eric Katzfey - Fixed gitignore for shared object
1085c02 2024-05-07 Eric Katzfey - Added gitignore for object files
37ecfc4 2024-05-03 Eric Katzfey - v1.0.3
2d1ebd3 2024-05-02 Eric Katzfey - Added a new kill slpi function
2024-11-21 11:50:11 -05:00
Beat Küng
8ccd43dc1b
refactor commander: remove unused argument is_armed in Report class
2024-11-21 14:16:22 +01:00
Beat Küng
be300b767d
commander: ensure health report is always sent out before failsafe notificaation
...
As the failsafe message can reference the health report, the health report
needs to be sent out first. This is generally the case, except there is a
rate limiter set to 2 seconds. So if the report changes quickly, it is
sent out delayed (potentially after the failsafe report).
2024-11-21 14:16:22 +01:00
Matthias Grob
044d13635d
Commander: Change user facing messages to "Remote ID" instead of "OpenDroneID"
...
Apprently users reference the system like that and OpenDroneID
might already be too technical, less understandable to some.
2024-11-21 11:38:23 +01:00
Claudio Chies
db13b9cb50
CollisionPrevention: Added Case where velocity gets reduced to zero if we are closer to the obstacle than the minimal distance
2024-11-21 11:36:03 +01:00
Matthias Grob
bbc59dcde7
CollisionPrevention: prevent illegal array index with malicious obstacle_dsitance message
2024-11-21 11:36:03 +01:00
Matthias Grob
1410325c62
CollisionPrevention: follow parameter variable naming convention
2024-11-21 11:36:03 +01:00
Matthias Grob
30eec33e09
CollisionPrevention: slightly simplify _transformSetpoint()
2024-11-21 11:36:03 +01:00
Matthias Grob
399a8ad5b7
CollisionPrevention: fix early return and use unified bin count + array size 72
2024-11-21 11:36:03 +01:00
Matthias Grob
61d999073b
Remove FlightTaskManualPositionSmoothVel
...
The default implementation for multicopter Position mode is FlightTaskManualAcceleration.
The last missing piece was support for CollisionPrevention in this implementation.
2024-11-21 11:36:03 +01:00
Claudio Chies
f41a08aea8
CollisionPrevention: changed to resolution of 5 degrees, and adapted tests to reflect the change
...
rewrite of obstacle_distance merging methods, and fix of various issues
2024-11-21 11:36:03 +01:00
Matthias Grob
2ef2911c36
Remove FlightTaskManualPositionSmoothVel
...
The default implementation for multicopter Position mode is FlightTaskManualAcceleration.
The last missing piece was support for CollisionPrevention in this implementation.
2024-11-21 11:36:03 +01:00
Matthias Grob
b74dd57e7c
CollisionPrevention: restore rate limited warning for no data, minor cleanup
2024-11-21 11:36:03 +01:00
Matthias Grob
4c8c5fbb37
CollisionPrevention: only save quaternion and yaw on attitude update
2024-11-21 11:36:03 +01:00
Matthias Grob
001d722abd
CollisionPrevention: move main functions to the top in the order they get called
2024-11-21 11:36:03 +01:00
Matthias Grob
1fa76ac71d
CollisionPrevention: reduce internal array size, zero initialize what's possible
2024-11-21 11:36:03 +01:00
Matthias Grob
c879ca531d
CollisionPrevention: Clarify bin size definitions, move wrap functions into class
2024-11-21 11:36:03 +01:00
Matthias Grob
84dbbb4351
CollisionPrevention: clarify mode switch command to hold/loiter
2024-11-21 11:36:03 +01:00
Matthias Grob
50ee5bd1b4
CollisionPrevention: Sanitize input of _getObstacleDistance()
...
It could cause array out of bound problems before.
2024-11-21 11:36:03 +01:00
Matthias Grob
eb06ace8e4
CollisionPrevention: fix matrix namespace
...
don't use it in header such that clients are free to redefine the names
but include it in cpp files and make use of that.
2024-11-21 11:36:03 +01:00
Matthias Grob
079f3ca67c
StickAccelerationXY: Simplify collision prevention call
2024-11-21 11:36:03 +01:00
Claudio Chies
0cd6a553b9
CollisionPrevention: rewrite for Acceleration based manual flight mode
2024-11-21 11:36:03 +01:00
Matthias Grob
b8c2805263
spi: Suppress null pointer warning
...
Depending on defines px4_spi_buses can be NULL
but often it's not and in those cases the
compiler correctly warns about it.
2024-11-20 22:36:23 -05:00
PX4 BuildBot
a49f034757
update all px4board kconfig
2024-11-20 22:33:59 -05:00
PX4 BuildBot
2f8460da91
Update submodule mavlink to latest Wed Nov 20 13:16:31 UTC 2024
...
- mavlink in PX4/Firmware (7e594e898b2281e7d3f6ef4057f1add829643058): https://github.com/mavlink/mavlink/commit/e221d46d4631a5b6f1e91040cb1fe4b6fa91ea43
- mavlink current upstream: https://github.com/mavlink/mavlink/commit/0e420102dbdd7e9f59617dd00c05a2470f22eef2
- Changes: https://github.com/mavlink/mavlink/compare/e221d46d4631a5b6f1e91040cb1fe4b6fa91ea43...0e420102dbdd7e9f59617dd00c05a2470f22eef2
0e420102 2024-11-20 David Sastre - development.xml: change OPERATOR_CONTROL id to 32100: (#2174 )
01e0cc2f 2024-11-14 Hamish Willee - SMART_BATTERY_INFO - revert and renumber BATTERY_INFO (#2173 )
2024-11-20 22:33:21 -05:00
Ramon Roche
dbc2e56b2e
ci: disable docker hub access
2024-11-20 19:57:41 -05:00
Ramon Roche
fb0f9b8aa7
ci: fix container image name when multiple given
...
when this is workflow triggered by a tag push event, then it tags the
image in multiple ways eg:
"image.name": "ghcr.io/px4/px4-dev:v1.16.0-alpha1,ghcr.io/px4/px4-dev:latest"
Having multiple names messes up the exectuion of the next step in the
chain since we depend on its name to complete the testing
2024-11-20 19:34:07 -05:00
Ramon Roche
74447a3ae2
ci: px4-dev container
2024-11-20 18:16:33 -05:00
Daniel Agar
cad2de228c
.github/workflows/clang-tidy.yml - clang-tidy checks retry if failed
...
- this clang tidy runner occasionally fails intermittently
2024-11-20 18:14:33 -05:00
Ramon Roche
abb5048cdb
ci: disable spot instances
...
guarantee execution of jobs
2024-11-20 14:52:45 -05:00
Jacob Dahl
1cfefc4c63
ark_fpv: fix bootloader serial fw update ( #23984 )
2024-11-20 14:46:27 -05:00
Daniel Agar
7288d16855
mavsdk_tests set nice levels for px4/gzclient/mavsdk_tests
2024-11-20 14:45:11 -05:00
Daniel Agar
ada2bb4c42
uORB_tests: relax latency threshold on non-realtime SITL
2024-11-20 14:10:39 -05:00
Ramon Roche
8e288629d0
ci: move runners to capacity optimized
2024-11-20 13:56:05 -05:00
Julian Oes
7c507f136c
bmp280: disable device filter
...
It looks like the BMP280 was heavily filtered, leading to a step
response of around 3 seconds. Comparing it to baro logs of BMP388 and
MS5611, it looks very slow.
I therefore suggest to disable the on device IIR filter which makes the
log data look more like the other baros.
2024-11-20 13:06:07 -05:00
Matthias Grob
3f83a8fa7a
mavlink: remove reference to COLLISION message I had missed
...
Should have been part of
b5d18c6131
2024-11-20 13:02:59 -05:00
Federico Ciresola
ddc604d0de
Broken link to the ARKV6X on the README.md
2024-11-20 12:42:58 -05:00
Daniel Agar
1d2ed28966
init.d-posix/rcS: relax default COM_RC_LOSS_T/COM_OF_LOSS_T with speed factor (0.5->1.0)
2024-11-20 09:36:06 -08:00
Daniel Agar
635e162a0c
test/mavsdk_tests: continue sending manual control between steps in fly_forward_in_posctl()/fly_forward_in_altctl()
2024-11-20 09:36:06 -08:00
Matthias Grob
f8b34fd79d
ci: build_all_targets: Update python packaging to avoid canonicalize_version() error
2024-11-20 14:27:04 +01:00
Matthias Grob
dcfecb4e16
python requirements: less strict empy version specifier
2024-11-20 14:27:04 +01:00
Marco Hauswirth
a191e1e14e
always allow disabling uncalibrated baro ( #23782 )
...
* always set baro calibration id and prio param
* change to ParametersSave
* only save baro calib param if not calibrated
2024-11-20 14:05:46 +01:00
Matthias Grob
53d920ea33
batteryCheck: fix enabling circuit breaker still causing battery failsafes
...
Failing checks caused failsafe flags to stay true when enabling the circuit breaker but not rebooting.
Resetting the failsafe flags state when the circuit breaker is set resolves this issue.
2024-11-20 13:25:20 +01:00
somebody-once-told-me
3943025f32
Centralize yaw margin ( #23982 )
2024-11-20 09:52:36 +01:00
Jacob Dahl
b891961a0c
make upload: fix usb path wildcard
2024-11-19 23:02:12 -05:00
Matthias Grob
1aadbf85af
gtest cmake: fix unit test filter
2024-11-19 23:00:59 -05:00
Khalil L
129c0f188a
hkust_nxt-dual: fix ADC_BATTERY_CURRENT channel mismatch
2024-11-19 22:57:53 -05:00
Jacob Dahl
3bce6988ab
remove unused upload.sh
2024-11-19 22:56:41 -05:00
Jacob Dahl
7a7240c3a2
ark: update v6x and fpv bootloaders ( #23980 )
...
* ark_fmu-v6x: update bootloader binary
* ark_fpv: update bootloader binary
2024-11-19 14:28:33 -07:00
Stefano Colli
b492947459
GZ RC Cessna: Improve rate tuning ( #23758 )
2024-11-19 10:05:44 +01:00
jmackay2
5b66a1eff1
Fix generate component regex escape sequence
2024-11-19 09:31:11 +01:00
Jacob Dahl
5f57b23477
ark_fpv: added fixed wing to board config ( #23967 )
2024-11-18 20:27:49 -07:00
S.W Develish
b955588b26
bugfix: NMEA GPS update rate was 0 since num_bytes_read was not being… ( #23957 )
...
* bugfix: NMEA GPS update rate was 0 since num_bytes_read was not being updated
* Update gps.cpp
style fix
* make format
---------
Co-authored-by: Jacob Dahl <dahl.jakejacob@gmail.com >
2024-11-17 16:16:50 -09:00
alexcekay
101384e155
Added GH Action to show FLASH diff using bloaty
2024-11-16 13:07:00 -05:00
Jacob Dahl
c6803166d1
boards: cubeorange: fix dma map label ( #23953 )
2024-11-15 21:17:43 -05:00
PX4 BuildBot
a85a9eccf7
boards: update all NuttX defconfigs
2024-11-15 21:14:12 -05:00
PX4 BuildBot
ccd32cc13f
update all px4board kconfig
2024-11-15 21:13:34 -05:00
PX4 BuildBot
11fe5580cb
Update submodule libevents to latest Sat Nov 16 00:40:14 UTC 2024
...
- libevents in PX4/Firmware (1f29c55e82fa22b95313bb0d10b63918718f9c0c): https://github.com/mavlink/libevents/commit/7c1720749dfe555ec2e71d5f9f753e6ac1244e1c
- libevents current upstream: https://github.com/mavlink/libevents/commit/9ef591c447fe0386d698bf6fb9a6d27e43988ee4
- Changes: https://github.com/mavlink/libevents/compare/7c1720749dfe555ec2e71d5f9f753e6ac1244e1c...9ef591c447fe0386d698bf6fb9a6d27e43988ee4
9ef591c 2024-10-14 Beat Küng - pylint: increase max-positional-arguments from 5 to 7
7901a0c 2024-10-14 Beat Küng - pylint: update config (pylint version 14.2.1)
edc472e 2024-10-11 Beat Küng - refactor: change libevents to an INTERFACE library
2024-11-15 21:12:18 -05:00
Silvan Fuhrer
08155d20f8
estimatorCheck: have low position warning as health component failure to fix reporting
...
Signed-off-by: Silvan Fuhrer <silvan@auterion.com >
2024-11-15 15:32:53 -05:00
Silvan Fuhrer
3093c593a5
Commander: put action for low position estimation accuracy into parameter
...
Signed-off-by: Silvan Fuhrer <silvan@auterion.com >
2024-11-15 15:32:53 -05:00
Hubert
2ce390a780
boards: new micoair h743-aio board
...
Co-authored-by: Minderring <1701213518@sz.edu.pku.cn >
2024-11-15 15:30:09 -05:00
Hubert
29085b18ad
boards/micoair/h743: remove osd in micoair743 config file
...
Co-authored-by: Minderring <1701213518@sz.edu.pku.cn >
2024-11-15 15:28:42 -05:00
Ramon Roche
381c45b751
Dockerfile: px4-dev container no sim tools for now
...
- we need to keep the total size reasonable for CI builds that will use this image
2024-11-15 15:26:55 -05:00
Ramon Roche
82ad562be8
Tools: build px4-dev container in CI with ubuntu 24.04
2024-11-15 14:36:03 -05:00
Alexander Lerach
b6daf83088
Un-inlined get_table_data
2024-11-15 12:01:06 -05:00
Alexander Lerach
6d0b7f7ed1
Un-inlined rotate_3
2024-11-15 12:01:06 -05:00
Ramon Roche
058fe540dd
ci: test ubuntu 24
...
* updates ubuntu.sh adding support for ubuntu 24.04
* ubuntu.sh now expects by default any of the last two LTS
* runs ci in docker containers
2024-11-14 20:26:30 -05:00
Patrick José Pereira
bc8f98c9ad
drivers/magnetometer/ak09916: Add support to AK09915 ( #23909 )
...
The only difference between the ak09915 and ak09916 is the communication method
Signed-off-by: Patrick José Pereira <patrickelectric@gmail.com >
2024-11-14 11:32:51 -09:00
Silvan Fuhrer
f9c4c8b22c
VehicleIMU: move setting of _notify_clipping from constructor to ParametersUpdate()
...
Signed-off-by: Silvan Fuhrer <silvan@auterion.com >
2024-11-13 12:10:48 -05:00
bresch
ea1a6a327c
flow: add scale factor parameter
2024-11-13 10:28:29 -05:00
Claudio Chies
d14c054149
SIM: MPC: add two x500 lidar airframes ( #23879 )
...
* add two x500 lidar airframe, including the gazebo bridge for the lidar sensors and their orientation
* Update src/modules/simulation/gz_bridge/GZBridge.cpp
Co-authored-by: Jacob Dahl <37091262+dakejahl@users.noreply.github.com >
* Update src/modules/simulation/gz_bridge/GZBridge.hpp
Co-authored-by: Jacob Dahl <37091262+dakejahl@users.noreply.github.com >
* update submodule
---------
Co-authored-by: Jacob Dahl <37091262+dakejahl@users.noreply.github.com >
2024-11-13 08:44:19 +01:00
Ramon Roche
1e23f25560
ci: test ubuntu 22.04 in ci
...
* missing and updated dependencies
* setup: install zeromq for ubuntu 24.04
* cleans up ubuntu script
2024-11-12 22:09:37 -05:00
bresch
31bef770aa
replay: do not fail on first ignored topic
2024-11-12 21:22:25 -05:00
Matthias Grob
651552c9b8
Commander: avoid automatic type deduction where neither the type is obvious nor it helps with readability
2024-11-12 21:21:40 -05:00
Matthias Grob
990811098b
MulticopterRateControl: refactor torque setpoint naming
2024-11-12 21:21:40 -05:00
Daniel Agar
a2156244d3
uxrce_dds_client: CMakeLists.txt cleanup
...
- common variable for Micro-XRCE-DDS-Client
- don't mix tabs and spaces
- px4 module include all dependencies
2024-11-12 21:20:54 -05:00
Matthias Grob
b5d18c6131
Remove unused collision_report message
2024-11-12 21:18:57 -05:00
PX4 BuildBot
84ba95b496
Update submodule mavlink to latest Wed Nov 13 00:39:41 UTC 2024
...
- mavlink in PX4/Firmware (a793ddeac49e4251b329fc35f6e066c8d1d9b8f8): https://github.com/mavlink/mavlink/commit/b4add5292992cc43bd471b431b425338787982be
- mavlink current upstream: https://github.com/mavlink/mavlink/commit/e221d46d4631a5b6f1e91040cb1fe4b6fa91ea43
- Changes: https://github.com/mavlink/mavlink/compare/b4add5292992cc43bd471b431b425338787982be...e221d46d4631a5b6f1e91040cb1fe4b6fa91ea43
e221d46d 2024-11-06 benjinne - add rc_type_crsf (#2162 )
6ac99ca4 2024-11-06 Hamish Willee - Remove the imported headers for everything except common.xml (#2166 )
5f7fe504 2024-11-06 David Sastre - development.xml: First prototype for multi-GCS operation. (#2158 )
2024-11-12 21:17:32 -05:00
João Mário Lago
b7d1698433
drivers: magnetometer: mmc5983ma: Add SPI support ( #23925 )
2024-11-12 10:21:58 -09:00
RomanBapst
2f69f3fc2e
mode_requirements: require only relaxed local position for auto land, in order
...
to enable auto land with optical flow
Signed-off-by: RomanBapst <bapstroman@gmail.com >
2024-11-12 15:24:25 +01:00
Niklas Hauser
0879f67cc3
manifest: Add Skynode S baseboard
2024-11-12 13:32:33 +01:00
Alexander Lerach
1b3f50ef42
Added interrupt pin selection to BMI088 ( #23926 )
...
* Added interrupt pin selection to BMI088
* Fixed typo
2024-11-12 13:26:59 +01:00
Vincent Poon
1b163b5e4d
Update KakuteH7 mini board_id in hw_config.h
...
Update KakuteH7 mini board_id in hw_config.h
2024-11-12 11:48:34 +13:00
chfriedrich98
233963b2d5
ackermann: deprecate RA_MISS_SPD_DEF and update airframe default params
2024-11-11 16:40:27 +01:00
chfriedrich98
0ee580f139
ackermann: fix PID implementation
2024-11-11 16:40:27 +01:00
chfriedrich98
4f00df60ae
differential: add slew rates for setpoints, deprecate RD_MAN_YAW_SCALE and update airframe tuning
2024-11-11 14:44:10 +01:00
Alexander Lerach
fbbfcdb7a6
uxrce_dds_client - Fix nullptr access in certain cleanup situations ( #23913 )
...
* Only close initialized objects
* Added err log in case of no ping
* Added err log in case of timesync timeout
2024-11-11 14:23:46 +01:00
Alexander Lerach
3e3151c047
Avoid septentrio setting wrong time ( #23920 )
2024-11-11 13:03:13 +01:00
Alvaro Fernandez
079b756f1b
VTOL: Added position feedback to backward transition braking controller( #23731 )
...
Instead of tracking a fixed deceleration setpoint during the backtransition we added here position feedback,
such that the vehicle comes to a stop latest at the current position setpoint. This reduces the risk of
overshooting the landing point.
If no position feedback/position setpoint is present the old logic still applies.
It further moves the braking controller to the FlightTaskTransition instad of doing it in
the VTOL attitude mode.
* vtol_type: added position feedback to backward transition
* FlgithTaskTransition: refactored backtransition deceleration/pitch setpoint computation
* FlightTaskTransition: minor improvements
* FlightTaskTransition: use .dot() consistently and remove unnecessary comments
Signed-off-by: Silvan Fuhrer <silvan@auterion.com >
---------
Signed-off-by: Silvan Fuhrer <silvan@auterion.com >
Co-authored-by: Silvan Fuhrer <silvan@auterion.com >
2024-11-11 11:53:28 +01:00
Alexander Lerach
f47719d397
Manual idle current setting ( #23914 )
...
* Added param to overwrite analog idle current measurement
* Fixed topic handling
2024-11-11 11:40:30 +01:00
Silvan Fuhrer
d206de0a58
imxrt_flexspi_nor_boot: add new line at end of file
...
Signed-off-by: Silvan Fuhrer <silvan@auterion.com >
2024-11-11 11:33:54 +01:00
alexklimaj
b35ec38dda
boards: ark fpv fix current adc
2024-11-09 21:13:25 -05:00
Silvan Fuhrer
0caf77ac15
ROMFS: remove Deltaquad VTOL airframe
...
Signed-off-by: Silvan Fuhrer <silvan@auterion.com >
2024-11-09 21:12:55 -05:00
Silvan Fuhrer
936767cb53
ROMFS: remove babyshark airframe
...
Signed-off-by: Silvan Fuhrer <silvan@auterion.com >
2024-11-09 21:12:55 -05:00
Andrew Brahim
834af98992
uavcan: support GNSS heading from relposheading with offset configurable in estimator
...
* uavcan: add GNSS heading from relposheading
* ekf2: new EKF2_GPS_YAW_OFF parameter to configure any offset in GNSS heading
Signed-off-by: dirksavage88 <dirksavage88@gmail.com >
Co-authored-by: Jacob Dahl <dahl.jakejacob@gmail.com >
2024-11-08 21:52:55 -05:00
Peter van der Perk
7f5bf9cf86
ci: add nxp tropic and s32k344 fmu target
2024-11-07 21:33:59 -05:00
Ramon Roche
fc3899a0d0
ci: disable fail fast for build targets job
2024-11-07 21:33:12 -05:00
bresch
651675fed0
ekf-yaw-est: do not store full S_inverse
2024-11-07 11:37:56 -05:00
bresch
7b04ea0dca
ekf-yaw-est: wrap_pi when updating yaw
2024-11-07 11:37:56 -05:00
bresch
3ad4b57315
ekf-yaw-est: do not reset when all weights collapse
...
The likelyhood can be really small when the innovation is suddenly
large. This can occur during a GNSS velocity glitch and shouldn't reset
the filter as it would bring it back to a really vulnerable state.
2024-11-07 11:37:56 -05:00
Julian Oes
d8be547b06
mavlink: drop acks early that aren't for us
...
This fixes an issue where we dropped acks that we should have sent out
just because the queue was clogged with acks that have nothing to do
with us and just happen to be sent to us. We should just ignore them and
not publish them to uORB.
2024-11-07 17:10:05 +13:00
Julian Oes
25e071e21d
mavlink: no acks for commands that aren't for us
...
We should not send out acks for commands that are not targetted at us.
This can confuse other MAVLink components and MAVLink commands just
don't scale that way, and it unnecessarily fills up our ack queue.
This was likely introduced to debug when MAVLink components were
implemented incorrectly sending commands to a wrong target.
The most we should do in this case is to print/log an info.
2024-11-07 17:10:05 +13:00
Peter van der Perk
b37a31b3a1
Tropic-community: Rename board
2024-11-06 17:28:35 -05:00
Peter van der Perk
80edb91c01
boards: tropic store param on sdcard
...
Tropic doesn't have a mtd, store param on sdcard instead
2024-11-06 17:28:35 -05:00
Peter van der Perk
5d29c7811b
imxrt: tone_alarm: Add FlexPWM based Tone alarm driver
2024-11-06 17:28:35 -05:00
Peter van der Perk
a7e4000861
rgbled_pwm: Change linker so we can make board specific override for led functionality
2024-11-06 17:28:35 -05:00
Peter van der Perk
df54caba1e
tropic: enable dshot
2024-11-06 17:28:35 -05:00
Peter van der Perk
8f2ede870e
tropic: fix system power
2024-11-06 17:28:35 -05:00
Peter van der Perk
5bec4d7aae
Initial support for Tropic VMU
2024-11-06 17:28:35 -05:00
Peter van der Perk
c6e86fdea0
Add Tropic teensy loader upload support
2024-11-06 17:28:35 -05:00
Claudio Chies
04b6412731
fixed the Parameter value so it corresponds to the DistanceSensor rotation enum
2024-11-06 16:22:11 +01:00
Jacob Dahl
ed3cac9122
tests: increase timeout for armable check
2024-11-05 21:13:10 -05:00
Alex Klimaj
ee79d4cdfc
boards: ark fpv change bootloader uart to telem1 ( #23898 )
2024-11-05 12:06:36 -09:00
bresch
aa5fdd3bb3
ekf2-rng-kin: allow invalidating at any vertical speed
...
The issue is that when the HAGL is low, the drone will usually
decelerate and then the check would run anymore. If the low HAGL
estimate is due to bad sensor readings (e.g.: reflections), it will be
stuck in that state.
2024-11-05 16:51:49 +01:00
Jacob Dahl
87b52ae6ee
Update platforms/nuttx/src/bootloader/stm/stm32_common/main.c
2024-11-05 06:59:47 -05:00
alexklimaj
7768dfda35
stm32 bootloader: use STM32_CPUCLK_FREQUENCY for systick_mhz
2024-11-05 06:59:47 -05:00
Peter Lichard
79bb30ce3d
fix(ftp): List empty directory ( #23638 )
2024-11-05 00:23:28 -09:00
Matthias Grob
d5103d71b9
simulator_mavlink: include headers from dialect specified for build ( #23844 )
...
Without this change the configured dialect would not get included
correctly in the simulator_mavlink module, only in the main mavlink module.
Configured using e.g. CONFIG_MAVLINK_DIALECT="development"
in e.g. boards/px4/sitl/default.px4board file.
2024-11-04 19:43:31 -09:00
Matthias Grob
c199a284f5
Fix output of param show -q XXX on NuttX shell ( #23793 )
...
* param: add a newline for the output of param show -q
Otherwise the output doesn't get flushed and doesn't show.
* param: remove deprecated PARAM_PRINT for QURT
We're not carrying platform defines in applications.
2024-11-04 19:30:21 -09:00
Hamish Willee
f032fdfd92
SDLOG_ALGORITHM - AES option not implemented ( #23816 )
...
* SDLOG_ALGORITHM - AES option not implemented
* Update src/modules/logger/params.c
Co-authored-by: Daniel Agar <daniel@agar.ca >
---------
Co-authored-by: Daniel Agar <daniel@agar.ca >
2024-11-04 19:22:31 -09:00
Potaito
098a3378cc
navigator: Fix RTL_TYPE 2 by reloading mission ( #23855 )
2024-11-04 19:19:59 -09:00
Jacob Dahl
f516b41b59
exclude vertiq submodule from make format ( #23889 )
2024-11-04 20:41:22 -07:00
benjinne
5001aab292
ina220 fix max current param name ( #23886 )
2024-11-04 16:00:06 -09:00
Alex Klimaj
a41a8e8924
boards: ark fpv add SCH16T ( #23883 )
...
* boards: ark fpv add SCH16T
* boards: ark fpv fix spi6
2024-11-04 09:00:41 -09:00
Konrad
613a4b682e
CI: add option to filter for boards in generate_board_targets
2024-11-04 09:46:49 -08:00
Konrad
e666b8ddfd
CI: make sure that the generate_board_targets includes all found targets
2024-11-04 09:46:49 -08:00
Jacob Dahl
c9f64aeea8
cannode: safety_button: fix compatibility with Ardupilot ( #23876 )
2024-11-02 11:39:44 -06:00
Silvan Fuhrer
9d33f8f3f0
Mission validity checks: make clear that MIS_DIST_1WP only warns, not invalidates
...
Signed-off-by: Silvan Fuhrer <silvan@auterion.com >
2024-11-01 16:19:19 +01:00
chfriedrich98
e8f8bc9af7
ackermann: add lateral acceleration setpoint, acro/position mode and updates to auto modes
2024-10-31 16:15:37 +01:00
chfriedrich98
6a7edac10d
ackermann: restructure module
2024-10-31 16:15:37 +01:00
RomanBapst
79ec39e561
removed unnecessary case
...
Signed-off-by: RomanBapst <bapstroman@gmail.com >
2024-10-31 15:39:01 +03:00
RomanBapst
02d344d9d9
FixedWingPositionControl: handle case where we go into descend mode
...
during the backtransition
Signed-off-by: RomanBapst <bapstroman@gmail.com >
2024-10-31 15:39:01 +03:00
myxxmikeyxx
6385ecd7dd
Update README.md
...
Fixed Simple typo
2024-10-31 13:31:25 +01:00
Julian Oes
b9bca9fa94
boards: Add Holybro H-Flow ( #23865 )
2024-10-30 13:42:03 -04:00
zhaosheng.tan
4b4a60b54c
boards: fixed board ap-h743v2 ADC_BATTERY_CURRENT_CHANNEL issue, the correct channel is 8.
2024-10-30 12:15:41 -04:00
bresch
d579fb540c
ekf2-terrain: do not consider negative hagl as valid
2024-10-30 12:14:43 -04:00
Alex Klimaj
4d1c65d722
boards: new ARK FPV FC ( #23830 )
...
* add new payload power switch (RC_MAP_PAY_SW)
2024-10-30 11:35:35 -04:00
Julian Oes
951c981d94
Tools: split by | or space to get all commands
...
This is required in the case where there are 3 commands on one line.
2024-10-30 07:30:29 +01:00
Julian Oes
6509e70306
gimbal: fix device flags for RC gimbals
2024-10-30 07:30:29 +01:00
Julian Oes
e320593983
SITL: forward gimbal messages
...
A gimbal user needs to be able to receive gimbal device messages such as
GIMBAL_DEVICE_INFORMATION. Therefore, we need to forward this MAVLink
instance.
2024-10-30 07:30:29 +01:00
Julian Oes
c0c412570d
gimbal: Fix deg/rad for angular rates
...
The command is in degrees, but the rest in radians.
Also, set roll to NAN, rather than 0 when not set.
2024-10-30 07:30:29 +01:00
Julian Oes
55ec6df751
gimbal: Add test command for angle rates
...
This is handy to test angular rate input, not just angles.
2024-10-30 07:30:29 +01:00
Michael Schaeuble
22950a94ec
Override vehicle attitude send to gimbals when HIL mode is enabled
...
The simulated attitude can disturb the gimbal estimator and lead to strange behavior of the gimbal. So, since the hardware is not moving in HIL/SIH, we fake a static attitude towards the gimbal.
2024-10-30 15:25:05 +13:00
Matthias Grob
219c9d6cb9
gimbal: handle angular_velocity setpoint stream timeout
...
The gimbal would otherwise continue to spin with whatever velocity was commanded
before the input connection was lost.
2024-10-30 15:12:08 +13:00
Matthias Grob
2bccb20ee6
gimbal: introduce timestamp of last setpoint update
...
To enable implementing a timeout when there's no new setpoint coming in.
2024-10-30 15:12:08 +13:00
Matthias Grob
d5f3e858e8
gimbal: refactor outputs to take current timestamp at the beginning
2024-10-30 15:12:08 +13:00
chfriedrich98
a3a83c718a
mecanum: add cruise control for position mode ( #23834 )
2024-10-29 16:43:42 +01:00
Matthias Grob
cac0133901
FlightTaskDescned: fix horizontal acceleration overriding vertical one
...
Also descend with more acceleration again to avoid the risk of ascending instead of descending because of a wrong hover thrust estimate.
2024-10-25 14:06:00 +02:00
Silvan Fuhrer
5a53190ed5
FW Position Control: handle invalid z or vz measurement in case of nav_state DESCEND
...
Signed-off-by: Silvan Fuhrer <silvan@auterion.com >
2024-10-25 14:06:00 +02:00
Silvan Fuhrer
c342f9baf7
Commander: remove mode_req_local_alt requirement from DESCEND
...
Signed-off-by: Silvan Fuhrer <silvan@auterion.com >
2024-10-25 14:06:00 +02:00
Matthias Grob
37190d4928
navigator: refactor naming of break instead of brake functions
2024-10-25 13:56:20 +02:00
Matthias Grob
b8a602414d
navigator land: don't project VTOL braking waypoint without global position
2024-10-25 13:56:20 +02:00
Silvan Fuhrer
b6eb8dbfd9
Navigator: land: set lat/lon fields of triplet to NAN if global position is not valid
...
Signed-off-by: Silvan Fuhrer <silvan@auterion.com >
2024-10-25 13:56:20 +02:00
Silvan Fuhrer
3b0dac6840
RTL: fix RTL time estimation ( #23807 )
...
* RTL Direct: fix rlt time prediction in final lanidng phase
It was previously checking if RTL was already running through
active(), which though actually is coming from the mission mode
that rtl_direct inherits from.
Signed-off-by: Silvan Fuhrer <silvan@auterion.com >
* RTL Direct: remove unnecessary active() check
As the method setRtlPosition() is anyway not called when RTL is active,
plus it checks the wrong thing, as it is the active() method from
the Mission mode.
Signed-off-by: Silvan Fuhrer <silvan@auterion.com >
* RTL Direct: remove unnecessary land_detector_sub.update()
It is already getting updated just before the .get()
Signed-off-by: Silvan Fuhrer <silvan@auterion.com >
* RTL time estiate: do not distinguish land from sink for MC
To avoid rtl time prediction jump when entering LAND phase due
to no correct handling of loiter altitude (LAND phase doesn't
have to start only when lower then RTL_DESCND_ALT).
Signed-off-by: Silvan Fuhrer <silvan@auterion.com >
* Revert "RTL Direct: remove unnecessary active() check"
This reverts commit d5165ba902e65839e792cc13197761c7f77748f9.
* Revert "RTL Direct: fix rlt time prediction in final lanidng phase"
This reverts commit 5af7c928fbf86d560dcd35dd9aea3e38f1e4c735.
* RTL: Make sure to call the initialilze function of the Navigator RTL modes
* RTL: use the navigator_mode run function instead of the on_xxx function directly
* RTL: Make sure that for vtol the right vehicle type is used for each RTL state
* RTL: move to loiter distance estimate should substract the loiter radius for fixed wing
* RTL: time prediction: do not assume VTOL is in FW at start of RTL
Signed-off-by: Silvan Fuhrer <silvan@auterion.com >
* RTL: time estimation: fix is_in_climbing_submode
Signed-off-by: Silvan Fuhrer <silvan@auterion.com >
* RTL: time estimation: subtract loiter radius from distance in rtl_direct_mission_land
Signed-off-by: Silvan Fuhrer <silvan@auterion.com >
* RTL direct: poll important topics also on_inactive such that time estimate is correct
Signed-off-by: Silvan Fuhrer <silvan@auterion.com >
* navigator rtl: fix setter spacing
* navigator rtl: check pointer before dereferencing
* RTL: only subract loiter radius when in FW
Signed-off-by: Silvan Fuhrer <silvan@auterion.com >
---------
Signed-off-by: Silvan Fuhrer <silvan@auterion.com >
Co-authored-by: Konrad <konrad@auterion.com >
Co-authored-by: Matthias Grob <maetugr@gmail.com >
2024-10-24 17:22:19 +02:00
Julian Oes
84bb6d1730
boards: add Septentrio GNSS drivers to 6XRT
2024-10-23 11:05:49 -04:00
Julian Oes
2e6356bb9f
boards: add Sepentrio GNSS drivers to 6C and 6X
2024-10-23 11:05:49 -04:00
Marco Hauswirth
0c451552c7
EKF2: add validity flags to global pos message ( #23787 )
...
Co-authored-by: Mathieu Bresciani <brescianimathieu@gmail.com >
2024-10-23 10:19:04 +02:00
Hamish Willee
808153b049
COM_THROW_SPEED - arm or start motors clarification ( #23822 )
2024-10-23 13:13:56 +11:00
Julian Oes
4d4c5ef7f3
boards: change board ID of KakuteH7 mini ( #23832 )
...
* boards: change board ID of KakuteH7 mini
Holybro would like to consolidate the board ID to what is used in
ArduPilot.
* boards: update KakuteH7mini bootloader
This is due to the board ID change.
2024-10-22 09:22:33 +13:00
Julian Oes
efbd01c3c2
Add IMU compatible for KakuteH7Mini ( #23831 )
...
Co-authored-by: jamming <jianbing.pan@holybro.com >
2024-10-22 09:22:16 +13:00
Jacob Dahl
965d5b3b95
dexi: parameters for airframe file ( #23780 )
...
* added missing parameters for dexi airframe
* dexi: EKF2_HGT_REF and MC_YAWRATE_MAX
2024-10-18 11:42:05 -06:00
Alexander Lerach
3b1d7e20da
Updated NuttX ref to include littlefs fix ( #23828 )
2024-10-18 17:07:02 +02:00
Daniel Agar
371a99c322
drivers/uavcan: subtree merge last working libuavcan (preserving history) ( #23819 )
...
- fully absorb the libuavcan submodule (renamed libdronecan to deconflict) up to our last good working commit and preserve all history (upstream libuavcan was broken and then marked deprecated)
- fixes https://github.com/PX4/PX4-Autopilot/issues/23727
- this puts us in a much better position to be able to evolve the library going forward ow that we have full control in tree
2024-10-17 16:20:19 -04:00
Vincent Poon
e2e435af7c
kakuteh7: enable EKF2 external vision
...
to make it consistent with kakuteh7v2/mini
https://github.com/PX4/PX4-Autopilot/pull/23803
2024-10-17 10:51:46 +02:00
Julian Oes
f55c3b890b
Tools: improve uploader output in scripts
...
When the px_uploader.py is used scripted, so without an interactive
shell, the progress bar doesn't update. Therefore, I suggest to print a
new line instead of a carriage return for the non-interactive shell
case.
2024-10-17 13:53:38 +13:00
Hamish Willee
b390d5876a
AUTOPILOT.capabilities includes gimbal manager protocol bit ( #23692 )
...
* AUTOPILOT.capabilities includes gimbal manager protocol bit
Sets MAV_PROTOCOL_CAPABILITY_COMPONENT_IMPLEMENTS_GIMBAL_MANAGER bit in AUTOPILOT.capabilities
* mavlink: update submodule
* mavlink: only set gimbal flag if gimbal param set
We should probably only set the flag if the gimbal manager is actually
set up using the MNT_MODE_IN parameter.
* mavlink: make param optional
If the gimbal module is not built in we don't have the MNT_MODE_IN
param, so we need to deal with that.
* gazebo-classic: update submodule
---------
Co-authored-by: Julian Oes <julian@oes.ch >
2024-10-17 08:41:38 +11:00
Daniel Agar
e59cc9afeb
drivers/uavcan: subtree merge last working libuavcan (preserving history)
...
- upstream libuavcan was broken and then marked deprecated, this fully absorbs the submodule (renamed libdronecan to deconflict) up to our last good working commit and all commit history is kept
- fixes https://github.com/PX4/PX4-Autopilot/issues/23727 (regression introduced in #23113 )
- this puts us in a much better position to evolve the library as needed now that we have full control
2024-10-16 13:31:17 -04:00
RomanBapst
a0e6f9cd70
commander: try to fix arm authorization spamming
...
Signed-off-by: RomanBapst <bapstroman@gmail.com >
2024-10-14 14:18:00 +03:00
Julian Oes
e3dd050c91
bootloader: robustify uploader detection
...
The bootloader can often get stuck parsing random MAVLink traffic,
thinking it had seen a GET_SYNC.
Therefore, this commits adds a two step check which requires a GET_SYNC
followed by a GET_DEVICE to make sure it's really an uploader script
talking to it, and not just random data.
2024-10-14 06:35:55 -04:00
Igor Mišić
b9942ad7e0
lib/mixer_module: remove unused param MOT_SLEW_MAX
2024-10-14 10:03:30 +02:00
Alexander Lerach
dbba9adb14
lib/rc/ghst: Added differentiation between GHST and CRSF ( #23805 )
2024-10-11 16:17:54 -04:00
Julian Oes
9031f44eba
kakuteh7v2/mini: enable EKF2 external vision
...
We can enable it given there is flash space available.
2024-10-11 13:41:59 -04:00
vertiq-luca
8b032d58d8
actuators/vertiq_io: module.yaml switched bit: values to 0-30 instead of starting at 32
2024-10-11 13:41:29 -04:00
Julian Oes
fd2b3aeec8
fmu-v6x: disable external baro ms5611 ( #23650 )
...
Otherwise, this will conflict with the MS5525DSO airspeed sensor.
2024-10-11 11:04:15 +13:00
Julian Oes
01888a3085
mavlink: fix SET_MESSAGE_INTERVAL parsing ( #23796 )
...
This fixes the SITL tests that fail in CI because we catch NAN as non
zero after cast to int. To fix this I've added the check whether they
are finite at all.
The checks for param5 and param6 would be a bit trickier because they
can be int or float, so I have omitted them for now.
2024-10-11 09:03:22 +13:00
Julian Oes
9557a2da45
CI: fix Python checks ( #23801 )
...
Now that ubuntu-latest has been pushed to Ubuntu 24.04, we need to fix
up the pip install.
While at it, we might as well pin to the ubuntu 24.04 version, so we
don't have this happen to use out of the blue again.
2024-10-11 09:01:51 +13:00
Silvan Fuhrer
34f65682ad
Commander: remove -local- from failsafe string to make it simpler to understand
...
Signed-off-by: Silvan Fuhrer <silvan@auterion.com >
2024-10-10 10:28:59 +02:00
Silvan Fuhrer
9cb12d8e8e
HealthAndArmingChecks: improve messaging for position estimate failure
...
Signed-off-by: Silvan Fuhrer <silvan@auterion.com >
2024-10-10 10:28:59 +02:00
Hamish Willee
da8827883f
Use target camera in image capture start/stop messages ( #23115 )
...
* Use target camera in image capture start/stop messages
* Add support for MAV_CMD_SET_CAMERA_SOURCE
* Add target ID for NAV_CMD_SET_CAMERA_MODE
* Run make format
2024-10-09 21:10:08 +13:00
Hamish Willee
66b9e60a49
MAV_CMD_SET_MESSAGE_INTERVAL reject non-zero values for unused params ( #23643 )
...
* MAV_CMD_SET_MESSAGE_INTERVAL reject non-zero values for unused params
* Remove data rate
* Replace rounding with addition of 0.5/0.5f
2024-10-09 21:08:49 +13:00
Matthias Grob
854086013c
SITL parameters: use low battery actions including RTL
...
I'm not sure why COM_LOW_BAT_ACT option 2 "Land mode"
was chosen I'd like to also test RTL when I lower the minimum battery percentage in simulation.
2024-10-08 18:49:23 +02:00
Matthias Grob
4a08ebafbc
failsafe: prevent immediate low battery failsafe for existing low battery state
...
This happens when BAT_CRIT_THR allows arming with a critical battery level. With this change it still fails the checks but only warns instead of doing the failsafe action because that would immediately land the vehicle before it has taken off.
2024-10-08 18:49:23 +02:00
Matthias Grob
7941310afd
batteryCheck: allow COM_ARM_BAT_MIN to be set lower than BAT_CRIT_THR
...
Which still allows to arm the vehicle even if it already has a critical battery level.
2024-10-08 18:49:23 +02:00
Matthias Grob
a5b17f14b0
batteryCheck: refactor to consistent parameter variable naming
2024-10-08 18:49:23 +02:00
Konrad
daf604b361
mavlink_mission: handle concurrent mission count messages
2024-10-08 15:34:51 +02:00
Konrad
7ec4c1419c
mavlink_mission: only accept a mission request list on an ongoing transfer, when it is the same partner
2024-10-08 15:34:51 +02:00
Konrad
b51ad07ed0
mavlink_mission: do not send the mission count if a new mission is detected since a receiver can now check this by changing mission ids in the MISSION_CURRENT stream
2024-10-08 15:34:51 +02:00
Konrad
1c62dda057
mavlink_mission: make sure send mission item error ack is send to the right sysid/compid
2024-10-08 15:34:51 +02:00
Konrad
b1d52e20c6
mavlink_mission: guard incoming misison item to be from the current transfer partner
2024-10-08 15:34:51 +02:00
DanielH
ee19691d95
fix mission sysid for mission_ack
2024-10-08 15:34:51 +02:00
Silvan Fuhrer
0d31226b1c
AirspeedSelector: enable sensor checks right after catapult launch
...
Airspeed sensor failures are crucial to catch early during catapult/hand launches,
as otherwise the large airspeed error can lead to the vehicle diving. Thus the
_in_takeoff_situation flag, which tells the validator when to enable the checks,
is already set to false when !landed and launched.
For runway takeoffs the logic in unchanged.
Signed-off-by: Silvan Fuhrer <silvan@auterion.com >
2024-10-08 13:16:17 +02:00
Alexander Lerach
936eb89edb
logger: fixed watchdog not logging, increased cycle trigger ( #23769 )
2024-10-08 09:53:55 +02:00
Matthias Grob
fd04ece6d4
geo: remove dependency on drv_hrt time driver
2024-10-07 14:24:18 +02:00
Daniel Agar
f971c0e617
ekf2: reduce bad acc probation time 10s->3s
2024-10-07 10:37:33 +02:00
Daniel Agar
9ddac762e3
ekf2: stricter GNSS vel rejected innovation override
...
- in the special case of bad vertical acceleration detected
(bad_acc_vertical) only allow overriding rejected GNSS 3D velocity
if horizontal innovations are accepted
2024-10-07 10:36:09 +02:00
Daniel Agar
9238656a33
ekf2: configurable velocity state constraint (EKF2_VEL_LIM)
...
- replace hardcoded 1000 m/s velocity state constraint with new EKF2_VEL_LIM parameter (default 100 m/s)
- new velocity limit also used for GPS checks and external vision velocity
2024-10-07 10:35:48 +02:00
Alexander Lerach
4215e20120
modules/time_persistor: new time persistor module to save time to persistent storage ( #23760 )
2024-10-04 15:44:49 -04:00
Ramon Roche
652bb82603
ci: Upload Artifacts to S3
...
- replaces metadata and deploy workflows
- move ci scripts under Tools/ci
2024-10-04 12:38:47 -04:00
Ramon Roche
8ae83a8197
ci: build all and deploy releases from tags
...
When you push a version tag (v1.15.0), this workflow will automatically
create a github release (as draft) and upload all the built artifacts
(*.px4 files).
Additionally, you can now also trigger this step manually using the
github actions view URL
https://github.com/PX4/PX4-Autopilot/actions/workflows/build_all_targets.yml
2024-10-04 12:38:47 -04:00
Marco Hauswirth
7d0e93b779
ekf2: always publish global position when origin has been set
2024-10-04 11:41:20 -04:00
Daniel Agar
ad28c5893b
flight_mode_manager: invalidate dist to bottom/ground on terrain reset
...
- this allows the terrain hold to simply reset on the next valid update
rather than trying to adjust the setpoints
2024-10-04 11:28:03 -04:00
Daniel Agar
34ee097f02
ekf2: tighten terrain validity requirements
...
- require valid fusion from a range finder or optical flow before
considering terrain valid again
2024-10-04 10:31:20 +02:00
PX4 BuildBot
5b85859bfe
Update submodule libevents to latest Wed Oct 2 12:39:22 UTC 2024
...
- libevents in PX4/Firmware (c4ab09d088798a97b80f2cb834b2345e26d485ea): https://github.com/mavlink/libevents/commit/9474657606d13301d426e044450c4f84de2221be
- libevents current upstream: https://github.com/mavlink/libevents/commit/7c1720749dfe555ec2e71d5f9f753e6ac1244e1c
- Changes: https://github.com/mavlink/libevents/compare/9474657606d13301d426e044450c4f84de2221be...7c1720749dfe555ec2e71d5f9f753e6ac1244e1c
7c17207 2024-08-21 Beat Küng - remove nlohmann json submodule and add header directly instead
ce60064 2024-08-16 Jonas Vautherin - Fix cmake_minimum_required
2024-10-02 15:09:53 -04:00
PX4 BuildBot
01445feacc
update all px4board kconfig
2024-10-02 15:09:29 -04:00
PX4 BuildBot
51702efe94
boards: update all NuttX defconfigs
2024-10-02 15:08:38 -04:00
PX4 BuildBot
98e2aaf5f0
Update submodule iq-module-communication-cpp to latest Wed Oct 2 12:39:13 UTC 2024
...
- iq-module-communication-cpp in PX4/Firmware (6c9c62f70c4c1b8e5b9703efc96919856465e65e): https://github.com/PX4/iq-module-communication-cpp/commit/a9b700d50bdd06a837c74750ac3c4760937333df
- iq-module-communication-cpp current upstream: https://github.com/PX4/iq-module-communication-cpp/commit/c488af4e8807de80739aa48efd2ea51614dd8195
- Changes: https://github.com/PX4/iq-module-communication-cpp/compare/a9b700d50bdd06a837c74750ac3c4760937333df...c488af4e8807de80739aa48efd2ea51614dd8195
c488af4 2024-08-13 Ben Quan - Merged in development (pull request #22 )
0e9f7cd 2024-08-06 Fred Kummer - Merged in feature/add-led-support (pull request #21 )
acf5be0 2024-08-05 Fred Kummer - Fix indent
c5ef8d9 2024-08-05 Fred Kummer - Fix green blue order
64d0654 2024-08-05 Fred Kummer - Fix indentation
833cef7 2024-08-05 Fred Kummer - Add led support headers
2024-10-02 15:08:20 -04:00
Daniel Agar
e08dc400a2
Jenkinsfile-compile remove non-existant zeroone_x6_rover target
2024-10-02 12:38:54 -04:00
bresch
6119b08ef4
mpc: reset integrators when controllers are not used
...
Starting with a non-zero integrator could appear as a strong disturbance
when engaging position mode.
2024-10-02 10:47:25 -04:00
Daniel Agar
19441a12da
fix Jenkinsfile-compile missing comma and sort list
2024-10-01 13:12:17 -04:00
bresch
dbf51da99e
ekf2: rework amsl to ellipsoid altitude conversion
2024-10-01 10:40:18 -04:00
bresch
5bfa6b3359
ekf2: remove redundant ned_origin_initialised flag
2024-10-01 10:37:20 -04:00
Marco Hauswirth
fe40ccd193
EKF2: publish wind after external wind init ( #23747 )
...
* publish wind after external wind init
* move ext-wind-init to estimator-interface
* Update src/modules/ekf2/EKF/estimator_interface.h
Co-authored-by: Mathieu Bresciani <brescianimathieu@gmail.com >
* Update src/modules/ekf2/EKF/estimator_interface.h
Co-authored-by: Mathieu Bresciani <brescianimathieu@gmail.com >
---------
Co-authored-by: Mathieu Bresciani <brescianimathieu@gmail.com >
2024-10-01 14:33:30 +02:00
Julian Oes
8aec2d7c9f
GPS: add velocity fields to Unicore
...
It looks like vertical velocity as well as velocity accuracy are not
available using NMEA, so we extract all velocities from the Unicore
ACRICA message instead.
2024-10-01 13:47:06 +13:00
Jacob Dahl
4e359f9552
set file descriptor to -1 after close() ( #23751 )
2024-09-30 13:22:46 -06:00
Mathieu Bresciani
28d960fc21
fix VehicleCommand.msg syntax
2024-09-30 13:42:50 -04:00
alexklimaj
602042dd5c
failure detector use per index esc current
2024-09-30 10:11:34 +02:00
Daniel Agar
332b7bec27
commander: ignore REQUEST_CAMERA_INFORMATION
...
- add answer command logging
2024-09-27 10:33:37 -07:00
Silvan Fuhrer
172948c5eb
FailsafeFlags: add comment where battery_warning is defined
...
Signed-off-by: Silvan Fuhrer <silvan@auterion.com >
2024-09-27 14:25:27 +02:00
Silvan Fuhrer
8fdf0931e5
Commander framework: only warn and do not re-start RTL if already in RTL
...
Signed-off-by: Silvan Fuhrer <silvan@auterion.com >
2024-09-27 14:25:27 +02:00
alexklimaj
73c4ff302e
boards: arkv6x remove CONFIG_COMMON_OPTICAL_FLOW
2024-09-26 14:13:20 -04:00
alexklimaj
a1944e26ec
boards: arkv6x add back sd_bench
2024-09-26 14:13:20 -04:00
tompsontan
63b44eac06
boards: add new board X-MAV AP-H743v2
2024-09-26 14:12:35 -04:00
Alexander Lerach
368bfc5643
boards/px4: v5x/v6x always start board_adc
2024-09-26 13:55:13 -04:00
Alexander Lerach
224aef142c
Retry logic in uxrce_dds_client startup ( #23723 )
...
* Added retries if uxrce_dds_client fails during setup
* Break timesync endless loop in case of agent reset
* ORB unsubscribe, to avoid too many open fails with multiple reconnects & format
* Added review feedback
2024-09-26 17:43:49 +02:00
Jacob Dahl
ba75b9c35e
platforms/nuttx: Serial change fsync to tcdrain
...
Calling serial::write() in quick succession was blowing away the previous buffer, fsync does not guarantee that data is transmitted on serial lines. On the other hand tcdrain waits until the output buffer is empty.
2024-09-25 12:18:05 -04:00
Liu1
b2c8f0539e
boards: add new cuav 7-nano
2024-09-25 11:47:35 -04:00
ZeroOne-Aero
1850cf5715
boards: new board support ZeroOne x6
2024-09-25 10:55:39 -04:00
Daniele Pettenuzzo
35239c48a2
Board: Fix fmu rc_input on v5x and v6x ( #23175 )
...
Co-authored-by: Niklas Hauser <niklas@auterion.com >
2024-09-25 15:57:46 +02:00
chfriedrich98
0e65679c9e
Mecanum rover: add dedicated module for mecanum rovers ( #23708 )
2024-09-25 09:35:41 +02:00
Silvan Fuhrer
43509b5cff
Update README.md - add Christian as rover maintainer ( #23719 )
2024-09-24 18:09:30 +02:00
vertiq-jordan
06dfc4b782
drivers/actuators: new vertiq_io driver ( #22892 )
...
* brought in the Vertiq Cpp API as a submodule. updated the serial rx handling so that we can parse out IQUART data packets
---------
Co-authored-by: Luca Scheuer <scheuer.luca@gmail.com >
2024-09-24 11:44:35 -04:00
Ramon Roche
5ffe9c6de4
drivers/gnss/septentrio: disable default assignment of GPS1
2024-09-24 11:24:34 -04:00
bresch
35efe44a6b
ekf2: fusion always succeeds, do not return boolean
2024-09-24 10:48:14 -04:00
bresch
23f343aa3a
ekf2-rng: consider height covariance for terrain reset to range
...
Range does not provide a direct terrain observation but a measurement
relative to the height state. Correlation between height and terrain
must be set properly.
2024-09-24 10:18:25 -04:00
Nicolas MARTIN
d269ddfb49
sensors/vehicle_air_data: fix air data publication rate ( #23717 )
...
Co-authored-by: Nicolas Martin <n.martin@elistair.com >
2024-09-24 09:49:47 -04:00
Marco Hauswirth
454ded1b25
EKF2: ev-vel refactoring ( #23577 )
2024-09-24 14:09:11 +02:00
muramura
21a2350eca
version: Change this IF statement to a SWITCH statement
2024-09-24 10:27:12 +02:00
Matthias Grob
f60bb2c6bc
rtl_direct: skip loiter altitude items for multicopter without RTL land delay ( #23689 )
...
This was already done before the refactor and was assumed to not be necessary.
The problem is that these mission items result in a strang looking vertical slow down directly followed
by an acceleration during the landing phase.
2024-09-23 18:33:03 +02:00
Ramon Roche
e0f8642d26
ci: try upload-artifacts@v3
2024-09-23 12:21:29 -04:00
Marco Hauswirth
8afd267509
move more ekf function implementations to cpp
2024-09-23 12:18:41 -04:00
Marco Hauswirth
e3f138862a
move implementation of updateAidSrcStatus to cpp file, saves flash
2024-09-23 12:18:41 -04:00
Andrew Brahim
b41811b145
SF45 fixes to restart the state machine if sensor does not init correctly ( #23565 )
...
* fixes to restart the state machine if sensor does not init correctly
Signed-off-by: dirksavage88 <dirksavage88@gmail.com >
* fixes
Signed-off-by: dirksavage88 <dirksavage88@gmail.com >
* increase fail count
Signed-off-by: dirksavage88 <dirksavage88@gmail.com >
* remove extra flush, switch from warn to debug, add enum states for sensor bring-up
Signed-off-by: dirksavage88 <dirksavage88@gmail.com >
* remove dead code, decrease restart fail count metric, break out of loop with consec errors if over the fail count and not init
Signed-off-by: dirksavage88 <dirksavage88@gmail.com >
---------
Signed-off-by: dirksavage88 <dirksavage88@gmail.com >
2024-09-23 16:35:35 +02:00
bresch
15ddd94349
ekf2: move implementation to ekf_helper to reduce flash usage
...
saves about 4.8kB of flash on FMUv5
2024-09-23 10:27:42 -04:00
Konrad
c20c1f09a6
RTL_DIRECT: explicitely set force heading in loiter hold if needed
2024-09-23 11:02:02 +02:00
Konrad
02e50bb5dc
rtl_direct: loiter hold should track altitude as best effort but not enforce it
2024-09-23 11:02:02 +02:00
Silvan Fuhrer
cacbfcecd8
aiframes: remove setting of CBRK_IO_SAFETY to enabeld, as that's already the param default ( #23702 )
...
Signed-off-by: Silvan Fuhrer <silvan@auterion.com >
2024-09-23 09:10:02 +02:00
Alexander Lerach
dff775a0a7
Implemented AUAV absolute/differential pressure sensor support ( #23656 )
...
* Added AUAV absolute pressure sensing
* Moved func to abstract base class
* Probe and params
* Fixed arg parsing and added auto start
* refactorings
* Added sample perf
* Fixed CI findings
* Simplified rc.sensors condition
2024-09-20 16:40:45 +02:00
Stefano Colli
b1c2cf7c88
GZ Advanced Plane: improved rate/TECS tuning ( #23700 )
...
* GZ_Advanced_Plane: Improve rate tuning
* GZ_Advanced_Plane: Remove unnecessary default params
* GZ_Advanced_Plane: Improve tecs tuning
2024-09-20 16:15:57 +02:00
caijie
11d370823b
NuttX with mtd:ramtron MB85RS256B address length is 2 backport
2024-09-20 06:16:34 -04:00
Alvaro Fernandez
2ecffff700
fw_tecs: Support tighter altitude tracking during low-height flight ( #23519 )
...
* fw_tecs: Support tighter altitude tracking during low-height flight. Added FW_T_THR_LOW_HGT defining low-height flight threshold
* tecs: Applied smoothed-out altitude TC transition to landings
* fw_tecs: modified tighter altitude control for low-height implementation
* addressed PR comments
* addressed PR comments
---------
Co-authored-by: Silvan Fuhrer <silvan@auterion.com >
2024-09-19 16:24:53 +03:00
BazookaJoe1900
4d83badba1
fix files tags on the header comments ( #23564 )
2024-09-19 09:25:18 +03:00
Connor Walker
d01a3d8f04
Fix duplicate entry in gz_worlds list ( #23691 )
2024-09-18 16:36:48 -08:00
Daniel Agar
e4dd3f2871
boards/px4/fmu-v5: stackcheck remove FW modules (flash overflow)
2024-09-18 11:34:48 -04:00
Matthias Grob
555b2e6abc
BatteryStatus: Clarify "incompatible voltage" error message
2024-09-18 17:18:02 +02:00
Claudio Chies
ab41927bbd
SIM: GZ: Added mono_cam_down and aruco world ( #23687 )
2024-09-18 15:16:27 +02:00
Claudio Chies
5d2e7c8748
Misc: Matrix: Added Addition and Subtraction to Slices ( #23679 )
...
* Added Addition and Subtraction to Slices
* MatrixSliceTest: refactor Addition/Substraction checks
* Slice: replace operations returning a Matrix with calling the existing Matrix function
---------
Co-authored-by: Matthias Grob <maetugr@gmail.com >
2024-09-18 11:17:37 +02:00
Marco Hauswirth
4a99a51fb1
update upload-artifact v2->v4
2024-09-17 10:55:00 -07:00
chfriedrich98
8aece9bff2
differential: fix CI issue
2024-09-17 09:34:51 -07:00
chfriedrich98
2fd4150b38
differential: Add stabilized and position mode ( #23669 )
...
* differential: add position and stabilized mode
* differential: add hardcoded stick input deadzones
2024-09-16 12:09:51 +02:00
chfriedrich98
81747f35bb
rover: add descend navigation state to land detection
2024-09-16 09:36:38 +02:00
Silvan Fuhrer
1c9c5e51c2
boards: cuav x7pro: remove build of ROVER and Q_ATTITUDE_ESTIMATOR to save flash
...
Signed-off-by: Silvan Fuhrer <silvan@auterion.com >
2024-09-16 09:11:23 +02:00
Konrad
82a7d0410c
DistanceSensorModeChangeRequest: renaming of variable
2024-09-16 09:11:23 +02:00
Konrad
aab2390e51
navigator: publish distance sensor mode change request when in RTL landing phase or during mission landing
2024-09-16 09:11:23 +02:00
Konrad
1755b8304e
RTL direct: Make sure the _rtl_state captures the current status and not the next one
2024-09-16 09:11:23 +02:00
Konrad
e6f07bde2a
lightware_laser: add option to listen to system to enable/disable distance sensor
2024-09-16 09:11:23 +02:00
Silvan Fuhrer
9ca0630376
airframes: SIH_tailsitter: add SENS_DPRES_OFF to bypass airspeed cal
...
Signed-off-by: Silvan Fuhrer <silvan@auterion.com >
2024-09-13 15:53:52 +03:00
RomanBapst
11440cfb45
added some default parameteter that allow the transition to complete
...
Signed-off-by: RomanBapst <bapstroman@gmail.com >
2024-09-13 15:53:52 +03:00
RomanBapst
878c8bfcce
SIH: fix airspeed for tailsitter
...
Signed-off-by: RomanBapst <bapstroman@gmail.com >
2024-09-13 15:53:52 +03:00
Konrad
4713a6737e
TECS: ramp up fast descend over 2_s to ramp down the throttle command
2024-09-13 14:04:39 +02:00
Konrad
585c92796d
mission_base: do not make terrain avoidance check when mission is not run anymore
2024-09-13 13:59:24 +02:00
Claudio Chies
4ba4b340cc
Reduce the orbit jerk by using a slew rate
2024-09-13 10:28:42 +02:00
Marco Hauswirth
22c2878cf8
send acknowledgement after receiving vehicle wind cmd
2024-09-12 09:34:08 +02:00
chfriedrich98
741ea6b707
differential: add individual parameters for speed and yaw rate feedforward
2024-09-11 13:57:27 +02:00
chfriedrich98
5d8a107925
differential: fix closed loop control
...
removed thresholds for closed loop setpoints and added minimum thresholds for yaw rate and speed measurements instead to avoid moving due to measurement noise
2024-09-11 13:57:27 +02:00
Roman Bapst
c94c1ce4d2
Navigator: Support straight line mission landings ( #23576 )
...
* introduced altitude acceptance radius in position setpoint for fixed
wing guidance
- allows navigator to explicitly set the altitude acceptance radius
- needed for staright line landing support
* added ignore_alt_acceptance to position setpoint message to allow guidance
logic to ignore altitude error on waypoint
- can be useful to prevent loitering at a waypoint within a mission landing sequence
* only set altitude acceptance radius to infinity for a waypoint inside a mission landing
for fixed wing vehicles
* navigator: return altitude acceptance radius from triplet if it's valid
* FixedWingPositionControl: check if alt acceptance radius provided in position setpoint
is larger 0
---------
Signed-off-by: RomanBapst <bapstroman@gmail.com >
Co-authored-by: Alvaro Fernandez <alvaro@auterion.com >
2024-09-10 17:44:24 +02:00
Mathieu Bresciani
03aec2e188
HeadingSmoothing: fix angle wrapping and add unit tests
...
Co-authored-by: Matthias Grob <maetugr@gmail.com >
2024-09-10 15:06:19 +02:00
jmackay2
a5729da4e9
Simplify gz bridge CMakeLists and add GZ Ionic ( #23657 )
...
Co-authored-by: jmackay2 <jmackay2@gmail.com >
2024-09-10 11:53:00 +02:00
bresch
15e9c65a8f
dist-sensor: reduce enum names
2024-09-09 15:40:40 +02:00
bresch
8bca467c15
dist-sensor: use enum instead of integer
2024-09-09 15:40:40 +02:00
chfriedrich98
bb0210ecd7
rover: add rtl as a landed condition for rovers ( #23646 )
...
The RTL sequence from the navigator requires the vehicle to land. This is now handled for rovers by setting its state to landed if it is within the acceptance radius of the home position when in return mode.
2024-09-06 17:21:49 +02:00
Hubert
67ee4817ae
Makefile add micoair h743 bootloader
2024-09-06 11:14:30 -04:00
Hubert
232f699a7f
cmake-variants.yaml add micoair h743
2024-09-06 11:14:30 -04:00
Hubert
c2bd3900be
Jenkins: compile add micoair h743
2024-09-06 11:14:30 -04:00
Marco Hauswirth
44967bdaab
ekf2: uncorrelate position covariance after velocity reset ( #23644 )
2024-09-06 08:51:15 -04:00
RomanBapst
1337fca4d0
vtol backtransition: removed downscaling of fw controls during the backtransition
...
Signed-off-by: RomanBapst <bapstroman@gmail.com >
2024-09-06 13:55:48 +03:00
Alexander Lerach
3d36c8519d
drivers/power_monitor: Implement temperature sensor support for INA228 / INA238
2024-09-05 23:09:01 -04:00
Matthias Grob
f98eb067be
logger params: clarify AUX1 logging trigger
2024-09-05 18:06:29 +02:00
Matthias Grob
e4d25df58a
Consistently use "stick gesture" for "rc stick gesture"
2024-09-05 18:06:29 +02:00
Silvan Fuhrer
8eaf93468e
Commander: feedback string for arming/disarming: make clear when from gesture
...
Signed-off-by: Silvan Fuhrer <silvan@auterion.com >
2024-09-05 18:06:29 +02:00
Silvan Fuhrer
d967cdbb48
Manual control: rename SOURCE_RC_STICK_GESTURE to SOURCE_MANUAL_CONTROL_GESTURE
...
Signed-off-by: Silvan Fuhrer <silvan@auterion.com >
2024-09-05 18:06:29 +02:00
Silvan Fuhrer
556a302a09
Logger: replace RC keyword by 'manual control'
...
Signed-off-by: Silvan Fuhrer <silvan@auterion.com >
2024-09-05 18:06:29 +02:00
Silvan Fuhrer
f7c35291ee
Rover Differential: remove RC keyword from params
...
Signed-off-by: Silvan Fuhrer <silvan@auterion.com >
2024-09-05 18:06:29 +02:00
Silvan Fuhrer
81cf6a736d
Commander: add VEHICLE_CMD_EXTERNAL_POSITION_ESTIMATE to list of externaly handled commands ( #23642 )
...
Signed-off-by: Silvan Fuhrer <silvan@auterion.com >
2024-09-05 11:20:39 +02:00
Silvan Fuhrer
6fa6360aef
Commander: always allow to switch to LAND mode ( #23580 )
...
Special handling for LAND mode: always allow to switch into it such that if used
as emergency mode it is always available. When triggering it the user generally wants
the vehicle to descend immediately, and if that means to switch to DESCEND it is fine.
Signed-off-by: Silvan Fuhrer <silvan@auterion.com >
2024-09-03 18:10:37 +02:00
Konrad
80d4fad624
DistanceSensorCheck: do not raise a distance sensor failure if the SFXX_MODE is set to 2 and we are in a VTOL FX flight phase
2024-09-03 15:53:09 +02:00
chfriedrich98
a9cdb36d7c
differential: reset integrators when disarmed ( #23637 )
2024-09-03 09:31:39 +02:00
Julian Oes
8f6ce4edbf
mavlink/lib: move open_drone_id helpers to mavlink
...
I could not extract the open_drone_id helpers to a separate lib because
it would require the mavlink headers while the mavlink library would
also depend on it, so it ended up being a circular dependency.
Instead, I'm now just using the headers from within the mavlink module
as well as from the uavcan driver.
2024-09-02 16:20:10 +12:00
Julian Oes
b7c5ba1752
boards: make flash space for remote ID over DroneCAN
2024-09-02 16:20:10 +12:00
Julian Oes
cd63cfed3a
remoteid: implement System as sent from GCS
...
This will send the System message if it is already being sent by a ground
station. Otherwise, it will assemble the message itself using the
takeoff/home location.
2024-09-02 16:20:10 +12:00
Julian Oes
7d1d398984
remoteid: add SelfID message
2024-09-02 16:20:10 +12:00
Julian Oes
04ea4f9b3a
uavcan: add OpenDroneID ArmStatus, operator ID
...
In order to have operator ID be sent by QGC, we need to forward
ArmStatus from the remote ID module (here on DroneCAN) to MAVLink.
2024-09-02 16:20:10 +12:00
Julian Oes
d999258171
uavcan: implement OpenDroneID System
2024-09-02 16:20:10 +12:00
Julian Oes
de00c23e19
uavcan: implement OpenDroneID Location
2024-09-02 16:20:10 +12:00
Julian Oes
cf19764d75
uavcan: implement OpenDroneID BasicID
...
Signed-off-by: Julian Oes <julian@oes.ch >
2024-09-02 16:20:10 +12:00
Julian Oes
87a63e75be
mavlink: extract OpenDroneID function to lib
...
This extracts the function mapping from MAV_TYPE to MAV_ODID_UA_TYPE to
the library, so that it can be re-used later by the remote ID
implementation over DroneCAN.
Signed-off-by: Julian Oes <julian@oes.ch >
2024-09-02 16:20:10 +12:00
Julian Oes
4c63e9e4f9
libuavcan: update DroneCAN submodule
...
Signed-off-by: Julian Oes <julian@oes.ch >
2024-09-02 16:20:10 +12:00
Marco Hauswirth
7dcea6b2e4
EKF2: range measurement rejection in rain/fog ( #23579 )
2024-08-30 17:25:56 +02:00
Benjamin Perseghetti
787fe9590d
Fix typo where 22.04 still says Gz (Garden) ( #23632 )
...
Signed-off-by: Benjamin Perseghetti <bperseghetti@rudislabs.com >
2024-08-29 20:42:56 +02:00
Daniel Agar
5b0014cb06
ekf2: remove legacy accel z bias checks ( #23341 )
...
Co-authored-by: Mathieu Bresciani <brescianimathieu@gmail.com >
2024-08-29 11:51:27 -04:00
chfriedrich98
f8188f0981
differential: update module ( #23629 )
...
Improve the slow down effect and add support for speed change in mission mode.
Seperate code related to turning setpoints into motor commands into its own folder and refactor code.
2024-08-29 15:27:08 +02:00
Silvan Fuhrer
c86d44f831
Commander: remove 2 decimals from COM_FAIL_ACT_T
...
Signed-off-by: Silvan Fuhrer <silvan@auterion.com >
2024-08-29 10:56:04 +02:00
Silvan Fuhrer
6b3e3aa363
Commander: improve param description of COM_POSCTL_NAVL and rename Manual-->Stabilized
...
Signed-off-by: Silvan Fuhrer <silvan@auterion.com >
2024-08-29 10:56:04 +02:00
Mathieu Bresciani
2cda0efd84
Commander: extend COM_ARM_WO_GPS to disable warning ( #23628 )
2024-08-28 17:33:58 +02:00
Jacob Dahl
0f1507c24e
[gz] X500 mono_cam_down and aruco world ( #23450 )
...
* x500 mono cam down and aruco world
* remove duplicate line
2024-08-28 17:23:39 +02:00
bresch
bab256bfe6
ekf2: handle external altitude resets
2024-08-28 11:02:26 +02:00
bresch
cd2170deea
ekf2-origin: backcompute based on lpos validity
2024-08-28 11:02:26 +02:00
bresch
130fefb1e7
ekf2: initialize origin from corrent position when possible
2024-08-28 11:02:26 +02:00
bresch
af752536b9
ekf2: extract setting origin from current lat/lon/alt
...
This is not only needed when GNSS is available but also for other global
sources of position (e.g.: aux global pos and manual pos updates)
2024-08-28 11:02:26 +02:00
bresch
9169a7c5fc
ekf2: split horizontal and vertical origin reset
...
Allow partial resets (only lat/lon or only altitude)
2024-08-28 11:02:26 +02:00
Daniel Agar
f3d58cdf10
ekf2: resetFlowFusion() pass flowSample by const ref
2024-08-27 10:38:17 -04:00
Daniel Agar
6c24413888
ekf2: filter flow vel (used for flow velocity reset)
...
- individual flow samples can be quite erratic
2024-08-27 10:38:17 -04:00
dagar
5ff4eea870
[AUTO COMMIT] update change indication
2024-08-27 16:16:55 +02:00
Daniel Agar
ac48b8b51d
ekf2: mag declination fusion always if there is no aiding
2024-08-27 16:16:55 +02:00
Daniel Agar
2a9e205442
ekf2: fuseDeclination respect mag update_all_states
...
- when both mag_hdg/mag_3d are inactive we should be able to continue
updating mag without any possible impact on other states
2024-08-27 16:16:55 +02:00
Daniel Agar
9d57a3c02f
ekf2: split resetMagCov() and skip mag reset if negligible change
2024-08-27 16:16:55 +02:00
Daniel Agar
bbcf741e9e
ekf2: make mag control responsible for WMM
...
- this further untangles mag control (which requires the WMM) from GPS
2024-08-27 16:16:55 +02:00
sbtjagu
be4d0d351c
ackermann: add speed waypoint support and fix delay detection ( #23572 )
2024-08-27 13:35:48 +02:00
jmackay2
5fff1ad6d1
Fix spelling of airflow sensor msg comments
2024-08-27 09:23:43 +02:00
Jukka Laitinen
f67eb6989d
mavlink: Fix ESC_STATUS sending for batches > 1
...
The indexing was wrong for esc_status sending for ESCs 4->
Signed-off-by: Jukka Laitinen <jukkax@ssrc.tii.ae >
2024-08-26 15:06:55 -04:00
LucaS
ca47f6f016
lib/mixer_module: added a constant instance start so that when instance start is changed in actuator yaml files they parameters are able to be used ( #23616 )
...
Co-authored-by: Luca Scheuer <luca.scheuer@iq-control.com >
2024-08-26 14:51:09 -04:00
Ramon Roche
16c77be7c0
tests: loosen radius of vtol rtl landing pos check
2024-08-26 14:05:17 -04:00
Daniel Agar
a75db1286d
logger: automatically limit buffer size to largest available free chunk (NuttX only)
2024-08-26 13:24:39 -04:00
Silvan Fuhrer
8bfd3b0f62
platforms/nuttx/init/stm32f7: rc.board_arch_defaults reduce LOGGER_BUF to 40
...
To get some breathing space on setups with memory-intensive components (e.g. UAVCAN).
Signed-off-by: Silvan Fuhrer <silvan@auterion.com >
2024-08-26 13:13:11 -04:00
bresch
9183c479a5
ekf2: correctly compute vel variance from flow variance
...
Co-authored-by: Marco Hauswirth <marco.hauswirth@auterion.com >
2024-08-26 11:28:36 -04:00
Claudio Chies
1a4e8a7341
FLOW: PARAM: GCS Parameter readability
2024-08-26 16:09:21 +02:00
SuddenDeath
510d3cfb39
gz: Fix endless wait for gazebo on different worlds ( #23613 )
...
Co-authored-by: your-sudden-death <noreply@pm.me >
2024-08-24 17:15:41 +02:00
Daniel Agar
ebbb880e92
ekf2: always use corrected accel/gyro for filtered metrics
2024-08-23 17:35:59 -04:00
Daniel Agar
56560726d3
ekf2: sensor simulator fix GPS replay scaling
2024-08-23 14:35:05 -04:00
Daniel Agar
d7b165991f
cmake: relax git tag requirements
...
- default to v0.0.0 if tag isn't available
- src/lib/px_update_git_header.py use same PX4_GIT_TAG as cmake
- update lingering master branch references to main
2024-08-23 12:05:34 -04:00
Ramon Roche
54f7b58007
Commander: lock down mav sys and comp id
...
- keeps them as local params at init
- only allow to set at init
2024-08-23 11:19:25 -04:00
bresch
1a0f97ebbd
ekf2-fake pos: add valid fake position fusion
...
This is similar to fake pos but is only used when the ekf has an
external information telling it that the vehicle is not changing
position. This information can then be used to keep a valid local
position even when the vehicle isn't exactly at rest.
2024-08-23 11:17:21 +02:00
bresch
64b0586dad
ekf2: return validity based on dead-reckoning time only
2024-08-23 11:17:21 +02:00
David Sidrane
cf941b18df
Nuttx with stm32h7: STM32H7X5XX selects hardware files backport
2024-08-23 05:12:28 -04:00
jfbblue0922
13c413622b
Nuttx with stm32h7: STM32H7X5XX selects hardware files backport
2024-08-23 04:48:20 -04:00
Jaeyoung Lim
b1dfe1d731
Update gz version to harmonic
2024-08-22 21:37:00 -04:00
Ramon Roche
00c3017334
ci: add note regarding RunsOn
2024-08-22 12:06:50 -04:00
Ramon Roche
89f29e91de
ci: slow down sitl test realtime
2024-08-22 12:06:50 -04:00
Ramon Roche
7f33dcfcfb
ci: upgrade sitl mavsdk tests workflow
2024-08-22 12:06:50 -04:00
Jaeyoung Lim
d617bf4129
simulation/gz_bridge: Fix build issues with unused variable
2024-08-22 11:48:46 -04:00
Daniel Agar
7250ee1b32
ekf2: organize gyro_bias/accel_bias param yaml
2024-08-22 10:56:16 -04:00
Daniel Agar
ebbd2c1825
ekf2: organize aid source parameters
2024-08-22 10:56:16 -04:00
Claudio Chies
ee022a70c1
Navigator: Land: Improve it for VTOL by taking breaking distance into account ( #23566 )
...
* vtol adjust landing setpoint
* improve comment
Co-authored-by: Silvan Fuhrer <silvan@auterion.com >
---------
Co-authored-by: Silvan Fuhrer <silvan@auterion.com >
2024-08-22 14:10:36 +02:00
Silvan Fuhrer
e0bb56b6a7
Commander: Failsafe: set clear condition for action Land like for RTL ( #23569 )
...
For many failsafes, it is possible to select RTL and Land as actions.
In this commit I synchronize the clear condition for these two action
options, to always only clear on Disarm or manual mode change.
Reasoning is that for the user RTL and Land is a similar action and
I would thus expect them to be as similar as possible. And I in general
would rather not clear a failsafe state instead of too often clearing it.
Example: GF failsafe with action Land --> even if the drone is marginally
within the GF again, I want it to proceed with the Landing unless
I manually intervene.
Signed-off-by: Silvan Fuhrer <silvan@auterion.com >
2024-08-22 14:03:24 +02:00
Silvan Fuhrer
6ef82ada6e
Navigator: make sure VTOL transitions in Descend mode are alays triggered ( #23578 )
...
It previously didn't catch switches to Descend from a manual mode,
as both modes have navigation_mode_new=nullptr.
Signed-off-by: Silvan Fuhrer <silvan@auterion.com >
2024-08-22 14:02:32 +02:00
Konrad
20b6f343a3
mission_base: make sure all mission_items during landing phase have yaw set to NaN
2024-08-22 12:58:44 +02:00
ZeroOne-Aero
02ed1162ed
Update pab_manifest.c ( #23594 )
...
* Update pab_manifest.c
I have rebased on main and squash my commits into 1.
* Update pab_manifest.c
I have updated pab_manifest.c:
// BASE ID 0x150 ZeroOne Pixhawk Baseboard Alaised to ID 0
{HW_BASE_ID(0x150), base_configuration_0, arraySize(base_configuration_0)}, // ZeroOne Pixhawk Baseboard ver 0x150
2024-08-22 04:02:02 -04:00
jmackay2
b33b0398dd
Fix param typo in quadtailsitter airframe ( #23588 )
2024-08-22 10:30:10 +10:00
Jaeyoung Lim
ae16556107
simulation/gz_bridge: follow model in gz GUI ( #22808 )
2024-08-21 11:41:47 -04:00
Ramon Roche
b2f663648e
ci: github actions runs-on Dronecode AWS Infra
...
* ci: try runs-on Dronecode Infra
* ci: comment on how to disable RunsOn
* Update .github/workflows/build_all_targets.yml
2024-08-21 10:56:37 -04:00
KonradRudin
3478765c31
Navigator: MissionFeasibilityCheck: Rework 1st waypoint check ( #23568 )
...
* FeasibilityChecker: only warn when first waypoint is too far, but still accept mission as valid
* feasiblityChecker: make distance to first waypoint check against home position instead of current position, so it is more constant during a flight
* Apply suggestions from code review
Co-authored-by: Silvan Fuhrer <silvan@auterion.com >
* feasibilityCheckerTest: update tests to not fail for first waypoint check
* feasibilityChecker: make comment for 1stwaypointcheck event
* Feasibility check unit test: fix comment
Signed-off-by: Silvan Fuhrer <silvan@auterion.com >
---------
Signed-off-by: Silvan Fuhrer <silvan@auterion.com >
Co-authored-by: Silvan Fuhrer <silvan@auterion.com >
2024-08-21 09:08:36 +02:00
Jaeyoung Lim
f252e20eae
Revert "Update GZBridge to be able to use gazebo airspeed. Add quadtailsitter. ( #23455 )" ( #23583 )
...
This reverts commit 7e45f49152 .
Co-authored-by: jmackay2 <1.732mackay@gmail.com >
2024-08-20 19:36:08 -04:00
bresch
0931179579
ekf2: extract WMM update logic
2024-08-20 10:32:27 -04:00
Beniamino Pozzan
98eae3cd4c
fix: make help on Ubuntu 22.04
...
Ubuntu 22.04 uses make 4.3 which broke the current `make help` target
Reference:
https://stackoverflow.com/a/26339924
Signed-off-by: Beniamino Pozzan <beniamino.pozzan@gmail.com >
2024-08-19 11:19:31 -04:00
Thomas Stauber
f2f4488594
drivers/gps: publish secondary instance satellite_info if main instance is advertised
2024-08-19 11:14:12 -04:00
Niklas Hauser
ecfdbd2e60
littlefs: needs more stack when used
2024-08-19 11:05:50 -04:00
David Sidrane
c60b1d1a5f
board_hw_rev_ver: Support EEPROM-only HW IDs
2024-08-19 11:05:50 -04:00
Niklas Hauser
07734c243f
mtd: Initialized the RAMTRON speed with 30MHz
2024-08-19 11:05:50 -04:00
David Sidrane
072892fbef
romfs: rcS: support storage on other then SD card
2024-08-19 11:05:50 -04:00
Ramon Roche
746ae25768
ci: replace build workflows ( #23550 )
2024-08-19 10:41:25 -04:00
Alexis Guijarro
0481c04b2b
Nuttx with backport (stm32h7x3x): Add External Power Supply option
2024-08-19 09:22:17 -04:00
Claudio Chies
4d21110cfb
Documentation - improved GCS parameter readablity ( #23376 )
...
improved GCS parameter description
Co-authored-by: Hamish Willee <hamishwillee@gmail.com >
Co-authored-by: Silvan Fuhrer <silvan@auterion.com >
2024-08-19 13:36:04 +02:00
jmackay2
7e45f49152
Update GZBridge to be able to use gazebo airspeed. Add quadtailsitter. ( #23455 )
...
* Update GZBridge to be able to use gazebo airspeed. Add gz quadtailsitter.
* Fix formatting
---------
Co-authored-by: jmackay2 <jmackay2@gmail.com >
2024-08-19 08:54:57 +02:00
Claudio Chies
e29a36adb4
Landing horizontal velocity compensation / unsteady landing ( #23546 )
...
* initial working
* implemented feedback
2024-08-19 08:01:43 +02:00
Silvan Fuhrer
435e9665b3
RTL: cone: never climb more than to RTL_RETURN_ALT ( #23558 )
...
This is to prevent that a large NAV_ACC_RAD leads to very high return altitudes.
Signed-off-by: Silvan Fuhrer <silvan@auterion.com >
2024-08-19 07:51:33 +02:00
Vilius
ea0ef154d8
Fixes upload.sh for arkv6x ( #23561 )
2024-08-17 13:59:18 -06:00
bresch
ad1d9e1312
failsafe: do not add additional hold delay if failsafe action is hold
2024-08-16 16:26:20 +02:00
bresch
ea673b0b5b
navigator: check hagl failsafe centrally
2024-08-16 16:26:20 +02:00
Silvan Fuhrer
4f66410d24
ROMFS gazebo iris opt flow: increase SENS_FLOW_MAXHGT to 15m ( #23557 )
...
Signed-off-by: Silvan Fuhrer <silvan@auterion.com >
2024-08-16 15:58:36 +02:00
Silvan Fuhrer
09638552b7
estimatorChecks: disable warning for imminent position failure if that is disabled ( #23556 )
...
COM_POS_FS_EPH can be set to -1, in which case the actual failure eph is INFINITY.
Signed-off-by: Silvan Fuhrer <silvan@auterion.com >
2024-08-16 13:57:37 +02:00
Silvan Fuhrer
4a3cbecf01
Commander: only add *autopilot disengaged* to failsafe notifactions in special cases
...
Signed-off-by: Silvan Fuhrer <silvan@auterion.com >
2024-08-16 11:04:37 +02:00
Daniel Agar
f7e6e1354a
commander: power check only keep error thresholds
2024-08-15 10:06:56 -04:00
Vilius
2a124fd998
Add Bosch BMM350 magnetometer ( #23362 )
...
* Add Bosch BMM350 magnetometer
* BMM350 replace info messages with debug messages
* BMM350 update measurement interval
* BMM350 fix offsets, update based on review
* BMM350 Update default parameters to 50Hz
* Update OTP Word LSB check
* BMM350 fix styles and formatting
* BMM350 update error checks
2024-08-15 01:29:02 -08:00
Ramon Roche
af0129dab7
github: update bug report template
...
Removes unnecessary required fields
2024-08-14 19:56:49 -04:00
Alexis Guijarro
c8501cc1d0
boards: Support for 3DR Control Zero H7 OEM Rev G board
2024-08-14 19:52:42 -04:00
bresch
4ed3e9e210
navigator: add failure enum
2024-08-14 11:08:02 +02:00
bresch
25fcb3c913
comander: trigger failsafe when navigator reports failure
2024-08-14 11:08:02 +02:00
bresch
9f69e9ee6c
navigator: publish navigator_state
...
feedback to commander
2024-08-14 11:08:02 +02:00
bresch
1fa878ad88
navigator: add navigation state ID to every mode class
2024-08-14 11:08:02 +02:00
murata,katsutoshi
dec550dcb9
navigator: Change IF statement to SWITCH statement ( #23534 )
2024-08-14 09:40:36 +02:00
Hamish Willee
f3a8d05f8c
MPC_ACC_DECOUPLE - better description ( #23518 )
2024-08-14 12:18:14 +10:00
mirusu400
5121358e87
Makefile: Fix error message when cannot find target board
...
not $(MAKE) help|list_config_targets, we should use $(MAKE) list_config_targets
for the desired results.
2024-08-13 21:34:39 -04:00
murata,katsutoshi
a327b14cef
navigator: always fully initialize geofence msg
2024-08-13 21:33:36 -04:00
Jukka Laitinen
0459481cb4
icm40609d: Change FIFO count to samples instead of bytes
...
As the sensor can directly report the amount of samples in the fifo, use it to simplify the logic.
Also combine the fifo empty/fifo overflow checks for interrupt and polling modes.
Signed-off-by: Jukka Laitinen <jukkax@ssrc.tii.ae >
2024-08-13 21:32:28 -04:00
Jukka Laitinen
cc4d5bd2a6
icm40609d: Add INTF register definition and disable I2C interface
...
Disable I2C to make sure that the sensor doesn't switch to that by accident
Signed-off-by: Jukka Laitinen <jukkax@ssrc.tii.ae >
2024-08-13 21:32:28 -04:00
Jukka Laitinen
fd062d0085
icm40609d: Clear interrupt status at FIFO reset
...
If DRDY signal is used, the interrupt status needs to be cleared at FIFO reset
in order to make DRDY go back inactive. Otherwise there won't be a falling edge
interrupt at the next sample.
Signed-off-by: Jukka Laitinen <jukkax@ssrc.tii.ae >
2024-08-13 21:32:28 -04:00
Stefano Colli
e2c0e5c88a
MissionBase: replay the gimbal and trigger cached items only upon reaching resume waypoint ( #23484 )
...
* Fix: replay the mission cached items only upon reaching resume waypoint
* Refactoring
Split camera mode mission items from gimbal ones so to have a finer control over the relative replays
* Chore: fix formatting
---------
Co-authored-by: Silvan Fuhrer <silvan@auterion.com >
2024-08-13 22:20:28 +02:00
bresch
aad607e0dd
ekf2: send airspeed data to ekf backend regardless of sign
...
On ground the airspeed can sometimes be slightly negative but the ekf
should still know that airspeed data is flowing regularly
2024-08-13 17:43:45 +02:00
Silvan Fuhrer
a0d22a4d21
FW Position Control: make explicit when underspeed detection logic is en-/disabled
...
Signed-off-by: Silvan Fuhrer <silvan@auterion.com >
2024-08-13 16:55:26 +02:00
Silvan Fuhrer
acc0cd7e8a
FW Position Control: disable underspeed handling during auto takeoff
...
Signed-off-by: Silvan Fuhrer <silvan@auterion.com >
2024-08-13 16:55:26 +02:00
Silvan Fuhrer
afc360d637
FW Position control: do not invalidate airspeed from negative readings
...
Signed-off-by: Silvan Fuhrer <silvan@auterion.com >
2024-08-13 16:55:26 +02:00
murata,katsutoshi
db8781e531
navigator: Align MAVLINK message level with EVENT message level ( #23535 )
2024-08-12 19:09:22 +02:00
Jaeyoung Lim
e008ca24f1
Remove euler angles from attitude setpoint ( #23482 )
...
* Remove euler angles from attitude setpoint message
* Remove usage of euler angles in attitude setpoint messages
This commit removes the usage of euler angles in the vehicle_attitude_setpoint messages
* Fix standard vtol
2024-08-12 16:42:51 +02:00
Daniel Agar
c9343ca11d
sitl_gazebo-classic update submodule to latest
2024-08-12 16:26:56 +02:00
Matthias Grob
af06bee8d0
update mavlink & adapt to pymavlink generator reporting failures by default
2024-08-12 16:26:56 +02:00
bresch
478875c006
ekf tools: compare gyro integral with attitude estimate
2024-08-12 15:26:08 +02:00
Matthias Grob
64056fc7bb
SYS_STATUS: fill correct attitude, horizontal position flags
2024-08-09 18:22:09 +02:00
Sergei
1211aad9b0
Reasonable defaults for Lawnmower SITL
2024-08-09 12:18:16 -04:00
Alexis Guijarro
f4f93118e6
mRo boards: Fix for USART clock selection
2024-08-09 11:59:38 -04:00
Matthias Grob
fdfe43471e
mavlink_receiver: limit access through instances with gimbal mode
...
This adds explicit handling for the few things we want to allow through a MAVLink instance dedicated to a gimbal/(camera) payload as per the MAVLink gimbal mode configuration.
2024-08-09 10:13:44 -04:00
bresch
3f17f15505
commander: allow FW manual pos control without global position
2024-08-09 12:51:09 +02:00
bresch
8b12b7c641
commander: extend local position 'relaxed' validity
...
Relaxed position is valid as long as a velocity aiding source is active
(e.g.: optical flow or airspeed+sideslip)
2024-08-09 12:51:09 +02:00
bresch
f04aa2494b
FW pos control: do not requre global pos in manual position control
2024-08-09 12:51:09 +02:00
Matthias Grob
6cf0bf5e19
Support MAVLink extension MANUAL_CONTROL.aux
...
Note that in uORB we don't currently know if the aux fields are
specifically valid or not so we can also not set the corresponding
bits in the field.
2024-08-09 10:49:38 +02:00
Hamish Willee
58a699e3cb
Strip out html escape comments
2024-08-09 09:26:06 +02:00
Hamish Willee
82be5cd44f
Strip short description from long one
2024-08-09 09:26:06 +02:00
Hamish Willee
718d308d91
parameter markdown - correct reboot in tables
2024-08-09 09:26:06 +02:00
chfriedrich98
a294e011ab
purePursuit: fix commenting error
2024-08-08 19:54:42 +02:00
chfriedrich98
1a7717b5d9
ackermann: refactor guidance files
2024-08-08 19:54:42 +02:00
chfriedrich98
1af295f1a9
ackermann: refactor main files
2024-08-08 19:54:42 +02:00
Niklas Hauser
cd231d0eed
fmuv6x: Add GPIO expander to check overcurrent pins
2024-08-08 13:14:11 -04:00
chfriedrich98
a91aa40a3d
battery: only reset soc filter with valid voltage measurement ( #23513 )
2024-08-08 17:09:36 +02:00
Matthias Grob
0381e14822
FlightTaskOrbit: Avoid sending NAN altitude in status telemetry while it's changed by stick
2024-08-08 10:53:18 -04:00
Silvan Fuhrer
a737036633
RTLDirect: check for terrain collision in every state of RTL beside when landing
...
Signed-off-by: Silvan Fuhrer <silvan@auterion.com >
2024-08-08 13:37:36 +02:00
Silvan Fuhrer
588c4a04c8
RTL direct: publish NavigatorMissionItem
...
Signed-off-by: Silvan Fuhrer <silvan@auterion.com >
2024-08-08 13:37:36 +02:00
Silvan Fuhrer
b01c179eed
NavigatorMissionItem.msg: remove instance_count
...
This information is duplicate to mission_result/mission_id.
Signed-off-by: Silvan Fuhrer <silvan@auterion.com >
2024-08-08 13:37:36 +02:00
Jeremy Zanzig
e2f5debf77
change pairing LED feedback to 20 fast flashes of white
2024-08-08 10:02:36 +02:00
Matthias Grob
a8d54c7fae
mixer_module: Reset RC passthrough functions to disarmed value when no stick input
2024-08-07 19:20:51 +02:00
Julian Oes
2d99ae18ad
stm32h7: Reset USART clock selection ( #23498 )
...
This resets the USARTs' clock source selection to the default, in case
it has been changed by the bootloader.
This is required if booting from the ArduPilot bootloader which happens
to reset the clock selection to PLL.
Without this fix, UARTs (including the console) is garbled, so
presumably at an invalid baudrate.
2024-08-07 11:41:50 -04:00
Jacob Dahl
086c044f47
mavlink: log handler rewrite for improved efficiency ( #23421 )
2024-08-07 11:26:12 -04:00
PX4 BuildBot
a39a3e2099
Update submodule gz to latest Wed Aug 7 12:39:06 UTC 2024
...
- gz in PX4/Firmware (411a328e325e5109a453cf84d0c65393be86bfef): https://github.com/PX4/PX4-gazebo-models/commit/312cd002ff9602644efef58eef93e447c10dcbe8
- gz current upstream: https://github.com/PX4/PX4-gazebo-models/commit/536305adee09b9ace391b16107e625cf7c6db7e7
- Changes: https://github.com/PX4/PX4-gazebo-models/compare/312cd002ff9602644efef58eef93e447c10dcbe8...536305adee09b9ace391b16107e625cf7c6db7e7
536305a 2024-08-07 Claudio Chies - add world for collision prevention (#52 )
36f49cb 2024-07-29 Stefano Colli - Add x500 with gimbal model (#47 )
4ddfc13 2024-07-24 Jacob Dahl - Downward mono cam + aruco tag (#48 )
2024-08-07 11:23:39 -04:00
PX4 BuildBot
b488e45e73
Update submodule sitl_gazebo-classic to latest Wed Aug 7 12:39:04 UTC 2024
...
- sitl_gazebo-classic in PX4/Firmware (28a0de63c5 ): https://github.com/PX4/PX4-SITL_gazebo-classic/commit/67431d233f0f08de647f0eb11239816f9c8bd6c6
- sitl_gazebo-classic current upstream: https://github.com/PX4/PX4-SITL_gazebo-classic/commit/67af3c3a6da493bdc0a0b9de28b01a2a98d38659
- Changes: https://github.com/PX4/PX4-SITL_gazebo-classic/compare/67431d233f0f08de647f0eb11239816f9c8bd6c6...67af3c3a6da493bdc0a0b9de28b01a2a98d38659
67af3c3 2024-07-18 Silvan Fuhrer - model/lidar: incrase range to 50m (#1049 )
2024-08-07 11:23:16 -04:00
chfriedrich98
176f09b48b
gz_bridge: add rover world to cmake
2024-08-07 10:24:02 -04:00
Silvan Fuhrer
876730a9be
FW Position Controller: enable flaps during hand/catapult launch ( #23460 )
...
Signed-off-by: Silvan Fuhrer <silvan@auterion.com >
2024-08-07 15:38:55 +02:00
Peter van der Perk
588eedb8cb
px4: sitl fix filepath regression ( #23457 )
2024-08-07 15:24:07 +02:00
chfriedrich98
c8ff5909b5
rover: restructure airframes ( #23506 )
2024-08-07 15:16:41 +02:00
Claudio Chies
28a0de63c5
Orbit Yaw Vehicle Parameter ( #23358 )
2024-08-07 11:12:52 +02:00
chfriedrich98
33d99a13e8
differential: restructure and update module ( #23430 )
...
* differential: rename module
* differential: restructure and update module
2024-08-07 09:53:37 +02:00
Beat Küng
bfcd4564a6
fix metadata.cmake: add missing paths to json & xml parameter outputs ( #23464 )
2024-08-07 16:17:03 +10:00
Thomas Frans
3157a4e171
gnss: update supported baud rates ( #23415 )
...
* gnss: update supported baud rates
The Septentrio GNSS driver requires certain baud rates to test all the
supported baud rates of the receiver. Without these changes, certain
"non-standard" ones would print an error to the MAVLink console when the
driver was started through the console.
* platforms: add missing baudrate defines
---------
Co-authored-by: Thomas Frans <franske2000@gmail.com >
Co-authored-by: Julian Oes <julian@oes.ch >
2024-08-07 10:46:18 +12:00
bresch
d2478d00cf
ekf2: only allow ref sensor to reset height
2024-08-06 10:19:13 -04:00
Matthias Grob
8ed3489bd1
hardfault_log: revert to explicit path to not trip the module documentation parser
...
- the module documentation parser can only resolve defines from the same file
- also it cannot deal with defines embeded in strings
- what board should it add for the general documentation anyways?
As a result of these issues I suggest to stay with the original hardcoded
/fs/microsd for the documentation. It's still the most common path as far as
I can see.
2024-08-06 13:43:13 +02:00
Matthias Grob
84d4ee0e60
zenoh-pico: update to correct dev/1.0.0 branch
...
which is up to date containing "Use SO_REUSEPORT only if it exists"
and is advertised by GitHub because the commit is on a branch
2024-08-06 13:42:23 +02:00
sbtjagu
326e2a9f5c
ackermann: add protection against float precision problem in acceptance radius update ( #23478 )
...
* ackermann: add protection against float precision problem in acceptance radius update
* ackermann: protect against divide-by-zero
---------
Co-authored-by: Mathieu Bresciani <brescianimathieu@gmail.com >
2024-08-05 13:02:12 +02:00
Beat Küng
4883f2128a
commander: allow external modes more time for initial response
...
We've come accross a case where a ROS node would consistently take something
over 800 ms until the first arming check request subscription callback was
triggered.
After the first sample, the callback always triggered within the expected
timeframe.
Therefore this patch allows for more time right after registration until
timing out.
2024-08-05 08:43:56 +02:00
Alexis Paques
d4d60a5181
Add missing rc.sysinit file in the ROMFS
2024-08-02 16:01:13 -04:00
Alexis Paques
abc629c2bb
zenoh: update zenoh-pico from 0.7.0 to 1.0.0 ( #23462 )
...
* Update Zenoh-pico from 0.7.0 to 1.0.0
* Update the zenoh-pico version to use PX4/dev/1.0.0-px4
* Remove the rostopic and rt/ prefix
* Unlike zenoh-bridge-dds we were using, zenoh-bridge-ros2dds is now adding the rt/ prefix automagically.
2024-08-02 11:48:55 -04:00
Silvan Fuhrer
75ce550db3
Navigator: add terrain collision avoidance logic for Mission/RTL
...
Avoid flying into terrain using the distance sensor.
Enable through the parameter NAV_MIN_GND_DIST.
Only active during commanded descents with vz>0 (to prevent climb-aways),
excluding landing and VTOL transitions.
It changes the altitude setpoint in the triplet to maintain the current altitude
and republish the triplet. We also change the mission item altitude used for
acceptance calculations to prevent getting stuck in a loop.
Signed-off-by: Silvan Fuhrer <silvan@auterion.com >
2024-07-30 17:50:54 +02:00
Silvan Fuhrer
b74e46b1ac
SITL airframes/Navigator: remvoe reference to removed param MIS_LTRMIN_ALT
...
Signed-off-by: Silvan Fuhrer <silvan@auterion.com >
2024-07-30 17:50:54 +02:00
chfriedrich98
e5657ba011
battery: remove reboot required flag from BAT_N_CELLS
2024-07-30 16:18:47 +02:00
chfriedrich98
9ca9ae5b24
battery: fix initialization for internal resistance estimation
...
Don't run/initialize if number of battery cells is zero and reinitialize whenever this parameter changes.
2024-07-30 16:18:47 +02:00
Matthias Grob
ba579245fb
battery_status: remove unused smart battery mode
2024-07-30 14:37:11 +02:00
Matthias Grob
a18c18e163
battery_status: remove custom_faults
2024-07-30 14:37:11 +02:00
Matthias Grob
72ed160aa9
batteryCheck: fix comment typo hyster{i,e}sis
2024-07-30 14:37:11 +02:00
Matthias Grob
2e66bbdfb8
battery_status: add failed to arm fault instead of duplicate over temperature
2024-07-30 14:37:11 +02:00
Matthias Grob
e06629bfe5
failsafe: unhealthy battery during spoolup leads to disarm
...
battery failures can occur upon arming when the load gets sgnificant.
In that case the safest thing to do is prevent a takeoff before anything
worse happens.
2024-07-30 14:37:11 +02:00
Matthias Grob
0d00543292
batteryCheck: explicitly report missing battery with ID
2024-07-30 14:37:11 +02:00
Matthias Grob
7d79bdfa05
batteryCheck: apply supply circuit breaker also to battery checks
...
This was the case in older versions of PX4.
2024-07-30 14:37:11 +02:00
Matthias Grob
edcda80cb9
Commander: adhere to parameter naming convention ( #23466 )
2024-07-30 14:27:27 +02:00
chfriedrich98
b93dd0e8d4
purePursuit: migrate parameters to library ( #23438 )
2024-07-30 14:16:05 +02:00
bresch
7b3d168af1
baro tuning: make hpf argument optional
...
This filter is often not needed. Setting the default value to -1 makes it
optional.
2024-07-29 14:20:41 +02:00
Silvan Fuhrer
9257744da3
TECS: reduce default of FW_T_SPD_STD to reduce airspeed measurement delay ( #23441 )
...
Signed-off-by: Silvan Fuhrer <silvan@auterion.com >
2024-07-29 11:14:59 +02:00
Silvan Fuhrer
d841bf124f
fw_position_control: use time literals
2024-07-26 18:01:44 +02:00
Marco Hauswirth
9d9d8aeb4c
bugfix: wrong reset_counter used
2024-07-26 18:01:44 +02:00
Marco Hauswirth
5808dac4bc
reset position-mode line following after position reset
2024-07-26 18:01:44 +02:00
Silvan Fuhrer
97561d7802
Commander: never allow to switch out of Terminate state with user intend
...
Signed-off-by: Silvan Fuhrer <silvan@auterion.com >
2024-07-26 09:53:07 +02:00
Silvan Fuhrer
ee8030de56
Commander: do not switch out of Terminte after disarm
...
Signed-off-by: Silvan Fuhrer <silvan@auterion.com >
2024-07-26 09:53:07 +02:00
bresch
0b1eba948a
ekf2-flow: add param to force using internal gyro
...
In some cases the vibration environment of the optical flow sensor is
worse than near the autopilot.
2024-07-25 19:54:19 -04:00
Hamish Willee
a07c986dbc
Params generated as markdown table ( #23443 )
2024-07-26 07:46:11 +10:00
sbtjagu
85b6b0a406
ackermann: added delay comand support ( #23445 )
2024-07-25 17:13:30 +02:00
oravla5
b76c1c97b3
ekf2: Optical flow enabled by default
2024-07-25 10:01:35 +02:00
Daniel Agar
fd72578e98
ekf2: avoid constraining parameters every iteration
2024-07-25 09:51:35 +02:00
Silvan Fuhrer
ebcfb5348c
Navigator: increase stack by 40 bytes
...
Signed-off-by: Silvan Fuhrer <silvan@auterion.com >
2024-07-25 09:22:23 +02:00
Peter van der Perk
4ca3e1b6e6
mr_canhubk3: add netman in default.px4board
2024-07-24 11:39:44 -04:00
Peter van der Perk
af36c0b6ec
mr_canhubk3: generate mtd_net when file is missing
2024-07-24 11:39:44 -04:00
David Sidrane
b38305dd21
CONFIG_BOARD_ROOT_PATH is not dependant on Logger only
2024-07-24 11:39:44 -04:00
David Sidrane
ab82c24e3e
systemcmds:Use CONFIG_BOARD_ROOT_PATH instead of string constant
2024-07-24 11:39:44 -04:00
David Sidrane
54b20f1ff3
mavlink:Use CONFIG_BOARD_ROOT_PATH instead of string constant
2024-07-24 11:39:44 -04:00
David Sidrane
ea92c7ffcc
lib:Use CONFIG_BOARD_ROOT_PATH instead of string constant
2024-07-24 11:39:44 -04:00
David Sidrane
d0d9aaa6e9
drivers:Use CONFIG_BOARD_ROOT_PATH instead of string constant
2024-07-24 11:39:44 -04:00
David Sidrane
3fa9cda505
platforms/common:Use CONFIG_BOARD_ROOT_PATH instead of string constant
2024-07-24 11:39:44 -04:00
Peter van der Perk
a99cc0a20b
Remove unused kconfig symbol
2024-07-24 11:39:44 -04:00
Peter van der Perk
46e43ec725
Decouple filepaths from rcS/MTD
2024-07-24 11:39:44 -04:00
bresch
79e0e00d8c
ekf2: block process noise increment without constraining the variance
...
The wind variance can be reset to a value larger than the wind init
variance (e.g.: when the reset occurs when flying close to the N or E
axis). Constraining the variance after a covariance initialization would
artificially increase the correlation and could destabilize the filter.
2024-07-24 17:11:53 +02:00
Marco Hauswirth
39abd87949
set best sensor to -1 after last sensor fails ( #23425 )
2024-07-24 11:24:07 +02:00
Stockton Slack
36d89df0a7
Fix load monitoring inconsistency bug
2024-07-22 10:33:39 +02:00
Daniel Agar
9ff6c4bf28
remove newlines
2024-07-19 18:25:43 -04:00
alexklimaj
b46b2cdf54
airframes: droneblocks dexi 5 default to CRSF on RC input with telemetry
2024-07-19 18:23:25 -04:00
Daniel Agar
85de0ff227
boards: move ARK fmu-v6x/pi6x to dedicated RC drivers
2024-07-19 15:42:05 -04:00
Daniel Agar
3a3f04c0f4
drivers/rc: new standalone ghst_rc driver
...
- extracted from monolithic drivers/rc_input which will eventually be
dropped once all drivers migrated and boards updated
2024-07-19 15:42:05 -04:00
Daniel Agar
7a6c4f0bfa
drivers/rc: new standalone sbus_rc driver
...
- extracted from monolithic drivers/rc_input which will eventually be
dropped once all drivers migrated and boards updated
2024-07-19 15:42:05 -04:00
Daniel Agar
561dceea7b
drivers/rc: new standalone dsm_rc driver
...
- extracted from monolithic drivers/rc_input which will eventually be
dropped once all drivers migrated and boards updated
2024-07-19 15:42:05 -04:00
chfriedrich98
aa0dda7443
ackermann: fix naming conventions
2024-07-19 14:43:40 +02:00
chfriedrich98
f8bebd9e41
ackermann: implement pure pursuit lib
2024-07-19 14:43:40 +02:00
Matthias Grob
f2bca92221
Fix duplicate newlines at the end of files
2024-07-19 14:33:36 +02:00
Matthias Grob
7f14110bb1
Fix missing newlines at the end of files
2024-07-19 14:33:36 +02:00
Matthias Grob
fe3cd4b0cb
Add check for missing or duplicate newlines at the end of files
2024-07-19 14:33:36 +02:00
Roman Bapst
1b9f1b78e5
Added support for resetting wind states to external observation ( #23277 )
...
* added support for resetting wind states to external observation
Signed-off-by: RomanBapst <bapstroman@gmail.com >
* moved wind related functions into separate file
Signed-off-by: RomanBapst <bapstroman@gmail.com >
* added VEHICLE_CMD_EXTERNAL_WIND_ESTIMATE
Signed-off-by: RomanBapst <bapstroman@gmail.com >
* correctly compute variances
Signed-off-by: RomanBapst <bapstroman@gmail.com >
* ekf2: implement wind reset
Signed-off-by: RomanBapst <bapstroman@gmail.com >
* only allow VEHICLE_CMD_EXTERNAL_WIND_ESTIMATE during wind dead-reckoning
and increase horizontal velocity variance to allow velocity states to move
towards solution that is aligned with the newly set wind
Signed-off-by: RomanBapst <bapstroman@gmail.com >
* only reset wind on ground
* still use wind reset using airspeed when it wasn't initialized
* exclude func for rover, change reset interface
* handle wind reset in drag-fusion
* replace state reset with variance reset in sideslip/drag fusion
* remove resetWind function
---------
Signed-off-by: RomanBapst <bapstroman@gmail.com >
Co-authored-by: Marco Hauswirth <marco.hauswirth@auterion.com >
2024-07-19 14:33:08 +02:00
Daniel Agar
ca9948a84d
msgs/EstimatorStatus.msg rename mag_test_ratio -> hdg_test_ratio
...
- this is used for more than just mag
2024-07-18 16:39:18 +02:00
Daniel Agar
eac14b7db2
ekf2/commander: simplify navigation filter preflight checks
...
- remove commander test ratio "tuning knobs" (COM_ARM_EKF_{HGT,POS,VEL,YAW})
- these are effectively redundant with the actual tuning (noise & gate)
in the estimator, plus most users have no idea why they'd be
adjusting these other than to silence an annoying preflight complaint
- remove ekf2 "PreFlightChecker" with hard coded innovation limits
- ekf2 preflight innovation flags are now simply if any active source
exceeds half the limit preflight
2024-07-18 16:39:18 +02:00
chfriedrich98
a42dc2165c
add pure pursuit library
2024-07-18 13:25:05 +02:00
chfriedrich98
08c790217d
battery: increase max value for battery thresholds
2024-07-18 09:46:58 +02:00
chfriedrich98
5083ec52ec
battery: migrate parameters in .c file to .yaml file
2024-07-18 09:46:58 +02:00
Daniel Agar
f8f8ddc101
ekf2: optical flow update last hor vel timestamp on success
2024-07-17 14:46:48 -04:00
Daniel Agar
691fdf713c
ekf2: airspeed update last hor vel timestamp if successfully updating all states
2024-07-17 14:46:48 -04:00
Daniel Agar
57c1ba545f
ekf2: fake_hgt don't use fuseVerticalPosition helper
...
- fake_hgt shouldn't update _time_last_hgt_fuse
2024-07-17 14:46:48 -04:00
Daniel Agar
6fe0fa6d63
ekf2: fake_pos don't use fuseHorizontalPosition helper
...
- fake_pos shouldn't update _time_last_hor_pos_fuse
2024-07-17 14:46:48 -04:00
Daniel Agar
c5c27a87f1
ekf2: track last terrain fuse time and update logic
2024-07-17 10:16:32 -04:00
chfriedrich98
8c4620b77e
battery: simplify battery scale calculation ( #23417 )
2024-07-17 12:22:52 +02:00
bresch
81575049df
ekf2: reword EKF2_GPS_CHECK param
2024-07-16 10:15:19 -04:00
Daniel Agar
f832ae688d
ekf2: require valid filter vz for GPS vspeed check
2024-07-16 10:15:19 -04:00
bresch
20c0d3a096
ekf2: enable all GNSS checks by default
2024-07-16 10:15:19 -04:00
bazooka joe
b48aca10a0
mc_position_control: avoid calculating arw if not needed
2024-07-16 13:30:40 +02:00
Daniel Agar
397ff4a102
ekf2: sideslip symforce increase epsilon to avoid 1/e^2 numerical issues
2024-07-16 11:10:58 +02:00
Daniel Agar
13b62a74d6
ekf2: optical flow adjust jacobian epsilon to avoid numerical issues
...
- in the generated code there's a 1 / eps^2 term if the height and
terrain estimates are the same
2024-07-16 11:10:58 +02:00
Claudio Chies
76cf54c948
adapted UORB Description to match MAVLink
2024-07-16 11:07:03 +02:00
Jacob Dahl
aa8a9e3a06
laser scan subscription optional
2024-07-16 11:07:03 +02:00
Jacob Dahl
fe5a07a96d
gz: added x500_lidar model for publishing obstacle_distance
2024-07-16 11:07:03 +02:00
Daniel Agar
48f1687d3a
ekf2: cleanup legacy EKF solution_status_flags
2024-07-16 10:11:27 +02:00
Daniel Agar
1cd7d54170
ekf2: consolidate GNSS yaw in gnss_yaw_control.cpp and fix naming (GPS->GNSS)
...
Co-authored-by: Mathieu Bresciani <brescianimathieu@gmail.com >
2024-07-15 12:50:51 -04:00
bresch
9d6c2baa90
ekf2-flow: only allow flow when in range
...
Also, as the flow makes the link between range and horizontal velocity,
only allow it to start if at least one of the two is known. Otherwise
the EKF will struggle to estimate both values at the same time.
2024-07-15 11:40:33 -04:00
Daniel Agar
8e5f28f834
ekf2: rng only reset vz as a last resort
2024-07-15 11:39:56 -04:00
Daniel Agar
80ee622f77
ekf2: baro only reset vz as a last resort
2024-07-15 11:39:56 -04:00
Daniel Agar
40349fa3dc
ekf2: EV velocity control should own vertical velocity reset if height failing
2024-07-15 11:39:56 -04:00
Daniel Agar
177613eb68
ekf2: GNSS velocity control should own vertical velocity reset if height faiing
...
- GNSS height control using the velocity sample directly is ignoring
potential position offsets
2024-07-15 11:39:56 -04:00
PX4 BuildBot
9bbfc8715e
Update submodule mavlink to latest Mon Jul 15 12:39:00 UTC 2024
...
- mavlink in PX4/Firmware (abcf9ca6f0aadc91b203342db689f07630ec0e3a): https://github.com/mavlink/mavlink/commit/da3223ff9380bfe8e496fab8df2cbb06d5f8d5c3
- mavlink current upstream: https://github.com/mavlink/mavlink/commit/d65952bacc02c4a5a1ed8249be73e6a66fa800ab
- Changes: https://github.com/mavlink/mavlink/compare/da3223ff9380bfe8e496fab8df2cbb06d5f8d5c3...d65952bacc02c4a5a1ed8249be73e6a66fa800ab
d65952ba 2024-07-05 Peter Barker - common.xml: correct description of GLOBAL_POSIITON_INT.relative_alt frame (#2131 )
5fc2ff8e 2024-06-26 Hamish Willee - Add multiplier field to docs, if present (#2125 )
a13d2317 2024-06-26 Roman Bapst - Added MAV_CMD_EXTERNAL_WIND_ESTIMATE to development (#2122 )
d8af87fd 2024-06-19 jokalode - Update common.xml (#2116 )
2024-07-15 11:18:19 -04:00
Daniel Agar
e03aef616c
ekf2: add terrain/dist_bottom reset deltas (vehicle_local_position/vehicle_global_position)
2024-07-15 10:25:42 -04:00
Daniel Agar
a5a67315fd
ekf2: optical flow magnitude check compensated
...
- additionally don't use flow for reset if magnitude isn't acceptable
2024-07-15 09:46:59 -04:00
Boris
be551097e0
mc_wind_estimator_tuning: Changed Quaternion package installed by requirements.txt
2024-07-15 11:40:12 +02:00
Daniel Agar
dc5f8118b0
ekf2: range finder cleanup duplicate logic
2024-07-15 11:37:36 +02:00
KonradRudin
59b96f4968
tecs: fast descend: do not shut down throttle while still climbing ( #23397 )
2024-07-15 10:42:43 +02:00
Liu1
b1b0032b8d
BMP581: Add Bosch BMP581 barometer ( #23064 )
...
* BMP581: Add Bosch BMP581 barometer
* Copyright:fix copyright header year
* style: not use pointers and Bool returns, Check the failed condition return
* delay: Replace usleep() with ScheduleDelayed()
* definitions: Delete unused definitions
* comment: Delet redundant comments
* constants: Change to uppercase
* BMP581: run make format
2024-07-14 14:08:20 -08:00
Matthias Grob
e2b31454a3
SubscriptionInterval: move updated, update, copy function to a cpp file
...
Saves 17.3 kilobytes of flash 😮
2024-07-12 23:26:24 +02:00
Claudio Chies
33be5d8356
Survey - fix of survey tracking problem on steep slopes ( #23371 )
...
* initial working
* incoperated review
2024-07-11 14:54:22 +02:00
Daniel Agar
9124a7b471
ekf2: add IMU delta_ang_dt/delta_vel_dt safety constrain before pushing into buffer
2024-07-10 21:20:47 -04:00
Daniel Agar
ac77049c47
ekf2: directly use IMU sample to find corresponding aid source sample
...
- I think this helps make it clear we're using a sensor sample
corresponding with a particular IMU sample
2024-07-10 21:20:47 -04:00
Daniel Agar
f93dc61770
ekf2: use bias corrected angular velocity
...
- avoid unnecessarily storing _ang_rate_delayed_raw
2024-07-10 21:20:47 -04:00
Julian Oes
20137bea40
boards: add console build for Cube Orange(+)
...
This adds a build variant which enables the serial console, and
therefore disables the ADSB receiver.
2024-07-10 21:14:08 -04:00
Claudio Chies
57e303b11b
bugfix for failing actions
2024-07-10 21:12:55 -04:00
PX4 BuildBot
e0ea91fc27
Update submodule gz to latest Thu Jul 11 00:39:09 UTC 2024
...
- gz in PX4/Firmware (2c3401dc83 ): https://github.com/PX4/PX4-gazebo-models/commit/881558c8c274d0d9f21970de24333122e050b561
- gz current upstream: https://github.com/PX4/PX4-gazebo-models/commit/312cd002ff9602644efef58eef93e447c10dcbe8
- Changes: https://github.com/PX4/PX4-gazebo-models/compare/881558c8c274d0d9f21970de24333122e050b561...312cd002ff9602644efef58eef93e447c10dcbe8
312cd00 2024-07-08 chfriedrich98 - Add rover ackermann model (#46 )
2024-07-10 21:05:57 -04:00
chfriedrich98
c391509c23
ackermann: add SITL airframe
2024-07-10 21:04:59 -04:00
Matthias Grob
2c3401dc83
uORB: SubscriptionInterval fix timestamp wrapping when initializing less than the interval time after boot ( #23384 )
...
* SubscriptionInterval: ensure _last_update is never before timer start
2024-07-10 12:43:31 -04:00
Daniel Agar
75bb339d94
ekf2: remove warning events logging
...
- some of these warning flags aren't even being used, and most of the rest we can figure out from other sources
2024-07-10 10:43:55 -04:00
Daniel Agar
c29b4ff87e
ekf2: apply astyle formatting and enforce
2024-07-10 10:43:55 -04:00
chfriedrich98
3fe609f769
exclude 4017 from v5x to save flash
2024-07-10 12:06:48 +02:00
chfriedrich98
03ff837c50
ackermann: new features and improvements
...
added return mode support, slew rates for actuators, new ackermann specific message, improved cornering slow down effect and fixed logging issue.
2024-07-10 12:06:48 +02:00
Daniel Agar
223397c20e
ekf2: always add accel/gyro bias process noise
...
- continue adding accel/gyro bias process noise even if inhibited
2024-07-10 11:49:01 +02:00
Marco Hauswirth
419652b9fe
EKF2: Spoofing GPS check ( #23366 )
...
* estimator gps check fail flag for spoofing
* warn whenever spoofing state changes to true, use default hysteresis to completely stop fusion
* dont introduce more GPS namings, GNSS instead
* flash: exclude mantis for cuav_x7pro
2024-07-09 16:31:11 +02:00
Daniel Agar
62ff39a669
ekf2: EV vel (body) update last fuse timestamps
...
- these are set by the NED fuseVelocity() helper so also need to be set in the body frame velocity case
2024-07-09 10:16:12 -04:00
Daniel Agar
5d08b97fd7
ekf2: add vehicle_local_position dist_bottom_var
2024-07-09 10:10:01 -04:00
Daniel Agar
3e3b886b5d
ekf2: add terrain estimator_status_flags
2024-07-09 10:10:01 -04:00
Daniel Agar
64a6971bdb
ekf2: only limit opt flow HAGL if range only terrain
...
- increase HALG limit from 75%->90% of sensor max
2024-07-09 10:10:01 -04:00
Daniel Agar
c56f84fe8a
ekf2: range, check if terrain valid for reset on fusion timeout
2024-07-09 10:10:01 -04:00
Daniel Agar
e52025cc20
ekf2: optical flow fusion timeout only reset if quality is good
2024-07-09 10:10:01 -04:00
Daniel Agar
6be06ecbb3
ekf2: optical flow failing also reset terrain if needed
2024-07-09 10:10:01 -04:00
Daniel Agar
ea8f14b883
ekf2: optical flow logic, timeout if bad_tilt, etc
...
- previously we could get stuck with optical flow still technically
active (_control_status.flags.opt_flow=true), but nothing being
updated due to excessive tilt, etc
2024-07-09 10:10:01 -04:00
Daniel Agar
8bf15b01c4
ekf2: optical flow don't compute innovation variance twice
...
- collapse updateOptFlow() and startFlowFusion() to avoid recomputing H
- this is a relatively expensive call we can easily avoid with the
right structure
2024-07-09 10:10:01 -04:00
Daniel Agar
f709ed409d
ekf2: optical flow stop reset all flags
2024-07-09 10:10:01 -04:00
Daniel Agar
9dfd82ab06
ekf2: optical flow remove _flow_data_ready flag
2024-07-09 10:10:01 -04:00
Daniel Agar
7047f9441c
ekf2: fix calcOptFlowBodyRateComp() gyro bias
...
- adjust flow sample gyro_rate immediately after popping from ring
buffer
- always update flow gyro bias (calcOptFlowBodyRateComp()) regardless
of flow quality or magnitude
2024-07-09 10:10:01 -04:00
Daniel Agar
4d324da9f8
ekf2: update flow aid src status every sample
2024-07-09 10:10:01 -04:00
Daniel Agar
bcd666b3f8
ekf2: fix optical flow start logic
...
- remove fallthrough that enables flow regardless of success
- add appropriate start messages for each case
2024-07-09 10:10:01 -04:00
Daniel Agar
bf4e564b23
ekf2: resetTerrainToFlow() reset aid src status appropriately
2024-07-09 10:10:01 -04:00
Daniel Agar
ced609daa8
ekf2: flow fusion start require valid fusion
2024-07-09 10:10:01 -04:00
Daniel Agar
1df8f3f9d2
ekf2: resetFlowFusion() reset aid src status appropriately
2024-07-09 10:10:01 -04:00
Roman Bapst
8221940b60
Added pitot tube icing detection ( #23206 )
...
* lib: add FilteredDerivative class
* AirspeedValidator: add first principle check
- filters throttle, pitch and airspeed rate, and triggers
if the airspeed rate is negative even though the vehicle
is pitching down and giving high throttle.
Check has to fail for duration defined by ASPD_FP_T_WINDOW
to trigger an airspeed failure.
* AirspeedValidator: define constants for first principle check
* FilteredDerivative: set initialised to false if sample interval is invalid
* airspeed_selector: improved comment
* increase IAS derivative filter time constant from 4 to 5
* use legacy parameter handling for FW_PSP_OFF
* handle FW_THR_MAX as well
* ROMFS/airframes: exclude some airframes for v6x and v4pro to save flash on them
---------
Signed-off-by: Silvan Fuhrer <silvan@auterion.com >
Signed-off-by: RomanBapst <bapstroman@gmail.com >
Co-authored-by: Silvan Fuhrer <silvan@auterion.com >
2024-07-09 11:16:40 +02:00
Julian Oes
a35cecece4
gnss: add missing include
...
Breaks CLion otherwise.
2024-07-08 20:38:40 -04:00
Peter van der Perk
6bd81f38a6
imxrt dshot timing fix ( #23365 )
...
* imxrt: Change PLL settings for more accurate dshot timing
* Update NuttX submodule
2024-07-08 12:57:15 -04:00
Silvan Fuhrer
77709c2948
FW Position control: clean up param descriptions
...
Mostly to save flash, but also to improve generally.
Signed-off-by: Silvan Fuhrer <silvan@auterion.com >
2024-07-08 16:44:09 +02:00
Claudio Chies
aed0fd41cf
SIH - change how LAT and LON is used for Takeoff location ( #23363 )
...
change how lat long is used for SIH
2024-07-08 14:51:08 +02:00
Marco Hauswirth
4bc0286eb8
fix error from refactring commit, fix reset on ground ( #23370 )
2024-07-08 13:55:05 +02:00
Marco Hauswirth
e04c53241a
EKF2: reset position by fusion ( #23279 )
...
* reset position by fusion
* handle local_pos_valid for fixed wing in gnss denied
* [WIP] ekf2: setEkfGlobalOrigin respect current height reference and vertical position aiding
* global origin, also reset vertical pos without gps as ref
* fix wo gnss, that bitcraze ci passes
* revert some changes as requested
* remove duplicate reset messages
* undo unrelated whitespace changes, I'll fix it everywhere in a followup
* [SQUASH] ekf2: add vehicle_command_ack
* resetGlobalPosToExternalObservation consolidate logic
* remove gnss check from local_pos validation check
* reset when 0<accuracy<1, otherwise fuse
* replace gps param with flag
* ekf2: dead reckon time exceeded, respect ZUPT preflight if air data or optical flow expected
* subtract timeout from last inertial dead-reck, change fake pos conditions, save flash
---------
Co-authored-by: Daniel Agar <daniel@agar.ca >
2024-07-07 22:43:55 +02:00
Peter van der Perk
ac1effa32a
fmu-v6xrt: MTD use full FRAM (32KB)
2024-07-05 10:25:08 -04:00
Ryan Johnston
fd8df2e84d
Update int_res_est_replay.py ( #23351 )
...
Pulls cell count, min voltage and max voltage from log file but still allows for over-rides. Also added debug info to tell user what what it found in the log and what it is using
Co-authored-by: chfriedrich98 <125505139+chfriedrich98@users.noreply.github.com >
2024-07-05 11:04:45 +02:00
Marco Hauswirth
a1f43636f3
ekf2: EV fusion in body frame ( #23191 )
2024-07-04 21:17:19 -04:00
Silvan Fuhrer
1f33abb4e9
battery_status.msg: remove unused fields ( #22938 )
...
Signed-off-by: Silvan Fuhrer <silvan@auterion.com >
2024-07-04 11:57:26 +02:00
PonomarevDA
4c5ce7af6b
Cyphal: add feedback for 8 ESC
2024-07-03 13:02:18 -04:00
PonomarevDA
8569eeb90c
Cyphal: add *type registers for ESC
2024-07-03 13:02:18 -04:00
PonomarevDA
f81e36a3a0
Cyphal: optimize ESC setpoint
2024-07-03 13:02:18 -04:00
PonomarevDA
41bd6c92e2
Cyphal: add zubax.telega.CompactFeedback
2024-07-03 13:02:18 -04:00
PonomarevDA
515543b1c5
Cyphal: divide EscClient into 2 publishers, so setpoint and readiness are 2 different ports now
2024-07-03 13:02:18 -04:00
Dmitry Ponomarev
52476633a8
Cyphal: use actual time instead of transfer id in uptime field of heartbeat
2024-07-03 13:02:18 -04:00
Dmitry Ponomarev
b063202b45
Cyphal: remove setpoint scaling to 8192
2024-07-03 13:02:18 -04:00
Dmitry Ponomarev
d3480d1302
Cyphal: add port.List
2024-07-03 13:02:18 -04:00
Matthias Grob
c8c46788ed
Autostart: load airframes with priority ROMFS -> SD card
2024-07-03 18:32:16 +02:00
Thomas Frans
c0663ee85c
gnss(septentrio): fix line lenghth of module documentation
2024-07-03 11:21:34 -04:00
Thomas Frans
e27b252433
gnss(septentrio): fix incorrect heading offset configuration
...
Heading offset was configured as radians but should be configured as
degrees on Septentrio receivers. The parameter was already in degrees
but the configuration logic was changing it into radians. Also allow the
entire allowed range of heading offset values for Septentrio receivers.
2024-07-03 11:21:34 -04:00
Thomas Frans
49dc896d20
gnss(septentrio): fix broken heading
...
Heading wasn't working because of an incorrect check during parsing.
2024-07-03 11:21:34 -04:00
Thomas Frans
bfbbf2ff6f
gnss(septentrio): improve SEP_DUMP_COMM parameter documentation
...
The documentation for `SEP_DUMP_COMM` was quite unclear and users had to
use the user guide to find out what exactly it did. The new
documentation tries to make the purpose clearer.
2024-07-03 11:21:34 -04:00
Thomas Frans
7bb239637e
gnss(septentrio): fix error on driver start with same device paths
...
This fixes an incorrect check of the device paths during instantiation
of the Septentrio driver that caused the driver to start and not print
an error message.
2024-07-03 11:21:34 -04:00
Thomas Frans
522a25a410
gnss(septentrio): first batch of bugfixes after internal testing
...
Internal testing revealed usability issues. Those and some other
problems are fixed.
2024-07-03 11:21:34 -04:00
Silvan Fuhrer
33701aa3d5
BatteryStatus: remove voltage_filtered_a
...
Signed-off-by: Silvan Fuhrer <silvan@auterion.com >
2024-07-03 16:41:49 +02:00
Silvan Fuhrer
c2ae6a7e24
BatteryStatus: remove current_filtered_a
...
Signed-off-by: Silvan Fuhrer <silvan@auterion.com >
2024-07-03 16:41:49 +02:00
zhangteng0526
e03e0261a1
Fix buffer overflow in mavlink_receive.cpp
2024-07-03 08:11:32 +02:00
chfriedrich98
f65653a391
battery: add internal resistance estimation
2024-07-02 19:05:13 +02:00
chfriedrich98
71029689e7
battery: add replay file for internal resistance estimation
2024-07-02 19:05:13 +02:00
Silvan Fuhrer
6d549811bc
fmu v3: disable GYRO_FFT to save flash
...
Signed-off-by: Silvan Fuhrer <silvan@auterion.com >
2024-07-02 11:44:54 -04:00
Marco Hauswirth
3880073716
ekf2: fix timeout after gps failure ( #23346 )
2024-07-02 10:38:49 -04:00
Daniel Agar
0742d356f5
ekf2: more conservative clipping checks for bad_acc_clipping fault status ( #23337 )
...
- track accel clipping count per axis
- only set bad_acc_clipping fault_status if at least one axis is
clipping continuously or if all have been clipping at warning level
- Note: this doesn't impact the clipping projections that boost the
accel process noise, pause bias estimation, and skip gravity fusion
on a per sample basis
2024-06-28 16:45:08 -04:00
bluedisk
408d8abe95
Tools/setup: fix the wrong - deprecated - expression in the requirements.txt
...
- Fixes matplotlib version expression from ">=3.0.*" ro ">=3.0" which is the right syntax
Fixes issue #23329
Co-authored-by: lee wonwoo <leewonwoo@leeui-MacBookPro.local >
2024-06-28 10:20:26 -04:00
Alex Klimaj
053b4a4423
drivers/uavcan: GNSS set system time based on fix_type instead of valid_pos_cov
2024-06-27 21:35:45 -04:00
Peter van der Perk
58f7c3e9c9
NuttX with imxrt1170 soc vdd backport ( #23333 )
2024-06-27 16:21:45 -04:00
PX4 BuildBot
8b26e5e252
Update submodule libevents to latest Thu Jun 27 12:39:19 UTC 2024
...
- libevents in PX4/Firmware (4e3561cad8d24fefe66d266e969652d7ab20162b): https://github.com/mavlink/libevents/commit/8d5c44661bf79106361eb0b5170025b86e85a525
- libevents current upstream: https://github.com/mavlink/libevents/commit/9474657606d13301d426e044450c4f84de2221be
- Changes: https://github.com/mavlink/libevents/compare/8d5c44661bf79106361eb0b5170025b86e85a525...9474657606d13301d426e044450c4f84de2221be
9474657 2024-06-13 Beat Küng - cmake: add namespaced target & installation include dir
9f2e68d 2024-06-12 Beat Küng - CMakeLists: set CMAKE_CXX_STANDARD if not set
3204e8f 2024-06-12 Beat Küng - parser.h: use std::vector<EventArgumentDefinition>::size_type
eab8144 2024-04-29 Beat Küng - fix parser: avoid signed to unsigned conversion
159f83e 2024-04-29 Beat Küng - cpp: only enable Wall and others for GCC
2024-06-27 16:21:20 -04:00
Matthias Grob
e4446adba1
Add check for high RAM usage
...
We had a case where someone took off with an experimental
system with 100% RAM usage on the embedded system
without noticing. This lead to problems during flight.
Since we already have a CPU load check it seems natural
to also check the reported RAM usage.
2024-06-27 11:20:22 +02:00
Daniel Agar
30b854da35
ekf2: verbose logging control (new EKF2_LOG_VERBOSE)
...
- new parameter EKF2_LOG_VERBOSE to enable (currently enabled by default)
- force advertise topics immediately (based on EKF2_LOG_VERBOSE and per aid source configuration)
- logger optionally log all estimator topics at minimal rate
2024-06-27 01:10:57 -04:00
Patrik Dominik Pordi
8070c70f2c
uxrce_dds_client: dds_topics.yaml add vehicle_land_detected
...
- px4_msgs::msg::VehicleLandDetected has been added to dds_topics.yaml
2024-06-27 01:10:04 -04:00
Daniel Agar
78fd9a15f8
flight_mode_manager: delete unused avoidance waypoint
2024-06-27 01:08:16 -04:00
Daniel Agar
338bcc6ca3
ekf2: disable EKF2_EV_CTRL and EKF2_AGP_CTRL by default
2024-06-26 17:10:28 -04:00
alexklimaj
9cc4e2ac01
boards ark pi6x add vl53l0x
2024-06-26 17:09:37 -04:00
Silvan Fuhrer
1ae96d6509
EKF2: fix builds without CONFIG_EKF2_RANGE_FINDER
...
Signed-off-by: Silvan Fuhrer <silvan@auterion.com >
2024-06-26 11:05:38 +02:00
bresch
a50ef2eb5e
ekf2-terrain: make terrain validity based on uncertainty
...
When using optical flow for terrain aiding, we cannot assume that the
terrain estimate is valid if flow is fused as is can only be observed
during motion. When no direct observation is available, the terrain is
assumed to be valid if its 1sigma uncertainty is < 10% of the hagl.
2024-06-26 11:05:38 +02:00
bresch
a665764b0e
ekf2: remove unused EKF2_TERR_MASK
2024-06-26 11:05:38 +02:00
bresch
7903ddf5df
ekf2-terrain: terrain is not a separate estimator
2024-06-26 11:05:38 +02:00
bresch
9001c23926
ekf2: clean up hagl vs terrain naming
...
Terrain is the state: terrain vertical position
Hagl (height above ground level) is the vertical distance between the
vertical position and the terrain vertical position
2024-06-26 11:05:38 +02:00
bresch
68980b59e2
ekf2: add terrain state
2024-06-26 11:05:38 +02:00
KonradRudin
09f066a73a
mission: skip a vtol takoff mission item if already in air ( #23319 )
...
* mission: skip a vtol takoff mission item if already in air and a fixed wing
* MissionBase: also skip FW takeoff when already in-air
Signed-off-by: Silvan Fuhrer <silvan@auterion.com >
* mission: use setNextMissionItem to skip vtol takeoff when already in air
* mission: Only skip the VTOL takeoff in air for mission and rtl mission
If flying RTL mission reverse it must still include the takeoff point.
---------
Signed-off-by: Silvan Fuhrer <silvan@auterion.com >
Co-authored-by: Silvan Fuhrer <silvan@auterion.com >
2024-06-25 16:33:45 +02:00
Nate
6fd0e98a69
Correct units of CRSF GPS altitude
...
Bug fix to correct returning mm units of altitude to m.
2024-06-24 12:27:21 +02:00
David Sidrane
e8e8a60ca8
NuttX with backport of stm32h7 No phy
2024-06-24 06:12:12 -04:00
Matthias Grob
8cc7c99b59
mavlink: report generator error ( #23313 )
...
Without this flag the command silently succeeds even though the logs contains
an error. It's much more developer friendly to fail early in case of an error.
The log path is then also shown in the console output.
2024-06-24 10:00:03 +02:00
Daniel Agar
30ce560e3a
ekf2: mag control reset filtered test ratio on start (if aligning yaw)
2024-06-20 13:41:54 -04:00
Daniel Agar
dcb1103299
ekf2: move estimator_status test ratios to filtered values
2024-06-20 13:41:54 -04:00
fury1895
e4fc3022f2
gimbal - input_mavlink: return NoUpdate by default
2024-06-19 13:52:27 +02:00
Daniel Agar
741c7ab610
Update submodule GPS drivers to latest Wed Jun 19 00:38:26 UTC 2024
...
- GPS drivers in PX4/Firmware (e5d44cc1ba691f075bc2bce52dea7ec88af9e6cd): https://github.com/PX4/PX4-GPSDrivers/commit/0b79ec4dbe3e5ac5925c011067e7e294033a0a32
- GPS drivers current upstream: https://github.com/PX4/PX4-GPSDrivers/commit/a41210ede8c2d22dd8e9fdcf388fca927c1fc5e1
- Changes: https://github.com/PX4/PX4-GPSDrivers/compare/0b79ec4dbe3e5ac5925c011067e7e294033a0a32...a41210ede8c2d22dd8e9fdcf388fca927c1fc5e1
a41210e 2024-06-18 Daniel Agar - sbf: fix code style
2024-06-18 21:03:27 -04:00
Eric Katzfey
c334e488e4
Changed Serial readAtLeast timeout from microseconds to milliseconds
2024-06-18 18:48:56 -04:00
Daniel Agar
e33ba810e9
boards: px4_fmu-v5x_test disable differential_drive module to fix flash overflow
2024-06-18 18:48:13 -04:00
Daniel Agar
69a4a11c7f
boards: cuav/nora disable modules to fix flash overflow
2024-06-18 18:47:42 -04:00
Daniel Agar
81f26be846
Update submodule GPS drivers to latest Tue Jun 18 12:39:32 UTC 2024
...
- GPS drivers in PX4/Firmware (c29d189788090f6994e488f65789a8fe6b835d8d): https://github.com/PX4/PX4-GPSDrivers/commit/d92cf3a2b2704d5509b651bfca33cdfea3a7a18a
- GPS drivers current upstream: https://github.com/PX4/PX4-GPSDrivers/commit/0b79ec4dbe3e5ac5925c011067e7e294033a0a32
- Changes: https://github.com/PX4/PX4-GPSDrivers/compare/d92cf3a2b2704d5509b651bfca33cdfea3a7a18a...0b79ec4dbe3e5ac5925c011067e7e294033a0a32
0b79ec4 2024-04-12 Thomas Frans - sbf: fix issue with automatic base config in QGC
5810dac 2024-04-12 Thomas Frans - style: add editorconfig file for consistent style
915024c 2024-03-26 Julian Oes - sbf: fix subsequent init in QGC
3ea1d76 2024-03-04 Julian Oes - sbf: don't foget to configure RTCM
c6da592 2024-03-04 Julian Oes - sbf: don't change baudrate of USB port
Co-authored-by: PX4 BuildBot <bot@px4.io >
2024-06-18 13:55:02 -04:00
PX4 BuildBot
38956e50ce
Update submodule mavlink to latest Tue Jun 18 12:39:42 UTC 2024
...
- mavlink in PX4/Firmware (7d9b119283b5aff3976431bd48e4308a0bce7b56): https://github.com/mavlink/mavlink/commit/9e0d01df69e2f659114070db5545a35ddf61cae8
- mavlink current upstream: https://github.com/mavlink/mavlink/commit/da3223ff9380bfe8e496fab8df2cbb06d5f8d5c3
- Changes: https://github.com/mavlink/mavlink/compare/9e0d01df69e2f659114070db5545a35ddf61cae8...da3223ff9380bfe8e496fab8df2cbb06d5f8d5c3
da3223ff 2024-06-13 Thomas Frans - gps: add status and integrity information (#2110 )
2024-06-18 11:48:00 -04:00
Daniel Agar
8b9900cce3
mc_pos_control: new velocity low pass and notch filter (optional, disabled by default)
...
- MPC_VEL_LP: new velocity first order low pass filter (off by default)
- MPC_VEL_NF_FRQ/MPC_VEL_NF_BW: new velocity notch filter (off by default)
- MPC_VELD_LP: existing velocity derivative low pass filter, but I've dropped the remaining controllib usage
2024-06-18 11:47:19 -04:00
PX4 BuildBot
ac13fb77a9
boards: update all NuttX defconfigs
2024-06-18 09:37:58 -04:00
PX4 BuildBot
42cdf41d60
update all px4board kconfig
2024-06-18 09:35:41 -04:00
Matthias Grob
9c83f842be
autostart scripts: Reintroduce SYS_PARAM_VER ( #22813 )
...
The case where the airframe maintainer wants to enforce a reset to airframe is
not covered anymore with the `param set-default` mechanism. For products based
on PX4 this is still required to ensure proper functionality after a major update.
2024-06-18 09:32:51 +02:00
Jonas Eschmann
54c8f9e8c9
Adding vehicle_acceleration and actuator_motors to the logged topics for system identification
2024-06-17 22:19:24 -04:00
PX4 BuildBot
ea72d56a00
Update submodule gz to latest Mon Jun 17 12:39:07 UTC 2024
...
- gz in PX4/Firmware (0c18d43657b1b7279b8dce78a6014243cc14d1e2): https://github.com/PX4/PX4-gazebo-models/commit/d754381a1cecdd7f17050acd72bf5bf1327bced6
- gz current upstream: https://github.com/PX4/PX4-gazebo-models/commit/881558c8c274d0d9f21970de24333122e050b561
- Changes: https://github.com/PX4/PX4-gazebo-models/compare/d754381a1cecdd7f17050acd72bf5bf1327bced6...881558c8c274d0d9f21970de24333122e050b561
881558c 2024-05-29 Jacob Dahl - new lidar_v2 model and x500_lidar vehicle
2024-06-17 19:04:15 -04:00
Sihyun
1bc006b4f5
fmu-v6xrt: Fix redundant 'fi'
2024-06-17 17:26:22 -04:00
Jacob Dahl
8a08418a1f
drivers/magnetometer: ist8310: more efficient probe()
2024-06-17 17:01:14 -04:00
Nuno Marques
377e2d7523
src: drivers: uavcan: move UAVCAN_ECU_MAXF and UAVCAN_ECU_FUELT fetch to init and make reboot required
2024-06-17 12:58:46 -07:00
Nuno Marques
cec0d7c66b
src: drivers: uavcan: allow to set the fuel type through a parameter
2024-06-17 12:58:46 -07:00
Nuno Marques
4067ff0a59
fuel_tank_status: do not infer the consumed fuel, as the provided data is measured
2024-06-17 12:58:46 -07:00
Nuno Marques
03920f2ae3
msg: FuelTankStatus: updated field descriptions for clarity, specified default values and handling of NaN and unknown cases
2024-06-17 12:58:46 -07:00
Nuno Marques
450ae033e4
modules: mavlink: only include FUEL_STATUS stream if the dialect includes it
2024-06-17 12:58:46 -07:00
Nuno Marques
a8cb5a7715
Add fuel tank status report support
...
* Adds support to DroneCAN FuelTankStatus messages
* Adds fuel_tank_status uORB message
* Adds FUEL_STATUS MAVLink stream
* Adds parameter to define max fuel tank capacity
2024-06-17 12:58:46 -07:00
Nuno Marques
954225a5c0
submodules: mavlink: bring latest definitions as per Thu, Jun 6 2024
2024-06-17 12:58:46 -07:00
Daniel Agar
206488b844
ekf2: innovation sequence monitoring for all aid sources
...
- add new 'innovation_filtered' and 'test_ratio_filtered' fields to
estimator_aid_source topics
2024-06-17 15:30:42 -04:00
David Sidrane
1c657a59b1
px4_fmu-v5_stackcheck:Fit in flash
2024-06-17 15:21:30 -04:00
David Sidrane
f726c0e187
spracing_h7extreme:rcc Tack upstream name fix
2024-06-17 15:21:30 -04:00
David Sidrane
636cb57f27
NuttX with Backport Adding stm32h755II
2024-06-17 15:21:30 -04:00
Peter van der Perk
aa55a777ba
Add px4_sitl_allyes to CI target
2024-06-17 15:04:31 -04:00
Silvan Fuhrer
c0d693bc50
v5_stackcheck: disable CONFIG_DRIVERS_TONE_ALARM
...
Signed-off-by: Silvan Fuhrer <silvan@auterion.com >
2024-06-17 12:26:53 -04:00
Thomas Frans
cd4c495377
drivers/gps: extract Septentrio into new standalone drivers/gnss/septentrio module ( #22904 )
...
Having a generic interface over the GPS drivers makes dedicated
functionality for each driver harder. Move the Septentrio driver into
its own module under the `gnss` driver directory, and let it have its
own parameters for only the functionality it requires. This also helps
with adding new features because they only need to be implemented for
the driver that wants it, simplifying testing.
2024-06-17 12:25:24 -04:00
Daniel Agar
f9160853fa
rc_update: purge deprecated RC switch parameters
...
- these are old RC switch configuration parameters that haven't been used for
years, but were hardcoded into old versions of QGC
- RC_MAP_RATT_SW, RC_MAP_POSCTL_SW, RC_MAP_ACRO_SW, RC_MAP_STAB_SW, RC_MAP_MAN_SW deleted
-
2024-06-17 12:03:13 -04:00
Jacob Dahl
2515b8fc63
kconfig: common_distance_sensor: remove MB12XX
2024-06-17 12:01:13 -04:00
Jacob Dahl
96360f3069
boards: fmu-v5: disable FAKE_GPS and SD_BENCH
2024-06-17 12:01:13 -04:00
Silvan Fuhrer
ad58808cf3
update gazebo classic ( #23276 )
...
Signed-off-by: Silvan Fuhrer <silvan@auterion.com >
2024-06-17 16:25:56 +02:00
Jacob Dahl
fcb479cd3d
platforms: nuttx: SerialImpl: fix poll timeout and integer underflow ( #23248 )
...
* platforms: nuttx: SerialImpl: fix poll timeout
* platforms: posix: SerialImpl: fix poll timeout
2024-06-14 17:43:15 -08:00
Isidro
4fe0bb4762
fix find in "files_to_check_code_style.sh" ( #23269 )
...
* refactor: not necessary "if [ -f "$FILE" ]"
* fix: exclude directories
---------
Co-authored-by: Isidro Arias <isidro.arias@wslw.es >
2024-06-14 17:41:05 -08:00
Julian Oes
8258cd63ba
ist8310: do reset before WHOAMI call ( #23161 )
...
* ist8310: do reset before WHOAMI call
Apparently, the IST8310's WHOAMI register is writeable. Presumably, this
can get corrupted by bus noise. It is only reset if powered off for 30s.
Therefore, we do a reset before doing the WHOAMI.
* ist8310: improve comment
Co-authored-by: Beat Küng <beat-kueng@gmx.net >
---------
Co-authored-by: Beat Küng <beat-kueng@gmx.net >
2024-06-14 17:22:39 -08:00
Silvan Fuhrer
f646f1ba98
AirspeedSelector: only update with lpos if coming from GNSS ( #23268 )
...
Compared to GNSS, alternate position observation methods are less accurate
and thus generally not good enough to do airspeed validation with.
Airspeed validation is thus disabled if no GNSS fusion is happening.
Signed-off-by: Silvan Fuhrer <silvan@auterion.com >
2024-06-14 17:10:08 +02:00
Daniel Agar
c0d6b67633
matrix: Vector2/Vector4 override ops so specific Vector type is returned
...
- mirrored from Vector3
2024-06-14 10:53:27 -04:00
Daniel Agar
783cf9aede
vscode: cmake default status bar visibility
...
- this is important for setting the active PX4 configuration
2024-06-14 10:52:19 -04:00
Silvan Fuhrer
3cbe2ae2b3
v5_default: remove Local Position Estimator from default build
...
Signed-off-by: Silvan Fuhrer <silvan@auterion.com >
2024-06-14 10:52:02 -04:00
Silvan Fuhrer
f4e76cd392
remove deprecated BAT_ params ( #22872 )
...
Signed-off-by: Silvan Fuhrer <silvan@auterion.com >
2024-06-14 14:42:32 +02:00
Hubert
f8a42bcd58
boards: add new board micoair h743
2024-06-13 14:27:33 -04:00
Marco Hauswirth
db2f616400
reduce transition pusher throttle ( #23262 )
2024-06-12 18:10:50 +02:00
Roman Bapst
0ce64e1b92
ekf2: don't fuse optical flow samples when the current distance to the ground is larger than the reported maximum flow sensor distance
...
Signed-off-by: RomanBapst <bapstroman@gmail.com >
2024-06-11 21:20:40 -04:00
Silvan Fuhrer
5dd76332ba
Matrix: print full matrix already if only one element is not symmetric
...
Signed-off-by: Silvan Fuhrer <silvan@auterion.com >
2024-06-11 21:14:13 -04:00
Roman Bapst
8ad93464c7
AirspeedValidator: Remove extra delay from airspeed innovation check ( #23244 )
...
* AirspeedValidator: remove additional one second of hysteresis for triggering
innovation checks
- this check already uses an integrator and so adding more delay just makes
log analysis more difficult and does not really add any value
Signed-off-by: RomanBapst <bapstroman@gmail.com >
* removed unnecessary conditions
Signed-off-by: RomanBapst <bapstroman@gmail.com >
* AirspeedValidator: only disable innov checks if ASPD_FS_INTEG is negative
Signed-off-by: Silvan Fuhrer <silvan@auterion.com >
* get rid of unnecessary check on innovation threshold parameter
Signed-off-by: RomanBapst <bapstroman@gmail.com >
---------
Signed-off-by: RomanBapst <bapstroman@gmail.com >
Signed-off-by: Silvan Fuhrer <silvan@auterion.com >
Co-authored-by: Silvan Fuhrer <silvan@auterion.com >
2024-06-11 14:09:36 +02:00
Frederik Markus
9ececfdd65
update GCS connection loss failsafe in all gazebo models ( #22299 )
...
* update GCS connection loss failsafe in all gazebo models
Signed-off-by: frederik <frederik@auterion.com >
* cleanup and return of old parameter
Signed-off-by: frederik <frederik@auterion.com >
---------
Signed-off-by: frederik <frederik@auterion.com >
Co-authored-by: Silvan Fuhrer <silvan@auterion.com >
2024-06-11 09:50:55 +02:00
Alex Klimaj
1d8e8a1d8b
boards: ark septentrio change safety led to open drain ( #23247 )
2024-06-10 11:04:55 -08:00
Silvan Fuhrer
30b63f6a82
AirspeedSelector: set default of ASPD_FS_T_STOP to 1 and clean up meta data
...
Signed-off-by: Silvan Fuhrer <silvan@auterion.com >
2024-06-10 12:42:54 +02:00
Silvan Fuhrer
5513dfa95d
AirspeedSelector: define start/stop delay params as floats
...
Signed-off-by: Silvan Fuhrer <silvan@auterion.com >
2024-06-10 12:42:54 +02:00
Julian Oes
0932f50d79
mavlink: enable gimbal controls in QGC over USB
2024-06-10 21:56:37 +12:00
Julian Oes
3710a9ef6e
gimbal: fix auto RC and MAVLink mode
...
This fixes various edge cases when input is set to both: RC and
MAVLink gimbal protocol v2.
Specifically:
- We no longer immediately reset primary control if there is no update,
otherwise this will reset immediately after an commands.
- Talking of commands: GIMBAL_MANAGER_CONFIGURE no longer switches
control to MAVLink but only an actual incoming setpoint command does.
- And incoming setpoint command only triggers UpdatedActiveOnce which
means we will check RC again afterwards and if there is big movement
switch back to RC. That's the intuitive thing to do until we have
better reporting about who/what is in control.
- Also, with RC we no longer always set us to be in control but only on
major movement.
2024-06-10 21:56:37 +12:00
Ruoyu Wang
b9aa8818a4
kakute f7/h7/h7mini/h7v2: fix EKF2_IMU_CTRL typo
2024-06-10 11:08:33 +02:00
Beat Küng
52ac9336c4
boards: change default IP from 192.168.0.3 to 10.41.10.2
...
192.168.0.x is often used by routers for WIFI/ethernet networks, and thus
can create conflicts.
This can happen for example if a companion is connected to the FMU via
ethernet and at the same time connects to a WIFI network as DHCP client.
2024-06-10 11:05:50 +02:00
Beat Küng
a90cdcfe80
boards/px4/fmu-v{5,6}x: enable uxrce_dds_client on ethernet by default
2024-06-10 11:05:50 +02:00
Beat Küng
2524ac8c2b
boards/px4/fmu-v{5,6}x: do not enable mavlink on ethernet for skynode
2024-06-10 11:05:50 +02:00
asifpatankar
746322d6d2
Update ubuntu.sh with Linux Mint 21.3 version
2024-06-10 16:20:48 +12:00
Jacob Dahl
2882e5c4e1
platforms: nuttx: SerialImpl: fix hang if baudrate is 0 ( #23238 )
2024-06-07 22:08:21 -06:00
chfriedrich98
5c64a3ed93
Rover Ackermann module ( #23024 )
...
New module handling Ackermann rover guidance and control.
Only enabled in SITL and in the rover builds for now.
2024-06-07 17:15:12 +02:00
Silvan Fuhrer
831160389e
VTOL Tailsitter: remove throttle spike also for quad-chute
...
Signed-off-by: Silvan Fuhrer <silvan@auterion.com >
2024-06-07 16:11:59 +02:00
Silvan Fuhrer
199a2f43be
VTOL Tailsitter: treat back transition abort like a front transition
...
for throttle blending.
Signed-off-by: Silvan Fuhrer <silvan@auterion.com >
2024-06-07 16:11:59 +02:00
Silvan Fuhrer
b5988ed38f
VTOL Tailsitter: add back transition throttle blending
...
Signed-off-by: Silvan Fuhrer <silvan@auterion.com >
2024-06-07 16:11:59 +02:00
Silvan Fuhrer
f119b15ff1
VTOL Tailsitter: set differential thrust to 0 in first 50ms of front transition
...
Signed-off-by: Silvan Fuhrer <silvan@auterion.com >
2024-06-07 16:11:59 +02:00
Silvan Fuhrer
77a3099154
VTOL Tailsitter: fix motor spikes to 0 when starting back transition
...
Signed-off-by: Silvan Fuhrer <silvan@auterion.com >
2024-06-07 16:11:59 +02:00
Silvan Fuhrer
3a2b973aba
VTOL Tailsitter: add front transition throttle blending
...
Signed-off-by: Silvan Fuhrer <silvan@auterion.com >
2024-06-07 16:11:59 +02:00
Silvan Fuhrer
a081354933
VTOL tailsitter: fix motor spike to 0 when finishing front transition
...
Signed-off-by: Silvan Fuhrer <silvan@auterion.com >
2024-06-07 16:11:59 +02:00
Silvan Fuhrer
1f7b4843dd
FW position control: specify modes where FW_PN_R_SLEW_MAX applies
...
Signed-off-by: Silvan Fuhrer <silvan@auterion.com >
2024-06-07 09:32:23 +02:00
Silvan Fuhrer
b8998933c9
AttitudeSetpoint.msg: FRD instead of NED for body frame
...
Signed-off-by: Silvan Fuhrer <silvan@auterion.com >
2024-06-07 09:32:23 +02:00
Silvan Fuhrer
b53d2cdf39
battery: reset current filter when transitioning to FW ( #22256 )
...
VTOLs consume a lot more power in hover copared to fixed-wing fligt.
The remaining flight time thus should reset if one switches from MC to FW,
as otherwise it takes several minutes until the estimate goes down.
2024-06-07 09:28:37 +02:00
Joao Mario Lago
2ce92a678d
arch.sh: Fix syntax error
...
Fix error of script failing with following error:
PX4-Autopilot/Tools/setup/arch.sh: line 99: syntax error near unexpected token `;'
2024-06-06 21:55:05 -04:00
Julian Oes
f6b65e68cc
boards: update all bootloaders
2024-06-07 13:16:17 +12:00
Julian Oes
7137780654
Makefile: add missing bootloader targets
...
Quite a few were missing, and everything on one line was hard to diff.
2024-06-07 13:16:17 +12:00
Chris Lalancette
b1bf0ff888
Remove argparse from the requirements.txt.
...
The argparse module has been builtin to Python since
Python 3.2, released in 2011 (see
https://docs.python.org/3/whatsnew/3.2.html ). Further,
the argparse pip module has not been released or updated
since 2015, and lacks some of the features of the modern,
built-in argparse. Drop the pip installed version in
favor of the built-in version.
Signed-off-by: Chris Lalancette <clalancette@gmail.com >
2024-06-06 10:09:11 -04:00
Daniel Agar
fb659ae200
ekf2: stopMagFusion() reset yaw_align if mag heading was active
...
- we also need to clear mag_aligned_in_flight
2024-06-06 10:08:20 -04:00
Daniel Agar
bfe3c86aeb
ekf2: merge mag yaw angle observability into heading consistency
...
- the additional hyteresis logic for "yaw angle observable" was
needed when it controlled time dependent mag_3d
2024-06-06 10:07:31 -04:00
Rowan Dempster
bc51eb37eb
Only close server when errno is not EINTR
2024-06-06 07:40:12 +02:00
Matthias Grob
68769ea0ec
mavlink: use reference instead of pointer to access the MAVLink instance from protocol classes
2024-06-05 16:13:52 +02:00
Matthias Grob
9a7a977625
mavlink_receiver: put all message handling in the same function
2024-06-05 16:13:52 +02:00
Daniel Agar
157f7cf40b
simplify world_magnetic_model interface (degrees in, degrees out)
...
- this hopefully helps avoid accidental mis-use
- try to clarify units everywhere
2024-06-04 09:14:36 -04:00
Daniel Agar
5fa3b9d86a
lib/world_magnetic_model: fetch_noaa_table.py refactor and scaling improvements
...
- upate to NOAA grid API to build WMM table in one pass
- refactor declination/inclination/totalintensity table printing to
shared method
- compute scaling factor to maximize resolution
2024-06-04 09:14:36 -04:00
Jacob Dahl
22a38c0c6d
drivers/imu: sch16t improvements ( #23221 )
...
* individual perf counters for frame errors
* don't treat saturation as an error
* added parameters for gyro/accel LPF and decimation ratio
2024-06-03 22:15:00 -04:00
Alex Klimaj
36ec576c0f
boards: ark-pi6x remove ekf delay param defaults ( #23177 )
2024-06-03 17:52:17 -08:00
Matteo Del Seppia
a8617cf681
Fix float and uint64_t comparison ( #23199 )
...
fix: ControlAllocator float and int comparison bug
There was an incorrect comparison between a float variable `dt` and a `uint64_t` value representing 5 milliseconds (`5_ms`). As a result, `do_update` could never become true even if the last torque setpoint was received more than 5 milliseconds before.
To solve this, the `5_ms` value has been converted to seconds (0.005f) for the comparison with `dt`.
2024-06-03 17:48:38 -08:00
Alex Klimaj
de0e73d505
vscode cmake-variants fix ark_septentrio-gps ( #23222 )
2024-06-03 19:43:26 -06:00
Matteo Del Seppia
de5087ae3e
Patch for issue #22818 ( #23170 )
...
When calling "differential_drive stop" a missing return statement was causing a segmentation fault due to access to already freed memory.
2024-06-03 21:10:28 +02:00
Peter van der Perk
c22f725d85
fmu-v6xrt: Support RC telemetry
2024-06-03 08:31:18 -04:00
Peter van der Perk
7fab93ede8
fmu-v6xrt: Fix flash configuration
...
Fixes correct dummy cycle count of 20
2024-06-03 08:26:48 -04:00
bresch
0a665a526c
ekf2: add mag type init
...
In this mode, the mag is used to inilialize the heading.
During flight, the heading is predicted using gyros and corrected
by GNSS measurements if available.
2024-06-03 13:28:12 +02:00
Beat Küng
ca112fea8a
fix commander: make sure to count all valid mags in preflight check
...
Previously, if a mag was not required (not index 0 and not used by ekf),
it was not counted in num_enabled_and_valid_calibration.
If a user set SYS_HAS_MAG to e.g. 3, it would then trigger a preflight
failure, even if there were 3 calibrated and enabled mags.
2024-05-31 12:30:34 -04:00
bresch
53210dd8f3
ekf2-mag: with NE aiding, constrain heading drift only before takeoff
...
After takeoff, the heading is easily observable
2024-05-31 10:38:17 -04:00
bresch
3dac9af09e
ekf2-mag: do not reset on WMM change when NE aiding is active
...
The mag field states are observed. No need to reset them.
2024-05-31 10:38:17 -04:00
bresch
ee765e7859
ekf2-mag: do not reset when NE aiding is active
2024-05-31 10:38:17 -04:00
bresch
6515935b52
ekf2-mag: do not limit the earth mag field estimate
...
The EKF can recover from an initial bad earth mag field estimate.
Constraining the field is not necessary and can lead to an unpredicted
behavior of the filter.
Declination fusion is safe to run even when the horizontal field is 0
2024-05-31 10:38:17 -04:00
bresch
774b6ed3b8
ekf2-mag: do not use yaw emergency estimator to reset mag states
...
On slowly moving vehicles (e.g.: boats, rovers), the yaw estimator has
worse convergence than the main EKF. Resetting the mag states using the
yaw estimator as reference can lead to poor heading. Also, the EKF can
recover really well from initially incorrect mag states.
2024-05-31 10:38:17 -04:00
bresch
c3d984703c
ekf2-mag: remove immediate declination fusion after reset
2024-05-31 10:38:17 -04:00
bresch
a6007e4b93
ekf2-mag: turn around update_all_states condition
...
Non-functional
2024-05-31 10:38:17 -04:00
bresch
c11c75d32e
ekf2-mag: always add process noise until initial value
2024-05-31 10:38:17 -04:00
Eric Katzfey
493c9e49db
uORB: ORBSet don't allow duplicate insertion
...
* fixes a small memory leak in uORBManager.cpp (if using ORB_COMMUNICATOR)
2024-05-30 16:53:48 -04:00
asimopunov
42f4e02d7e
bsondump: add check if bson document size is set to zero and set to decoded size ( #23088 )
2024-05-30 14:52:19 +02:00
Peter van der Perk
cd93e2982c
dshot: telemetry esc_status use sequential numbering for each motor
...
channel != telemetry_index, we've to count from 0 and increment for each enabled ESC
2024-05-30 04:56:42 -04:00
Peter van der Perk
7982f54a6a
dshot: refactoring
2024-05-30 04:56:42 -04:00
Peter van der Perk
ff6966da57
imxrt: dshot fix erpm calculation by implementing 3-bit exponent and 9-bit period
2024-05-30 04:56:42 -04:00
Peter van der Perk
3874b4c55d
imxrt: move flexio irq handler to itcm
2024-05-30 04:56:42 -04:00
Peter van der Perk
5d2fda6172
dshot: bdshot fix esc offline/online checks
2024-05-30 04:56:42 -04:00
Peter van der Perk
0e41f9730f
imxrt: dshot improve state machine reduce's no response count
2024-05-30 04:56:42 -04:00
Peter van der Perk
f3ef0d6610
dshot: fix clearing out esc status
2024-05-30 04:56:42 -04:00
Peter van der Perk
b0cb697f71
imxrt: dshot add 1060 support and use channels instead of timers
2024-05-30 04:56:42 -04:00
Peter van der Perk
e2969952d3
drivers: dshot: prepare to extend for bidrectional dshot
2024-05-30 04:56:42 -04:00
Peter van der Perk
2de0af52e8
px4_fmuv6xrt: bidirectional dshot driver
2024-05-30 04:56:42 -04:00
Peize-Liu
2f4d6b6fac
[Fix][hkust_nxt-dual]:board hkust_nxt-dual fix hw_config.h missing APP_RESERVATION_SIZE param ( #23204 )
2024-05-30 10:35:04 +02:00
Silvan Fuhrer
efe2a52eb4
ROMFS: remove MIS_DIST_1WP customizations in airframes
...
Signed-off-by: Silvan Fuhrer <silvan@auterion.com >
2024-05-29 21:00:35 -04:00
Silvan Fuhrer
752051470f
Navigator: increase default of MIS_DIST_1WP to 10km
...
The previous default of 900m leads to many warnings if left
unchanged, especially if the vehicle is already in-air when
the Mission is started.
Signed-off-by: Silvan Fuhrer <silvan@auterion.com >
2024-05-29 21:00:35 -04:00
bresch
993782cffa
ekf2: only trigger position timeout reset when hpos fusion is active
2024-05-29 20:49:14 -04:00
Silvan Fuhrer
0379048ad2
mavsdk_tests: increase acceptance radius for position check on offboard landing
...
Signed-off-by: Silvan Fuhrer <silvan@auterion.com >
2024-05-29 20:46:26 -04:00
Eric Katzfey
ae34e39b7e
QuRT: Increased the size of the memory heap available to qurt platform ( #23194 )
...
* Increased the size of the memory heap available to qurt platform
2024-05-29 20:44:40 -04:00
Daniel Agar
f3d152741c
boards: sky-drones_smartap-airlink_default disable gyro_fft module to save flash
2024-05-29 20:38:49 -04:00
Daniel Agar
b36f47535e
boards: px4_fmu-v6c_default disable gyro_fft module to save flash
2024-05-29 20:38:49 -04:00
Daniel Agar
a80c96e575
boards: px4_fmu-v5x_test disable payload_deliverer module to save flash
2024-05-29 20:38:49 -04:00
Per Frivik
267cb9906e
integrationtests: mavros increase threshold for yaw_error_std
2024-05-29 11:11:09 -04:00
David Sidrane
f655d1be9b
Update px4_fmu-v6xrt Bootloader
2024-05-29 11:08:49 -04:00
David Sidrane
3beb57aae1
px4_fmu-v6xrt & bootloader:Bootloader enusres that ITCM memory is writable before jump to APP
2024-05-29 11:08:49 -04:00
David Sidrane
d79c5f170b
bootloader/common/bl.c:Fixed Wrong vec_base caculation - only effects imxrt
2024-05-29 11:08:49 -04:00
David Sidrane
04e0d3475f
nxp/imxrt_common/main:Fix Breakage from a9962dc
2024-05-29 11:08:49 -04:00
Matthias Grob
daa89ba30a
Jankinsfile-compile: add missing comma after ark_pi6x_default
2024-05-29 15:42:41 +02:00
Jacob Dahl
a4650fd70d
HealthCheck: added health check for logger to report if it's running ( #22781 )
2024-05-29 11:56:50 +02:00
Hamish Willee
b5627f487f
camera_trigger: module docs for camera trigger driver ( #23104 )
2024-05-29 11:37:27 +02:00
Matthias Grob
d1db0addf9
CameraFeedback: shorten line length such that documentation parser works
...
This broke in 4f64acb352 and was also flagged by CI in the pr and since then.
2024-05-29 11:24:53 +02:00
Silvan Fuhrer
032ae69eee
VTOL: remove _dt passing as it's no longer used (and was wrong)
...
Signed-off-by: Silvan Fuhrer <silvan@auterion.com >
2024-05-28 14:54:33 +02:00
Silvan Fuhrer
f8fe7c7aa3
VTOL Standard: fix transition pusher motor slew rate
...
Signed-off-by: Silvan Fuhrer <silvan@auterion.com >
2024-05-28 14:54:33 +02:00
Matthias Grob
dfee9ca4c6
MAVLink: remove never used _mavlink_link_termination_allowed
2024-05-28 10:41:00 +02:00
Silvan Fuhrer
1206005ed2
RTL_status: improve comment
...
Signed-off-by: Silvan Fuhrer <silvan@auterion.com >
2024-05-27 12:03:16 +02:00
Silvan Fuhrer
42bca65cbf
RTL_mission_reverse: start from previous WP if RTL is triggered while in Mission
...
Signed-off-by: Silvan Fuhrer <silvan@auterion.com >
2024-05-27 12:03:16 +02:00
Silvan Fuhrer
b9d3b9f211
RTL_mission_fast: continue mission if RTL is triggered while in Mission
...
Signed-off-by: Silvan Fuhrer <silvan@auterion.com >
2024-05-27 12:03:16 +02:00
bresch
f9e2ab8d44
msg-rates-setpoint: fix frame name NED -> FRD
2024-05-27 09:35:34 +02:00
Jacob Dahl
da35c4adce
cdcacm_autostart: handle USB power only ( #23183 )
2024-05-25 17:16:34 -06:00
bresch
ccbcbbe268
wind_est_replay: report scale instead of inverse_scale
...
The estimator internally estimates the scale inverse, but the interface
should be the scale as "airspeed_corrected = scale * airspeed"
2024-05-24 17:25:39 +02:00
Hamish Willee
4f64acb352
Docs for camera_feedback module ( #23103 )
...
* Docs for camera_feedback module
* Update src/modules/camera_feedback/CameraFeedback.cpp
* Update src/modules/camera_feedback/CameraFeedback.cpp
2024-05-23 08:44:34 +10:00
Beat Küng
e1ffc2cdaa
commander: add check for 5V overcurrent
2024-05-22 09:34:04 +02:00
Julian Oes
a9962dc44d
boards: update all bootloaders
2024-05-22 18:18:55 +12:00
Julian Oes
5bace785e0
px_uploader: catch serial exception correctly
...
Signed-off-by: Julian Oes <julian@oes.ch >
2024-05-22 18:18:55 +12:00
Julian Oes
e4fd80b6ef
bootloader: remove unused/duplicate defines
2024-05-22 18:18:55 +12:00
Julian Oes
6ebb2b33df
bootloader: track ArduPilot protocol
...
Just so we don't conflict on these commands in the future.
2024-05-22 18:18:55 +12:00
Julian Oes
8fe8f2fcb3
px_uploader.py: clean up various tidbits
...
Includes:
- Remove some of the outdated Python2 checks and compatibility.
- Try not catch all exceptions but only the expected ones. Otherwise,
this makes it really hard to debug if anything unexpected actually
goes wrong.
- Make use of fstrings.
- Make output slightly prettier.
Signed-off-by: Julian Oes <julian@oes.ch >
2024-05-22 18:18:55 +12:00
Julian Oes
7c4507b6d6
bootloader: add bootloader version
...
This adds a new protocol extension which allows to get the bootloader
version.
The bootloader version is different from the bootloader protocol
revision which has stabilized at 5 and is not easy to update unless a
bootloader is actually breaking the protocol. The reason being that both
the Python script as well as the uploader used in QGC will not attempt
to load firmware if they don't know the bootloader version, so it could
basically be considered a "breaking" protocol revision.
Signed-off-by: Julian Oes <julian@oes.ch >
2024-05-22 18:18:55 +12:00
Julian Oes
21e550fdba
tools/bootloader: add force-erase option
...
If the STM32H7 fails to program or erase a full chunk of 256 bytes, the
ECC check will trigger a busfault when trying to read from it.
To speed up erasing and optimize wear, we read before erasing to check
if it actually needs erasing. That's when a busfault happens and the
erase time outs.
The workaround is to add an option to do a full erase without check.
Credit goes to:
https://github.com/ArduPilot/ardupilot/pull/22090
And the protocol option added to the bootloader is the same as for
ArduPilot, so compatible.
Signed-off-by: Julian Oes <julian@oes.ch >
2024-05-22 18:18:55 +12:00
Jacob Dahl
4a13e495d7
boards: ark: pi6x: CONFIG_DRIVERS_CDCACM_AUTOSTART=y ( #23163 )
2024-05-21 19:49:40 -06:00
Konrad
664a0f2cda
HomePosition: Add minimum position change needed to be recognised as new home position
2024-05-21 09:11:56 +02:00
alexklimaj
1c213fa760
boards: arkv6x ark_pi6x change mavlink dialect to development
2024-05-20 16:07:34 -04:00
Jacob Dahl
e72ecdbefb
drivers/imu: new Murata SCH16T IMU driver ( #22914 )
...
---------
Co-authored-by: alexklimaj <alex@arkelectron.com >
2024-05-20 14:38:19 -04:00
Jacob Dahl
70304fe715
[mavlink] Parameter to always start on USB ( #22234 )
...
* usb: Added parameter to enable always starting mavlink on USB.
Refactored cdcacm_init into a module and added a paramter to allow always starting mavlink on
USB, also added a paramter to choose the mode. The current default behavior is to wait and listen
for data on USB and auto-detect the protocol (mavlink, nsh, ublox). This results in the mavlink
stream not starting until something else on the mavlink network sends a packet first. The new
default behavior is to always start mavlink.
Added parameters
MAV_USB_ENABLE -- default 1 (always start mavlink on USB)
MAV_USE_MODE -- default 3 (onboard)
* added 3 retries for opening serial port in mavlink, removed sleep before sercon
* added DRIVERS_CDCACM_AUTOSTART to ark-v6x default.px4board
* added CONFIG_DRIVERS_CDCACM_AUTOSTART=y to default.px4board for boards with CONFIG_CDCACM in their nsh/defconfig
* format
* remove PGA460 from COMMON_DISTANCE_SENSOR to save flash
* remove LIS2MDL from COMMON_MAGNETOMETER to save flash
* disable CONFIG_DRIVERS_CDCACM_AUTOSTART for fmu-v5 protected.px4board
* moved and renamed parameters, removed mode logic in mavlink
* changed parameter names, added mode none
* remove parameters from mavlink
2024-05-20 12:35:29 -06:00
Peter van der Perk
6b0ac49daf
hardfault_log: Add jump to 0x0 & write 0x0 faults
2024-05-17 14:43:23 -04:00
Peter van der Perk
ebfa53286f
dronecan: SocketCAN driver check size before copying
...
Avoids memory corruption if we get packets to big
2024-05-17 14:39:52 -04:00
Peter van der Perk
470bea9ba8
Update NuttX
...
Fixes imxrt1170 mpu config for extra checks
2024-05-17 14:32:43 -04:00
Daniel Agar
d359f6236e
ekf2: symforce zero more efficiently ( #23133 )
...
- increase symforce CppConfig zero_initialization_sparsity_threshold so
that a Matrix setZero() call is performed instead of individually zeroing
Co-authored-by: bresch <brescianimathieu@gmail.com >
2024-05-17 11:20:30 +02:00
bresch
ea39032b45
mag_ctrl: combine common conditions for mag_hdg and mag_3d
2024-05-17 11:19:04 +02:00
bresch
d796009302
mag_ctrl: do not fuse synthetic mag but do not zero the innovation
2024-05-17 11:19:04 +02:00
Daniel Agar
bb5dfc7d51
integrationtests: mavros/mission_test.py bump yaw_error_std threshold (heading init is delayed, but not wrong)
2024-05-17 11:19:04 +02:00
Daniel Agar
5173830718
ekf2: mag fusion don't update all states or tilt by default
...
- cleanup some of the legacy mag flags
2024-05-17 11:19:04 +02:00
Daniel Agar
bfc39cf341
ekf2: mag control always populate estimator aid src
2024-05-17 11:19:04 +02:00
Daniel Agar
95ae5a657d
ekf2: merge mag_3d_control + mag_control
2024-05-17 11:19:04 +02:00
bresch
b42799fac2
wind_est_replay: allow setting the initial scale factor
2024-05-17 09:17:08 +02:00
bresch
440465702e
wind_est_replay: fix cov matrix format and data indexing
2024-05-17 09:17:08 +02:00
fury1895
6a966ab065
px4/fmu-v6x: set mavlink dialect to development
2024-05-17 07:51:14 +02:00
Alexis Guijarro
5fe955c243
mRo Control Zero Classic: Definition for GPS2 by default added
2024-05-16 09:45:33 -07:00
alexklimaj
ecf4af7cf7
boards: ark cannode add ADIS16507 driver
2024-05-16 09:56:25 -04:00
Thomas Frans
9fd1c54570
style(editorconfig): update newline setting
...
The setting wasn't consistent with the one used in the Visual Studio
Code settings, which caused different newline formatting depending on
whether the user uses Visual Studio Code or another editor that uses
EditorConfig.
2024-05-15 11:40:11 -04:00
dirksavage88
ee2a8c9bda
increase lp default stack to 2000
...
Signed-off-by: dirksavage88 <dirksavage88@gmail.com >
2024-05-15 11:08:48 -04:00
Hamish Willee
2e7a99ac41
VectorNav.cpp - fix docs link to usage guide
2024-05-15 11:07:50 -04:00
Konrad
17916b7fdc
uxcre_dds_client: use topic name as defined in the dds_topics.yaml to register stream
2024-05-15 11:07:01 -04:00
Eric Katzfey
293389abf3
Minor updates to the VOXL 2 board README file
2024-05-14 12:25:22 -04:00
Eric Katzfey
839f5bbb12
Removed obsolete voxl 2 board default parameter setting
2024-05-14 11:08:43 -04:00
Peter van der Perk
253208fdd4
fmu-v6xrt: Add I2C driver launcher
2024-05-08 11:34:13 -04:00
Peter van der Perk
5789803665
fmu-v6xrt: Enable debug features for more verbose hardfault output
2024-05-08 06:14:24 -04:00
Julian Oes
b1b9c8fd99
gps: add note to param
...
This notes the reference yaw angle for the Septentrio Mosaic-H.
It's unfortunately a bit tricky in that Unicore has the main antenna
in front by default while Septentrio decided to put the aux antenna in
front.
Signed-off-by: Julian Oes <julian@oes.ch >
2024-05-07 21:15:44 -04:00
Benjamin Philipp Ketterer
5d025e6d3d
increased uxrce-dds stack size to prevent overflow
2024-05-07 21:13:58 -04:00
alexklimaj
b9a696d025
boards: ark septentrio gps add iis2mdc
2024-05-07 21:12:15 -04:00
RomanBapst
ca9cb2214f
quadchute: fixed sign for handling altitude resets
...
Signed-off-by: RomanBapst <bapstroman@gmail.com >
2024-05-07 16:01:09 +02:00
muramura
b5467d88f7
gps: Change the IF statement to a SWITCH statement
2024-05-07 15:58:15 +02:00
Konrad
6984e6da7f
TECS:use tas_setpoint instead of measured tas for specific kinetic energy calculation
2024-05-07 14:20:07 +02:00
Konrad
f56f4c7033
TECS: enable specific energy weights to have a value up to 2
2024-05-07 14:20:07 +02:00
Konrad
f8a20e1964
TECS: increase airspeed control limit for fast descend
2024-05-07 14:20:07 +02:00
Konrad
6a789b54c6
TECS: allow for fast descend up to maximum airspeed. Use pitch control loop to control max airspeed while giving minimal throttle.
2024-05-07 14:20:07 +02:00
Beat Küng
e17faece3d
mavlink_ftp: do not store reply on kErrNoSessionsAvailable
...
This would interfere with an existing ongoing session
2024-05-07 07:26:12 +02:00
Beat Küng
f002b08e6a
mavlink_ftp: ensure there's enough space for the 2. path in _workRename
...
Prevents accessing invalid memory when reading ptr + oldpath_sz + 1 and
oldpath_sz fills out the whole or N-1 bytes of the payload.
2024-05-07 07:26:12 +02:00
Beat Küng
f16115d8be
mavlink_ftp: handle relative paths correctly
...
by ensuring there's a '/' in between when concatenating the path with
_root_dir.
2024-05-07 07:26:12 +02:00
Julian Oes
f04d17d160
Tools: skip submodule check in CLion
...
Same as what's required for VSCode.
Signed-off-by: Julian Oes <julian@oes.ch >
2024-05-05 11:33:24 +12:00
Beat Küng
9e6dcb1f60
fix mavlink: cmd_logging_{start,stop}_acknowledgement flags were not reset
...
Regression from https://github.com/PX4/PX4-Autopilot/pull/23043
Also avoids a race condition by making sure the command ack is handled
before sending out the mavlink message (in case an external component
reacts immediately to the mavlink message).
2024-05-03 06:59:55 +02:00
Alex Klimaj
36ea872e72
drivers: adis16507 reschedule reset after failed self test
2024-05-02 17:52:26 -04:00
Daniel Agar
224d6f2fa7
ekf2: ekf_helper.cpp remove duplicate method comments (comment on declaration only, not definition)
2024-05-02 17:40:58 -04:00
Daniel Agar
c1fc893cca
ekf2: move gyro/accel/wind covariance reset helpers to covariance.cpp
2024-05-02 17:40:58 -04:00
Daniel Agar
63c2ea33c1
ekf2: move Ekf::resetQuatStateYaw() to yaw_fusion.cpp
2024-05-02 17:40:58 -04:00
Daniel Agar
1ca4056b6a
ekf2: delete unused Ekf::resetImuBias()
2024-05-02 17:40:58 -04:00
Daniel Agar
6b3b66619b
ekf2: move baro dynamic pressure compensation to aid_sources/barometer
2024-05-02 17:40:58 -04:00
Daniel Agar
4f0eb72fc9
ekf2: move IMU down sampler to imu_down_sampler/
2024-05-02 17:40:58 -04:00
Daniel Agar
58637d3825
ekf2: move terrain estimator and derivation to terrain_estimator/
2024-05-02 17:40:58 -04:00
Daniel Agar
58de8cbb77
ekf2: move fake_height, fake_pos, zero_innovation_heading to aid_sources/
2024-05-02 17:40:58 -04:00
Daniel Agar
49c782bad9
ekf2: move bias estimators to bias_estimtor/
2024-05-02 17:40:58 -04:00
Daniel Agar
e262fde4dc
ekf2: move aux global position fusion to aid_sources/aux_global_position
2024-05-02 17:40:58 -04:00
Daniel Agar
b8d46e60a5
ekf2: move mag fusion to aid_sources/magnetometer
2024-05-02 17:40:58 -04:00
Daniel Agar
3f6c3e0649
ekf2: move output predictor to output_predictor/
2024-05-02 17:40:58 -04:00
Daniel Agar
24fdd696cb
ekf2: move range finder files to aid_sources/range_finder
2024-05-02 17:40:58 -04:00
Daniel Agar
3dbd3f8a1a
ekf2: move airspeed fusion file to aid_sources/airspeed
2024-05-02 17:40:58 -04:00
Daniel Agar
789b2b3d8a
ekf2: move sideslip fusion file to aid_sources/sideslip
2024-05-02 17:40:58 -04:00
Daniel Agar
eb8ee74066
ekf2: move baro height file to aid_sources/barometer
2024-05-02 17:40:58 -04:00
Daniel Agar
de178b1435
ekf2: move gravity fusion file to aid_sources/gravity
2024-05-02 17:40:58 -04:00
Daniel Agar
78f2ccbb60
ekf2: move optical flow files to aid_sources/optical_flow
2024-05-02 17:40:58 -04:00
Daniel Agar
fcf94e7670
ekf2: move GNSS files to aid_sources/gnss
2024-05-02 17:40:58 -04:00
Daniel Agar
31ae5b77fe
ekf2: move drag_fusion file to aid_sources/drag
2024-05-02 17:40:58 -04:00
Daniel Agar
c3fb0b1090
ekf2: move auxvel file to aid_sources/auxvel
2024-05-02 17:40:58 -04:00
Daniel Agar
b5d1e87368
ekf2: move EV files to aid_sources/external_vision
2024-05-02 17:40:58 -04:00
Peter van der Perk
f382e585e8
sd_bench: Add U option for forcing byte aligned
...
Co-authored-by: David Sidrane <david.sidrane@nscdg.com >
2024-05-02 12:33:25 -04:00
Daniel Agar
c64104e9f1
sensors/vehicle_angular_velocity: silence gyro selection fallback warning (PX4_WARN -> PX4_DEBUG)
...
- this warning was to catch any potential errors in sensor selection
relative to what's actually available, we don't need to complain
about initial selection before the EKF selector is available
2024-05-02 11:53:31 -04:00
David Sidrane
c13e3bae12
px4_fmu-v6xrt:Support_MMCSD_MULTIBLOCK with preflight
2024-05-01 20:45:42 -04:00
David Sidrane
a3e1dcce4b
NuttX with imxrt_sd-preflight backport
2024-05-01 20:45:42 -04:00
Daniel Agar
33234f4dc0
drivers/ins/vectornav: add missing sensor_gps velocity magnitude
2024-05-01 20:40:28 -04:00
Julian Oes
e79993a316
gps: split enum after rebase
...
Signed-off-by: Julian Oes <julian@oes.ch >
2024-05-01 14:42:58 -04:00
alexklimaj
b308c4fbcc
boards: ark rtk gps safety led open drain
2024-05-01 14:42:58 -04:00
alexklimaj
c90ccabbe0
gps: add ZED-F9P-15B
2024-05-01 14:42:58 -04:00
alexklimaj
2498ce6a5c
boards: add iis2mdc mag to ark pi6x
2024-04-30 21:26:42 -04:00
alexklimaj
67b39314bf
boards: update ark_pi6x EKF delays
2024-04-30 21:26:42 -04:00
Daniel Agar
b6da0b141d
ekf2: GPS yaw only invalidate yaw_align if stopping due to fusion failure
2024-04-29 21:04:21 -04:00
Beat Küng
547209e1dc
libevents: update submodule
...
And remove obsolete libevents_definitions.h
2024-04-29 07:22:40 -07:00
bresch
9dc7719d4a
ekf2: Only reset to GNSS heading if necessary
...
When North-East (e.g.: GNSS pos/vel) aiding is active, the heading
estimate is constrained and consistent with the vel/pos aiding. Reset to
GNSS heading should only occur if no N-E aiding is active or if the
filter is not yes aligned. Otherwise, just wait for the consistency
check to pass again (will pass at some point if the heading uncertainty
of the filter is getting too high).
2024-04-29 07:22:01 -07:00
Jukka Laitinen
6435e25929
commander: Use PX4_STACK_ADJUSTED to increase stack for 64-bit targets
...
Signed-off-by: Jukka Laitinen <jukkax@ssrc.tii.ae >
2024-04-29 08:11:54 +02:00
Hamish Willee
902712b97f
LogMessage.msg - expand out descriptive string ( #23054 )
2024-04-29 14:02:09 +12:00
Peter van der Perk
500332e424
imxrt: flexpwm remove 1:1 mapping requirement
2024-04-27 07:57:32 -04:00
Silvan Fuhrer
34cb69898e
FW Position Controller: fix Altitude mode without valid z reference (e.g. no GPS)
...
Signed-off-by: Silvan Fuhrer <silvan@auterion.com >
2024-04-26 10:44:40 +02:00
oravla5
f91103af6e
boards: removed CONFIG_SYSTEMCMDS_REFLECT from Sky-Drones AIRLink board support
2024-04-26 09:42:06 +02:00
oravla5
9d6ac0b87a
mavlink: Added MAV_{i}_HL_FREQ parameter
2024-04-26 09:42:06 +02:00
oravla5
2b2e1c9521
mavlink: Added parsing of CLI option to configure HL frequency
2024-04-26 09:42:06 +02:00
oravla5
e7b4c5903f
px4_cli: Added px4_get_parameter_value function overload for float type
2024-04-26 09:42:06 +02:00
bresch
7cefc3172a
estimatorCheck: get param only if handle is valid
2024-04-25 14:48:23 -04:00
murata,katsutoshi
ba448fb549
MC Auto: add fixed yaw mode
2024-04-25 13:53:05 +02:00
oravla5
98b23e41f7
mavlink: fixed compilation error after var renaming
2024-04-25 08:23:32 +02:00
oravla5
283ae60a15
telemetry: removed iridium driver
2024-04-25 08:23:32 +02:00
oravla5
3cb48feb61
high_latency_stream: minor PR fix
2024-04-25 08:23:32 +02:00
oravla5
bf1266af11
mavlink: added back gimbal v1 protocol command
2024-04-25 08:23:32 +02:00
oravla5
03652beef8
commander: fixed format
2024-04-25 08:23:32 +02:00
oravla5
d0e7f2c368
high_latency_stream: heading taken from vehicle_attitude topic
2024-04-25 08:23:32 +02:00
Igor Mišić
d0532f45b2
telemetry: enable iridium
2024-04-25 08:23:32 +02:00
Igor Mišić
61ca65d863
mavlink: use high_latency_data_link_lost as backup to normal data_link
2024-04-25 08:23:32 +02:00
Igor Mišić
4f8de500af
iridiumsbd: update logic for detecting if the modem is not responsive
2024-04-25 08:23:32 +02:00
Igor Mišić
5be0adc779
mavlink: don't send command ACK for internal commands over Iridium
2024-04-25 08:23:32 +02:00
Igor Mišić
29af189cd0
mavlink: don't send events over Iridium
2024-04-25 08:23:32 +02:00
Igor Mišić
208909d471
mavlink: use high_latency_data_link_lost as backup to normal data_link
2024-04-25 08:23:32 +02:00
Igor Mišić
de23c10b68
commander: improve handling high latency link lost/regain
2024-04-25 08:23:32 +02:00
Igor Mišić
d3b853a7f9
mavlink: fix handling of transmission enable/disable
...
Co-authored-by: RomanBapst <bapstroman@gmail.com >
2024-04-25 08:23:32 +02:00
Igor Mišić
760bcdec2f
high_latency_stream: fixed bug where fields were not updating
...
- topic update was checked twice in the same loop and thus
the second time the topic would never indicate to have updated
Co-authored-by: RomanBapst <bapstroman@gmail.com >
2024-04-25 08:23:32 +02:00
Igor Mišić
df2cc4af05
commander: fix check for availability of high latency link
...
Signed-off-by: RomanBapst <bapstroman@gmail.com >
2024-04-25 08:23:32 +02:00
Beat Küng
f543951e10
commander: set correct health component when reporting errors
2024-04-24 16:06:32 -04:00
Jacob Dahl
69e082c83d
drivers/magnetometer: new ST IIS2MDC Magnetometer driver
2024-04-24 13:01:18 -07:00
dirksavage88
6a3e57d428
Shift vertical orientation above scaling yaw operation, cp angle sign change
...
Signed-off-by: dirksavage88 <dirksavage88@gmail.com >
2024-04-24 15:58:12 -04:00
dirksavage88
0f6f4c5b07
fix to orientation offsets for scaled yaw, removed unused param
...
Signed-off-by: dirksavage88 <dirksavage88@gmail.com >
2024-04-24 15:58:12 -04:00
Thomas Frans
65c7e034dc
VSCode: add EditorConfig extension to recommended and devcontainer.json
2024-04-24 15:52:23 -04:00
Daniel Agar
eb59bb9de9
simulation/gz_bridge: eliminate implicit float conversion
2024-04-24 15:51:30 -04:00
bresch
b508df39a2
imu consistency: don't scale param threshold
2024-04-24 15:51:07 -04:00
bresch
8bf1cf0b15
ekf2_params: reduce "short" description
2024-04-24 15:09:57 -04:00
Silvan Fuhrer
97191bd60f
autopilot_tester: for mission end timeout check take speed factor into account
...
And increase the (simulation time) timeouts.
Signed-off-by: Silvan Fuhrer <silvan@auterion.com >
2024-04-23 16:37:31 +02:00
Silvan Fuhrer
818e318334
autopilot_tester: reduce mission distance for wind world
...
Signed-off-by: Silvan Fuhrer <silvan@auterion.com >
2024-04-23 16:37:31 +02:00
Silvan Fuhrer
59232c27ae
autopilot_tester: use normal VTOL mission for airspeed blockage test
...
Signed-off-by: Silvan Fuhrer <silvan@auterion.com >
2024-04-23 16:37:31 +02:00
fury1895
2683128205
PM Selector Auterion: remove INA226_SHUNT value reset (skynode only)
2024-04-23 16:02:35 +02:00
Daniel Agar
bfb04ddd19
CMakeLists: install_python_requirements allow --break-system-packages
2024-04-22 12:11:53 -04:00
bresch
4cf51e5833
baro comp: set hpf optional
2024-04-22 15:59:50 +02:00
Tero Salminen
e202e719b0
bmp388: check bus return code after register read
...
Check I2C/SPI bus transfer function return code after register
read operation.
Signed-off-by: Tero Salminen <tero.salminen@unikie.com >
2024-04-22 10:20:40 +02:00
asimopunov
f95a2021cd
adsb: warnings fixes & remove UTM_GLOBAL_POSITION ( #21663 )
...
- warn about full traffic conflict buffer at 1/60hz.
- add conflict expiry for buffer.
- use only events for buffer full warning. mavlink_log_critical no longer needed.
- use icao address for conflict warnings id, stop using uas_id. UTM_GLOBAL_POSITION assumed deprecated.
- stop spamming when buffer is full
- fix warning wording if buffer is full.
- remove UTM_GLOBAL_POSITION
Fixes failing unit test:
* [adsbTest] Reduce conflict timestamps - not enough time has passed in ci
- failed ci output - (passes locally with make tests TESTFILTER=AdsbConflict)
- Timestamp: 6000000000
- Time now: 457720038
- Time since timestamp: 0
- Old Conflict warning expired: 0
- --------------------
- adsb_conflict._traffic_state 0
- ../../src/lib/adsb/AdsbConflictTest.cpp:244: Failure
- Value of: adsb_conflict._traffic_state == TRAFFIC_STATE::REMIND_CONFLICT
- Actual: false
- Expected: true
2024-04-22 10:14:39 +02:00
Juyong Shin
c7725d74b4
fw offboard control mode: altitude control enabled ( #23041 )
2024-04-22 06:57:57 +02:00
Daniel Agar
0a7689f323
drivers/optical_flow/paa3905: fix RegisterRead udelay
2024-04-18 20:57:37 -04:00
Daniel Agar
2a328615ed
drivers/optical_flow/paw3902: fix RegisterRead udelay
2024-04-18 20:57:37 -04:00
Daniel Agar
ec3ceae45e
ekf2: move yaw_estimator and derivation to dedicated folder
2024-04-18 15:14:59 -04:00
Eric Katzfey
2dccd6cacb
Voxl ESC driver update ( #23022 )
...
* Made Serial API open the UART in NON BLOCKING mode
* Updated voxl_esc driver to latest from ModalAI fork
* Ported voxl_esc driver over to new Serial UART API
* Removed voxl_esc serial abstraction since new Serial API is already a serial abstraction
2024-04-17 15:09:35 -04:00
bresch
a8a67fbf8f
ekf2: set horizon using specific parameter
...
Some sensors can have their delay included in the timestamp. In this
case, the buffer cannot be sized using the _DELAY parameter.
2024-04-17 09:16:16 -04:00
Hamish Willee
6796945d0b
Fix up notes boxes for docs ( #22999 )
...
* Fix up notes boxes for docs
* Update markdownout.py
* Update markdownout.py
* Update markdownout.py
2024-04-17 13:28:07 +12:00
Jacob Dahl
ff1da2ba29
remove clip_limit contraint on INT16_MAX
2024-04-16 11:43:55 -04:00
Sergei
b909cc1b5b
Updated GZ submodule to the latest hash (d754381)
2024-04-16 11:36:57 -04:00
Sergei Grichine
c64f5128b4
Update CMakeLists.txt - included lawn world
...
Added lawn world to make process to allow gz sim building like "make px4_sitl gz_r1_rover_lawn"
2024-04-16 11:36:57 -04:00
Beniamino Pozzan
2476883525
logger: add timesync_status to default logged topics
...
Signed-off-by: Beniamino Pozzan <beniamino.pozzan@gmail.com >
2024-04-16 11:29:35 -04:00
bresch
7a973eddce
ekf2: migrate param to yaml
2024-04-16 11:14:13 -04:00
bresch
42a16bd91d
order yaml fileds
2024-04-16 11:14:13 -04:00
Kalyan Sriram
2fe4fec491
Add python script to translate C param to new yaml file
2024-04-16 11:14:13 -04:00
JaeyoungLim
05cd850ae3
Document vehicle attitude message
2024-04-16 16:44:56 +02:00
Eric Katzfey
94d496605a
Voxl new board specific module (voxl_save_cal_params) to save calibration parameters ( #22993 )
...
* Added Voxl board specific module to save calibration parameters in QGC format
2024-04-15 16:10:22 -04:00
Eric Katzfey
d908b68c78
lib/rc/dsm: update proto init to have reset incorporated as well ( #22995 )
...
* update voxl2-slpi spektrum_rc driver
2024-04-15 16:09:19 -04:00
Eric Katzfey
0f665f2772
Added high rate esc_status logging to the high rate logging category along with actuator_outputs_debug. Both of these
...
really help diagnosing odd flight behavior / crashes on VOXL2. Also changed the logger start commands in the VOXL2
standard and HITL startup scripts.
2024-04-15 16:07:07 -04:00
Daniel Agar
78bbb66568
delete SYS_MC_EST_GROUP
...
- introduce per module parameters (EKF2_EN, LPE_EN, ATT_EN)
- add basic checks to prevent EKF2 + LPE running simultaneously
2024-04-15 16:06:08 -04:00
alexklimaj
1b1479a92b
airframes: Droneblocks DEXI 5
2024-04-12 14:44:01 -04:00
alexklimaj
528ad1e87d
boards: ARK Pi6X Initial Commit
2024-04-12 14:44:01 -04:00
Jacob Dahl
65cc153d47
remove LIS2MDL from COMMON_MAGNETOMETER
2024-04-12 14:43:20 -04:00
Jacob Dahl
8a8f481c29
remove PGA460 from COMMON_DISTANCE_SENSOR
2024-04-12 14:43:20 -04:00
Silvan Fuhrer
926e7878af
RT: only chose mission RTL if mission is valid
...
Signed-off-by: Silvan Fuhrer <silvan@auterion.com >
2024-04-11 13:47:17 +02:00
Silvan Fuhrer
5fab21d099
MissionBase: hasMissionLandStart should only return true if mission is valid
...
Signed-off-by: Silvan Fuhrer <silvan@auterion.com >
2024-04-11 13:47:17 +02:00
Silvan Fuhrer
05672f343d
TECS: check if integrator update is finit prior applying
...
Signed-off-by: Silvan Fuhrer <silvan@auterion.com >
2024-04-11 10:42:59 +02:00
Silvan Fuhrer
974ead4015
FW position control: catapult/hand-launch: enable without launch detection
...
Signed-off-by: Silvan Fuhrer <silvan@auterion.com >
2024-04-11 10:42:59 +02:00
Silvan Fuhrer
6fec452c4b
FW position control: catapult/hand-launch: do not cut throttle if not landed
...
Signed-off-by: Silvan Fuhrer <silvan@auterion.com >
2024-04-11 10:42:59 +02:00
Konrad
6a7555c005
mission_base: fix to set the end of mission item always, if the mission can't be properly loaded or started
2024-04-11 10:21:52 +02:00
alexklimaj
cc11e1fbbf
drivers: broadcom AFBR fix close to ground false readings
2024-04-10 11:47:04 -04:00
Eric Katzfey
b544ea99d5
Enabled voxl2-slpi dsp_sbus driver in build
2024-04-10 11:07:24 -04:00
Eric Katzfey
f8df7d1621
Move Voxl from microdds client to uxrce dds client
2024-04-10 11:06:32 -04:00
Peter van der Perk
7bfad2502b
Update NuttX
2024-04-10 11:04:07 -04:00
Hamish Willee
f9c65cd4c6
Vuepress removal /changes for vitepress ( #22972 )
...
* Vuepress removal /changes for vitepress
* generate_msg_docs.py - README is index in vitepress
2024-04-10 09:08:25 +10:00
Eric Katzfey
d8fabd11d0
Send mavlink manual control buttons field in manual control input topic ( #22988 )
...
Pass along button states from manual control mavlink message in new buttons field in manual control input topic
2024-04-09 12:35:42 -07:00
David Sidrane
a73df4752f
px4_fmu-v6x:Add Holybro Pixhawk Jetson Baseboard ver 0x100
2024-04-09 11:27:29 -04:00
Alex Klimaj
297ddabe70
drivers: rc_input only publish if more than 0 rc channels filled (fixes GHST auto scan)
2024-04-09 11:19:41 -04:00
Silvan Fuhrer
64505b4b9c
Mission params: update description of MIS_TKO_LAND_REQ
...
Signed-off-by: Silvan Fuhrer <silvan@auterion.com >
2024-04-09 13:24:46 +02:00
Silvan Fuhrer
93ed910977
FeasibilityChecks: only require both or neither TO/LND when landed
...
Signed-off-by: Silvan Fuhrer <silvan@auterion.com >
2024-04-09 13:24:46 +02:00
Silvan Fuhrer
9f799be855
Navigator: remove unused method
...
Signed-off-by: Silvan Fuhrer <silvan@auterion.com >
2024-04-09 13:24:46 +02:00
bresch
5f61e3b785
ekf2: update change indicator
2024-04-05 22:26:03 -04:00
bresch
b79d3854e4
ekf2: remove option to continuously fuse mag declination
...
Declination fusion is only used when not observable (no global aiding).
2024-04-05 22:26:03 -04:00
bresch
dae246d7e2
ekf2: do not continuously use mag decl fusion when GNSS fusion is active
...
This prevents over-constraining the heading from mag fusion. An
incorrect mag yaw rotation can be absorbed as a declination error.
2024-04-05 22:26:03 -04:00
bresch
2f51db7284
ekf2: limit mag heading fusion to prevent heading overconfidence
2024-04-05 22:26:03 -04:00
bresch
51883fe5d4
ekf2: integrate mag heading into mag 3D
2024-04-05 22:26:03 -04:00
bresch
0c9e4013d2
ekf2: improve tilt leveling speed
...
Starting with no yaw uncertainty makes the tilt more observable when
using fake position fusion during the quasi-stationary alignment phase.
2024-04-05 22:26:03 -04:00
bresch
12fefbcfbd
ekf2: use global definition of quaternion error
2024-04-05 22:26:03 -04:00
Noe S. Sanchez
3931379efe
msg: update VehicleCommand.msg MAV_CMD_DO_REPOSITION comment
...
Added missing MAV_CMD_DO_REPOSITION parameters, from MAVlink Docs.
2024-04-05 21:29:44 -04:00
Jacob Dahl
7fbbdc31e8
Memsic MMC5983MA magnetometer driver
2024-04-04 21:08:24 -04:00
henrykotze
de9f3a3268
gz-bridge: use correct prev_timestamp for dt calc
...
- with the addition of the navsat plugin in PR#22638, the callback would
reassign the previous timestamp used in the calculations of the
angular_velocity causing derivative type noise in the groundtruth
measurements
2024-04-04 12:09:06 -04:00
Eric Katzfey
0a867b5d1d
Serial: removed the validateBaudrate function from nuttx and posix platforms and just send out a warning it baudrate is non-standard ( #22969 )
...
- Fix some Qurt platform build issues uncovered when changing the posix version of SerialImpl
2024-04-04 12:07:46 -04:00
Peter van der Perk
047e900c2a
px4io: Fix dependency problem caused by #22957
2024-04-04 09:10:09 -04:00
Hamish Willee
8ceeda730d
Jenkinsfile - dual-deploy uorb graph and failsafe to vitepress ( #22943 )
2024-04-03 11:14:30 +11:00
Eric Katzfey
4c2112f46b
boards/modalai/voxl2: added device specifier to gps start line
2024-04-02 19:12:21 -04:00
Matthias Grob
b87c5285e2
battery: weigh voltage based estimate more when it's low
...
This is a minimal change to make it harder to crash a
vehicle with an empty battery if the capacity was set wrong.
The disadvantage is that the state of charge estimate will
fluctuate more under load.
We need better documentation and improvements to the estimation.
2024-04-02 19:22:28 +02:00
Matthias Grob
8579175013
Build new IO firmware binaries
2024-04-02 11:59:56 -04:00
Matthias Grob
ef5569fab3
px4iofirmware: reuse existing disarmed logic for lockdown and should_always_enable_pwm
...
The existing disarmed logic already handles disabled outputs
it makes sense to reuse it and not have lockdown handled
differently resulting in unexpeced corner cases.
2024-04-02 11:59:56 -04:00
Matthias Grob
b714b5461b
px4iofirmware: simplify lockdown logic
2024-04-02 11:59:56 -04:00
Matthias Grob
7f0ec2305c
px4iofirmware: refactor to only have one PWM output code path
...
This removes the duplication with unexpected differences
and allows to consistently handle the output instead of
overriding the output for some specific cases which
leads to unexpected corner cases. E.g. disabled outputs
suddenly outputing PWM in lockdown.
2024-04-02 11:59:56 -04:00
Matthias Grob
ab1087906d
px4io: remove special handling for HITL
...
In HITL the actuators should not be mapped
and they are in lockdown.
We should not reconfigure disarmed, min, max PWM values
without updating the actual output values because the IO
will consider the last outputs before the FMU was rebooted
with the configuration of the new boot. This can result
in spinning motors when switching to SIH.
2024-04-02 11:59:56 -04:00
Silvan Fuhrer
cf87cd27f5
logger: reduce interval of rtl_status logging
...
Signed-off-by: Silvan Fuhrer <silvan@auterion.com >
2024-04-02 09:49:35 -04:00
Silvan Fuhrer
67fb70a65e
logger: make logging of rtl_status not optional
...
Signed-off-by: Silvan Fuhrer <silvan@auterion.com >
2024-04-02 09:49:35 -04:00
Peize-Liu
f7bc13dab0
boards: new hkust nxt-fc board support ( #22961 )
2024-04-02 09:49:10 -04:00
Eric Katzfey
8e61026511
Port CRSF RC driver to new Serial UART API ( #22917 )
...
* Added implementations of Rx Tx swap and single wire for new UART API needed by CRSF driver
* Added inverted mode to Serial interface API
2024-04-01 22:09:13 -04:00
Peter van der Perk
a9ba0acb2a
cmake: all allyes target for better CI coverage
...
Currently only v6x-rt and SITL are supported
But targets with label allyes will try to enable all kconfig symbols
2024-04-01 22:05:20 -04:00
Peter van der Perk
791d7894c8
modules: zenoh: remove broken serial config and update topics
2024-04-01 22:05:20 -04:00
Peter van der Perk
f082de5db7
kconfig: Add dependencies
2024-04-01 22:05:20 -04:00
Peter van der Perk
8817f59108
v6x-rt: Split ITCM static and auto-generated functions
2024-04-01 22:05:20 -04:00
Peter van der Perk
d5b66cac2c
drivers: cyphal: Fix ARM/x86 printf werror portability error
2024-04-01 22:05:20 -04:00
Peter van der Perk
fe8a5eae99
drivers: bmi088_i2c: Enforce I2C driver can only be used when SPI version isn't selected
...
Solves multiple references compilation errors
2024-04-01 22:05:20 -04:00
Peter van der Perk
127d74f2e1
drivers: vector: Fix PX4 SITL x86 compilation
2024-04-01 22:05:20 -04:00
Peter van der Perk
4889ac0ebb
drivers: uavcan: fix werror uninitialized error
2024-04-01 22:05:20 -04:00
Peter van der Perk
650ea6ef4a
drivers: transponder: don't free pre-allocated memory
2024-04-01 22:05:20 -04:00
Peter van der Perk
0c5b25efc5
systemcmds: reflect: write return needs to be used for werror checks
2024-04-01 22:05:20 -04:00
Peter van der Perk
05badb5d76
systemcmds: microbench: %s doesn't except nullptr use "null" instead
2024-04-01 22:05:20 -04:00
Peter van der Perk
54f044c04a
examples: matlab_csv_serial: fix compilation
...
Update uORB definition and sprintf float formatting
2024-04-01 22:05:20 -04:00
Peter van der Perk
daee37d377
drivers: tap_esc: fix Werror=maybe-uninitialized compilation
2024-04-01 22:05:20 -04:00
Peter van der Perk
461b146ba8
drivers: barometer: ms5837 fix compilation error
...
Fixes MS5837.cpp:343:29: error: 'T' was not declared in this scope by using last temperature instead
2024-04-01 22:05:20 -04:00
Julian Oes
0283dc2459
gps: fix Septentrino serial read ( #22936 )
...
For Septententrino we seem to sometimes fill the buffer pretty full.
If we ask for too much, readAtLeast will fail completely and make the
GPS discovery logic fall over. Therefore, let's not ask for too much and
just read what we can given the available buffer.
Signed-off-by: Julian Oes <julian@oes.ch >
2024-04-01 20:46:53 -04:00
Eric Katzfey
71b074b234
Qurt termios decoy ( #22954 )
...
* Added decoy termios support to Qurt so that ghst parser in RC library can be used. No termios is actually needed but has to be there for the parser to work
2024-04-01 18:33:37 -04:00
Eric Katzfey
ccdf060393
Additions to the Serial UART API ( #22953 )
...
- Added an empty constructor, setPort, and validatePort functions for Serial API
- Changed GPS to not allocate Serial object dynamically
- Moved access check on serial port name into the Serial API
- Improved the Qurt platform validatePort Serial function to implement a more rigorous check. Added safety check
to the setPort Serial function to make sure it isn't called after the port has been already opened.
2024-04-01 12:27:59 -04:00
Matthias Grob
416b6a35a4
failsafe framework: inform about failsafe action
2024-03-27 20:22:04 +01:00
Claudio Micheli
0f9531a526
commander: improve failsafe messaging
...
Signed-off-by: Claudio Micheli <claudio@auterion.com >
2024-03-27 20:22:04 +01:00
David Sidrane
3099eac2ba
NuttX with pr-h7-serial-logic-error backport
2024-03-27 14:43:08 -04:00
Matthias Grob
6e86862b6a
boards: unify comments for voltage deviders
2024-03-27 17:15:39 +01:00
Matthias Grob
4c5f084445
Battery parameters: clarify empty, full voltage description
2024-03-27 17:15:39 +01:00
Julian Oes
868a884131
fw_att_control: bitwise and should be logical and ( #22933 )
...
Signed-off-by: Julian Oes <julian@oes.ch >
2024-03-27 16:29:56 +13:00
murata,katsutoshi
749f88b62b
ekf2: gps control lazily check yaw_failure() only after in_air
2024-03-26 19:50:57 -04:00
jamming
3aac8f36e6
boards/holybro/kakuteh7: fix icm42688p IMU
...
- the mass-produced kakuteH7 did not use ICM20689 IMU
2024-03-26 19:49:11 -04:00
Eric Katzfey
8ade2e5f2d
Add SYS_AUTOSTART touch in voxl-px4-start
2024-03-26 19:35:24 -04:00
enesavcu
fa1885af23
Signal generator ( #22666 )
...
Add option to generate sine chirp signals for fixed-wing system identification
2024-03-26 16:11:32 +01:00
Matthias Grob
b5f6699f2e
mixer_module: send a last sample out after all outputs were disabled
...
This matters for PWM when the last output gets disabled on either FMU or IO
it would just keep on running.
Also when rebooting with a parameters reset or new airframe with no mapped outputs
it would previously keep outputting PWM with the disarmed value of the new airframe
e.g. 1000us which is a safety hazard because servos could break the physical limit of the
model or miscalibrated ESCs spinning motors.
2024-03-25 19:21:54 +01:00
Matthias Grob
1096384a38
px4iofirmware: don't switch to disarmed or failsafe value on disabled PWM outputs
...
If the output is set to 0 then the FMU had this channel disabled/no function mapped
to it. In that case we do not want to suddenly start outputing failsafe or disarmed
signals.
2024-03-25 19:21:54 +01:00
Matthias Grob
999a71c4dd
px4io: don't output on disabled PWM pins
...
Same logic as on the FMU PWM updateOutputs() in PWMOut.cpp
2024-03-25 19:21:54 +01:00
Thomas Frans
bcbae86b9f
code: add more style options in .editorconfig
2024-03-25 09:48:09 -04:00
Eric Katzfey
4a553938fb
VOXL2: HRT updates for synchronization with Qurt time ( #22881 )
...
- Added offset to Posix hrt time to account for synchronization with Qurt hrt time
- Added new Kconfig to configure synchronization of HRT timestamps on VOXL2
- Moved voxl2 libfc sensor library submodule from muorb module to boards directory
- Added check to make sure hrt_elapsed_time can never be negative
2024-03-22 15:24:51 -04:00
Daniel Agar
c024ea396a
boards/px4/fmu-v5x: remove legacy rover_pos_control to reduce flash usage
2024-03-22 15:17:03 -04:00
Eric Katzfey
69028f37a9
New platform independent Serial interface ( #21723 )
2024-03-21 21:00:23 -04:00
Thomas Frans
bb9f4d42f3
gps: fix incorrect task id in module startup
2024-03-21 20:58:59 -04:00
Beat Küng
2e12e14a23
boards/px4/fmu-v5x: remove sd_stress & reflect to reduce flash usage
2024-03-21 20:58:21 -04:00
Thomas Frans
d0251b8688
add .editorconfig for consistent code style across editors ( #22916 )
...
EditorConfig is a well-known convention to share style settings across
different editors. Adding one will make it easier for new contributors
or people who like to use a different editor to contribute.
2024-03-21 20:56:20 -04:00
Eric Katzfey
82a1aa37db
uORB: fix for uORB communicator, only send most recent data for new subscription ( #22893 )
2024-03-21 20:54:43 -04:00
Eric Katzfey
5f6dc1c5d0
uORB: SubscriptionBlocking purged the broken attempt to set the mutex protocol in constructor
2024-03-21 20:53:34 -04:00
Øyvind Taksdal Stubhaug
710286da72
uavcan: publish new can interface status as uorb topic ( #22873 )
2024-03-20 12:38:47 -04:00
Daniel Agar
34c19b2e5a
boards/px4/fmu-v5x: default remove systemcmds/sd_stress to save flash
2024-03-20 12:35:34 -04:00
alexklimaj
af16544809
boards: ark septentrio update flash size and enable ekf2
2024-03-20 11:17:05 -04:00
Daniel Agar
35532609c9
mathlib: utilities refactor float to function template (for optional double precision usage)
...
Co-authored-by: Mathieu Bresciani <brescianimathieu@gmail.com >
2024-03-20 11:10:37 -04:00
bresch
62b8db153b
mpc: fix PositionControl unit test
...
The unit test assumes the position controller is in "decoupled" mode
2024-03-20 14:16:12 +01:00
bresch
638e17d551
ekf: update change indicator
2024-03-20 14:13:49 +01:00
bresch
6d819343aa
ekf2: fix direct state measurement update for suboptimal K case
...
The duration of a unit test had to be increased because the incorrect
covariance matrix update, was making the unit test passing faster
(over-optimistic variance).
2024-03-20 14:13:49 +01:00
bresch
cb2bb2e098
ekf2: add no gyro bias estimate test case
...
This makes the ekf unstable and creates NANs during initialization
2024-03-20 14:13:49 +01:00
bresch
c9221b91ad
ekf2: fix gnss yaw unit test
2024-03-20 14:04:19 +01:00
Drone-Lab
37caddedbb
navigator: update mission after changing home position ( #22834 )
2024-03-20 08:37:19 +01:00
muramura
63850873eb
sd_bench: Display maximum time for maximum write time
2024-03-20 08:35:33 +01:00
Hamish Willee
95627ea098
SMART_BATTERY_INFO to BATTERY_INFO ( #22875 )
...
* Update submodule mavlink to latest Wed Mar 13 01:02:16 UTC 2024
- mavlink in PX4/Firmware (497327e916103ef05ff8f08f47d33b9a19bc28d7): https://github.com/mavlink/mavlink/commit/c4a5c497379ca873f73abe691a033641a6a5a817
- mavlink current upstream: https://github.com/mavlink/mavlink/commit/a3558d6b335d930fc01816fd168d16b3f38ed434
- Changes: https://github.com/mavlink/mavlink/compare/c4a5c497379ca873f73abe691a033641a6a5a817...a3558d6b335d930fc01816fd168d16b3f38ed434
a3558d6b 2024-03-07 Hamish Willee - common - DO_FENCE_ENABLE/PARACHUTE fix (#2090 )
b9730e0f 2024-03-06 olliw42 - update RADIO_RC_CHANNELS to latest, remove all mlrs from storm32.xml (#1919 )
7fed0268 2024-03-06 Patrick José Pereira - common: MAV_CMD_DO_SET_SYS_CMP_ID: Add first version (#2082 )
2909b481 2024-03-06 Hamish Willee - Update Pymavlink (#2089 )
e9b532a9 2024-03-05 Randy Mackay - common: add set-camera-source command (#2079 )
bcdbeb7f 2024-03-01 auturgy - Allow individual fences to be enabled and disabled (#2085 )
2f8403d1 2024-02-29 Hamish Willee - MAV_CMD_ODID_SET_EMERGENCY - (#2086 )
daa59c02 2024-02-22 Peter Barker - common.xml: add a command to deal with safety switch (#2081 )
977332e2 2024-02-14 Hamish Willee - COMPONENT_INFORMATION_BASIC - add manufacturer date (#2078 )
4fef7de2 2024-02-07 Randy Mackay - Common: rename SMART_BATTERY_INFO to BATTERY_INFO and add SOH (#2070 )
3865b311 2024-02-01 Hamish Willee - FLIGHT_INFORMATION - description to match PX4 (#2067 )
f80e6818 2024-01-31 KonradRudin - development.xml: merge both MAV_CMD enums together (#2074 )
* SMART_BATTERY_INFO to BATTERY_INFO on new mavlink module
* Update src/modules/mavlink/streams/BATTERY_INFO.hpp
* fix trivial whitespace
---------
Co-authored-by: PX4 BuildBot <bot@px4.io >
Co-authored-by: Daniel Agar <daniel@agar.ca >
2024-03-20 11:33:37 +13:00
bresch
2e6dd243af
mpc: add possibility to generate tilt using full 3D accel
...
Using full 3D acceleration provides better horizontal acceleration
tracking but also creates a sometimes unwanted behavior because the tilt
is directly coupled with the vertical acceleration setpoint.
2024-03-19 12:29:34 -04:00
muramura
32aa3263a6
EKF: Change a typo
2024-03-18 10:29:44 +01:00
Beat Küng
70346a5b2f
failsafe: set cause to generic when fallback mode is activated
...
Previously when triggering low battery RTL and then losing GPS, the fallback
to Descend would still have low battery as cause.
2024-03-15 14:06:58 +01:00
Silvan Fuhrer
da39d075ac
Commander enums: shorten failsafe event messages
...
Such that the focus is on the important keywords.
Signed-off-by: Silvan Fuhrer <silvan@auterion.com >
2024-03-15 10:25:18 +01:00
Silvan Fuhrer
f6430a27d6
Commander enums: capitalize battery level key words
...
Signed-off-by: Silvan Fuhrer <silvan@auterion.com >
2024-03-15 10:25:18 +01:00
Silvan Fuhrer
4ae2fbd171
Commander enums: capitalize flight mode names
...
Signed-off-by: Silvan Fuhrer <silvan@auterion.com >
2024-03-15 10:25:18 +01:00
Silvan Fuhrer
6e15dd5328
Commander: trigger warning when arming denied due to check failure
...
Signed-off-by: Silvan Fuhrer <silvan@auterion.com >
2024-03-15 09:34:11 +01:00
Silvan Fuhrer
d330d47495
EstimatorCheck: GNSS data fusion stopped as INFO if local position is already invalid
...
Helps to reduce spamming of less important warnings.
Signed-off-by: Silvan Fuhrer <silvan@auterion.com >
2024-03-15 09:33:56 +01:00
Silvan Fuhrer
6d8273483c
Commander: set vehicle_status.failsafe flag only if action for failed check is more than warning
...
Signed-off-by: Silvan Fuhrer <silvan@auterion.com >
2024-03-15 09:33:41 +01:00
bresch
7c6ecd95a8
mc_wind_estimator_tuning: optionally use GNSS velocity
...
Sometimes GNSS is logged but not used
2024-03-14 21:06:24 +01:00
bresch
b2f1122372
ekf2: remove old yaw 321 and 312 derivations
2024-03-14 11:33:45 -04:00
bresch
ee63f3e664
update change indicator
2024-03-14 11:33:45 -04:00
bresch
e3f67d5c1a
ekf2: new yaw derivation
...
Instead of euler angles, compute measurement jacobian using a small
global perturbation around the vertical axis
2024-03-14 11:33:45 -04:00
Silvan Fuhrer
6373d8d243
commander: low flight time failsafe: set UserTakeoverAllowed::Auto to enter Hold first ( #22887 )
...
Signed-off-by: Silvan Fuhrer <silvan@auterion.com >
2024-03-14 16:30:06 +01:00
Silvan Fuhrer
68fcfc43ef
mro-zero classic: remove gyro fft module to save flash ( #22878 )
...
Signed-off-by: Silvan Fuhrer <silvan@auterion.com >
2024-03-14 14:20:51 +01:00
Eric Katzfey
ae947513d7
add load_mon support for Qurt platform ( #22883 )
...
- Added check in commander to see if CPU load monitoring has been disabled before signalling overload
2024-03-13 21:33:58 -04:00
Alexander Lampalzer
ad50afda10
update msg_files to PARENT_SCOPE ( #22800 )
2024-03-13 09:34:47 +01:00
Niklas Hauser
23c5c0b12d
dataman: Add client sync perf counter and increase default timeout to 5s
2024-03-13 09:22:38 +01:00
Daniel Agar
a1cce7e961
uxrce_dds_client: optimizations and instrumentation
...
- skip ping session if data flowing bidirectionally
- add perf counters for loop time and interval
- skip blocking poll if there's input data to read
2024-03-12 16:22:26 -04:00
Daniel Agar
b115d3cd44
uxrce_dds_client: refactor init to retry indefinitely
...
- move init from UxrceddsClient to init() method so that retry is
possible for both serial and UDP init
2024-03-12 16:22:26 -04:00
Silvan Fuhrer
9f4ae0a85d
vtol: only publish generic warning through mavlink to safe flash ( #22870 )
...
Signed-off-by: Silvan Fuhrer <silvan@auterion.com >
2024-03-12 13:27:13 +01:00
Silvan Fuhrer
00cc68baa1
Commander: make low remaining flight time configurable and fix clearing condition ( #22863 )
...
* Commander: make low remaining flight time configurable and do not clear
- add _ACT param to disable/warning/RTL this feature
- publish rtl flight time estimate also in RTL, and thus fix re-validation
- make failure message clearer, distinguish from battery low
* battery check: add hysteresis for declaring battery_low_remaining_time false again
---------
Signed-off-by: Silvan Fuhrer <silvan@auterion.com >
Co-authored-by: KonradRudin <98741601+KonradRudin@users.noreply.github.com >
2024-03-12 12:56:01 +01:00
Silvan Fuhrer
7fe5ee64fe
rtl_direct: fix on_inactive()
...
Signed-off-by: Silvan Fuhrer <silvan@auterion.com >
2024-03-12 11:27:49 +01:00
Silvan Fuhrer
7f370ac6df
Tiltrotor: disable MC yaw fade out during front transition blending
...
Signed-off-by: Silvan Fuhrer <silvan@auterion.com >
2024-03-12 11:26:07 +01:00
Thomas Stauber
1ad83a8002
mavlink: OPEN_DRONE_ID_SYSTEM stream publish operator altitude in geodetic frame ( #22866 )
2024-03-11 19:49:11 -04:00
Eric Katzfey
18d53c3bfd
boards/modalai/voxl2: Add new capabilities to Qurt platform HITL driver
...
* Added new sensor control options and test capability in dsp_hitl
* HITL working in VIO mode only
* Fixed units on GPS HIL input
2024-03-11 19:47:15 -04:00
Eric Katzfey
f4ebfa6130
parameters: support for an optional remote parameter database ( #22836 )
...
The voxl2 has a split architecture. PX4 runs on a posix platform and a Qurt platform. The two communicate uorb topics back and forth with the muorb module. But each has it's own parameters database and they need to stay in sync with each other. This PR adds support to keep the 2 parameter databases in sync. The main parameters database running on Linux has file system support while the Qurt one does not. The Linux side is considered the primary and the Qurt side is considered the remote.
2024-03-11 13:52:22 -04:00
Konrad
c5fde63440
mission: The mission check on activation should only be performed for a mission, not RTL.
...
We need to make sure that when the RTL is triggered, it should not reevaluate it, as when it was valid but evaluated to false on activation, it can't do a RTL.
2024-03-11 17:08:56 +01:00
Silvan Fuhrer
cb8520427c
rtl direct: fix setting of previous altitude (abs vs rel)
...
Signed-off-by: Silvan Fuhrer <silvan@auterion.com >
2024-03-11 14:04:02 +01:00
Silvan Fuhrer
86c074378f
rtl_direct_mission_land: fix abs/rel usage of item.altitude
...
Signed-off-by: Silvan Fuhrer <silvan@auterion.com >
2024-03-11 14:04:02 +01:00
Konrad
e9fda548fa
rtl_direct: Rtl estimate only needs valid destination, not home position
2024-03-11 14:04:02 +01:00
Konrad
91d1342f20
rtl_direct_mission: rtl_estimate for fixedwing land is diagonal
2024-03-11 14:04:02 +01:00
Konrad
89844625b4
rtl: reduce time estimate calculations
2024-03-11 14:04:02 +01:00
Konrad
fde71cd15e
rtl_direct_mission_land: add time estimation for RTL mission land
2024-03-11 14:04:02 +01:00
Konrad
14e4169473
rtl_direct: Move the time estimation calculation into a separate helper class
2024-03-11 14:04:02 +01:00
KonradRudin
8dcfcf5b9e
mission_base: land_start_item invalid only when negative. ( #22856 )
...
rtl: land_start_item invalid only when negative.
Update src/modules/navigator/rtl.cpp
2024-03-11 09:46:16 +01:00
alexklimaj
a80a5a92f4
boards: ARK Flow fix typo
2024-03-09 16:40:59 -05:00
alexklimaj
b81ad8841e
drivers: broadcom AFBR update to API 1.5.6
2024-03-09 16:40:59 -05:00
Eric Katzfey
57df7e35b2
uORB: make queue size (ORB_QUEUE_LENGTH) completely static ( #22815 )
...
Previously uORB queue size was an awkward mix of runtime configurable (at advertise or IOCTL before allocate), but effectively static with all queue size settings (outside of test code) actually coming from the topic declaration (presently ORB_QUEUE_LENGTH in the .msg). This change finally resolves the inconsistency making the queue size fully static.
Additionally there were some corner cases that the muorb and orb communicator implementation were not correctly handling. This PR provides fixes for those issues. Also correctly sets remote queue lengths now based on the topic definitions.
* Made setting of uORB topic queue size in based on topic definition only
* Fixes to the ModalAI muorb implementation
* Removed libfc sensor from format checks
* msg/TransponderReport.msg ORB_QUEUE_LENGTH 8->16 (was set to higher in AdsbConflict.h
---------
Co-authored-by: Eric Katzfey <eric.katzfey@modalai.com >
Co-authored-by: Daniel Agar <daniel@agar.ca >
2024-03-08 16:28:24 -05:00
Alexis Guijarro
006dcfafb7
boards/mro/ctrl-zero-classic: corrections for mRo Control Zero Classic Board ( #22745 )
...
- Build target changed from STM32H743II to STM32H743ZI
- Missing external SPI interface added
- Nonexistent I2C3 interface removed
- I2C4 pins changed
- Red and Green LED lights remapped
- Missing ADC inputs added and already present ones corrected
- CAN Silent interfaces corrected
- Power pins corrected and Level Shifter pin added to enable ICM20948
- Buzzer pin remapped
- HRT channel and PPM pin changed
- RSSI input remapped
- ICM20602 and BMI088 pins corrected
- Serial ports remapped
2024-03-08 14:50:53 -05:00
Silvan Fuhrer
85a882e1ce
FW Position Control: control_backtransition(): always track line from start ( #22853 )
...
Remove option to track from previous wp to reduce complexity and fix
case where prev=current point and the line following broke down.
Signed-off-by: Silvan Fuhrer <silvan@auterion.com >
2024-03-08 19:11:08 +01:00
Konrad
04099ed483
mission_base: Force mission validity check on activation
2024-03-08 17:26:04 +01:00
Konrad
1aa26a5a91
missionFeasibilityChecker: Fix tests
2024-03-08 17:26:04 +01:00
Konrad
acd750e033
mission_base: Run feasibility checker only after first global position has been published
2024-03-08 17:26:04 +01:00
Konrad
6c6142ba79
MissionFeasibiltyChecker: Do not delete uorb data on reset.
2024-03-08 17:26:04 +01:00
Konrad
7fb584adbe
MissionResult uorb: fix wrong int types
2024-03-08 17:26:04 +01:00
Konrad
fb3aab1fb0
mission_base: check mission feasibility again, if geofence has changed.
2024-03-08 17:26:04 +01:00
Konrad
1b03ac4d2b
mission_base: Only run mission feasibility if the geofence module is ready
2024-03-08 17:26:04 +01:00
Konrad
815cea2abb
geofence: publish status of loaded geofence
2024-03-08 17:26:04 +01:00
Konrad
51321c605e
mission_base: clean up mission check evaluation
2024-03-08 17:26:04 +01:00
Konrad
a0ae073d8c
mission_base: Do not initialize mission from dataman. only listen on mission topic
2024-03-08 17:26:04 +01:00
Silvan Fuhrer
7884e0a3f7
Navigator: remove vtol_takeoff special handling for RTL ( #22844 )
...
We had a special handling for RTL triggered in vtol_takeoff state.
The idea is to wait until the VTOL Takeoff is completed and only
then switch to RTL. On a second thought this special handling isn't
really necessary and for the sake of simplicity should be removed.
This also removes the side effect of the indicated flight mode
after RTL being set to VTOL_Takeoff again.
Signed-off-by: Silvan Fuhrer <silvan@auterion.com >
2024-03-08 11:40:14 +01:00
Silvan Fuhrer
f799141a19
FW Pos Controller: do not publish roll angle constrained warning if landed ( #22850 )
...
Signed-off-by: Silvan Fuhrer <silvan@auterion.com >
2024-03-08 09:40:43 +01:00
Eric Katzfey
e20215087f
Moving from Qurt specific icm4266p driver to mainline version
2024-03-07 21:14:49 -05:00
bresch
0d0978b3b9
ekf2: update change indicator
2024-03-07 11:06:31 -05:00
bresch
0639f5370c
ekf2: fix mag and wind covariance prediction
2024-03-07 11:06:31 -05:00
bresch
2bacb4b65d
ekf2: update change indicator
2024-03-07 15:11:47 +01:00
bresch
421f13e4b5
ekf2: fix joseph covariance update for Schmidt-Kalman filter
...
If part of the Kalman gain is zeroed, the first step of the joseph
update does not produce a symmetrical matrix.
2024-03-07 15:11:47 +01:00
Silvan Fuhrer
1e253a9626
VTOL: treat Descend mode as Land ( #22843 )
...
* vtol_type: enable pusher assist also in Descend mode
Signed-off-by: Silvan Fuhrer <silvan@auterion.com >
* vtol_type: treat Descend as Land for pusher assist
Signed-off-by: Silvan Fuhrer <silvan@auterion.com >
---------
Signed-off-by: Silvan Fuhrer <silvan@auterion.com >
2024-03-07 10:22:25 +01:00
cuav-liu1
bb5efa5577
ICP201: increase config delay
2024-03-06 21:20:51 -05:00
Daniel Agar
1c741836c0
sensors/vehicle_imu: sensor update loop limit iterations
2024-03-06 21:19:38 -05:00
Daniel Agar
8b6c70e0f2
sensors/vehicle_angular_velocity: sensor update loop limit iterations
2024-03-06 21:19:38 -05:00
Daniel Agar
1fc38aab92
sensors/vehicle_air_data: sensor update loop limit iterations
2024-03-06 21:19:38 -05:00
Daniel Agar
2bf1eeb003
sensors/vehicle_acceleration: sensor update loop limit iterations
2024-03-06 21:19:38 -05:00
Daniel Agar
87960c04d8
mag_bias_estimator: sensor update loop limit iterations
2024-03-06 21:19:38 -05:00
Daniel Agar
d96970a2b9
sensor/vehicle_magnetometer: sensor update loop limit iterations
...
- place upper bound to prevent looping indefinitely (high publish rate, etc)
2024-03-06 21:19:38 -05:00
Silvan Fuhrer
c5835a48de
FW Position Controller: do not publish roll angle constrain warning in VTOL transition ( #22842 )
...
* FW Position Control: some cosmetical changes
Signed-off-by: Silvan Fuhrer <silvan@auterion.com >
* FW Position Control: disable roll constraining warning in VTOL transition
In transitions it is expected that the roll is constrained, and
instead of defining an aribitrary threshold let's rather disable
the user warning in that case.
Signed-off-by: Silvan Fuhrer <silvan@auterion.com >
* FW Pos C: define magic numbers for roll constraining warning as constants
Signed-off-by: Silvan Fuhrer <silvan@auterion.com >
---------
Signed-off-by: Silvan Fuhrer <silvan@auterion.com >
2024-03-06 15:51:54 +01:00
bresch
6f9a378247
yaw_est: force set gyro bias when at rest
...
The gyro bias estimate from EFK2 is really good when at rest and should
be used by the yaw estimator to prevent heading drifts due to poor
heading observability.
2024-03-05 14:00:06 -05:00
PX4 BuildBot
67e68783cf
Update submodule gz to latest Tue Mar 5 12:39:22 UTC 2024
...
- gz in PX4/Firmware (5f8f0213a807d327a30a7df05e58f7887cf936ab): https://github.com/PX4/PX4-gazebo-models/commit/222833656802532ec2271986a65fd198cfa48259
- gz current upstream: https://github.com/PX4/PX4-gazebo-models/commit/6b4ed09d1b495fbff663f098979cc046df013abd
- Changes: https://github.com/PX4/PX4-gazebo-models/compare/222833656802532ec2271986a65fd198cfa48259...6b4ed09d1b495fbff663f098979cc046df013abd
6b4ed09 2024-02-23 Sergei Grichine - Added IMU sensor noise to the model, to avoid STALE messages (#34 )
953e02b 2024-02-22 frede791 - add imu sensor model noise
2024-03-05 13:59:22 -05:00
Peter van der Perk
d1ae242a91
v6x-rt: fix rover build regression
2024-03-05 10:21:41 -05:00
Peter van der Perk
9cef834624
fmu-v6xrt: update px4board enables vtol
2024-03-05 08:18:44 -05:00
Sihyun Noh
23a41299fa
mag calibration: minor cleanup ( #22830 )
2024-03-05 09:00:08 +01:00
Niklas Hauser
0186d687b2
Add minimal Skynode RC13 config to the PAB manifest
2024-03-04 13:33:20 -05:00
Peter van der Perk
d28653b605
nuttx: update apps
2024-03-04 13:32:36 -05:00
Peter van der Perk
87d79aeb75
netman: generate default config if file doesn't exist
...
ENOENT returns if the file doesn't exist yet, when using mtd /fs/mtd_net always exist.
On a filesystem you've to generate the file so if ENOENT returns we've to regenerate the default config as well.
2024-03-04 13:32:36 -05:00
Matthias Grob
1bd65f8beb
mantis-edu: remove duplicate RC define
2024-03-04 13:30:28 -05:00
Peter van der Perk
e0b49afe81
bmp388: Driver print out start BMP390 identifier when detected
2024-03-04 02:05:37 -05:00
Don Gagne
f02b44bec5
Update to latest sitl gazebo camera
2024-03-03 12:18:02 +13:00
bresch
28db3e1c8c
ekf2: update change indicator
2024-02-27 12:33:43 -05:00
bresch
e9d43015ce
ekf2: fix unit tests failing due to mag fusion changes
2024-02-27 12:33:43 -05:00
bresch
b46fc9a67d
ekf2 sensor_sim: set correct world mag field
2024-02-27 12:33:43 -05:00
bresch
b80f15f7b5
ekf2-mag_auto: always use mag 3D after takeoff
2024-02-27 12:33:43 -05:00
Silvan Fuhrer
086656dc7f
FW Attitude Controller: fix manual yaw rate setpoint limit ( #22812 )
...
Signed-off-by: Silvan Fuhrer <silvan@auterion.com >
2024-02-27 17:23:13 +01:00
bresch
051baec9c4
ekf2: allow wind dead-reckoning after manual position reset
...
Reset velocity using airspeed and start navigating
2024-02-27 09:34:05 -05:00
Matthias Grob
2491548a0f
Jenkinsfile: correct typo, missing comma
...
Introduced in
2c81c9fdea
2024-02-27 13:32:46 +01:00
DanielePettenuzzo
18f96c16ce
fix gimbal driver for mavlink gimbal v2 input and AUX output
...
The main problem was that during initial negotiation the client would
request the gimbal_manager_information from px4 but px4 would never send
it because in this configuration the device_compid was set to 0.
2024-02-27 09:53:25 +01:00
GuillaumeLaine
63495ddac3
geo: correct unit test
2024-02-27 09:05:39 +01:00
Peter van der Perk
efbbd64ec0
fmu-v6xrt: Increase lpwork stack size
2024-02-26 14:01:56 -05:00
Daniel Agar
8001132d33
ekf2: ZeroGyroUpdate move to fuseDirectStateMeasurement
2024-02-26 12:32:59 -05:00
bresch
08a2a6c836
update EKF2 change indicator
2024-02-26 12:32:59 -05:00
bresch
d501d8e1d4
ekf2: use Joseph stabilized update in direct state observations
2024-02-26 12:32:59 -05:00
bresch
9d9766c6cf
ekf2: use Joseph stabilized covariance update
2024-02-26 12:32:59 -05:00
makekam
d988005216
Update injectxmlparams.py
...
Add extraction of Boolean attributes in injectxmlparams.py.
2024-02-23 11:06:05 -05:00
Silvan Fuhrer
5dfdf8c071
matrix: remove bold printing of diagonal elements
...
As this was not working in NSH.
Signed-off-by: Silvan Fuhrer <silvan@auterion.com >
2024-02-23 11:05:09 -05:00
Daniel Agar
b2b7439060
ROMFS: respect kconfig for including romfs files (airframes, etc) ( #22571 )
...
* ROMFS: respect kconfig for including romfs files (airframes, etc)
* ROMFS: only add R1 airframe with differential drive control
* ROMFS: adapt to differential drive module renaming
---------
Co-authored-by: Matthias Grob <maetugr@gmail.com >
2024-02-23 15:40:00 +01:00
bresch
37a40d3fc2
baro static pressure compensation tuning: remove dependency to baro bias
...
`estimator_baro_bias` requires to have GNSS and baro hgt active and GNSS as the reference. This is quite restrictive. Instead, we can simply use a high-passed version of the baro error.
2024-02-23 10:07:13 +01:00
Sergei Grichine
b405d75553
Added Zero Turn Lawnmower model ( #22717 )
...
* Added Lawnmower airframe
* Update 5005_gz_lawnmower
Works all right
* Update 5005_gz_lawnmower
RDD_WHL_SPEED has new name: RDD_WHEEL_SPEED
* Update ROMFS/px4fmu_common/init.d-posix/airframes/5005_gz_lawnmower
Co-authored-by: Per Frivik <94360401+PerFrivik@users.noreply.github.com >
* Update ROMFS/px4fmu_common/init.d-posix/airframes/CMakeLists.txt
Co-authored-by: Per Frivik <94360401+PerFrivik@users.noreply.github.com >
* Renamed 5005_gz_lawnmower to 4011_gz_lawnmower
also pulled latest GZ models hash
---------
Co-authored-by: Per Frivik <94360401+PerFrivik@users.noreply.github.com >
2024-02-22 15:30:12 +01:00
Matthias Grob
4e3bd4f196
MAVSDK tests: shorten Position, Altitude control flights
...
We get more than 5 meter away much quicker.
2024-02-22 15:29:13 +01:00
Matthias Grob
0cc4b41a51
MAVSDK test: Fix fly_forward_in_altctl() timing
2024-02-22 15:29:13 +01:00
Matthias Grob
f602228048
MAVSDK test: increase offboard position threshold
...
This is a workaround to hotfix CI but the root cause is #22792
(MAVSDK test failing after EKF change, accelerometer simulation issues not learned anymore?)
2024-02-22 15:29:13 +01:00
PerFrivik
9b122adae4
Fix fly_forward_in_posctl() timing
2024-02-22 15:29:13 +01:00
Eric Katzfey
1ec0ba4736
Added param system command to voxl2 slpi build
2024-02-21 11:54:02 -05:00
Eric Katzfey
8da8b88a54
Fixed and added Qurt platform dsp_hitl driver
2024-02-21 11:54:02 -05:00
Eric Katzfey
be08c57a0a
Changed order of service startup in SLPI DSP muorb since parameter library now needs work queues
2024-02-21 11:54:02 -05:00
Eric Katzfey
a436a8f3b8
Fixed unresolved symbol error for qurt platform due to missing sbus library
2024-02-21 11:54:02 -05:00
Eric Katzfey
5ad0e68d8e
Fix build error for Qurt platform in pab_manifest.c
2024-02-21 11:54:02 -05:00
Eric Katzfey
f07eeaa776
Added special muorb startup ordering in px4_init for posix platform
2024-02-21 11:52:24 -05:00
Daniel Agar
506c60c471
ekf2: declination fusion don't use uninitialized parameter (EKF2_MAG_DECL)
2024-02-21 09:45:44 -05:00
Niklas Hauser
643d3e3bf3
Navigator: Prevent busy-looping if Dataman read/write times out
...
MissionBase did not initialize its mission data, thus could enter an
infinite loop in updateDatamanCache() if the initMission() failed to
read the mission off, for example, due to the SDCard storage task taking
longer than the timeout to respond.
This change constrains the loading loop and resets the mission data even
if the data write failed.
2024-02-21 13:31:43 +01:00
Daniel Agar
8243b4f474
ekf2: move vel/pos reset helpers
2024-02-20 13:16:24 -05:00
Daniel Agar
22b957696d
ekf2: velocity/position fusion helper minor consistency cleanup
2024-02-20 13:16:24 -05:00
Daniel Agar
c338891677
ekf2: split vel_pos_fusion.cpp
2024-02-20 13:16:24 -05:00
Daniel Agar
c4c41c49e5
ekf2: move fuseVelPosHeight() -> fuseDirectStateMeasurement()
...
- don't bother keeping bad_vel_{N,E,D} and bad_pos_{N,E,D} fault status bits
2024-02-20 13:16:24 -05:00
Daniel Agar
021dd0d0af
ekf2: fix EV height bias predict call
...
- needs to be called every iteration
2024-02-20 11:47:53 -05:00
bresch
c221da27a7
ekf2: set attitude validity flag using centralized function
2024-02-20 11:33:30 -05:00
Matthias Grob
51fe4351c6
StickTiltXY: Fix too high maximum tilt problem
...
And add unit tests.
2024-02-20 14:27:49 +01:00
Silvan Fuhrer
8a75733511
Navigator: fix VTOL land waypoint calculation
...
The setpoint.yaw can be NAN, and this made the calculated land point NAN
as well. Looking at the current yaw is anyway a better way to approximate
the course over ground that fundamentally should be used.
Signed-off-by: Silvan Fuhrer <silvan@auterion.com >
2024-02-19 14:54:28 +01:00
Daniel Agar
1032dd3470
ekf: fix measurementUpdate comment typo
2024-02-19 09:41:49 +01:00
Konrad
424c3cd2cb
FeasibilityChecker: Add new TakeoffLandAvailable option
...
ADd a new misison feasiblity checker option to check if a proper landing approach is defined when in air. There must be at least a mission landing or a VTOL approach defined in order for the mission to be accepted. Else, use the same logic as in MIS_TKO_LAND_REQ=4
2024-02-16 10:27:22 +01:00
Konrad
68100650da
RTL: publish a status message on currently chosen RTL point
2024-02-16 10:27:22 +01:00
Cyril C
74303a79e1
drivers/batt_smbus: fix BQ40Z80 timeout problem ( #22751 )
...
Co-authored-by: cyril.calvez <c.calvez@elistair.com >
2024-02-15 13:24:40 -05:00
Daniel Agar
8dc3975456
ekf2: only populate gnss pos aid src status if ref initialized
...
- this is a minor logging improvement when plotting the position from the beginning of the log (often a replay session)
2024-02-15 13:13:10 -05:00
Matthias Grob
84a7d42566
rover build: correct differential drive kconfig name
2024-02-15 10:08:51 -05:00
Matthias Grob
f26df8492f
Update GPS drivers to contain the astyle fix
2024-02-15 15:23:06 +01:00
Konrad
cb09dde606
FixedwingPositionControl: Used corrected npfg roll output in path mode
2024-02-13 17:17:44 +01:00
Konrad
1a1891073e
FixedwingPositionControl: Only warn user when roll is reduced for a longer period of time
2024-02-13 17:17:44 +01:00
Daniel Agar
b8714f8980
ROMFS: rc.simulator EKF2 setup specific to gazebo classic
2024-02-13 11:14:44 -05:00
PX4 BuildBot
0c099f2b56
Update submodule gz to latest Tue Feb 13 12:39:17 UTC 2024
...
- gz in PX4/Firmware (c9ad60e3cc ): https://github.com/PX4/PX4-gazebo-models/commit/c78f7f01417168e8faab7a83ade2129c0d26b39d
- gz current upstream: https://github.com/PX4/PX4-gazebo-models/commit/f1c461fffb8567d6f0af770fb533f60f6ec62c22
- Changes: https://github.com/PX4/PX4-gazebo-models/compare/c78f7f01417168e8faab7a83ade2129c0d26b39d...f1c461fffb8567d6f0af770fb533f60f6ec62c22
f1c461f 2024-02-08 frederik - increase monocam clipping distance
6d5db73 2024-02-07 Sergei Grichine - Added Zero Turn Lawnmower model (#27 )
5332071 2024-02-06 Frederik Markus - add navsat plugin to worlds and navsat sensor to models (#26 )
2024-02-13 11:13:17 -05:00
Frederik Markus
bb53781b8f
simulation/gz_bridge: enable navsat plugin for accurate positioning of real life maps in Gazebo ( #22638 )
...
* publish the global groundtruth from the navsat callback and rearrange the local groundtruth as the altitude reference now has a dependency on the global groundtruth being initialized
---------
Signed-off-by: frederik <frederik.anilmarkus@gmail.com >
2024-02-13 11:09:35 -05:00
Silvan Fuhrer
c9ad60e3cc
Update src/modules/navigator/mission_block.cpp
...
Co-authored-by: Matthias Grob <maetugr@gmail.com >
2024-02-13 10:34:57 +01:00
Silvan Fuhrer
a6ef7b6da9
RTL: write out weather vane in comments (instead of WV)
...
Signed-off-by: Silvan Fuhrer <silvan@auterion.com >
2024-02-13 10:34:57 +01:00
Silvan Fuhrer
6957818603
RTL: clean up naming of function arguments
...
Signed-off-by: Silvan Fuhrer <silvan@auterion.com >
2024-02-13 10:34:57 +01:00
Matthias Grob
cb03835124
RTL: use dest.yaw instead of a separate heading_sp
2024-02-13 10:34:57 +01:00
Silvan Fuhrer
b19e35ec7c
RTL: change when to set a heading setpoint, generally leave it up to the executer
...
-remove RTL_HDG_MD
-only set heading setpoint in Navigator::RTL once above landing point,
or when RTL is triggered close to it
-never set a heading during RTL if weather vane is enabled
Signed-off-by: Silvan Fuhrer <silvan@auterion.com >
2024-02-13 10:34:57 +01:00
PX4 BuildBot
dce53a626e
boards: update all NuttX defconfigs
2024-02-12 08:58:49 -05:00
Daniel Agar
5f589bdda3
Update submodule GPSDrivers to latest Mon Feb 12 12:39:19 UTC 2024
...
- GPSDrivers in PX4/Firmware (17ff40898c683e1fe96ff9e2d2790594d188f872): https://github.com/PX4/PX4-GPSDrivers/commit/3393191fbb842f8e13a3f296218efec832640112
- GPSDrivers current upstream: https://github.com/PX4/PX4-GPSDrivers/commit/f48cc01d31607baa4963bde090f530b44df3de12
- Changes: https://github.com/PX4/PX4-GPSDrivers/compare/3393191fbb842f8e13a3f296218efec832640112...f48cc01d31607baa4963bde090f530b44df3de12
f48cc01 2024-02-08 Julian Oes - ubx: separate config for jamming monitor
bc72f55 2024-02-08 Julian Oes - sbf: simplify odd define
Co-authored-by: PX4 BuildBot <bot@px4.io >
2024-02-12 08:58:21 -05:00
Matthias Grob
1998f54ea6
DifferentialDrive: move spoolup consideration to the main module
2024-02-12 14:29:10 +01:00
PerFrivik
bef694f9ba
Added spoolup and removed temporary timeout for EKF
2024-02-12 14:29:10 +01:00
PerFrivik
560d6a9d4b
cleanup + updated acro
2024-02-12 14:29:10 +01:00
PerFrivik
f996caa5bd
Fixed bug in the guidance logic
...
After smoothing the linera velocity setpoint, the EKF has trouble initializing, becuase the acceleration is too smooth, to combat this issue, there is a 1 second delay when initializing the mission mode
2024-02-12 14:29:10 +01:00
PerFrivik
bb0dfba4e6
added acro mode
...
Acro mode is manual mode, but with rate control
2024-02-12 14:29:10 +01:00
PerFrivik
d197d94889
Fixed guidance logic and added feedforward term to compute the angular velocity
2024-02-12 14:29:10 +01:00
Matthias Grob
396ef222ee
DifferentialDrive: Rework structure
...
3 Components Guidance - Control - Allocation
with their corresponding uORB interface.
2024-02-12 14:29:10 +01:00
Matthias Grob
f85144ca76
DifferentialDrive: remove trailing zeros from prameter metadata
2024-02-12 14:29:10 +01:00
Matthias Grob
b54b4f7dce
Rename module differential_drive_control -> differential_drive
2024-02-12 14:29:10 +01:00
Matthias Grob
fc90e235f1
Rename differential drive setpoint topics
2024-02-12 14:29:10 +01:00
Matthias Grob
f7baeae1a0
DifferentialDriveControl: only save required parts of uORB message
2024-02-12 14:29:10 +01:00
PerFrivik
e457a5baed
Differential Drive Guidance: Add guidance
...
also add dependency on control allocation parameter CA_R_REV
Differential Drive Guidance: Added mission logic
Differential Drive Guidance
Differential Drive Guidance
Differential Guidance: Inlcude library
Differential Guidance: Compiles, does not work though
Differential Guidance: Works somewhat
Differential Guidance: Temp
Differential Guidance: Tuning
Differeital Drive Guidance: Remove waypoint mover
Differential Guidance: Fixed accuracy issue by converting from float to double
Differential Guidance: rebased on differentialdrive and improved waypoint accuracy
Temp
Differential Guidance: cleanup
temp
2024-02-12 14:29:10 +01:00
Alessandro Simovic
9a0fd624c4
update pyuavcan to latest
2022-09-07 13:11:38 +12:00
Andrew Tridgell
d440691406
update README for DroneCAN
2022-02-09 11:31:03 +11:00
Andrew Tridgell
de3174b0f3
dsdl: update to master
2021-12-16 12:15:10 +11:00
Andrew Tridgell
2c00bc5ec6
dsdl_compiler: update to master
2021-12-16 12:15:10 +11:00
Andrew Tridgell
8effda261e
dsdl_compiler: use dronecan namespace
2021-12-16 12:15:10 +11:00
Daniel Agar
9c09983f73
update dsdl submodule to latest and fix branch
2021-12-16 12:10:55 +11:00
Daniel Agar
76b2c4c338
update dsdl submodule reference
2021-10-20 21:51:33 -04:00
Daniel Agar
0cfba10e5b
switch to DroneCAN for DSDL and pyuavcan
2021-10-20 21:43:43 -04:00
Siddharth Purohit
2cc6dcabed
ignore cast-align in Pool allocation for Node
2021-10-20 21:35:14 -04:00
Siddharth Purohit
02c165fafd
protocol: replace unsupported %llu format string
2021-10-20 21:34:03 -04:00
Peter Barker
ebfa20c994
Add override keyword to those methods requiring it
2021-10-20 21:33:54 -04:00
David Sidrane
29e1aa6c12
Reworked file naming and use ROM fs as fall back
...
The server will now attempt to provide files from the primary
path RootPath and then the alternate AltRootPath. This alows
a layered approch to file service.
Setting the RootPath to an SD card and the AltRootPath to a
ROM FS will allow a user to provide an updated uavcan firware
file that will be used instead of the baked in one without
any copying.
The path as been removed from the interactions with nodes.
There by supporting Non-compliant nodes that could not
handle the specified path length.
The vitrual pathing has been moved into the FDCache.
2021-02-17 21:21:31 -05:00
Daniel Agar
04377cc270
PX4 branch remove redundant confusing libuavcan_drivers
2020-08-12 14:32:34 -04:00
Matthias Grob
52e7ce0990
Support python3 only systems by using cmake's FindPythonInterp
...
Ubuntu 20.04 comes with no Python 2 and no link from python to python3.
To not mess with the system we just use cmake's detection for seamless
python3 support.
2020-03-28 16:08:26 +00:00
ARob109
d7b1c14650
Specify legacy-v0 branch for dsdl submodule
...
The PX4/libuavcan "px4" branch is tracked to DSDL commit 192295c. This commit is not present in the "master" branch for DSDL, but is present in the "legacy-v0" branch.
2020-03-27 09:12:55 +00:00
David Sidrane
0c6ed108f5
Update Kinetis driver to NuttX 8.1+
2019-11-06 14:05:48 -08:00
Daniel Agar
b8629b236b
update stm32_tim.h path
2019-08-28 13:15:42 -04:00
Pavel Kirienko
6174b8c10a
Link to the new forum
2018-10-06 19:31:18 +03:00
Pavel Kirienko
479d144ded
Merge pull request #168 from julianoes/fix-python3.7
...
Fix exception with Python 3.7
2018-10-04 11:55:55 +02:00
Julian Oes
90ae14efcd
dsdl_compiler: check for StopIteration exception
...
This fixes the exception happening with Python 3.7.
I'm assuming this has to do with:
https://www.python.org/dev/peps/pep-0479/
2018-10-04 08:44:48 +02:00
Julian Oes
65d1f61d9b
dsdl_compiler: remove trailing whitespace
2018-10-04 08:44:27 +02:00
Julian Oes
5e2d14ef7b
dsdl_compiler: add missing shebang
2018-10-04 08:43:58 +02:00
Pavel Kirienko
85d48036ab
Merge pull request #166 from UAVCAN/master_update
...
libuavcan_drivers/kinetis:Updated to no priority fix
2018-09-25 16:58:13 +02:00
David Sidrane
641a36a5cc
libuavcan_drivers/kinetis:Updated to no priority fix
2018-09-25 07:54:18 -07:00
Pavel Kirienko
aa3650d34d
Merge pull request #156 from UAVCAN/master_kinetis_flexcan
...
kinetis:UAVCAN driver
2018-08-16 22:12:43 +03:00
David Sidrane
3ca697e64d
Adds kinetis Flexcan driver as a submodule
2018-08-07 10:53:25 -07:00
Pavel Kirienko
0dc5751ffd
Merge pull request #155 from hjoertel/change-start-script
...
replaced the depricated ifconfig command by the ip command
2018-07-30 23:52:46 +03:00
Oertel
ff040ea166
removed the confusing "echo ..." line (it confused Pavel)
2018-07-30 22:29:06 +02:00
Oertel
8bb5677527
replaced the depricated ifconfig command by the ip command
2018-07-30 14:59:58 +02:00
Pavel Kirienko
c044630390
Merge pull request #138 from thirtytwobits/feature/issue100
...
Issue #100 remove auto_ptr and c++03 support.
2018-06-27 17:43:11 +03:00
Dixon, Scott
4750a50099
Issue #100 remove auto_ptr and c++03 support.
...
Problem:
auto_ptr is deprecated.
Solution:
use unique_ptr which is only available in c++11 and newer.
Also fix how unit tests are run as part of the build to keep them from being
deleted when they fail.
Testing:
Unit tests on linux run.
2018-06-26 20:56:53 -07:00
Pavel Kirienko
dfcdf22eda
Merge pull request #142 from thirtytwobits/feature/issue141
...
Issue #141 Add Vagrantfile to automate dev environment
2018-06-26 23:39:27 +03:00
Dixon, Scott
529a376bb5
Issue #141 Add Vagrantfile to automate dev environment
...
Problem:
There is no automated way to setup a build environment.
Solution:
Use Vagrant to pull an Ubuntu image and install the same
prerequisites used on Travis.
Testing:
Full build on my macintosh.
2018-06-26 10:27:36 -07:00
Pavel Kirienko
231b221b64
Merge pull request #134 from UAVCAN/master_upstream_nuttx_irq_changes
...
Support upstream NuttX IRQ API changes
2018-06-12 21:59:22 +03:00
David Sidrane
7764a926ef
Support upstream NuttX IRQ API changes
2018-06-12 06:18:39 -10:00
Pavel Kirienko
883cba97f8
Merge pull request #133 from thirtytwobits/master
...
#132 proper googletest dependency and fixes for unittests on OSX
2018-06-09 15:09:48 +03:00
Dixon, Scott
784ec114f6
Issue #132 Proper googletest dependency and fixes for unitests on OSX.
...
Problem:
It's really hard to get Libuavcan tests building on a mac or other platform if googletest isn't installed.
Solution:
add "if linux" guards to problem areas. Also include googletest as recommended in the googletest project's README.
Testing:
Successfully built on OSX sierra using gcc6
2018-06-07 12:25:49 -07:00
Pavel Kirienko
1e60063e82
DSDL update
2018-06-04 10:21:31 +03:00
Pavel Kirienko
8bb62cdbcc
Merge pull request #129 from ArduPilot/pr-usec-wait
...
stm32: allow for less than 1ms wait time on ChibiOS
2018-05-26 12:40:30 +03:00
Andrew Tridgell
a4754d19ec
stm32: allow for less than 1ms wait time on ChibiOS
...
this prevents us chewing all the cpu when asking for fast spin times
2018-05-26 12:00:29 +10:00
Pavel Kirienko
c759e54b3a
Merge pull request #128 from UAVCAN/integer_bit_len_check
...
DSDL union tag code generation bug fix
2018-05-19 23:01:38 +03:00
Pavel Kirienko
e096e33bb6
Formatting fix
2018-05-19 17:57:40 +03:00
Pavel Kirienko
53e33d01f7
Unit test for the previous commit
2018-05-19 17:52:07 +03:00
Pavel Kirienko
94c0374165
Fixed the union code generation: if the union contained a power of two number of items, the tag bit length was one higher than needed, causing incorrect serialization.
2018-05-19 17:39:26 +03:00
Pavel Kirienko
d036cb3f5c
Merge pull request #127 from magicrub/sync
...
update DSDL
2018-05-17 12:44:27 +03:00
Tom Pittenger
32ebfceb32
update DSDL
2018-05-16 16:23:19 -07:00
Pavel Kirienko
cf4c7355c8
Merge pull request #125 from UAVCAN/stm32-test-removal
...
Remove STM32 test application
2018-04-26 17:31:51 +03:00
Pavel Kirienko
06a994384e
Typo
2018-04-26 17:23:11 +03:00
Pavel Kirienko
e6505005c5
STM32 example application removed
2018-04-26 17:21:32 +03:00
Pavel Kirienko
dbd037b082
Merge pull request #123 from UAVCAN/stm32-chibios-18
...
STM32 ChibiOS 18 support
2018-04-19 15:34:33 +03:00
Pavel Kirienko
fca62242ba
ChbiOS 18 support
2018-04-19 15:24:26 +03:00
Pavel Kirienko
9a8b059e21
Merge pull request #122 from magicrub/upstream_ch_shadow_warning
...
Rename variable "ch" to "chr" to avoid shadow variable in ChibiOS
2018-03-26 02:10:10 +03:00
Tom Pittenger
f935822406
rename ch to chr to avoid shadow variable in ChibiOS
2018-03-25 15:22:53 -07:00
Pavel Kirienko
1dfcaca3e0
README update; fixes #120
2018-01-04 22:52:48 +02:00
Pavel Kirienko
da34eae9c4
Added IAdHocNodeStatusUpdater
2018-01-02 11:32:35 +02:00
Pavel Kirienko
0066382ff5
TransferPerfCounter made noncopyable, returns counters by references
2018-01-01 21:17:21 +02:00
Pavel Kirienko
eebf0bfcf5
Linux SocketCAN: Missing initializer warning fix
2018-01-01 21:06:26 +02:00
Pavel Kirienko
9044cd17c4
Merge pull request #119 from battlesnake/master
...
Minor fixes: unnecessary sign conversion, redundant path delimiter.
2017-11-29 19:25:59 +02:00
Mark K Cowan
155c721324
Removed redundant path delimiter
2017-11-29 16:56:02 +00:00
Mark K Cowan
934cc4f2d2
Fixed unnecessary sign conversion
2017-11-29 16:56:02 +00:00
Pavel Kirienko
e2c68bea6a
STM32: new config parameter UAVCAN_STM32_TIMX_INPUT_CLOCK
2017-11-27 13:48:33 +02:00
Pavel Kirienko
2d0225886d
STM32: fixed an implicit conversion warning
2017-11-26 19:00:38 +02:00
Pavel Kirienko
ba9af4ce93
Merge pull request #117 from battlesnake/master
...
Fixed failing build when socket.h adds flexible arrays to end of structures
2017-11-24 21:36:56 +02:00
Mark K Cowan
e797d69cb7
Fixed failing build when socket.h adds flexible arrays to end of structures.
2017-11-24 19:24:06 +00:00
Pavel Kirienko
a1022b0f0c
Merge pull request #115 from UAVCAN/stm32-acceptance-filter-fix
...
Fixed the CAN acceptance filter initialization in the STM32 driver
2017-11-24 19:57:49 +02:00
Pavel Kirienko
414a2e2bef
Fixed the CAN acceptance filter initialization in the STM32 driver
2017-11-21 21:49:36 +02:00
Pavel Kirienko
fa6dbde51d
Merge pull request #114 from daniel-formlabs/dont-overwrite-cmake-cxx-flags
...
Don't completely overwrite the CMAKE_CXX_FLAGS
2017-11-21 17:29:26 +02:00
Daniel Willenson
337fdff08e
Don't completely overwrite the CMAKE_CXX_FLAGS
2017-11-21 10:07:27 -05:00
Pavel Kirienko
d577c5871c
Merge pull request #113 from partyzzzan/chibi-version
...
Fixed. Add new CH_KERNEL_MAJOR to stm32 driver.
2017-10-05 14:02:50 +02:00
Anton Zaytsev
60ea60e9de
Fixed. Add new CH_KERNEL_MAJOR to stm32 driver.
2017-10-03 15:35:16 +03:00
Pavel Kirienko
38702ff85a
Merge pull request #112 from cvra/master
...
Fix redefined IRQ handler in CAN driver for STM32F3 + ChibiOS
2017-09-26 10:56:16 +02:00
Michael Spieler
674133e290
Fix CAN driver for STM32F3 + ChibiOS
2017-09-25 21:29:26 +02:00
Pavel Kirienko
f45be6fe58
New link to coding conventions
2017-07-21 15:35:04 +03:00
Pavel Kirienko
9d75eba870
Merge pull request #110 from frizensami/pr-update-dsdl
...
DSDL update
2017-07-07 14:36:51 +03:00
Sriram Sami
0a01036890
DSDL update
2017-07-07 10:31:09 +08:00
Pavel Kirienko
215117df72
Merge pull request #109 from jlecoeur/jl/arm-none-eabi-gcc7
...
Fix -Wexpansion-to-defined
2017-07-04 23:31:16 +03:00
Julien Lecoeur
648860248e
Fix -Wexpansion-to-defined
2017-07-04 21:54:18 +02:00
Pavel Kirienko
5805438d92
DSDL update
2017-06-17 08:37:17 +03:00
Pavel Kirienko
a15ba77214
Merge pull request #107 from larics/master
...
fixed usage of atomic operation lib for armcc compiler, added conditi…
2017-05-28 18:17:01 +03:00
Marko Car
fab231d5db
changed tabs into spaces, added error if compiler is not supported
2017-05-24 17:01:49 +02:00
Marko Car
da46a8fab2
fixed usage of atomic operation lib for armcc compiler, added conditional compilation
2017-05-24 13:36:16 +02:00
Pavel Kirienko
f7ea240b80
Merge pull request #106 from EShamaev/stm32_filtering_support
...
stm32 driver configuration of filters
2017-05-06 12:43:00 +03:00
Eugene Shamaev
89221efe21
stm32 driver configuration of filters
2017-05-06 12:40:01 +03:00
Pavel Kirienko
648c471f63
More test fixes
2017-04-07 01:28:00 +03:00
Pavel Kirienko
b6ecfb33d4
Fixed failing unit test dynamic_node_id_server_NodeDiscoverer.Basic
2017-04-07 01:09:04 +03:00
Pavel Kirienko
a1c0948f19
Merge branch 'default_service_timeout_update'
2017-04-06 18:35:17 +03:00
Pavel Kirienko
e5a0746443
Syncing unit tests with spec changes
2017-04-06 18:34:17 +03:00
Pavel Kirienko
bf3648ddff
Default timeout update
2017-04-06 18:05:32 +03:00
Pavel Kirienko
4a9da04407
Merge pull request #104 from MonashUAS/master
...
STM32F303 support for baremetal driver
2017-04-02 14:55:46 +03:00
James Stewart
797f459289
Added docs reference for chip.h in STM32 driver
2017-04-02 20:34:57 +10:00
James Stewart
60ce5e07f9
Added support for STM32F303 using bare metal driver
2017-04-02 20:34:22 +10:00
Pavel Kirienko
e97164d953
DSDL update
2017-04-02 11:38:39 +03:00
Pavel Kirienko
3a000b90ab
DSDL update
2017-04-02 10:10:34 +03:00
Pavel Kirienko
8d2a667ef5
DSDL update
2017-03-23 14:53:11 +03:00
Pavel Kirienko
a22fdebeed
DSDL update
2017-03-20 00:03:45 +03:00
Pavel Kirienko
aaa6840933
Multiset test compatibility fix
2017-03-16 17:37:31 +03:00
Pavel Kirienko
c914f98772
Updated the unit tests for compatibility with GCC 5.4
2017-03-16 17:16:21 +03:00
Pavel Kirienko
182c30490f
STM32 driver: removed SCE IRQ definitions, because SCE IRQ is no longer used
2017-01-23 04:10:21 +03:00
Pavel Kirienko
f1fc72ef7a
Added proper support for ChibiOS 4; added compile-time check that fails if IRQ vectors are not properly defined
2017-01-23 04:09:00 +03:00
Pavel Kirienko
dcbb573972
Merge pull request #98 from UAVCAN/for_upstream_nuttx_changes_4
...
For upstream nuttx changes 4 fixed CI
2017-01-12 22:30:12 +03:00
David Sidrane
ed47da5b2a
Back out upstream changes from test_stm32f107/src/board/board.cpp
2017-01-12 06:05:45 -10:00
Pavel Kirienko
4f363685a6
Merge pull request #92 from UAVCAN/for_upstream_nuttx_changes_2
...
Do Not merge - This is needed to work with the latest upstream nuttx
2017-01-09 23:55:38 +03:00
Pavel Kirienko
773104ed4e
STM32 driver: supporting ChibiOS RT kernel v4
2016-11-29 13:48:54 +03:00
Pavel Kirienko
7dbd763ae6
README updated with the input from Mateusz Sadowski
2016-11-17 13:56:19 +03:00
Pavel Kirienko
89e68cfa47
Merge pull request #96 from guludo/fix-windows-build
...
Fix build on Windows
2016-08-24 22:36:41 +03:00
Gustavo Jose de Sousa
1e04e6b70d
Fix build on Windows
...
Windows native shell doesn't understand shebangs. Also, make sure the Python
scripts are run by the same interpreter.
2016-08-24 16:13:37 -03:00
Pavel Kirienko
919a794ccb
Merge branch 'warnings'
2016-08-15 11:11:56 +03:00
Pavel Kirienko
641932f625
STM32: default size of the RX queue increased to 128
2016-08-07 12:59:48 +03:00
Pavel Kirienko
43d7b12c7d
STM32 comments
2016-08-07 12:47:21 +03:00
Pavel Kirienko
ca15954213
STM32 driver: getRxQueueOverflowCount()
2016-08-07 12:45:17 +03:00
Pavel Kirienko
c2ba231741
ReceivedDataStructure<> made noncopyable
2016-07-29 17:24:18 +03:00
Pavel Kirienko
8b434c7768
STM32 build fix
2016-07-29 16:59:36 +03:00
Pavel Kirienko
c9ec822244
-Wold-style-cast; linked list items made noncopyable
2016-07-29 16:46:57 +03:00
Pavel Kirienko
32d8851dde
-Wnon-virtual-dtor -Woverloaded-virtual -Wsign-promo
2016-07-29 16:02:31 +03:00
Pavel Kirienko
38a241a90a
Added -Wzero-as-null-pointer-constant, replaced NULL --> UAVCAN_NULLPTR. All changes are automatic, no manual edits to the library code.
2016-07-29 15:39:24 +03:00
Pavel Kirienko
b6fa34fed5
STM32 warning fixes
2016-07-28 12:37:04 +03:00
Pavel Kirienko
7a9031db73
There's no such thing as too much static analysis
2016-07-28 11:53:11 +03:00
Pavel Kirienko
af06b1a322
STM32: Fixed compilation warning (-Wconversion)
2016-07-28 09:37:09 +03:00
David Sidrane
e031a0e93f
Back out upstream changes from test_stm32f107/src/main.cpp
2016-06-22 11:25:04 -10:00
David Sidrane
c1b6451b9c
his is needed to work with the latest upstream nuttx 7.16+
...
Logger changes
2016-06-20 13:54:31 -10:00
David Sidrane
534b8686f1
This is needed to work with the latest upstream nuttx 7.16+
2016-06-20 13:54:31 -10:00
David Sidrane
1d5f1596fa
This is needed to work with the latest upstream nuttx
2016-06-20 13:54:31 -10:00
Pavel Kirienko
fee413d40f
Merge branch 'linux_helpers'
2016-06-16 23:52:39 +03:00
Pavel Kirienko
42464cfe19
Warning fix
2016-06-16 23:43:03 +03:00
Pavel Kirienko
04ac02e727
Update README.md
2016-06-14 18:33:16 +03:00
Pavel Kirienko
a19dfd56dc
Linux makeNode() helper overload
2016-06-13 00:46:13 +03:00
Pavel Kirienko
59bcde5868
Travis: forcing APT to accept unsigned packages
2016-06-09 19:25:51 +03:00
Pavel Kirienko
af6c825954
Merge pull request #85 from larics/master
...
support for FreeRTOS
2016-06-03 01:09:20 +03:00
Pavel Kirienko
3629a8033d
Building tests only if GTest is found
2016-06-02 23:36:42 +03:00
suiauthon
6b74f21fba
fixed spacing and variable notation
2016-06-02 17:31:37 +02:00
suiauthon
ea8e8cd892
removed unnecessary include
2016-06-02 15:43:43 +02:00
suiauthon
0a757e1914
removed unnecessary includes
2016-06-02 15:42:51 +02:00
suiauthon
bd820fb86a
added more generic include, fixed spacing
2016-06-02 15:42:10 +02:00
Pavel Kirienko
ec84f64f5f
Warning fixes (GCC 5.3)
2016-05-05 05:30:49 +03:00
David Sidrane
1cef941bc7
This is needed to work with the latest upstream nuttx
2016-04-26 14:29:55 -10:00
Pavel Kirienko
b04396ace5
Merge pull request #91 from dagar/master
...
python build only output if there's an error
2016-04-18 12:04:59 +03:00
Daniel Agar
7f3a3d4a96
python only output if there's an error
2016-04-17 16:30:23 -04:00
Lorenz Meier
986ce57197
Merge pull request #90 from dagar/deps
...
cmake only run libuavcan_dsdlc if there are changes
2016-04-17 21:18:46 +02:00
Daniel Agar
27f112a831
cmake only run libuavcan_dsdlc if there are changes
2016-04-17 14:54:17 -04:00
suiauthon
e006189ce5
changed counting semaphore to binary
2016-04-04 10:06:59 +02:00
suiauthon
b3818860de
changes in includes for baremetal
2016-04-01 13:50:29 +02:00
suiauthon
13dbca3f0e
fixed yield from isr
2016-03-29 16:49:26 +02:00
Pavel Kirienko
7ce96d6c1e
Merge pull request #86 from UAVCAN/nid_allocation_activity_monitoring
...
Monitoring activity of dynamic node ID allocation servers
2016-02-20 05:56:13 +03:00
Pavel Kirienko
38f5591dda
Optimized default timeouts
2016-02-19 12:35:44 +03:00
Pavel Kirienko
b7515646bb
New field in dynamic allocator app for Linux: 'All allocated'
2016-02-19 11:52:51 +03:00
Pavel Kirienko
eb4532aefe
Registering outgoing Allocation messages as activity as well
2016-02-19 11:51:40 +03:00
Pavel Kirienko
f72e082846
AbstractServer::guessIfAllDynamicNodesAreAllocated()
2016-02-19 11:40:48 +03:00
Pavel Kirienko
ab2b952432
Refactored the dynamic node ID allocation server: added a new class AbstractServer, which is inherited by CentralizedServer and DistributedServer. This change allowed to move the data and logic that is common to both types of servers to a single location. In the next step this will be used to add more complex common logic.
2016-02-19 11:25:50 +03:00
Pavel Kirienko
e13d6dbfd6
AllocationRequestManager::getTimeOfLastAllocationActivity()
2016-02-19 11:00:18 +03:00
suiauthon
8abfd18189
uncommented osDelay
2016-02-17 09:51:50 +01:00
suiauthon
6b30772353
removed unnecessary comment
2016-02-17 09:49:25 +01:00
suiauthon
ee6ae3ec95
added new method that yield from ISR after semaphore is given from ISR
2016-02-17 09:46:36 +01:00
suiauthon
ada61ef06b
added support for FreeRTOS
2016-02-15 11:21:10 +01:00
suiauthon
b4f6e1e553
added support for FreeRTOS
2016-02-15 11:15:42 +01:00
Pavel Kirienko
702f6f0560
STM32: Fixed CS in pollErrorFlags()
2016-01-31 23:06:12 +03:00
Pavel Kirienko
cf9edf13cd
Disabled SCE interrupts; error handling is now polling based
2016-01-31 14:47:23 +03:00
Pavel Kirienko
f7a0e36882
Fixed unused variable in STM32 baremetal driver
2016-01-29 13:24:55 +03:00
Pavel Kirienko
30059d8239
SLCAN helper script: using default baudrate 921600 because it is more common than 3M for serial adapters
2016-01-28 02:28:49 +03:00
Pavel Kirienko
818c4eaeb9
Merge pull request #84 from UAVCAN/socketcan_select_refactoring
...
Refactored SocketCAN select() call; fixes #83
2016-01-28 01:18:04 +03:00
Pavel Kirienko
f86a4b98d1
SocketCAN: Setting correct errno when throwing AllIfacesDownException
2016-01-28 01:06:29 +03:00
Pavel Kirienko
3d0186c547
SocketCAN doc comments
2016-01-28 00:54:22 +03:00
Pavel Kirienko
597e0b4356
SocketCAN: Proper error reporting from openSocket()
2016-01-28 00:50:28 +03:00
Pavel Kirienko
587088bb18
Refactored SocketCAN select() call; fixes #83
...
Features:
- The driver will throw if it's fed a non-existing or malfunctioning interface during initialization
- When an interface becomes down/disconnected while the node is running, the driver will silently
exclude it from the IO loop and continue to run on the remaining interfaces.
- When all interfaces become down/disconnected, the driver will throw AllIfacesDownException() from
SocketCanDriver::select().
2016-01-28 00:12:27 +03:00
Pavel Kirienko
cbd36a4a5b
Linux SocketCAN: Fixed hasReadyTx() - now checking whether the driver will be ready to release further frames from the queue
2016-01-27 14:31:05 +03:00
Pavel Kirienko
f9a10b1a81
Linux SocketCAN: Fixed handling of outgoing frames. The old logic was handling writes incorrectly, losing frames if the socket was not writable.
2016-01-27 13:56:43 +03:00
Pavel Kirienko
3050d0ae36
STM32: Fixed IRQ race condition in CAN controller initialization
2016-01-05 10:32:50 +03:00
Pavel Kirienko
5bd641a744
Fixed busyloop in the STM32 CAN driver for ChibiOS
2016-01-04 15:18:04 +03:00
Pavel Kirienko
4c03b29401
Merge pull request #82 from ilia-sheremet/master
...
Can_acceptance_filter_configurator and unit test are corrected
2015-12-27 20:04:01 +03:00
Pavel Kirienko
ff13fa866f
Linux driver copyright update
2015-12-27 20:01:22 +03:00
Pavel Kirienko
3e5f2e5eff
configureCanAcceptanceFilters()
2015-12-27 19:52:59 +03:00
Pavel Kirienko
1447674bfa
CAN cfger - using consistent return types
2015-12-27 19:42:38 +03:00
Pavel Kirienko
288478fa4a
Linux driver: Avoiding use of cstdint from global scope, using proper loops
2015-12-27 19:41:12 +03:00
Pavel Kirienko
9a55a4fc9b
CAN filter cfger API doc clarifications
2015-12-27 19:34:16 +03:00
Pavel Kirienko
8f67bcbc39
Updated copyrights and include guards in CAN filter cfger
2015-12-27 18:39:57 +03:00
Ilia
7236370409
checkHWFilters arg by reference.
...
loopback checked first
2015-12-27 14:38:00 +00:00
Pavel Kirienko
f94fc322e5
Gitter badge
2015-12-21 14:53:18 +03:00
Ilia
73f0a9074d
uncrustify applied
2015-12-21 00:34:38 +00:00
Ilia
292b06c2d8
pull request corrections
2015-12-20 22:53:19 +00:00
Ilia
c5a340719f
Merge remote-tracking branch 'origin/filters_corrections'
2015-12-19 16:57:18 +00:00
Ilia
8a5719248f
HW acceptance filters unit test corrected.
...
specificator changed for cfg.MK-ID print
2015-12-19 16:43:29 +00:00
Ilia
5563dbacff
addFilterConfig() added. computeConfiguration() separated from applyConfiguration.
...
Other small corrections
2015-12-16 00:33:00 +00:00
Pavel Kirienko
1006c7cdc2
Merge pull request #81 from UAVCAN/stm32_can_error_codes
...
Returning meaningful error codes from STM32 CAN driver methods
2015-12-14 08:53:09 +03:00
Ilia
a2ed997cb4
socketcan HW filters moved to userspace
2015-12-14 00:20:35 +00:00
Pavel Kirienko
8423fb3ed5
Returning meaningful error codes from STM32 CAN driver methods instead of plain -1
2015-12-11 11:20:02 +03:00
Pavel Kirienko
426f349e36
Reworked the script uavcan_add_slcan
2015-12-08 02:49:37 +03:00
Pavel Kirienko
8b31d993be
STM32: optimized clock instance access
2015-12-04 03:20:20 +03:00
Pavel Kirienko
b29b40165e
STM32: exposed getMonotonic() and getUtc() in order to discourage direct access to uavcan_stm32::clock
2015-12-04 03:16:31 +03:00
Pavel Kirienko
82d161ee61
LPC11C24 - added support for 100kbps because this is the bit rate used by the bootloader
2015-11-27 19:19:13 +03:00
Pavel Kirienko
1702ec05d0
LPC11: Fixed unique ID reading
2015-11-27 18:44:22 +03:00
Pavel Kirienko
0a07f5c713
Merge pull request #80 from UAVCAN/fixed_out_of_dated_comment
...
Fixed comment to match
2015-11-21 10:54:58 +03:00
David Sidrane
c97e6e5096
Fixed comment to match
...
https://github.com/mavlink/mavlink/pull/414#issuecomment-120088482
The stale comment has led to much misunderstanding .
2015-11-20 18:01:55 -10:00
Pavel Kirienko
c152f28a62
Linux: Installing vcan/slcan init scripts
2015-11-05 12:22:13 +03:00
Pavel Kirienko
180f56ad2f
SocketCAN slcan_init script
2015-11-05 12:07:49 +03:00
Pavel Kirienko
50ce241ba0
SocketCAN: default max_frames_in_socket_tx_queue reduced to 2
2015-11-05 12:01:29 +03:00
Pavel Kirienko
7bbb368967
STM32 example - notes on auto bit rate detection
2015-10-26 13:25:51 +03:00
Pavel Kirienko
8d726ec86d
Merge pull request #77 from UAVCAN/issue-76
...
Adding CONTINUOUS_INTEGRATION_BUILD flag
2015-10-26 11:13:41 +03:00
Pavel Kirienko
d1a0971751
Merge pull request #78 from UAVCAN/issue-63
...
Replace bitarrayCopy with a smaller, from-scratch version (resolves #63 )
2015-10-25 11:14:42 +03:00
Ben Dyer
8b178aaa65
Use --gtest_filter to exclude real-time tests, instead of modifying source
2015-10-25 17:51:30 +11:00
Ben Dyer
2d9374044b
Use std::size_t
2015-10-25 17:45:34 +11:00
Ben Dyer
57915e98ba
Replace bitarrayCopy with a smaller, from-scratch version
2015-10-25 17:24:21 +11:00
Ben Dyer
c446898d05
Adding CONTINUOUS_INTEGRATION_BUILD flag
2015-10-25 10:42:23 +11:00
Pavel Kirienko
99f084d013
README edits: Travis CI badge, note on triggering Coverity Scan by pushing, Python version synchronized with Pyuavcan
2015-10-24 20:56:02 +03:00
Pavel Kirienko
84f68b91b5
Merge pull request #75 from UAVCAN/bendyer-issue-64
...
Travis CI configuration (resolves #64 )
2015-10-24 17:22:24 +03:00
Ben Dyer
ee6acfebe8
Added Coverity Scan build and native app test matrix
2015-10-25 00:46:25 +11:00
Pavel Kirienko
ed1d71e639
Merge pull request #73 from UAVCAN/footprint_reduction
...
Footprint reduction
2015-10-17 20:46:38 +03:00
Pavel Kirienko
9b092509c9
TestNode uses heap based allocator now
2015-10-17 00:45:04 +03:00
Pavel Kirienko
9a432c0323
Heap based allocator - peak usage removed
2015-10-16 20:36:56 +03:00
Pavel Kirienko
4e4d9b7854
Node<>, SubNode<>: MemPoolSize defaults to zero
2015-10-16 16:57:02 +03:00
Pavel Kirienko
04381686bd
Optional thread-safety for default allocator
2015-10-16 16:46:10 +03:00
Pavel Kirienko
12c5fc8256
Heap based block allocator docs
2015-10-16 16:32:56 +03:00
Pavel Kirienko
b0d0c607a5
Updated HeapBasedPoolAllocator
2015-10-16 16:24:22 +03:00
Pavel Kirienko
6d29f0e405
UAVCAN_LIKELY(), UAVCAN_UNLIKELY()
2015-10-16 15:50:33 +03:00
Pavel Kirienko
660e84e17f
Allocator interface: getNumBlocks() --> getBlockCapacity()
2015-10-16 14:31:42 +03:00
Pavel Kirienko
913f6ea034
Traditional lock-based thread safety for HeapBasedPoolAllocator
2015-10-15 16:49:03 +03:00
Pavel Kirienko
ef93f1b1e8
Heap based pool allocator - configurable getNumBlocks()
2015-10-15 10:51:58 +03:00
Pavel Kirienko
edadf58a91
Some tests for HeapBasedPoolAllocator<>; the concurrency test is failing with heap corruption
2015-10-15 05:06:30 +03:00
Pavel Kirienko
a5d3895cbf
HeapBasedPoolAllocator<> with a basic test
2015-10-15 03:54:48 +03:00
Pavel Kirienko
d1511bed5c
Node<> and SubNode<> support custom allocators
2015-10-14 21:36:13 +03:00
Pavel Kirienko
23352746cd
Speed-optimized versions of bitarrayCopy() removed
2015-10-14 20:30:24 +03:00
Pavel Kirienko
899aae44f7
OTR deinterfaced
2015-10-14 20:15:19 +03:00
Pavel Kirienko
0d5fc65907
Transfer listener .hpp --> .cpp
2015-10-14 20:02:25 +03:00
Pavel Kirienko
a9fdf44fa9
Transfer buffering system detemplatized; compiles but tests are failing
2015-10-14 19:59:04 +03:00
Pavel Kirienko
763e96b6ed
Test node pool increased to 1024 blocks; this fixes the last test
2015-10-14 10:10:15 +03:00
Pavel Kirienko
898e78fd06
Node tests fixed
2015-10-14 09:59:11 +03:00
Pavel Kirienko
1149fc316e
OTR test fix
2015-10-14 09:54:27 +03:00
Pavel Kirienko
34b32ce0c0
More transport test fixes, 4 to go
2015-10-14 09:48:19 +03:00
Pavel Kirienko
706198fa38
Transport test fixes, 10 to go
2015-10-14 09:06:15 +03:00
Pavel Kirienko
3e6102d479
Map<> and Multiset<> fixed, 22 tests to go
2015-10-14 08:51:20 +03:00
Pavel Kirienko
dc5fdbb1cc
Unit tests no longer segfault, 26 are failing
2015-10-14 08:38:33 +03:00
Pavel Kirienko
be84897ed6
First stab at global refactoring of memory management - the library builds, but unit tests are failing horribly
2015-10-14 08:29:50 +03:00
Pavel Kirienko
0643879922
STM32 driver test app removed
2015-10-13 17:25:34 +03:00
Pavel Kirienko
995a5510e5
Merge pull request #71 from UAVCAN/lpc11c24
...
Missing features for LPC11C24
2015-10-13 17:23:26 +03:00
Pavel Kirienko
e060962261
LPC11C24 demo optimization
2015-10-13 17:15:14 +03:00
Pavel Kirienko
eb104b45bd
LPC11C24 demo with dynamic node ID allocaiton
2015-10-13 17:08:24 +03:00
Pavel Kirienko
d7bd5fc28b
LPC11C24 printing a scary message when the app fails
2015-10-13 17:01:21 +03:00
Pavel Kirienko
b94246237d
LPC11C24 enforcing GCC 4.9 or newer
2015-10-13 15:39:21 +03:00
Pavel Kirienko
df056a7948
LPC11C24 acceptance filters
2015-10-13 15:29:15 +03:00
Pavel Kirienko
873e386793
LPC11C24 minor cleanup in sys/board*
2015-10-13 14:26:13 +03:00
Pavel Kirienko
98189950e4
LPC11C24 C_CAN IF_CMDREQ_BUSY
2015-10-13 14:12:53 +03:00
Pavel Kirienko
d9ca67c84c
LPC11C24 - break on die()
2015-10-13 12:49:41 +03:00
Pavel Kirienko
6f782b2be2
LPC11C24 abort debug code removed
2015-10-12 23:09:57 +03:00
Pavel Kirienko
367389f728
LPC11C24 temporary test app
2015-10-12 23:07:17 +03:00
Pavel Kirienko
8a88ea35cc
LPC11C24 automatic bus-off recovery
2015-10-12 23:06:55 +03:00
Pavel Kirienko
0e97d7a9ba
LPC11C24 support for TX aborts
2015-10-12 13:26:13 +03:00
Pavel Kirienko
98000f2076
LPC11C24 driver - removed some literal constants
2015-10-12 08:39:22 +03:00
Pavel Kirienko
563ec45c6e
LPC11C24 auto bit rate detection is sort of working
2015-10-12 04:07:13 +03:00
Pavel Kirienko
fc2a4527d3
LPC11C24 fixes and some debug output to bit rate detection routine
2015-10-12 02:37:13 +03:00
Pavel Kirienko
851b0c7c29
LPC11C24 C_CAN 32 bit constants allow to use ~ without explicit cast
2015-10-12 02:34:00 +03:00
Pavel Kirienko
972d895f88
LPC11C24 C_CAN paranoid offset checks
2015-10-12 01:12:42 +03:00
Pavel Kirienko
800f245be7
LPC11C24 automatic CAN bit rate detection
2015-10-12 00:12:52 +03:00
Pavel Kirienko
5a649eb11b
LPC11C24 clock initialization validation
2015-10-11 20:40:32 +03:00
Pavel Kirienko
3f8a61a4c1
Merge branch 'master' into lpc11c24
2015-10-11 18:36:34 +03:00
Pavel Kirienko
8effe93d6e
Merge pull request #70 from UAVCAN/info_retriever_inherit
...
Changed NodeInfoRetriever to inherit publicly from NodeStatusMonitor
2015-10-11 17:54:20 +03:00
Ben Dyer
c08016edbc
Changed NodeInfoRetriever to inherit publicly from NodeStatusMonitor to allow access to node status API
2015-10-11 21:22:00 +11:00
Pavel Kirienko
8c2d86d55c
STM32 demo board init fix
2015-10-10 17:50:25 +03:00
Pavel Kirienko
d8bf7112b2
Merge pull request #69 from UAVCAN/stm32_can_auto_bit_rate_fix
...
STM32 auto bit rate detection fix
2015-10-10 17:19:38 +03:00
Pavel Kirienko
3dffcc007b
STM32 demo - bxCAN GPIO initialization fixed
2015-10-10 17:09:52 +03:00
Pavel Kirienko
076104877a
STM32 new CAN initialization
2015-10-10 10:16:57 +03:00
Pavel Kirienko
85100d6766
STM32 initOnce(), not complete yet
2015-10-10 10:05:51 +03:00
Pavel Kirienko
93fe54bb21
Experimental fix to CAN bus lockup bug
2015-10-09 05:10:13 +03:00
Pavel Kirienko
69dc2114c9
Merge pull request #68 from paulpatience/master
...
Fix -Wundef warning and use constructor to compile in C++03
2015-10-09 02:23:05 +03:00
Paul A. Patience
45eb37d905
Use a constructor in UtcSyncParams to compile in C++03 without warnings
2015-10-08 19:13:27 -04:00
Pavel Kirienko
d773db4ffc
STM32 example extended with dynamic node ID allocation
2015-10-09 02:06:45 +03:00
Paul A. Patience
c5c16e97f8
Fix -Wundef warning by defining UAVCAN_STM32_BAREMETAL to 0 if it is not defined
2015-10-08 18:55:29 -04:00
Pavel Kirienko
67ee9d567f
STM32 example: cleaner node initialization
2015-10-09 01:53:53 +03:00
Pavel Kirienko
47da7f17df
STM32 example: cleaner node instantiation
2015-10-09 01:51:37 +03:00
Pavel Kirienko
70232725e6
STM32 example refactored
2015-10-09 01:45:23 +03:00
Pavel Kirienko
909d71081e
Merge branch 'cmake-cross'
2015-10-06 18:04:29 +03:00
Pavel Kirienko
9fb9053b01
Minor corrections to @jgoppert's CMakeLists.txt
2015-10-06 18:04:07 +03:00
James Goppert
562d308712
Requested changes.
2015-10-05 17:56:48 -04:00
James Goppert
86c3397b1b
Requested changes.
2015-10-05 17:15:43 -04:00
James Goppert
0b0e7bc6cc
Added cross-compiling support.
2015-10-04 21:28:22 -04:00
Pavel Kirienko
09370a8160
Merge pull request #65 from cvra/chibios3
...
Update stm32 drivers to ChibiOS 3.0
2015-10-04 14:24:24 +03:00
Ben Dyer
480d25c007
Travis CI configuration
2015-10-04 20:54:18 +11:00
Pavel Kirienko
04897f613d
README: Note on unit testing
2015-10-02 14:02:18 +03:00
Pavel Kirienko
fbab130b2e
Removed a redundant assertion check in Linux test app
2015-09-30 17:53:21 +03:00
Pavel Kirienko
0410b34d0c
Coverity fix 1325169
2015-09-30 02:14:46 +03:00
Pavel Kirienko
ac04e374c6
BasicFileServerBackend - fixed a missing include
2015-09-25 23:09:28 +03:00
Pavel Kirienko
62e89b3399
BasicFileServerBackend typo fix
2015-09-25 23:01:57 +03:00
Pavel Kirienko
531433a326
Fixed makeApplicationID() (rookie mistake)
2015-09-25 01:47:39 +03:00
Pavel Kirienko
14cdbc0594
Added some getters to the Node<> class
2015-09-25 01:45:40 +03:00
Pavel Kirienko
335cd6622a
uavcan_linux::makeApplicationID() - instance_id made optional
2015-09-25 00:38:55 +03:00
Antoine Albertelli
5716f3eb3e
Add compatibility defines for STM32F3
2015-09-24 23:33:43 +02:00
Pavel Kirienko
0f53a76b50
Changed API of DynamicNodeIDClient: start() accepts UniqueID instead of HardwareVersion
2015-09-25 00:02:58 +03:00
Antoine Albertelli
d2a5476af1
Fix mutex lock typo
2015-09-23 14:57:14 +02:00
Pavel Kirienko
50dc08663a
Revert "DSDL script installation removed from the top-level CMake script"
...
This reverts commit fc997cff88 .
2015-09-21 16:46:32 +03:00
Pavel Kirienko
24c19f7cee
DSDL update
2015-09-14 14:07:26 +02:00
Michael Spieler
a767b77de2
Keep ChibiOS 2 compatibility, fix ISR names for ChibiOS 3.
2015-09-08 18:32:49 +02:00
Antoine Albertelli
3efd9bdfd0
Correct CORTEX_MAX_KERNEL_PRIORITY use
...
Now the NVIC minidriver always take the priority as parameter, the use
of the CORTEX_PRIORITY_MASK() macro is no more required.
Reference: http://www.chibios.org/dokuwiki/doku.php?id=chibios:articles:porting_from_2_to_3
2015-09-03 18:15:09 +02:00
Antoine Albertelli
73242f39c6
Update stm32 drivers to ChibiOS 3.0
2015-09-03 17:41:01 +02:00
Pavel Kirienko
4dff5c2223
Stupid typo in allocation request manager
2015-09-02 19:16:11 +03:00
David Sidrane
e6bdbaeb72
Merge pull request #62 from UAVCAN/master_baremetal
...
Master baremetal
2015-08-24 11:02:57 -10:00
Pavel Kirienko
d75e76555d
LPC11C24: CanDriver::detectBitRate() - NOT TESTED, NOT FINISHED
2015-08-24 19:44:47 +03:00
Pavel Kirienko
dedefdc6a8
LPC11C24: Added C_CAN definitions; they are still unused
2015-08-24 19:35:02 +03:00
Pavel Kirienko
b7aa3109bc
LPC11C24: Consistent use of nullptr
2015-08-24 18:05:19 +03:00
Pavel Kirienko
d82213504f
LPC11C24 PoC UART logging
2015-08-24 18:03:01 +03:00
Pavel Kirienko
8eac06c9dc
LPC11C24 test: some GCC flags were removed, which fixed hardfault and reduced code size by ~300 bytes
2015-08-24 16:44:58 +03:00
Pavel Kirienko
42b48d9626
LPC11C24 wrong optimization setting
2015-08-24 16:42:54 +03:00
Pavel Kirienko
c856236a4a
LPC11C24 UART
2015-08-24 16:37:16 +03:00
Pavel Kirienko
03ed261477
LPC11C24: Proper CAN timings
2015-08-24 15:43:16 +03:00
Pavel Kirienko
b334dbbfe5
Merge branch 'master' into lpc11c24
2015-08-24 14:21:08 +03:00
Pavel Kirienko
be7f68763e
Merge pull request #60 from UAVCAN/bendyer-half-nostdlib
...
Use public domain half<->float routines which dependence on math functions in C stdlib
2015-08-24 14:17:18 +03:00
Pavel Kirienko
4ecdfd844e
Minor style fix in IEEE754Converter; no changes to the logic
2015-08-24 14:06:56 +03:00
Ben Dyer
37bd23e4fa
Replace float<->half implementation with public domain code
2015-08-24 20:07:03 +10:00
Pavel Kirienko
9ca9d941c7
STM32 test updated with autobauding
2015-08-23 17:54:58 +03:00
Pavel Kirienko
a7fe27a365
Ninja fix
2015-08-21 15:03:25 +03:00
Pavel Kirienko
aeb8beadc1
IEEE754Converter::enforceIeee<>()
2015-08-21 15:00:50 +03:00
Pavel Kirienko
9c185b3ddf
float16 converter is explicitly declared non-compatible with non-IEEE754
2015-08-21 14:50:47 +03:00
Pavel Kirienko
ec1210dfec
Fixed doxygen comments
2015-08-21 14:43:37 +03:00
Pavel Kirienko
fbcd484e48
Merge pull request #61 from UAVCAN/bendyer-global-data-type-registry-flag
...
Add UAVCAN_NO_GLOBAL_DATA_TYPE_REGISTRY flag
2015-08-21 13:51:07 +03:00
Ben Dyer
e97f948b9a
Uncrustified
2015-08-21 20:35:59 +10:00
Ben Dyer
dfc350a67a
Correct default flag value
2015-08-21 20:31:29 +10:00
Ben Dyer
adfe61d613
Use NumPy half<->float routines to avoid dependence on math functions in C stdlib
2015-08-21 17:57:41 +10:00
Ben Dyer
cfa77b13a4
Add UAVCAN_NO_GLOBAL_DATA_TYPE_REGISTRY flag to allow the global data type registry to be disabled
2015-08-21 15:57:04 +10:00
Pavel Kirienko
3ae5400aa5
DSDL sync
2015-08-20 12:21:56 +03:00
Pavel Kirienko
16800376af
LPC11C24: removed #define-s
2015-08-20 07:11:52 +03:00
Pavel Kirienko
c24aca186c
LPC11C24 driver: Proper use of std::
2015-08-20 07:09:23 +03:00
Pavel Kirienko
5decf35aed
LPC11C24: C++11 in the demo app
2015-08-20 06:57:23 +03:00
Pavel Kirienko
cf39ecf879
POSIX driver: Proper use of std:: and uavcan::
2015-08-20 05:42:17 +03:00
Pavel Kirienko
b4b6c9eff5
Default initialization of stack variables
2015-08-20 05:30:15 +03:00
David Sidrane
121f83a420
Proper file IO loops #40
2015-08-19 11:05:42 -10:00
David Sidrane
7fc43d0cbf
Fixed Typo
2015-08-18 15:35:30 -10:00
Pavel Kirienko
e0a619c011
Default TX timeout increased to 100 ms
2015-08-19 01:12:26 +03:00
Pavel Kirienko
b317b94d98
Update to beta DSDL
2015-08-18 16:04:48 +03:00
Pavel Kirienko
940399a6a1
Pyuavcan update
2015-08-18 14:52:27 +03:00
Pavel Kirienko
677d55343f
DSDL update
2015-08-17 18:10:56 +03:00
Pavel Kirienko
ec7c997ed3
Acceptance filter test fix
2015-08-17 15:06:51 +03:00
Pavel Kirienko
bfee82f3c4
Pyuavcan update
2015-08-17 14:52:38 +03:00
Pavel Kirienko
d6dfd07ecf
DSDL update
2015-08-17 14:51:14 +03:00
Pavel Kirienko
04dc7d5e85
Timestamp update
2015-08-17 14:12:24 +03:00
Pavel Kirienko
181b4f6094
DSDL update
2015-08-16 17:30:03 +03:00
Pavel Kirienko
e32dfafbae
First stab at fixing #55
2015-08-15 13:15:44 +03:00
Pavel Kirienko
f3931f7fc5
EnumerationRequest removed
2015-08-14 21:55:34 +03:00
David Sidrane
06ac74bd40
Rebased on stm32_nuttx_clock
2015-08-14 07:24:41 -10:00
David Sidrane
9750e3f58d
Initail STM32 Baremetal build
2015-08-14 05:46:33 -10:00
David Sidrane
b0fef2ed1f
Backing out setting priority of driver's clock tick under nuttx as it is hard faulting the system in IRQ
2015-08-14 05:00:24 -10:00
David Sidrane
9e51b2b125
Adding mechanism to update the drivers notion of UTC from the system RTC
...
Fixed Clock source and prescale calculation
2015-08-14 05:00:24 -10:00
David Sidrane
4c80149b23
Adds Nuttx Support to uc_stm32_clock
2015-08-14 05:00:24 -10:00
Pavel Kirienko
bbfebbcf37
OStream fix
2015-08-14 06:26:56 +03:00
Pavel Kirienko
46793c5e06
STM32 timing doc fix
2015-08-14 05:11:24 +03:00
Pavel Kirienko
c2fec7be38
STM32 driver: CAN timing docs
2015-08-13 01:55:27 +03:00
Pavel Kirienko
e5efb2bb62
STM32: SJW fix
2015-08-13 01:52:52 +03:00
Pavel Kirienko
7aac8bcfee
README - updated links
2015-08-08 17:29:31 +03:00
Pavel Kirienko
2fc0e99681
Minor adjustments in the acceptance filter configurator API
2015-08-04 20:10:32 +03:00
Pavel Kirienko
1e9c434ff0
Merge pull request #54 from ilia-sheremet/master
...
Acceptance filter update for new transport layer
2015-08-04 20:02:50 +03:00
Pavel Kirienko
58afe173db
See #56
2015-08-01 20:21:26 +03:00
ilia-sheremet
9e246617d1
Acceptance filter update for new transport layer corrections_2
2015-07-29 19:04:30 +01:00
Pavel Kirienko
b09509c407
Test fix #42
2015-07-26 16:03:07 +03:00
ilia-sheremet
b204cb36d8
Acceptance filter update for new transport layer corrections
2015-07-25 20:25:06 +01:00
Pavel Kirienko
1e749b687c
Linux nodetool: YAML parameter output
2015-07-25 20:04:29 +03:00
Pavel Kirienko
ec6722ba28
STM32: simple init overload
2015-07-25 00:54:19 +03:00
Pavel Kirienko
0a5edf314c
STM32: auto bit rate in silent mode
2015-07-25 00:52:09 +03:00
Pavel Kirienko
14913b4cb2
STM32 auto bit rate
2015-07-25 00:16:37 +03:00
ilia-sheremet
5fa5a4f365
Acceptance filter update for new transport layer
2015-07-24 21:04:56 +01:00
Pavel Kirienko
ad12760d7f
NodeStatusMonitor: Fix to premature node timeout
2015-07-23 14:47:57 +03:00
Pavel Kirienko
5bf015aa28
STM32: Proper CAN timing computation routine; closes #43
2015-07-22 22:54:52 +03:00
Pavel Kirienko
4238df3e9f
Proper OTR deadlines
2015-07-20 18:11:53 +03:00
Pavel Kirienko
035f107ab5
RX logic revisited
2015-07-20 18:07:29 +03:00
Pavel Kirienko
8364249587
test segfault fix
2015-07-20 13:12:21 +03:00
Pavel Kirienko
5991d3000f
Printing backtrace on segfault
2015-07-20 13:09:06 +03:00
Pavel Kirienko
29aff593aa
Revert "TransferID::subtracted()"
...
This reverts commit c36fdb2156 .
2015-07-20 12:40:27 +03:00
Pavel Kirienko
c36fdb2156
TransferID::subtracted()
2015-07-20 12:32:13 +03:00
Pavel Kirienko
29c295bf11
TransferReceiver timing fix
2015-07-15 21:22:28 +03:00
Pavel Kirienko
da3d41307d
Clarification in TransferReceiver
2015-07-15 16:55:35 +03:00
Pavel Kirienko
38f8b34f54
TransferSender: Fixed OTR entry lifetime
2015-07-15 16:55:05 +03:00
Pavel Kirienko
f94649f1cc
SocketCAN driver: Fixed frame reordering
2015-07-13 15:44:03 +03:00
Pavel Kirienko
4f63d569da
dsdl and pyuavcan update
2015-07-12 20:15:11 +03:00
Pavel Kirienko
64bed86ca8
dsdl update
2015-07-11 14:55:13 +03:00
Pavel Kirienko
749901815f
More DSDL tests
2015-07-11 14:24:43 +03:00
Pavel Kirienko
7aeed04af7
dsdl update
2015-07-11 14:17:17 +03:00
Pavel Kirienko
17c0003a87
Another test for complex data structures with unions and voids
2015-07-11 14:03:50 +03:00
Pavel Kirienko
1b7ff0693f
dsdlc: fixed linker error (multiple definitions)
2015-07-11 13:51:01 +03:00
Pavel Kirienko
fc3f0808a6
Union test
2015-07-11 13:38:23 +03:00
Pavel Kirienko
96c496600b
Cleaner YAML validation
2015-07-11 11:52:39 +03:00
Pavel Kirienko
e6aeb036e8
Refactored unions
2015-07-11 11:35:26 +03:00
Pavel Kirienko
903d88b8d1
dsdlc namespace fix
2015-07-11 11:00:42 +03:00
Pavel Kirienko
50233da38d
Support for void fields
2015-07-11 10:46:15 +03:00
Pavel Kirienko
75d1d03655
pyuavcan update
2015-07-11 10:13:02 +03:00
Pavel Kirienko
08a66b1ee2
pyuavcan & dsdl update
2015-07-11 08:38:00 +03:00
Pavel Kirienko
b50a70862c
dsdlc: union streaming
2015-07-11 07:59:39 +03:00
Pavel Kirienko
35e65135c3
Nodetool update; build is fixed now
2015-07-11 07:46:42 +03:00
Pavel Kirienko
b4c0f71412
dsdlc: template typename fix
2015-07-11 07:42:51 +03:00
Pavel Kirienko
427b473f3f
ParamServer test update
2015-07-11 07:37:16 +03:00
Pavel Kirienko
7a8260b191
ParamServer update
2015-07-11 07:35:04 +03:00
Pavel Kirienko
38897225d6
dsdlc: union tag enumeration; improved is()/as()/to() with support for either direct access via StorageType, or indirect access via Spec type
2015-07-11 07:34:23 +03:00
Pavel Kirienko
4000712ae5
DSDL update
2015-07-10 20:07:37 +03:00
Pavel Kirienko
d4ac6fd639
Array fix - avoiding boolean as array size type
2015-07-10 19:34:46 +03:00
Pavel Kirienko
4cc8282e15
IntegerSpec - boolean specialization
2015-07-10 18:33:30 +03:00
Pavel Kirienko
6f1ef63f56
Boolean traits
2015-07-10 17:54:22 +03:00
Pavel Kirienko
8a9b945a50
pyuavcan update
2015-07-10 17:38:32 +03:00
Pavel Kirienko
33c25538a4
pyuavcan update
2015-07-10 17:33:23 +03:00
Pavel Kirienko
05f7c16cff
dsdlc: union bit lengths
2015-07-10 17:23:22 +03:00
Pavel Kirienko
37a8562961
EnumMin, EnumMax
2015-07-10 17:11:09 +03:00
Pavel Kirienko
17aeaf2d0a
dsdlc template fix
2015-07-10 16:42:39 +03:00
Pavel Kirienko
5ac6dc1fb8
Union methods - is(), as(), to()
2015-07-10 16:13:48 +03:00
Pavel Kirienko
263aea3542
dsdlc: Union encode()/decode()
2015-07-10 15:13:25 +03:00
Pavel Kirienko
ef8919942e
dsdlc: Union comparison operators
2015-07-10 14:53:21 +03:00
Pavel Kirienko
9fb7497add
dsdlc: union tag generation
2015-07-10 14:36:52 +03:00
Pavel Kirienko
d4efc4e4c0
pyuavcan update
2015-07-10 14:04:20 +03:00
Pavel Kirienko
d448edbaef
DSDL and pyuavcan update
2015-07-10 13:37:00 +03:00
Pavel Kirienko
78ccc42653
pyuavcan/dsdl update
2015-07-09 15:42:24 +03:00
Pavel Kirienko
4d18f381e5
DSDL and pyuavcan update
2015-07-09 09:03:03 +03:00
Pavel Kirienko
dd05c824b7
Driver documentation update
2015-07-09 07:22:48 +03:00
Pavel Kirienko
6202cee04a
STM32 test update
2015-07-09 07:04:29 +03:00
Pavel Kirienko
5223244a62
LPC11C24 test update
2015-07-09 07:02:51 +03:00
Pavel Kirienko
9ac61008b1
NodeStatusMonitor logic fix
2015-07-09 01:49:45 +03:00
Pavel Kirienko
9c2a61e0fd
uavcan_monitor update
2015-07-09 01:45:42 +03:00
Pavel Kirienko
1a5bd6c906
Node monitor update
2015-07-09 01:03:58 +03:00
Pavel Kirienko
6b811faccd
Linux app compilation fixes
2015-07-09 00:54:21 +03:00
Pavel Kirienko
e063556567
All tests are passing
2015-07-08 23:54:11 +03:00
Pavel Kirienko
7125eeb5c2
Blah blah
2015-07-08 23:39:50 +03:00
Pavel Kirienko
82cd3f6196
Component status manager removed
2015-07-08 23:38:56 +03:00
Pavel Kirienko
88cf10d5a1
Tests fixes, the library should compile now
2015-07-08 23:33:41 +03:00
Pavel Kirienko
ece4cfc196
NodeInfoRetriever updated
2015-07-08 23:26:57 +03:00
Pavel Kirienko
2fa78ddda2
NodeStatusMonitor update
2015-07-08 23:24:59 +03:00
Pavel Kirienko
e98ba01e22
Node<> and NodeStatusProvider updated
2015-07-08 21:54:56 +03:00
Pavel Kirienko
948ab8d695
dsdl update
2015-07-08 21:32:58 +03:00
Pavel Kirienko
e4632ebba2
STM32 NuttX facepalm fix
2015-07-08 02:35:07 +03:00
Pavel Kirienko
4f79527860
STM32: NuttX driver fixed
2015-07-08 02:15:57 +03:00
Pavel Kirienko
e36d276e1f
STM32 driver test app
2015-07-07 19:25:12 +03:00
Pavel Kirienko
cdd8bfc5c3
STM32: doc comment, fixed error counting
2015-07-07 19:20:05 +03:00
Pavel Kirienko
4247087e5e
STM32: simplified abort handling
2015-07-07 19:05:09 +03:00
Pavel Kirienko
d3a1c84f27
STM32 SCE IRQ fix
2015-07-07 18:56:24 +03:00
Pavel Kirienko
36ec6781e8
STM32 IRQ fix
2015-07-07 01:33:11 +03:00
Pavel Kirienko
a72bc11093
STM32 TX aborts
2015-07-07 01:22:16 +03:00
Pavel Kirienko
d58d3423ff
STM32: proper TX prioritization
2015-07-06 20:17:11 +03:00
Pavel Kirienko
5028ab1813
STM32 test: var LIBUAVCAN_REPO_ROOT
2015-07-06 13:44:34 +03:00
Pavel Kirienko
0d251cdb38
Nodetool warning fix
2015-07-05 18:48:34 +03:00
Pavel Kirienko
8d923fee4c
Modified CAN driver API: Passing the next pending TX frames into the select() call to facilitate proper prioritization in the driver
2015-07-05 18:46:21 +03:00
Pavel Kirienko
b4ba088e08
DataTypeInfoProvider test update
2015-07-05 10:05:45 +03:00
Pavel Kirienko
054b60276d
Resolved a TODO in AllocationRequestManager
2015-07-05 10:00:36 +03:00
Pavel Kirienko
35fd634282
Configurable priority in high-level protocol logic classes
2015-07-05 09:54:54 +03:00
Pavel Kirienko
f48c16d1ef
Dynamic node ID servers - configurable priority
2015-07-05 09:37:39 +03:00
Pavel Kirienko
7240e0d6d2
Publisher init() overload with priority argument
2015-07-05 09:34:34 +03:00
Pavel Kirienko
27ec2419ff
DSDL catchup
2015-07-05 09:27:22 +03:00
Pavel Kirienko
a25a9252a7
Global discovery request removed
2015-07-05 07:21:34 +03:00
Pavel Kirienko
36a7c7e7a9
CATS and network compatibility checker removed
2015-07-05 07:07:59 +03:00
Pavel Kirienko
4f0c448723
DSDL update
2015-07-04 15:51:06 +03:00
Pavel Kirienko
aab59e2031
DSDL update
2015-07-04 12:20:01 +03:00
Pavel Kirienko
31c6116345
DynamicNodeIDClient test fix
2015-07-04 12:07:05 +03:00
Pavel Kirienko
10877089d8
Raft: Test event tracer logs timestamp
2015-07-04 11:50:46 +03:00
Pavel Kirienko
f839cf010b
Dynamic node ID client update
2015-07-04 11:00:10 +03:00
Pavel Kirienko
d8f354ff1f
VirtualCanIface: fixes #47 for Linux/POSIX
2015-07-03 21:58:24 +03:00
Pavel Kirienko
f501153c6b
Abort flag check in TransferSender test
2015-07-03 10:48:38 +03:00
Pavel Kirienko
6a17bf6eb5
DSDL update
2015-07-03 10:42:03 +03:00
Pavel Kirienko
71b62ede9c
CanIOFlagAbortOnError - automatically enforced by TransferSender if the node is in passive mode
2015-07-03 10:41:39 +03:00
Pavel Kirienko
b927c1de5f
ServiceServer sends response at the same priority as request
2015-07-03 10:02:10 +03:00
Pavel Kirienko
f015c2de8b
Configurable priority for service calls; plus a minor collateral refactoring
2015-07-03 09:56:52 +03:00
Pavel Kirienko
546fda2b39
Time sync update
2015-07-03 09:28:54 +03:00
Pavel Kirienko
52505864da
DSDL update
2015-07-03 09:25:05 +03:00
Pavel Kirienko
cfc069d552
Time sync slave tests fixed, all tests pass successfully
2015-07-03 09:04:24 +03:00
Pavel Kirienko
05609e7c84
NodeStatusMonitor test fixed, 2 to go
2015-07-03 08:57:37 +03:00
Pavel Kirienko
3b911372cf
Service server test fixed, 3 to go
2015-07-03 08:51:44 +03:00
Pavel Kirienko
d461d16bfd
TransferListener tests fixed, 4 to go
2015-07-03 08:43:39 +03:00
Pavel Kirienko
2b9b367c67
CAN acceptance filter configurator temporarily disabled, 5 to go
2015-07-03 08:36:22 +03:00
Pavel Kirienko
60ce395297
TransferSender test fixed, 6 to go
2015-07-03 08:30:55 +03:00
Pavel Kirienko
15621947e9
TransferID test fixed, 7 to go
2015-07-03 08:24:10 +03:00
Pavel Kirienko
445f3c4003
Frame tests fixed, 8 to go
2015-07-03 08:15:53 +03:00
Pavel Kirienko
2d6fc2a5bd
UTC timestamping support in CAN driver mock; this enables stricter timestamping checks in other tests
2015-07-03 07:41:18 +03:00
Pavel Kirienko
8debad440e
Dispatcher tests fixed, 13 to go
2015-07-03 07:29:32 +03:00
Pavel Kirienko
591cfcb98a
Test output cleanup
2015-07-03 06:58:51 +03:00
Pavel Kirienko
da6dd5a227
TransferReceiver: Checking for unexpected start of transfer
2015-07-03 06:16:50 +03:00
Pavel Kirienko
c56458c73d
TransferReceiver tests fixed, 17 to go
2015-07-03 02:41:27 +03:00
Pavel Kirienko
19cd458ae6
Temporary fix to STM32 driver
2015-07-02 22:20:50 +03:00
Pavel Kirienko
8d00058307
Unittest fix
2015-07-02 22:07:11 +03:00
Pavel Kirienko
4bc7620178
Tests are crashing no more! 25 to go...
2015-07-02 02:52:32 +03:00
Pavel Kirienko
a4020f8749
Redirecting test stderr to files
2015-07-02 02:33:42 +03:00
Pavel Kirienko
d1bd175a29
Incoming transfer tests fixed
2015-07-02 02:01:09 +03:00
Pavel Kirienko
b49392569e
Three tests fixed, ~21 to go
2015-07-02 01:54:08 +03:00
Pavel Kirienko
08dd1e6c63
Tail byte transmission fix
2015-07-01 19:16:10 +03:00
Pavel Kirienko
8a2e22046e
All unit tests compile, but crash. This is the most horrifying commit I've ever made.
2015-07-01 14:55:24 +03:00
Pavel Kirienko
feb7600f17
Test services updated
2015-06-29 19:28:19 +03:00
Pavel Kirienko
c0a4058c5f
Node objects update
2015-06-29 19:26:06 +03:00
Pavel Kirienko
287d9dd942
TransferReceiver updated; build is still broken
2015-06-29 19:22:59 +03:00
Pavel Kirienko
a565a9025e
TransferSender updated; build is still broken
2015-06-29 19:13:47 +03:00
Pavel Kirienko
350761fa7a
Basic modifications; the build is terribly broken
2015-06-29 19:01:33 +03:00
Pavel Kirienko
7502a451e4
pyuavcan update
2015-06-28 17:48:08 +03:00
Pavel Kirienko
587872e6ef
dsdl update
2015-06-28 17:34:38 +03:00
Pavel Kirienko
6e185b1012
Merge pull request #45 from ilia-sheremet/master
...
Can HW acceptance filter feature + getIface() corrections + dsdl hash fixed
2015-06-27 19:25:45 +03:00
ilia-sheremet
0ce069fce2
uc_can_acceptance_filter_configurator.cpp formatting corrections and getNumFilters() extra check
2015-06-27 17:40:53 +02:00
ilia-sheremet
876ef38097
dsdl hash update
2015-06-26 14:53:37 +02:00
ilia-sheremet
0af89b8d15
Merge remote-tracking branch 'upstream/master'
...
Conflicts:
libuavcan/include/uavcan/build_config.hpp
2015-06-26 14:39:29 +02:00
ilia-sheremet
573b268457
CAN HW filters are added using map container
2015-06-26 14:35:53 +02:00
Pavel Kirienko
1b698c4267
NodeInfoRetriever::invalidateAll()
2015-06-24 01:32:44 +03:00
Pavel Kirienko
532d490fac
DSDL update
2015-06-22 21:28:36 +03:00
Pavel Kirienko
e99120c257
Memory pool usage tracking + size optimization
2015-06-22 21:02:41 +03:00
Pavel Kirienko
ba2f7de9d8
Scheduler: spin deadline computation fix
2015-06-21 03:39:45 +03:00
Pavel Kirienko
a1a1715b10
UAVCAN_PACKED_ removed from the STM32 test
2015-06-20 23:00:23 +03:00
Pavel Kirienko
5cfbb193e6
UAVCAN_PACKED_* removed completely, as with the latest optimizations it is not needed anymore
2015-06-20 22:42:54 +03:00
Pavel Kirienko
815337ab1f
TransferReceiver optimization
2015-06-20 22:39:39 +03:00
Pavel Kirienko
cb7f1ef460
UAVCAN_PACK_STRUCTS removed, was useless
2015-06-18 18:52:43 +03:00
Pavel Kirienko
22c51b28e3
Smarter use of UAVCAN_PACKED_*
2015-06-18 18:46:54 +03:00
Pavel Kirienko
37c858627a
Fixed padding in DataTypeDescriptor class
2015-06-18 18:37:38 +03:00
Pavel Kirienko
3ba1fad9ac
Using packed structs in STM32 test
2015-06-18 18:34:56 +03:00
Pavel Kirienko
91ed3709eb
Field alignment hackery in Map<> that allows to reduce object sizes (see the following commits)
2015-06-18 18:19:58 +03:00
Pavel Kirienko
356f46d08a
Centralized server: Allocation table cache removed
2015-06-18 17:50:17 +03:00
Pavel Kirienko
b8ce1699a5
Doc clarification for UAVCAN_MAX_NETWORK_SIZE_HINT
2015-06-15 15:50:12 +03:00
Pavel Kirienko
9a77d27d81
Build config UAVCAN_MAX_NETWORK_SIZE_HINT ( #33 )
2015-06-15 15:44:58 +03:00
Pavel Kirienko
00319909c1
PoolManager<> removed (was useless) ( #33 )
2015-06-15 15:27:33 +03:00
Pavel Kirienko
95091ab26c
LPC11C24: clean target removes the generated headers
2015-06-15 14:46:42 +03:00
ilia-sheremet
bad7123b7d
getIface() constants added
2015-06-13 20:15:45 +02:00
Pavel Kirienko
3784484b16
Installation updates
2015-06-10 20:30:10 +03:00
Pavel Kirienko
c4108f3c21
pyuavcan submodule fix
2015-06-10 20:13:51 +03:00
Pavel Kirienko
c3de88b89f
When dsdlc is running from source, it does not require pyuavcan anymore
2015-06-10 20:10:40 +03:00
Pavel Kirienko
91642adfe5
README fix
2015-06-10 15:37:38 +03:00
Pavel Kirienko
fc997cff88
DSDL script installation removed from the top-level CMake script
2015-06-10 15:32:39 +03:00
Pavel Kirienko
a7ce4aac8c
Pyuavcan removed from the top-level CMake script
2015-06-10 15:32:03 +03:00
Pavel Kirienko
e612a0014b
dsdlc: path extension feature removed
2015-06-10 15:28:53 +03:00
Pavel Kirienko
68e21a6e77
README update
2015-06-10 15:27:37 +03:00
Pavel Kirienko
dfaf1f268c
pyuavcan removed
2015-06-10 15:17:48 +03:00
Pavel Kirienko
c2e3cb3315
README update
2015-06-10 15:05:21 +03:00
Pavel Kirienko
28733e2492
DSDLC update
2015-06-10 15:04:22 +03:00
Pavel Kirienko
c8e9277e62
DSDL and Pyuavcan submodules
2015-06-10 15:00:23 +03:00
Pavel Kirienko
03c251db4f
Pyuavcan and DSDL removed, will be returned back as submodules in the next commit
2015-06-10 14:59:30 +03:00
Pavel Kirienko
da69feec76
README update
2015-06-10 14:58:34 +03:00
Pavel Kirienko
e5b7a2c158
Warning fix in a Linux app
2015-06-10 14:12:11 +03:00
Pavel Kirienko
df34ed9ffe
Logging installed Python files into text files; this partially resolves #26
2015-06-10 13:59:36 +03:00
Pavel Kirienko
1a7a94c24c
Coverity 1304850
2015-06-10 13:30:51 +03:00
Pavel Kirienko
a1cf761917
Coverity 1304857 1304856 1304855
2015-06-10 13:17:40 +03:00
Pavel Kirienko
4d9e3b1131
Coverity 1304853
2015-06-10 13:15:31 +03:00
Pavel Kirienko
37f2b8044f
Coverity 1304854
2015-06-10 13:06:42 +03:00
Pavel Kirienko
b98aee7250
Coverity 1304851
2015-06-10 13:04:52 +03:00
Pavel Kirienko
eaaf2f15cd
Coverity 1304852
2015-06-10 13:00:15 +03:00
Pavel Kirienko
dc3f09855c
Coverity 1304849
2015-06-10 12:54:57 +03:00
Pavel Kirienko
2961f75cb3
Coverity 1304848
2015-06-10 12:49:50 +03:00
Pavel Kirienko
c6dc048e61
Merge pull request #39 from kylemanna/tiny_remove_rxframelistener
...
libuavcan: Disable Frame Listener with UAVCAN_TINY
2015-06-10 11:32:50 +03:00
Kyle Manna
b01f2bcc97
libuavcan: Disable Frame Listener with UAVCAN_TINY
...
* Compliation will fail on small systems with UAVCAN_TINY defined
with the following error:
abstract_node.hpp:123:33: error: 'IRxFrameListener' has not been declared
* Resolve issue by removing unecessary functions.
* Error is revealed and resolved when building test_stm32f107.
2015-06-09 19:53:45 -07:00
Pavel Kirienko
7b44bf8822
Safer virtual methods; this breaks compatibility with GCC 4.6
2015-06-09 23:05:49 +03:00
Pavel Kirienko
9ac2813cea
Cleaner type definitions in Linux driver
2015-06-09 22:58:00 +03:00
Pavel Kirienko
44b84ea5cb
Using -std=c++11 compiler flag
2015-06-09 22:48:19 +03:00
Pavel Kirienko
6f22745e55
Multithreading test for Linux
2015-06-09 19:49:16 +03:00
Pavel Kirienko
c793ab4177
Linux driver fix
2015-06-09 19:01:54 +03:00
Pavel Kirienko
d185eccf18
Exposed RX listener API via INode interface
2015-06-09 18:35:49 +03:00
Pavel Kirienko
2b8517905d
Linux driver: Refactored node instantiation helpers
2015-06-08 21:30:48 +03:00
Pavel Kirienko
83dd399cda
Virtual CAN driver interface
2015-06-08 20:25:21 +03:00
Pavel Kirienko
25371abe3b
Partially complete test of a multithreaded application Linux. It works, but it doesn't use iface sharing yet.
2015-06-08 14:59:44 +03:00
Pavel Kirienko
70b366d680
SubNode<> test
2015-06-08 12:49:44 +03:00
Pavel Kirienko
e24fa5f236
SubNode<>
2015-06-08 12:37:31 +03:00
Pavel Kirienko
fa2829a04a
Merge branch 'master' into multiprocessing
2015-06-08 12:23:50 +03:00
Pavel Kirienko
32adb8fabd
IRxFrameListener test
2015-06-08 12:18:50 +03:00
Pavel Kirienko
2b2b816004
Frame listeners are disabled in tiny mode
2015-06-08 12:05:54 +03:00
Pavel Kirienko
8891015321
IRxFrameListener
2015-06-08 11:57:05 +03:00
Pavel Kirienko
e8e0653022
INode::injectTxFrame()
2015-06-07 17:28:37 +03:00
Pavel Kirienko
aa0583c8dc
spinOnce() fix
2015-06-07 16:44:47 +03:00
Pavel Kirienko
988e404586
Work-around for false -Wtype-limits from GCC
2015-06-07 00:07:49 +03:00
Pavel Kirienko
fc990b6ef0
Specialization for CompileTimeIntSqrt<1>
2015-06-05 15:23:31 +03:00
Pavel Kirienko
8ab48f61e7
try_implicit_cast<>() --> coerceOrFallback<>()
2015-06-05 15:21:05 +03:00
Pavel Kirienko
1f1679c75d
LPC11C24 - removed useless libstdc++ stubs
2015-06-03 15:02:22 +03:00
Pavel Kirienko
107e0af4fd
LPC11C24 makefile fix
2015-06-03 14:57:42 +03:00
Pavel Kirienko
06f5489c1f
Merge branch 'dynamic_node_id_raft'
2015-06-03 02:38:00 +03:00
Pavel Kirienko
3d5f6f5d40
test_file_server
2015-06-03 02:20:36 +03:00
Pavel Kirienko
e54a1ed75e
Typo
2015-06-03 01:58:23 +03:00
Pavel Kirienko
250837965e
Minor fixes to BasicFileSeverBackend
2015-06-03 01:49:54 +03:00
Pavel Kirienko
ac3e70f6ba
Insignificant formatting fixes (uncrustify is not smart enough)
2015-06-03 01:32:10 +03:00
David Sidrane
82d9bf29be
Added Garbage collection closes #36
2015-06-02 11:03:11 -10:00
David Sidrane
a39c8fef3a
Consistant use of NULL
2015-06-01 10:38:44 -10:00
Pavel Kirienko
0dc18f9623
Fixed STM32 NuttX driver
2015-06-01 16:45:12 +03:00
Pavel Kirienko
5442c0ac04
Revert "STM32 NuttX driver: Edge-triggered poll(), sort of fixes #35 "
...
This reverts commit 22787651e6 .
2015-06-01 16:36:02 +03:00
Pavel Kirienko
7518172f6e
POSIX tools - more autoformatting
2015-06-01 15:22:06 +03:00
Pavel Kirienko
e0ea51aa21
Fixed naming and CV-correctness
2015-06-01 15:17:58 +03:00
Pavel Kirienko
1c88bd7183
Using proper NULL in POSIX tools
2015-06-01 15:09:34 +03:00
Pavel Kirienko
2615fda63e
POSIX event tracer formatting
2015-06-01 15:04:46 +03:00
Pavel Kirienko
52529408d3
POSIX tools - visibility fix
2015-06-01 15:03:27 +03:00
Pavel Kirienko
49019bfcff
firmware_version_checker.hpp formatting
2015-06-01 14:58:21 +03:00
Pavel Kirienko
cc74cf46af
Basic file server backend formatting
2015-06-01 14:57:44 +03:00
Pavel Kirienko
52f809a620
firmware_version_checker.hpp formatting
2015-06-01 14:22:32 +03:00
Pavel Kirienko
22787651e6
STM32 NuttX driver: Edge-triggered poll(), sort of fixes #35
2015-06-01 13:58:20 +03:00
Pavel Kirienko
28e82797c2
Optimized padding, added more sizeof() outputs
2015-05-31 08:12:46 +03:00
Pavel Kirienko
05099181e5
Marshal buffer removed
2015-05-31 07:18:56 +03:00
David Sidrane
cf32ca0573
Uodated to 20150527 Read GetInfo changes
2015-05-30 08:00:02 -10:00
David Sidrane
81512cc2e7
Merge branch 'dynamic_node_id_raft' of https://github.com/UAVCAN/uavcan into dynamic_node_id_raft
2015-05-29 18:00:08 -10:00
David Sidrane
4733a0d1a0
File Open Cache
2015-05-29 17:59:31 -10:00
Pavel Kirienko
b73dbd3f41
Padding optimization in TransferSender
2015-05-30 01:34:05 +03:00
Pavel Kirienko
941981066c
CRC64 removed, file messages refactored
2015-05-29 23:56:41 +03:00
Pavel Kirienko
0ce23a4f34
Lazy initialization of TransferSender removed
2015-05-29 23:30:02 +03:00
Pavel Kirienko
3499db227b
Stack-allocating the service response structure
2015-05-29 22:36:16 +03:00
Pavel Kirienko
d8c096430f
Added some comments concerning stack allocation and references
2015-05-29 22:23:41 +03:00
Pavel Kirienko
af09237dd2
Stack-allocating RX objects
2015-05-29 22:04:19 +03:00
Pavel Kirienko
84cac99d62
Merge branch 'dynamic_node_id_raft' into global_rx_object_buffer
2015-05-29 17:47:07 +03:00
Pavel Kirienko
d20f8e7356
Using global RX object buffer
2015-05-29 16:47:02 +03:00
Pavel Kirienko
b8ca0baa70
Merge branch 'dynamic_node_id_raft' of https://github.com/UAVCAN/uavcan into dynamic_node_id_raft
2015-05-29 03:34:46 +03:00
Pavel Kirienko
fe3fce4996
CanIOManager::makePendingTxMask() made public
2015-05-29 03:34:37 +03:00
Pavel Kirienko
d8ef97ece1
Merge pull request #34 from miccio-dk/dynamic_node_id_raft
...
Dynamic node id raft
2015-05-28 19:13:34 +03:00
Riccardo Miccini
7ef306bd4e
no data type info provider for TINY
2015-05-28 18:10:42 +02:00
Riccardo Miccini
cafa2498b9
no data type info provider for TINY
2015-05-28 18:00:03 +02:00
Riccardo Miccini
4191710feb
no data type info provider for TINY
2015-05-28 17:53:19 +02:00
Riccardo Miccini
4e587a44d6
Merge pull request #2 from UAVCAN/dynamic_node_id_raft
...
Dynamic node id raft update to latest
2015-05-28 17:40:10 +02:00
Pavel Kirienko
d4e49d518a
First step towards introducing the global RX object buffer
2015-05-28 13:49:01 +03:00
Pavel Kirienko
954ab2491a
Fruitless attempt to optimize memory use
2015-05-28 12:59:22 +03:00
Pavel Kirienko
34bcfb21df
Improved docs for IFileServerBackend
2015-05-28 11:57:00 +03:00
David Sidrane
f2fe415e55
Code consolidation
2015-05-27 06:07:47 -10:00
David Sidrane
436cfcefa9
Use FileCRC typedef
2015-05-27 04:32:50 -10:00
David Sidrane
faf13e6942
Merge branch 'dynamic_node_id_raft' of https://github.com/UAVCAN/uavcan into dynamic_node_id_raft
2015-05-27 03:54:32 -10:00
David Sidrane
be50b94cba
Revert of format changes
2015-05-27 03:53:54 -10:00
Pavel Kirienko
5205d13f37
centralized::Storage fix
2015-05-27 16:28:31 +03:00
Pavel Kirienko
5930bf3ed4
CentralizedServer
2015-05-27 16:12:54 +03:00
Pavel Kirienko
bdc0a327b7
centralized::Storage - new test
2015-05-27 16:10:14 +03:00
Pavel Kirienko
abe2401e38
Distributed server logging fix
2015-05-27 15:24:55 +03:00
Pavel Kirienko
a78c015934
Distributed server tracing fix
2015-05-27 15:16:17 +03:00
Pavel Kirienko
638de08115
CentralizedServer - storage implementation and test
2015-05-27 14:52:41 +03:00
Pavel Kirienko
82c24967e7
Minor fixes in Raft server
2015-05-27 12:55:49 +03:00
Pavel Kirienko
75e2bed3c2
Typo
2015-05-27 11:56:18 +03:00
Pavel Kirienko
74298b1860
spinOnce(), fixes #31
2015-05-27 11:53:12 +03:00
Pavel Kirienko
89c8ed0cf1
Docs for dsdl/uavcan/protocol/dynamic_node_id/server/220.AppendEntries.uavcan
2015-05-27 11:06:23 +03:00
David Sidrane
75b8831f21
Removed perfunction optimization setting
2015-05-26 14:21:16 -10:00
David Sidrane
28802a38dd
removed firmware common, made GetInfo part of the firmware checke class fixed firmware path so that code compiles
2015-05-26 14:00:49 -10:00
Pavel Kirienko
fcca97d71c
FirmwareCommon signature fix
2015-05-26 21:53:26 +03:00
Pavel Kirienko
3a07bde393
Fixes and notes in FirmwareCommon
2015-05-26 21:38:14 +03:00
Pavel Kirienko
adbf059585
Fixes and notes in FirmwarePath
2015-05-26 21:27:33 +03:00
Pavel Kirienko
85f498bbe0
FirmwareVersionChecker formatting fix
2015-05-26 21:14:26 +03:00
Pavel Kirienko
53317eb902
BasicFileSeverBackend style fixes
2015-05-26 20:37:58 +03:00
Pavel Kirienko
6a34d19cc5
Style fixes in uavcan_posix/dynamic_node_id_server
2015-05-26 20:36:41 +03:00
Pavel Kirienko
aafdf81f29
Removed unused event code
2015-05-26 20:25:29 +03:00
Pavel Kirienko
9faf8470e6
Fixed Raft definitions
2015-05-26 20:22:21 +03:00
Pavel Kirienko
a97762ae21
Dead code removal
2015-05-26 20:13:13 +03:00
Pavel Kirienko
e60a76d562
Test timing fix
2015-05-26 20:08:38 +03:00
Pavel Kirienko
2231b00637
Raft active state extension removed
2015-05-26 20:04:59 +03:00
Pavel Kirienko
489c178681
Merge pull request #30 from kylemanna/readme_discussion_group
...
README: Add link to discussion group
2015-05-26 16:17:12 +03:00
Kyle Manna
57282441cb
README: Add link to discussion group
...
* Add a link to the discussion group so people know where to ask
questions. This wasn't immediately apparent to me.
2015-05-25 20:32:49 -07:00
Pavel Kirienko
388c023168
uavcan_dynamic_node_id_server - longer log
2015-05-26 02:11:02 +03:00
Pavel Kirienko
97b35cd09e
NodeIDSelector fix
2015-05-26 01:57:07 +03:00
Pavel Kirienko
d89a8dcbcc
Linux test app - Dynamic node ID client
2015-05-26 01:50:24 +03:00
Pavel Kirienko
e289a1e09c
uavcan_linux::makeApplicationID()
2015-05-26 01:22:26 +03:00
Pavel Kirienko
258da95d12
RaftCore::checkInvariants()
2015-05-26 00:15:18 +03:00
Pavel Kirienko
17c4b975ac
Test fix
2015-05-24 23:13:10 +03:00
Pavel Kirienko
78a380062c
uavcan_dynamic_node_id_server - printing the number of internal failures
2015-05-24 21:25:38 +03:00
Pavel Kirienko
702c96a192
Node<>::getInternalFailureCount()
2015-05-24 21:21:36 +03:00
Pavel Kirienko
8c77793892
Raft logic fix: auto-discovery on AE request
2015-05-24 21:14:59 +03:00
Pavel Kirienko
eb6102a9d4
Raft - minor timing fix, no changes to the logic
2015-05-24 21:09:56 +03:00
Pavel Kirienko
b7f7defd85
Raft implementation fix
2015-05-24 20:19:56 +03:00
Pavel Kirienko
c323d8e724
Raft - ignoring Allocation activity if it is a response
2015-05-24 20:12:33 +03:00
Pavel Kirienko
59dd6d0905
Raft fix
2015-05-24 20:06:13 +03:00
Pavel Kirienko
fc173aca44
uavcan_dynamic_node_id_server fixed coloring
2015-05-24 18:32:27 +03:00
Pavel Kirienko
2952608ffa
RaftCore: new event code
2015-05-24 18:20:57 +03:00
Pavel Kirienko
a2104f0bba
Fixed Raft timings
2015-05-24 17:53:23 +03:00
Pavel Kirienko
73273ab06d
Optimized NodeDiscoverer - picking any node to query, without any preference
2015-05-24 17:21:26 +03:00
Pavel Kirienko
11161e7b1f
NodeDiscoverer logic fix
2015-05-24 17:18:14 +03:00
Pavel Kirienko
1234494e77
uavcan_dynamic_node_id_server will not run if stdout is not a tty
2015-05-24 16:53:58 +03:00
Pavel Kirienko
e5f3a96476
RaftCore implementation fix
2015-05-24 16:32:52 +03:00
Pavel Kirienko
546be2b89b
Fixed RaftCore. The logic is even more complicated.
2015-05-24 16:26:14 +03:00
Pavel Kirienko
8729d6a2d6
ServiceClient<>::getCallIDByIndex()
2015-05-24 15:59:32 +03:00
Pavel Kirienko
4f64e2378e
RaftCore - runtime assertions
2015-05-24 15:41:51 +03:00
Pavel Kirienko
9e9ade0055
Node ID allocation server - allocation response TX timeout set to DEFAULT_REQUEST_PERIOD_MS
2015-05-24 14:25:56 +03:00
Pavel Kirienko
7cac4cd4fa
uavcan_dynamic_node_id_server - cleaner time formatting
2015-05-24 14:23:04 +03:00
Pavel Kirienko
5361d7bbeb
uavcan_status_monitor - improved CLI rendering
2015-05-24 13:36:39 +03:00
Pavel Kirienko
0bb767c42f
uavcan_dynamic_node_id_server - improved CLI rendering
2015-05-24 13:34:05 +03:00
Pavel Kirienko
132ab39c49
uavcan_dynamic_node_id_server - Highliting Leader state in green
2015-05-23 23:25:08 +03:00
Pavel Kirienko
ed96e9f0fd
uavcan_dynamic_node_id_server - Fixed output coloring
2015-05-23 23:21:03 +03:00
Pavel Kirienko
ce4ae983a3
Event logs uses local time
2015-05-23 22:46:16 +03:00
Pavel Kirienko
0348b22b1e
distributed allocation server - StateReport fix
2015-05-23 21:49:01 +03:00
Pavel Kirienko
aaa3c225c4
uavcan_dynamic_node_id_server - posfixing the storage path with self node ID
2015-05-23 21:35:12 +03:00
Pavel Kirienko
9b5074051f
uavcan_dynamic_node_id_server - setting status OK
2015-05-23 21:32:00 +03:00
Pavel Kirienko
a6618d9be0
uavcan_dynamic_node_id_server - colored events
2015-05-23 21:30:10 +03:00
Pavel Kirienko
bf0fd63bfe
uavcan_dynamic_node_id_server - simple output coloring
2015-05-23 20:54:12 +03:00
Pavel Kirienko
65db68a514
uavcan_dynamic_node_id_server - a couple of fixes
2015-05-23 20:15:48 +03:00
Pavel Kirienko
66dc702a7e
New Linux tool: uavcan_dynamic_node_id_server (mostly complete)
2015-05-23 03:26:52 +03:00
Pavel Kirienko
5f4adbf1a3
dynamic_node_id_server::distributed::StateReport structure
2015-05-23 00:38:17 +03:00
David Sidrane
b205cd3bbb
Merge branch 'dynamic_node_id_raft' of https://github.com/UAVCAN/uavcan into dynamic_node_id_raft
2015-05-21 07:26:51 -10:00
David Sidrane
64b14db1f5
More string refactoring
2015-05-21 07:25:53 -10:00
Pavel Kirienko
e5ce6f74c6
POSIX file event tracer visibility fix
2015-05-21 17:16:20 +03:00
David Sidrane
fa11a76143
Refactoring paths
2015-05-20 18:17:16 -10:00
Pavel Kirienko
823b14c121
POSIX dynamic ID storage backend: calling fsync() on set(), plus a minor style fix
2015-05-21 01:28:41 +03:00
Pavel Kirienko
45942eef1f
Note on error codes
2015-05-20 22:15:19 +03:00
Pavel Kirienko
489a27f70d
BasicFileServer::handleRead() error handling fix
2015-05-20 22:13:32 +03:00
David Sidrane
5358c734ef
Fixed guard
2015-05-20 02:59:36 -10:00
David Sidrane
8b87990c1b
Fixed guard
2015-05-20 02:58:33 -10:00
David Sidrane
9f17dca012
Fixed guard
2015-05-20 02:57:20 -10:00
Pavel Kirienko
6abe343f04
FirmwareUpdateTrigger handleFirmwareUpdateConfirmation() made optional
2015-05-20 15:19:51 +03:00
Pavel Kirienko
bb412f3f93
FirmwareUpdateTrigger retry logic optimization
2015-05-20 15:13:31 +03:00
Pavel Kirienko
1f47596688
FirmwareUpdateTrigger node selector fix, more testing
2015-05-20 14:53:16 +03:00
David Sidrane
b8d3884eb6
Ensured close in all paths.
...
This still needed the EAGAIN logic added
2015-05-19 18:54:15 -10:00
David Sidrane
5a0bccf787
Update file_server_backend.hpp
2015-05-19 18:28:19 -10:00
David Sidrane
2443f29595
Merge branch 'dynamic_node_id_raft' of https://github.com/UAVCAN/uavcan into dynamic_node_id_raft
2015-05-19 17:48:25 -10:00
David Sidrane
ee25e3db45
POSIX File Server Backend
2015-05-19 17:47:37 -10:00
Pavel Kirienko
19cffa682f
TestNetwork<> fix
2015-05-20 01:20:42 +03:00
Pavel Kirienko
4398cceb4c
Fixing the previous commit
2015-05-20 00:41:44 +03:00
Pavel Kirienko
228785b8f8
libuavcan testing: TestNetwork<> helper
2015-05-20 00:12:06 +03:00
Pavel Kirienko
1047a25872
FirmwareUpdateTrigger - fixes and test
2015-05-19 13:22:52 +03:00
Pavel Kirienko
0d60595d7c
FirmwareUpdateTrigger - fixes and test
2015-05-19 13:16:51 +03:00
Pavel Kirienko
d7ae3f90c0
Doc fix
2015-05-19 02:13:50 +03:00
Pavel Kirienko
694d29ab47
Misleading comment that somehow survived refactoring
2015-05-19 02:10:22 +03:00
Pavel Kirienko
6b179d032b
Firmware update trigger implementation. It is most likely broken, because I'm half asleep by now; proper tests will be added later
2015-05-19 01:37:10 +03:00
Pavel Kirienko
f9b946addd
Merge pull request #29 from cvra/master
...
Add missing include
2015-05-18 23:15:49 +03:00
Antoine Albertelli
76305b3c69
Add missing include
2015-05-18 22:12:54 +02:00
Pavel Kirienko
5e458e918d
MakeString<> helper template
2015-05-18 22:29:09 +03:00
David Sidrane
65c5d6efa8
Merge pull request #27 from UAVCAN/posix_tools_refactor
...
Posix tools refactor
2015-05-18 06:32:58 -10:00
Pavel Kirienko
875c74d88e
Removed useless constructors
2015-05-18 17:11:05 +03:00
Pavel Kirienko
3c073ac9d4
Simple test for POSIX storage backend
2015-05-18 17:08:49 +03:00
Pavel Kirienko
09a96061ad
Fixed and improved file event tracer + POSIX test
2015-05-18 17:02:17 +03:00
Pavel Kirienko
46afa99b27
Refactored POSIX tools
2015-05-18 15:14:37 +03:00
Pavel Kirienko
e4886606f0
Typo
2015-05-18 14:31:10 +03:00
Pavel Kirienko
51a2ce39c5
Full file server implementation
2015-05-18 14:21:58 +03:00
Pavel Kirienko
58ca7319dd
File server implementation with test
2015-05-18 14:05:10 +03:00
Pavel Kirienko
cd41840f59
Multi-call client in RaftCore
2015-05-17 17:18:14 +03:00
Pavel Kirienko
e5fddfdb66
Node info retriever unit test fix
2015-05-17 17:17:28 +03:00
Pavel Kirienko
c089f4d72b
Node info retriever - timer event optimization
2015-05-17 16:35:09 +03:00
Pavel Kirienko
600c29a953
NodeInfoRetriever - docs, logical fixes, tests
2015-05-17 16:29:19 +03:00
Pavel Kirienko
36dda9c017
NodeInfoRetriever basic test
2015-05-17 13:49:40 +03:00
Pavel Kirienko
2123853cae
Using concurrent calls in NodeInfoRetriever
2015-05-17 00:01:49 +03:00
Pavel Kirienko
5e5540b8ce
ServiceClient<>::hasPendingCallToServer()
2015-05-16 23:57:11 +03:00
Pavel Kirienko
0553d18cf9
Merge branch 'dynamic_node_id_raft' into concurrent_service_client
2015-05-16 23:19:51 +03:00
Pavel Kirienko
7df9fb0820
NodeInfoRetriever - using Multiset instead of Map<>
2015-05-16 23:17:54 +03:00
Pavel Kirienko
3f9cad4f3b
Multiset: Simpler type handling in predicate adapter template
2015-05-16 23:17:26 +03:00
Pavel Kirienko
fdf5100985
Safer list traversing in Multiset<> and Map<>
2015-05-16 22:46:33 +03:00
Pavel Kirienko
02fe76cd6f
Simplified Multiset<>
2015-05-16 22:39:01 +03:00
Pavel Kirienko
16a9d206c6
ServiceClient documentation
2015-05-16 22:26:04 +03:00
Pavel Kirienko
f224be0742
ServiceClient<>: test of concurrent call logic
2015-05-16 22:17:14 +03:00
Pavel Kirienko
dbf3d1622e
Improved test of ServiceClient<>
2015-05-16 21:43:12 +03:00
Pavel Kirienko
90d60688b3
ServiceClient<>: renaming and a minor logic fix
2015-05-16 21:19:54 +03:00
Pavel Kirienko
9ba6050af1
ServiceClient<>: proper destruction of CallState objects via execution relaying
2015-05-16 21:12:15 +03:00
Pavel Kirienko
81533eda46
Method to generate immediate deadlines in DeadlineHandler
2015-05-16 21:04:25 +03:00
David Sidrane
3ede15f160
Merge branch 'master' into dynamic_node_id_raft
2015-05-16 07:06:27 -10:00
Pavel Kirienko
34200c18be
New logic of file.Read
2015-05-16 16:07:52 +03:00
Pavel Kirienko
cbbb3bd9be
All tests are passing
2015-05-16 15:12:10 +03:00
Pavel Kirienko
e921f4da02
More debug outputs
2015-05-16 15:07:21 +03:00
Pavel Kirienko
da98060a58
Nasty bug in ServiceClient<>::call()
2015-05-16 15:03:53 +03:00
Pavel Kirienko
b2b7693ee6
Partially implemented and fixed ServiceClient<>, 7 tests are failing
2015-05-16 14:19:48 +03:00
Pavel Kirienko
40e68d4103
TransferListenerWithFilter - NULL checks removed as they were conflicting with ServiceClient<>'s logic
2015-05-16 14:09:32 +03:00
Pavel Kirienko
39b924cd8a
Multiset storage alignment fix
2015-05-16 14:06:32 +03:00
Pavel Kirienko
861315d1c3
Typo
2015-05-16 13:44:03 +03:00
Pavel Kirienko
713ec48ce9
Multiset<>::forEach()
2015-05-16 13:38:42 +03:00
Pavel Kirienko
be5bcf9084
ParameterType<> template
2015-05-16 13:21:53 +03:00
Pavel Kirienko
f713ef5e00
LazyConstructor memory optimization
2015-05-16 03:36:01 +03:00
Pavel Kirienko
eb370b08dd
Refactored Map<>
2015-05-16 03:31:18 +03:00
Pavel Kirienko
24f0ec56f4
Multiset fixes and more tests
2015-05-16 03:14:46 +03:00
Pavel Kirienko
5e7f81c11b
Fixed Multiset tests
2015-05-16 02:36:45 +03:00
Pavel Kirienko
048e0a33ee
Non-moving multiset, tests are failing in C++03 mode
2015-05-15 21:32:08 +03:00
Pavel Kirienko
0d85d672c7
Temporary fix for assertion failure in tests; 12 tests are failing
2015-05-15 18:45:37 +03:00
Pavel Kirienko
282b995c1e
Partially refactored ServiceClient, tests are failing, the code is totally broken
2015-05-15 18:41:38 +03:00
Pavel Kirienko
ee761eebad
Multiset<>
2015-05-15 15:29:31 +03:00
Pavel Kirienko
12b35d0da9
dsdlc: Fixed comment generation
2015-05-15 00:02:06 +03:00
Pavel Kirienko
7492e9fedb
Merge branch 'dynamic_node_id_raft' of https://github.com/UAVCAN/uavcan into dynamic_node_id_raft
2015-05-14 00:08:38 +03:00
Pavel Kirienko
fb155d8fc9
Fixed missing UAVCAN_EXPORT declaration
2015-05-14 00:08:22 +03:00
Pavel Kirienko
509ef85048
Properly defining poll interval of NodeDiscoverer
2015-05-14 00:02:43 +03:00
Pavel Kirienko
3db54cd6af
Improved NodeDiscoverer logic
2015-05-13 23:23:03 +03:00
Pavel Kirienko
e2ef4a4518
Restructured NodeStatusMonitor and NodeInfoRetriever - TimerBase is not inherited by the monitor now because that was a suboptimal solution for a class designed for inheritance
2015-05-13 22:32:23 +03:00
Pavel Kirienko
2b0d669d7f
Revert "NodeStatusMonitor API update"
...
This reverts commit 08d96ef329 .
2015-05-13 22:02:02 +03:00
Pavel Kirienko
842319a290
Initial implementation of NodeInfoRetriever; fixes pending
2015-05-13 21:59:43 +03:00
Pavel Kirienko
bc00899e70
Testing tooling fix
2015-05-13 17:50:45 +03:00
Pavel Kirienko
a548d8311c
Testing framework: added emulateSingleFrameBroadcastTransfer()
2015-05-13 16:39:22 +03:00
David Sidrane
37ace75abc
Formated, tested
2015-05-12 15:00:32 -10:00
David Sidrane
6f95595e35
Merge branch 'dynamic_node_id_raft' of https://github.com/UAVCAN/uavcan into dynamic_node_id_raft
2015-05-12 14:48:05 -10:00
David Sidrane
416a5e69a4
Debuged - missing return value
2015-05-12 14:46:49 -10:00
David Sidrane
e43cf6b553
Added POSIX File event tracer
2015-05-12 13:18:59 -10:00
Pavel Kirienko
8f1ed202f7
Merge branch 'dynamic_node_id_raft' of https://github.com/UAVCAN/uavcan into dynamic_node_id_raft
2015-05-13 00:00:48 +03:00
Pavel Kirienko
08d96ef329
NodeStatusMonitor API update
2015-05-12 23:56:13 +03:00
David Sidrane
adeb1ef58f
Added POSIX file storage backend
2015-05-12 10:52:32 -10:00
Pavel Kirienko
93376316b8
Using static receivers in NodeDiscoverer
2015-05-12 21:48:30 +03:00
Pavel Kirienko
9efd1ac7ae
NodeIDSelector: allocating only in the range [1, 125], unless the node explicitly requested higher node ID
2015-05-12 13:01:44 +03:00
Pavel Kirienko
1c52527f97
Fixed KeyValue definition
...
TAO is enabled, value is only float32
2015-05-12 12:29:15 +03:00
Pavel Kirienko
0253933f75
Linux driver: added system_utils.hpp with a helper class that reads Linux machine ID
2015-05-11 21:54:16 +03:00
Pavel Kirienko
b6639d922b
Fixed naming in CoarseOrientation
...
'defined' cannot be used because it's a keyword in C/C++.
2015-05-11 20:48:35 +03:00
Pavel Kirienko
92c8944e49
Too many tracepoints? No such thing.
2015-05-11 18:52:03 +03:00
Pavel Kirienko
2868fd5712
NodeDiscoverer test fix
2015-05-11 18:36:50 +03:00
Pavel Kirienko
8df1cfe1d9
NodeDiscoverer: another test
2015-05-11 18:26:42 +03:00
Pavel Kirienko
558171bf71
NodeDiscoverer: fixes and test
2015-05-11 17:50:36 +03:00
Pavel Kirienko
c62b871f20
Revert "NodeDiscoverer: Pausing querying GetNodeInfo if the node does not send NodeStatus"
...
This reverts commit f0627423c6 .
2015-05-11 17:25:38 +03:00
Pavel Kirienko
f0627423c6
NodeDiscoverer: Pausing querying GetNodeInfo if the node does not send NodeStatus
2015-05-11 17:15:18 +03:00
Pavel Kirienko
e10d262631
Improved event tracer stub
2015-05-11 14:35:58 +03:00
Pavel Kirienko
63ce2b793d
New trace code on remote node restart
2015-05-11 14:27:55 +03:00
Pavel Kirienko
3221179eef
Fixed test names
2015-05-11 14:05:47 +03:00
Pavel Kirienko
1a6226ddc2
Added a comment explaining extensions to Raft
2015-05-11 13:36:34 +03:00
Pavel Kirienko
706e72cc74
Raft tracepoint at election completion
2015-05-11 13:29:13 +03:00
Pavel Kirienko
d623eee54a
Raft logic fix: forcing active mode when allocation activity is detected
2015-05-11 13:26:53 +03:00
Pavel Kirienko
5af19f82c3
Raft logic fixes
2015-05-11 13:06:30 +03:00
Pavel Kirienko
731d9f4574
Changed RaftCore API; giving up Leader status if the leader cannot write its log
2015-05-10 23:44:25 +03:00
Pavel Kirienko
a6b0a256fb
Byte order fix in logging
2015-05-10 20:33:34 +03:00
Pavel Kirienko
526b9371e4
Minor logging fix
2015-05-10 20:24:32 +03:00
Pavel Kirienko
f2c393e90d
Server test extension
2015-05-10 20:10:13 +03:00
Pavel Kirienko
b7a4c9524e
Fixed error codes
2015-05-10 20:05:40 +03:00
Pavel Kirienko
a309c6d8da
Raft allocator adds its own allocation entry to the log
2015-05-10 20:03:17 +03:00
Pavel Kirienko
6e287dc1b2
Fixed naming of trace events
2015-05-10 19:33:16 +03:00
Pavel Kirienko
10b5661da4
Advanced tracing
2015-05-10 19:22:03 +03:00
Pavel Kirienko
c49ee1c4d3
Top-level typedef for distributed::Server
2015-05-10 17:56:48 +03:00
Pavel Kirienko
12a81b5bef
Server event tracer extracted to the common level
2015-05-10 17:53:16 +03:00
Pavel Kirienko
7477de3bd9
NodeDiscoverer - implemented, integrated, not tested
2015-05-10 17:44:34 +03:00
Pavel Kirienko
aae4317beb
Improved allocation logic
2015-05-10 14:12:19 +03:00
Pavel Kirienko
67b33a712e
Improved logic of allocation request manager
2015-05-09 23:52:51 +03:00
Pavel Kirienko
1a763a824c
Better naming
2015-05-09 23:34:30 +03:00
Pavel Kirienko
68c36924e3
Better naming
2015-05-09 23:17:22 +03:00
Pavel Kirienko
ab0017f870
Top level header for distributed server
2015-05-09 23:06:58 +03:00
Pavel Kirienko
d980b5e655
Typo in UAVCAN_TRACE()
2015-05-09 17:04:14 +03:00
Pavel Kirienko
ea3886b048
Refactored tests of node ID allocation server
2015-05-09 16:55:52 +03:00
Pavel Kirienko
2c36e91c54
Fixed calls to UAVCAN_TRACE()
2015-05-09 16:29:31 +03:00
Pavel Kirienko
567d167640
Updated default service timeout
2015-05-09 16:21:50 +03:00
Pavel Kirienko
0f10d85f7e
Node ID selection logic extracted into a class
2015-05-09 16:16:43 +03:00
Pavel Kirienko
696d97880d
Include guard fix
2015-05-09 16:05:15 +03:00
Pavel Kirienko
18d5cb78aa
Refactored node ID allocation server; no changes to the logic
2015-05-09 16:03:22 +03:00
Pavel Kirienko
098c29ce93
Transport stats provider moved to header
2015-05-09 12:39:05 +03:00
Pavel Kirienko
9d20d983b5
Restart request server moved to header
2015-05-09 12:38:12 +03:00
Pavel Kirienko
15fa5ad163
Param server moved to header
2015-05-09 12:37:16 +03:00
Pavel Kirienko
106cb94379
Added a README explaining what's going on
2015-05-09 12:35:18 +03:00
Pavel Kirienko
ee85d2d73a
Panic broadcaster moved to header
2015-05-09 12:26:22 +03:00
Pavel Kirienko
00ec7186b0
Node status monitor moved to header
2015-05-09 12:24:31 +03:00
Pavel Kirienko
894d951c33
Network compat checker moved to header
2015-05-09 12:21:46 +03:00
Pavel Kirienko
6e19d1c7ad
Logger moved to header
2015-05-09 12:17:57 +03:00
Pavel Kirienko
fc7e242100
Global time sync slave moved to header
2015-05-09 12:13:49 +03:00
Pavel Kirienko
899fa93201
Global time sync master moved to header
2015-05-09 12:07:37 +03:00
Pavel Kirienko
0ee3a7f311
Data type info provider moved to header
2015-05-09 12:03:30 +03:00
Pavel Kirienko
8ea708b77e
Renamed DynamicNodeIDClient
2015-05-09 11:56:17 +03:00
Pavel Kirienko
69c361e259
Proper allocation logic with basic test
2015-05-08 23:12:57 +03:00
Pavel Kirienko
aca9fcb12c
Very basic implementation of DynamicNodeIDAllocationServer - not all logic is implemented yet, but it can be used for testing already
2015-05-08 21:00:17 +03:00
Pavel Kirienko
618e4c766a
Tests for Allocation request manager
2015-05-08 20:27:05 +03:00
Pavel Kirienko
952009c284
Allocation request manager (untested)
2015-05-08 20:00:30 +03:00
Pavel Kirienko
6a35e65ecc
Removed misleading comment
2015-05-08 19:53:30 +03:00
Pavel Kirienko
e48fa77d85
Raft logic fixes & more tests
2015-05-08 18:43:27 +03:00
Pavel Kirienko
1d7e83bd71
Raft log append test
2015-05-08 17:32:22 +03:00
Pavel Kirienko
dab32220e0
Improved Raft event tracer - added event code to string conversion
2015-05-08 17:20:02 +03:00
Pavel Kirienko
1f7c0b40b3
Basic Raft test
2015-05-08 16:35:36 +03:00
Pavel Kirienko
7d607a4dec
Added missing tests for Raft
2015-05-08 15:02:27 +03:00
Pavel Kirienko
43f849cc10
Log commit callback - needed by the main allocator class to broadcast allocation responses
2015-05-08 14:57:27 +03:00
Pavel Kirienko
a7c09ed714
Raft Leader implementation. RaftCore is now finished.
2015-05-08 14:41:15 +03:00
Pavel Kirienko
6985c72dd3
Follower and candidate logic implemented
2015-05-08 13:30:55 +03:00
Pavel Kirienko
1a640e6763
Properly defined timeouts and max cluster size
2015-05-08 12:29:28 +03:00
Pavel Kirienko
a1ee2efea0
All Raft logic finished except time updates
2015-05-07 19:48:05 +03:00
Pavel Kirienko
ce752d93bd
Raft AE and RV RPC response handlers
2015-05-07 19:11:13 +03:00
Pavel Kirienko
944ac75d93
Raft AE and RV servers
2015-05-07 18:16:26 +03:00
Pavel Kirienko
5e56c8a612
Raft event tracing interface, more states of RaftCore, basic functions of RaftCore
2015-05-07 13:58:24 +03:00
Pavel Kirienko
6ae48c25cb
Naming cleanup
2015-05-06 18:01:27 +03:00
Pavel Kirienko
2273df059a
ClusterManager tests
2015-05-05 12:53:33 +03:00
Pavel Kirienko
3af95e3dd4
Log initialization fix
2015-05-05 11:31:55 +03:00
Pavel Kirienko
f11f49a7d2
ClusterManager test for the case of one server
2015-05-05 11:29:51 +03:00
Pavel Kirienko
92d74d35ea
ClusterManager initialization test
2015-05-04 22:33:18 +03:00
Pavel Kirienko
51cd8404b1
Cluster manager implementation, no tests yet
2015-05-04 19:00:39 +03:00
Pavel Kirienko
1994260a2c
Persistent storage implementation and tests
2015-05-04 16:44:04 +03:00
Pavel Kirienko
6a8135fedf
Service server feature - response suppression
2015-05-04 13:42:02 +03:00
Pavel Kirienko
954d6899b2
Persistent storage implementation
2015-05-04 08:11:24 +03:00
Pavel Kirienko
c9b41330b2
Tests for log removal
2015-05-03 20:37:07 +03:00
Pavel Kirienko
54fcfe4e06
Log::append() tests
2015-05-03 20:28:39 +03:00
Pavel Kirienko
a7dd5f9aea
Proper log initialization
2015-05-03 20:10:45 +03:00
Pavel Kirienko
b1f5313fcb
Raft log - basic tests of state recovery
2015-05-03 14:21:41 +03:00
Pavel Kirienko
a439c62532
String constructor for Array<>
2015-05-03 13:29:53 +03:00
Pavel Kirienko
5633cb8bdb
Raft: Basic log methods
2015-05-03 12:34:45 +03:00
Pavel Kirienko
a60d5c812a
Fixed RaftCore API
2015-05-03 11:28:59 +03:00
Pavel Kirienko
80169f9a1c
Marshalling storage decorator
2015-05-02 16:59:22 +03:00
Pavel Kirienko
3e7026ad19
Dynamic Node ID allocation server - internal types
2015-05-02 11:41:54 +03:00
Pavel Kirienko
c3d22ca56e
Merge pull request #25 from PX4-Works/dynamic_node_id_raft_compile_fix
...
Added uavcan/debug.hpp to compile
2015-05-02 09:22:56 +03:00
David Sidrane
86675455fb
Added uavcan/debug.hpp to compile
2015-05-01 15:28:06 -10:00
Pavel Kirienko
741eac2b17
Merge branch 'master' into dynamic_node_id_raft
2015-05-01 22:20:39 +03:00
Pavel Kirienko
850849beb1
Fixed error handling in ServiceClient
2015-05-01 22:20:15 +03:00
Pavel Kirienko
8096ac3e7c
Merge branch 'master' into dynamic_node_id_raft
2015-05-01 20:54:05 +03:00
Pavel Kirienko
90435991ca
Speed optimization of ServiceClient<> - requesting DTID only once at the time of first call
2015-05-01 20:53:16 +03:00
Pavel Kirienko
1283eb2811
Style fix in ServiceClient<>
2015-05-01 20:43:49 +03:00
Pavel Kirienko
5527faca5d
Raft server: more internals
2015-05-01 18:19:11 +03:00
Pavel Kirienko
3dcb3c0b57
Basic interface of allocation server
2015-05-01 18:06:46 +03:00
Pavel Kirienko
1017935ba9
Dynamic allocation master - added definitions of Raft types
2015-05-01 10:11:31 +03:00
Pavel Kirienko
2f718b66b1
Readjusted DDTID
2015-04-30 15:30:15 +03:00
Pavel Kirienko
6b07222650
Checking priorities in Publisher's unit test
2015-04-30 15:19:51 +03:00
Pavel Kirienko
65ec6fce2e
Unit tests now check frame priorities
2015-04-30 15:16:21 +03:00
Pavel Kirienko
ffe7ad6ae1
pyuavcan Parser unit test removed - it doesn't work anyway
2015-04-30 14:47:33 +03:00
Pavel Kirienko
2407157c9c
Passing priority value of received transfers to application
2015-04-30 14:35:00 +03:00
Pavel Kirienko
20feaba1de
Using transfer priorities in protocol:: classes
2015-04-30 14:19:52 +03:00
Pavel Kirienko
2bfadc46b4
Priority support in Publisher
2015-04-30 13:57:11 +03:00
Pavel Kirienko
6b19bf09e2
Support for priority in TransferSender
2015-04-30 12:30:13 +03:00
Pavel Kirienko
5c0314e187
Dedicated error code for transfers of excessive length
2015-04-30 12:04:55 +03:00
Pavel Kirienko
0ea4e5e4e0
pyuavcan: DSDL length validation
2015-04-30 11:50:01 +03:00
Pavel Kirienko
898fe67225
Fixed message definitions; added a compile-time check for maximum serialized message length
2015-04-30 11:24:06 +03:00
Pavel Kirienko
ecd7d8a8a5
CATS test for services
2015-04-30 11:05:59 +03:00
Pavel Kirienko
b8c5613522
Passing all tests now
2015-04-30 10:55:52 +03:00
Pavel Kirienko
2843c0a35e
Basic support for frame prioritization; tests are failing
2015-04-30 08:26:25 +03:00
Pavel Kirienko
eafcfa1733
Support for different DTID limits depending on data type kind; tests are failing now!
2015-04-29 03:08:07 +03:00
Pavel Kirienko
feb534a45f
Temporary fix of the DSDL parser
2015-04-29 01:27:48 +03:00
Pavel Kirienko
cf7d231ef1
Readjusted default DTID values
2015-04-28 16:29:01 +03:00
Pavel Kirienko
c159f9f7df
First step in changing the CAN frame format - introduced various transfer lengths per transfer type
2015-04-28 11:27:01 +03:00
Pavel Kirienko
1b75c48783
Fixed #21
2015-04-27 10:31:21 +03:00
Pavel Kirienko
bfc4b5336c
Symmetric square matrix packing
2015-04-27 10:12:50 +03:00
Pavel Kirienko
f2209c214a
gnss.RTCMStream - protocol id field
2015-04-26 08:43:28 +03:00
Pavel Kirienko
21998db4a2
Gimbal messages update - added gimbal_id field
2015-04-26 08:40:01 +03:00
Pavel Kirienko
8bb700d528
build_config.hpp - smarter defaults, UAVCAN_GENERAL_PURPOSE_PLATFORM macro
2015-04-26 08:32:24 +03:00
Pavel Kirienko
de8fa4f299
Merge branch 'dynamic_node_id'
2015-04-26 07:51:05 +03:00
Pavel Kirienko
abea24eeec
New dynamic node ID allocation client
2015-04-26 07:42:26 +03:00
Pavel Kirienko
edf556a9f2
Merge pull request #24 from PX4-Works/dynamic_node_id_no_compile
...
Has issue will compiling
2015-04-24 16:05:08 +03:00
David Sidrane
b70d32a2ac
Compile error std.hpp:70:37: error: 'std::size_t' has not been declared
...
extern int snprintf(char out, std::size_t maxlen, const char
2015-04-23 16:44:30 -10:00
Pavel Kirienko
2dbf8cd432
Fixed template instantiation of ServiceResponseTransferListener<>
2015-04-21 21:51:21 +03:00
Pavel Kirienko
78e2351df5
Empty service client test (fails to compile due to a mistake in template instantiation)
2015-04-21 21:46:33 +03:00
Pavel Kirienko
b6659f096f
Empty server test
2015-04-21 21:00:06 +03:00
Pavel Kirienko
e6ff5818a3
libuavcan test: string comparison fix
2015-04-21 20:47:13 +03:00
Pavel Kirienko
246dcb30f0
Map<> fix for tiny mode
2015-04-15 14:38:53 +03:00
Pavel Kirienko
df2a38c217
Better name for anonymous transfers (automatic renaming)
2015-04-08 02:40:28 +03:00
Pavel Kirienko
042aa60773
DynamicNodeIDAllocationClient
2015-04-07 00:47:02 +03:00
Pavel Kirienko
012765a796
Typo (missing newline)
2015-04-07 00:14:44 +03:00
Pavel Kirienko
ea2e885c50
DynamicNodeIDAllocation constants updated
2015-04-07 00:14:03 +03:00
Pavel Kirienko
82052fb098
ReceivedDataStructure<>::isRogueTransfer()
2015-04-06 22:30:01 +03:00
Pavel Kirienko
1a8757e54b
allowRogueTransfers() exposed in Publisher and Subscriber
2015-04-06 19:21:01 +03:00
Pavel Kirienko
7aa30e9cdc
Naming: TransferSender::allowRogueTransfers()
2015-04-06 19:11:21 +03:00
Pavel Kirienko
de33cf9250
TransferListener now can accept rogue transfers
2015-04-06 19:02:22 +03:00
Pavel Kirienko
b4d93df450
TransferSender is now capable of broadcasting in passive mode; Frame::isValid() was modified to accept SFT broadcasts with zero SNID
2015-04-05 11:51:58 +03:00
Pavel Kirienko
d4eee21747
Update README.md
...
Eclipse instructions
2015-04-04 22:11:49 +03:00
Pavel Kirienko
38c6a0d7ac
Update 580.BeginFirmwareUpdate.uavcan
...
Add ERROR_IN_PROGRESS
2015-04-03 00:26:34 +03:00
Pavel Kirienko
85bd75eb1b
Merge pull request #20 from thiemar/bendyer-dsdlc-syspath-fix
...
Prepend pyuavcan in source directory to sys.path
2015-04-02 17:26:22 +03:00
Ben Dyer
42f436d609
Prepend pyuavcan in source directory to sys.path
...
When running from the source directory, libuavcan_dsdlc should
use the version of pyuavcan in the source directory instead of
a globally installed version of pyuavcan.
Fixes UAVCAN/uavcan#18
2015-04-03 00:43:11 +11:00
Pavel Kirienko
ec3d5dd8be
Adjusted priorities of file services
2015-04-02 01:34:53 +03:00
Pavel Kirienko
c48a22e1b1
Minor updates to the DynamicNodeIDAllocation message
2015-04-01 15:57:10 +03:00
Pavel Kirienko
8bb90afb0f
DynamicNodeIDAllocation updated according to David's input
2015-04-01 03:03:19 +03:00
Pavel Kirienko
777eee8ae4
Dynamic Node ID allocation message
2015-04-01 00:48:54 +03:00
Pavel Kirienko
034123873e
Merge branch 'dsdl_review'
2015-03-27 00:05:46 +03:00
Pavel Kirienko
0c8f0700af
protocol.param.GetSet update - min/max only for numeric types, longer string value
2015-03-24 22:25:25 +03:00
Pavel Kirienko
d41a216546
BatteryInfo update
2015-03-24 02:06:33 +03:00
Pavel Kirienko
209547e8b6
Map<>::KVPair constructor fix
2015-03-23 22:20:15 +03:00
Pavel Kirienko
0affb0eaec
Convenience method IParamManager::isParamValueEmpty()
2015-03-23 18:34:19 +03:00
Pavel Kirienko
6598b15d88
ParamServer logic improvement
2015-03-23 18:14:44 +03:00
Pavel Kirienko
a12dc5aa98
param.GetSet clarifications
2015-03-23 17:34:55 +03:00
Pavel Kirienko
ab4c5f54a6
Map<>::getByIndex()
2015-03-23 04:27:59 +03:00
Pavel Kirienko
bd7a088728
Air data update
2015-03-22 13:58:27 +03:00
Pavel Kirienko
bc5d07ab2a
snprintf() fix
2015-03-21 16:01:16 +03:00
Pavel Kirienko
71d4b02a7f
Dependency on math.h and the last 'using namespace std' were removed
2015-03-21 14:14:48 +03:00
Pavel Kirienko
ec9006381b
Removing all dirty 'using namespace std' that were used as C++ library compatibility work-around
2015-03-21 14:08:37 +03:00
Pavel Kirienko
23dd75f1b0
Revert case-insensitive ParamServer
2015-03-21 13:40:08 +03:00
Pavel Kirienko
8bab5c0f5d
ParamServer fix - no case conversion by default
2015-03-21 13:30:26 +03:00
Pavel Kirienko
63c5f2742a
Revert "Notes on GDTR case sensitivity"
...
This reverts commit a5bc052d31 .
2015-03-21 13:24:44 +03:00
Pavel Kirienko
6e15a541e6
uavcan::Array<> - compile-time check fix in appendFormatted()
2015-03-21 13:10:52 +03:00
Pavel Kirienko
a5bc052d31
Notes on GDTR case sensitivity
2015-03-21 00:25:35 +03:00
Pavel Kirienko
80c2c175aa
ParamServer - automatic case conversion for parameter names
2015-03-21 00:12:06 +03:00
Pavel Kirienko
241ae8a538
Array methods for case conversion
2015-03-20 23:37:42 +03:00
Pavel Kirienko
a6b5f753f1
Test fix
2015-03-20 22:20:30 +03:00
Pavel Kirienko
fbdf07fa74
Cleaner naming
2015-03-20 01:51:25 +03:00
Pavel Kirienko
8417b47575
Reduced min pub period of NodeStatus
2015-03-20 01:48:37 +03:00
Pavel Kirienko
79d167a84c
Tests for vendor-specific status code management
2015-03-20 00:32:24 +03:00
Pavel Kirienko
a63c9510fc
Vendor-specific status code support
2015-03-20 00:24:53 +03:00
Pavel Kirienko
3b3c0d3b9e
Vendor-specific status code reduced to 16 bit
2015-03-19 23:03:04 +03:00
Pavel Kirienko
659c2899d5
DSDL signature does not depend on constant definitions anymore (see specification)
2015-03-19 22:11:58 +03:00
Pavel Kirienko
f63f22bd2b
Max parameter name length increased to 92 in order to provide enough space for messaging configuration parameters (12-byte prefix + 80-char type name)
2015-03-19 22:03:00 +03:00
Pavel Kirienko
ee67e2f7fb
Max data type name length test
2015-03-19 21:56:15 +03:00
Pavel Kirienko
3b7669219e
Basic support for string parameters
2015-03-19 00:19:40 +03:00
Pavel Kirienko
ddc4b649a8
param.SaveErase --> param.ExecuteOpcode
2015-03-18 23:53:02 +03:00
Pavel Kirienko
62dd626025
Time synchronization message update: 1. field prev_utc_usec renamed to a more human-readable name; 2. UTC is no longer required, but rather recommended
2015-03-18 23:32:58 +03:00
Pavel Kirienko
7946ddd5bc
Global DDTID adjustment
2015-03-18 18:31:33 +03:00
Pavel Kirienko
86c234fa9b
Gimbal message update
2015-03-18 18:00:58 +03:00
Pavel Kirienko
519a9f22a0
AltitudeAGL removed, because its functionality overlaps with RangeMeasurement. The latter was assigned a new DDTID
2015-03-18 17:32:04 +03:00
Pavel Kirienko
ae053fc5a6
OpticalFlow removed
2015-03-17 00:02:43 +03:00
Pavel Kirienko
1a295c0b50
RangeMeasurement update
2015-03-17 00:02:03 +03:00
Pavel Kirienko
560d9f3930
uavcan.nav.* namespace removed
2015-03-17 00:00:28 +03:00
Pavel Kirienko
cd1cb470ee
Merge branch 'master' into dsdl_review
2015-03-16 23:52:27 +03:00
Pavel Kirienko
2d7e20b885
Improved doc for PanicBroadcaster
2015-03-16 23:43:42 +03:00
Pavel Kirienko
4df5d41c11
BatteryStatus - vendor-specific fields made reserved
2015-03-16 23:38:41 +03:00
Pavel Kirienko
f2cfed70cb
GetDataTypeInfo now can be requested either by dtid/id, or by name
2015-03-16 23:35:37 +03:00
Pavel Kirienko
14c176015a
GDTR find() overload for name only
2015-03-16 20:18:36 +03:00
Pavel Kirienko
670e8bda51
Minor API cleanup in GDTR: regist() --> registerDataType()
2015-03-16 20:01:39 +03:00
Pavel Kirienko
7ecd0a4259
Bit array copy algorithm update - Fixed an error with 1 bit lengthed copies (see the original discussion at stackoverflow.com)
2015-03-16 19:34:32 +03:00
Pavel Kirienko
e17ad9fc00
README formatting
2015-03-16 13:10:33 +03:00
Pavel Kirienko
fc7ba89b42
Merge pull request #17 from jpkh/master
...
Adding more install instructions
2015-03-16 13:06:33 +03:00
Jani Hirvinen
5694ea5508
Adding more install instructions
2015-03-16 15:53:11 +07:00
Pavel Kirienko
c791f65ccd
UAVCAN_VERSION_NUMBER set to 1.0. Although it is not a release yet, no major changes are anticipated
2015-03-12 01:01:07 +03:00
Pavel Kirienko
5b8bb64727
Revert "New tool: unpragma_once.pl"
...
This reverts commit c47f196281 .
2015-03-12 00:54:09 +03:00
Pavel Kirienko
eb982bdd40
All occurences of pragma once in libuavcan headers were replaced with conventional include guards.
2015-03-12 00:53:18 +03:00
Pavel Kirienko
c47f196281
New tool: unpragma_once.pl
2015-03-12 00:52:23 +03:00
Pavel Kirienko
79623033c1
Abandoning pragma once
2015-03-12 00:36:25 +03:00
Pavel Kirienko
d4986598b1
LPC11C24: Stack overflow fix
2015-02-27 16:17:03 +03:00
Pavel Kirienko
9ad492e745
.gitignore update
2015-02-27 04:05:21 +03:00
Pavel Kirienko
2155ac8bb6
Merge pull request #15 from ilia-sheremet/master
...
Cmake gcc 4.9 compatability
2015-02-23 21:21:12 +03:00
postal
803e60f30f
Cmake gcc 4.9 compatability
2015-02-23 19:07:18 +01:00
Pavel Kirienko
eb72ee1655
Max node name length increased to 80 characters
2015-02-08 01:41:33 +03:00
Pavel Kirienko
a8837943a3
DSDL clarifications
2015-02-08 01:37:47 +03:00
Pavel Kirienko
7019065812
debug: Max key length increased to 80 characters
2015-02-08 01:34:52 +03:00
Pavel Kirienko
84e22f1fb7
param: Max parameter name length increased to 80 characters
2015-02-08 01:34:03 +03:00
Pavel Kirienko
6dd432c974
Merge pull request #14 from ilia-sheremet/new_branch
...
Linux apps CMake script dependency fix
2015-02-06 22:02:06 +03:00
Pavel Kirienko
211b90fbaf
Airspeed message update. Thanks Holger Steinhaus and Jonathan Challinger.
2015-02-06 21:55:41 +03:00
postal
672874d11e
Dependencies update for linux/cmake
2015-02-06 19:54:18 +01:00
Pavel Kirienko
444937b8e0
Actuator messages update. Fixes #11
2015-02-06 21:52:53 +03:00
postal
41755b46a8
Dependencies update for linux/cmake
2015-02-06 19:50:02 +01:00
postal
1bf41b135d
Dependencies update for linux/cmake
2015-02-06 19:42:26 +01:00
postal
b6d145aa35
Dependencies update for linux/cmake
2015-02-06 19:24:43 +01:00
Pavel Kirienko
beefb2cd60
CanIOManager::getCanDriver() - mutating overload
2015-02-05 22:20:42 +03:00
Pavel Kirienko
9f7149d85c
Coverity CID 1268191
2015-02-05 03:25:52 +03:00
Pavel Kirienko
403a70e899
Proper node names for Linux apps
2015-02-05 03:02:31 +03:00
Pavel Kirienko
de1a669bea
Linux vcan_init fix (requires bash, not sh)
2015-02-05 02:52:02 +03:00
Pavel Kirienko
9675e31933
Linux apps: printing usage to stderr
2015-02-05 02:49:53 +03:00
Pavel Kirienko
00bada6fb9
Coverity CID 1203388..1203395
2015-02-05 02:47:35 +03:00
Pavel Kirienko
3a0aa4ce46
Coverity CID 1268180
2015-02-05 02:41:46 +03:00
Pavel Kirienko
315d21c256
Coverity CID 1268181, 1268182
2015-02-05 02:37:42 +03:00
Pavel Kirienko
b9f802026e
Coverity CID 1268184..1268189
2015-02-05 02:35:25 +03:00
Pavel Kirienko
035a607944
Logging functions defined with UAVCAN_NOEXCEPT
2015-02-05 02:31:28 +03:00
Pavel Kirienko
60cf13995a
Coverity CID 1268191
2015-02-05 02:04:13 +03:00
Pavel Kirienko
849abc8179
README.md - Coverity build instructions
2015-02-04 23:53:02 +03:00
Pavel Kirienko
2d1c8f1a2d
Note on code size for LPC11C24
2015-02-04 23:27:04 +03:00
Pavel Kirienko
f4ba884b31
Formatting fix
2015-02-04 22:53:27 +03:00
Pavel Kirienko
c415cf90c3
Const version of getReceivedStructStorage(), clarified docs
2015-02-04 22:53:17 +03:00
Pavel Kirienko
812f7f4597
Update 600.Status.uavcan
...
Units removed, since the specification explicitly calls for SI. In this case it means that the units will be dependent on the type of the actuator, e.g. Newtons for linear actuators, and Newton meters for rotational type. Thanks Robert Lefebvre for pointing this out.
2015-02-04 22:02:26 +03:00
Pavel Kirienko
222ea1e093
CanIOManager::getCanDriver()
2015-02-04 20:17:29 +03:00
Pavel Kirienko
db0f544af8
GNSS Aux moved 302 --> 301
2015-02-04 19:34:22 +03:00
Pavel Kirienko
a50399266a
param.GetSet - string parameters support
2015-02-03 23:41:34 +03:00
Pavel Kirienko
54696997af
debug KeyValue refers to param.Value
2015-02-03 23:24:06 +03:00
Pavel Kirienko
d40a1397e7
Elaborated SaveErase
2015-02-03 23:22:48 +03:00
Pavel Kirienko
ec10722d59
GNSS Fix clarifications
2015-02-03 18:56:37 +03:00
Pavel Kirienko
f5526a4d6d
GNSS messages updated
2015-02-03 16:16:06 +03:00
Pavel Kirienko
4239c2eddd
Optimized NodeStatusMonitor
2015-02-03 15:55:53 +03:00
Pavel Kirienko
d3d266264c
NodeStatus extended with a 32-bit vendor-specific status code
2015-02-03 15:55:19 +03:00
Pavel Kirienko
d75139a318
Gimbal messages updated
2015-02-03 15:26:20 +03:00
Pavel Kirienko
7944aa0853
System arming status
2015-02-03 15:03:43 +03:00
Pavel Kirienko
03ed54df72
uavcan.hardpoint update
2015-02-03 15:00:53 +03:00
Pavel Kirienko
9f63356c42
DSDL comments update
2015-02-03 14:56:28 +03:00
Pavel Kirienko
8a1942d906
Comment updates in uavcan.equipment.*.uavcan
2015-02-03 14:35:53 +03:00
Pavel Kirienko
af1d0d3554
Renamed field in BatteryInfo
2015-02-03 12:55:36 +03:00
Lorenz Meier
7719f7692a
Fix include paths (remove double slashes) for lib
2015-01-22 09:22:15 +01:00
Pavel Kirienko
3240c5dd03
Power messages restructured
2015-01-21 22:24:54 +03:00
Pavel Kirienko
3026289430
Fixed temperature units - K, not degC
2015-01-21 22:19:27 +03:00
Pavel Kirienko
8966f97013
Fixes #10
2015-01-19 16:22:22 +03:00
Pavel Kirienko
632b668d44
Fixes #9
2015-01-19 16:17:43 +03:00
Pavel Kirienko
c9227cf6d2
Runtime check in linked list insert()
2015-01-18 01:34:16 +03:00
Pavel Kirienko
8a5d001e29
Linked list: optimized insertBefore(), elaborated docs
2015-01-18 01:20:56 +03:00
Pavel Kirienko
5209806304
GetTransportStats - 48-bit fields
2015-01-14 17:23:05 +03:00
Pavel Kirienko
20439bb397
Experimental optimization of the bit copy algorithm with special cases
2015-01-11 04:35:03 +03:00
Pavel Kirienko
21c07b90a5
Separated bit array copy algorithms - aligned to unaligned and vice versa.
2015-01-11 03:46:25 +03:00
Pavel Kirienko
c1fac577f3
Merge branch 'master' of https://github.com/UAVCAN/uavcan
2015-01-10 20:13:22 +03:00
Pavel Kirienko
7b7286b9ca
HardwareVersion extended with 255-byte COA field
2015-01-10 20:12:48 +03:00
Pavel Kirienko
5399976af4
Rename 256.Ahrs.uavcan to 256.AHRS.uavcan
...
According to the data type naming conventions
2015-01-10 18:10:25 +03:00
Pavel Kirienko
c4c45b995f
STM32 driver -Wundef fix
2015-01-10 01:52:25 +03:00
Pavel Kirienko
53ee643480
lpc11c24 driver -Wundef fixes
2015-01-10 01:22:55 +03:00
Pavel Kirienko
6ea66c045c
libuavcan now compiles warning-free with -Wundef
2015-01-10 01:15:25 +03:00
Pavel Kirienko
7d23c7be80
uavcan.equipment.gimbal.GeoPOICommand update
2014-12-27 14:15:40 +03:00
Pavel Kirienko
a31eb4ec82
RTCMStream message update
2014-12-27 14:00:20 +03:00
Pavel Kirienko
2a77569d8f
uavcan.protocol.file.* doc fixes
2014-12-27 13:57:18 +03:00
Pavel Kirienko
6a19364898
Doc typos
2014-12-21 20:51:44 +03:00
Pavel Kirienko
eda4f4b879
With 2074a3e145
2014-12-12 17:45:54 +03:00
Pavel Kirienko
1efd244275
Copyright fix
2014-12-05 15:38:59 +03:00
Pavel Kirienko
a0867cf860
Merge pull request #7 from UAVenture/make-fix
...
Trailing slashes in included makefiles break build under OS X
2014-12-01 23:04:15 +03:00
Andreas Antener
2074a3e145
remove slashes for building (os x issue?)
2014-12-01 20:36:59 +01:00
Pavel Kirienko
112f87f13f
REAME update
2014-11-04 04:24:32 +03:00
Pavel Kirienko
1f36c92f82
Removed an unused template parameter in Array<>::packSquareMatrixImpl<>()
2014-11-04 04:20:33 +03:00
Pavel Kirienko
f97b21c89e
uncrustify config moved to https://github.com/Zubax/zubax_style_guide
2014-11-02 22:19:17 +03:00
Pavel Kirienko
4de0338824
ESC messages update
2014-10-09 10:14:26 +04:00
Pavel Kirienko
01d5bb242a
Warning fixes
2014-10-08 17:39:45 +04:00
Pavel Kirienko
ae81d9d8d9
BatteryStatus STATUS_MASK_ERROR
2014-10-08 17:28:31 +04:00
Pavel Kirienko
1fc60c4557
AltitudeAGL moved to range_sensor
2014-10-08 17:25:34 +04:00
Pavel Kirienko
5136eaad42
Removed some types from uavcan.nav.*, will be re-added later when properly specified
2014-10-08 17:24:04 +04:00
Pavel Kirienko
8836c1d84e
Merge branch 'master' of https://github.com/pavel-kirienko/uavcan
2014-10-05 03:10:50 +04:00
Pavel Kirienko
e9fdabe278
A minor style fix - typename instead of class in a template
2014-10-05 03:10:10 +04:00
Pavel Kirienko
f134b81300
Update README.md
2014-09-23 00:21:17 +04:00
Pavel Kirienko
9542acabeb
Update README.md
2014-09-19 02:53:30 +04:00
Pavel Kirienko
66c70fc2d3
uavcan_nodetool - fixed node name
2014-09-13 19:15:45 +04:00
Pavel Kirienko
cf087cf05a
uavcan_status_monitor - running in passive mode
2014-09-13 19:14:53 +04:00
Pavel Kirienko
ca16ab038d
Much improved uavcan_nodetool
2014-09-13 18:56:15 +04:00
Pavel Kirienko
704f89ce07
Rearranged Linux tests
2014-09-13 17:59:31 +04:00
Pavel Kirienko
07f60b4aab
gitignore
2014-09-10 14:14:31 +04:00
Pavel Kirienko
deaff8323e
STM32/LPC11C24 examples: branding
2014-09-10 14:13:41 +04:00
Pavel Kirienko
8ecdd6586a
Linux test - nodetool - enumeration support
2014-09-06 04:39:11 +04:00
Pavel Kirienko
286adbcc56
GNSS fix message update
2014-09-03 21:41:27 +04:00
Pavel Kirienko
c4c14c60fb
areFloatsClose() - two last params can be passed by ref
2014-08-29 03:27:37 +04:00
Pavel Kirienko
287079e642
Dispatcher: Access methods for the listener lists
2014-08-29 03:14:55 +04:00
Pavel Kirienko
4755130311
LPC11C24 warnings
2014-08-29 02:20:08 +04:00
Pavel Kirienko
8b73a68de8
areClose() tests and docs
2014-08-29 01:25:55 +04:00
Pavel Kirienko
d4019da5ff
Array fuzzy comparison test
2014-08-28 23:33:39 +04:00
Pavel Kirienko
28d21a4e1b
Smaller SizeType for static Array<>s
2014-08-28 23:27:05 +04:00
Pavel Kirienko
9d806c2be6
areClose(), isClose()
2014-08-28 20:25:27 +04:00
Pavel Kirienko
f255a725c1
Added IntToType<>
2014-08-28 18:46:35 +04:00
Pavel Kirienko
0bfd5a95df
LPC11C24 warning fixes
2014-08-28 17:43:12 +04:00
Pavel Kirienko
8a8bb78d38
More warning fixes in the STM32 drvier, STM32 test project and the library core
2014-08-28 17:28:44 +04:00
Pavel Kirienko
acf45e3e6b
Using custom RemoveReference instead of relying on the standard library
2014-08-28 16:37:32 +04:00
Pavel Kirienko
62db10d9aa
More warnings
2014-08-28 16:31:22 +04:00
Pavel Kirienko
128a8bad1c
Warning fixes
2014-08-28 16:09:21 +04:00
Pavel Kirienko
b09bfab117
Strict warnings in the unit tests. This commit needs to be carefully reviewed.
2014-08-28 04:54:59 +04:00
Pavel Kirienko
d9d6e80aea
Strict sign conversions
2014-08-28 02:51:29 +04:00
Pavel Kirienko
4cc7dfb2d4
Float classification test
2014-08-28 01:40:29 +04:00
Pavel Kirienko
8240c7962b
Extra warnings for the debug build: -Wfloat-equal -Wconversion. The code was fixed accordingly. No broken tests.
2014-08-28 01:33:27 +04:00
Pavel Kirienko
61c4f89ea3
Using proper float comparison everywhere
2014-08-27 19:13:45 +04:00
Pavel Kirienko
6446d05446
Floating point comparison routines
2014-08-27 17:57:10 +04:00
Pavel Kirienko
dca96fd21d
libuavcan: Extended numeric traits
2014-08-27 15:58:28 +04:00
Pavel Kirienko
c7872def16
NodeStatus timing constant updates
2014-08-24 19:44:04 +04:00
Pavel Kirienko
6e3627dda8
libuavcan: Convenience method NodeStatusProvider::setStatusPublishingPeriod()
2014-08-24 19:11:14 +04:00
Pavel Kirienko
75153eb643
dsdlc: Fixed deoendency include order
2014-08-24 16:31:17 +04:00
Pavel Kirienko
5bfa1999f4
dsdlc/pyuavcan: nicer path formatting
2014-08-24 15:33:43 +04:00
Pavel Kirienko
6c070852d7
StaticAirData - timestamp removed
2014-08-22 19:59:31 +04:00
Pavel Kirienko
69362db0c8
uavcan.equipment.airdata --> air_data
2014-08-22 15:57:38 +04:00
Pavel Kirienko
446577e4fb
Test update
2014-08-21 23:22:12 +04:00
Pavel Kirienko
4773bb10f3
Message refactoring
2014-08-21 23:17:11 +04:00
Pavel Kirienko
d87a0fd4df
Message review; FOM removed
2014-08-21 23:10:12 +04:00
Pavel Kirienko
f809a9c4a3
Messages review
2014-08-20 23:05:56 +04:00
Pavel Kirienko
361454efa3
Reorganized actuator control messages
2014-08-19 21:56:34 +04:00
Pavel Kirienko
d816d58b30
CharArrayFormatter: using %g instead of %f for better readability
2014-08-16 13:43:24 +04:00
Pavel Kirienko
e2e358bb06
Possible name clashing fix in uavcan::ReceivedDataStructure<>
2014-08-11 13:32:52 +04:00
Pavel Kirienko
da62126ca2
libuavcan build: cppcheck made optional
2014-08-10 22:29:49 +04:00
Pavel Kirienko
481086f2c7
ComponentStatusManager UAVCAN_EXPORT
2014-08-10 22:00:23 +04:00
Pavel Kirienko
03ad07d43f
OStream UAVCAN_EXPORT
2014-08-10 21:59:14 +04:00
Pavel Kirienko
5405f244b3
OStream operators made inline
2014-08-10 21:58:10 +04:00
Pavel Kirienko
93e84ab56c
OStream helper class
2014-08-10 21:36:56 +04:00
Pavel Kirienko
c32260137c
vcan init script update
2014-08-10 20:50:54 +04:00
Pavel Kirienko
6c23d7feee
TODO cleanup
2014-08-09 11:43:38 +04:00
Pavel Kirienko
8d306a90b8
Merge branch 'master' of https://github.com/pavel-kirienko/uavcan
2014-08-07 21:02:00 +04:00
Pavel Kirienko
731a4ae42b
README update
2014-08-07 21:01:44 +04:00
Pavel Kirienko
b90fdf9f7d
libuavcan unit test fix
2014-08-03 15:28:09 +04:00
Pavel Kirienko
6c972e6ba5
cppcheck warning suppressions
2014-08-03 14:27:33 +04:00
Pavel Kirienko
63843285a0
libuavcan cppcheck definitions
2014-08-03 14:10:58 +04:00
Pavel Kirienko
f40f00c0c7
cppcheck false positive suppression
2014-08-03 14:04:04 +04:00
Pavel Kirienko
f2e028715a
libuavcan test: removed unused local type declarations
2014-08-03 14:01:56 +04:00
Pavel Kirienko
c3bed4c825
libuavcan DSDLC template: suffix ULL instead of UL for 64-bit unsigned integers
2014-08-03 13:47:33 +04:00
Pavel Kirienko
dd5a070bc6
STM32: Added TODO in the example app
2014-08-02 13:51:45 +04:00
Pavel Kirienko
16a555e571
LPC11C24: Watchdog
2014-08-02 13:46:45 +04:00
Pavel Kirienko
1a0caeb723
LPC11C24: extended hardware and software version info
2014-08-02 12:54:34 +04:00
Pavel Kirienko
6980ee8240
HardwareVersion extended with UDID
2014-07-30 19:56:37 +04:00
Pavel Kirienko
236df482f7
Clarified docs for UAVCAN_CPP_VERSION
2014-07-28 01:35:30 +04:00
Pavel Kirienko
8e5a5e02be
Remove misleading doc comment
2014-07-28 01:16:27 +04:00
Pavel Kirienko
7b47b84c8e
DSDL: uavcan.equipment.camera.* removed
2014-07-27 17:31:52 +04:00
Pavel Kirienko
70441d0ea6
DSDL cleanup
2014-07-27 17:31:20 +04:00
Pavel Kirienko
a9e70a97a3
Typo
2014-07-27 17:16:17 +04:00
Pavel Kirienko
d3bde9bcf9
Timer API doc clarification
2014-07-26 02:06:59 +04:00
Pavel Kirienko
50b46ae927
Timer API doc clarification
2014-07-26 01:58:51 +04:00
Pavel Kirienko
86dc2b6edb
Remove irrelevant comment from DSDLC package
2014-07-25 14:35:31 +04:00
Pavel Kirienko
d84fc8a846
Standard data type renamed Aux --> Auxiliary because windoze
2014-07-25 02:10:12 +04:00
Pavel Kirienko
f51ee9cdec
DSDLC compiler fix for Windows - libuavcan_dsdl_compiler.pretty_filename()
2014-07-25 00:48:45 +04:00
Pavel Kirienko
c0d3b3f2b0
DSDLC fix for Windows
2014-07-25 00:34:38 +04:00
Pavel Kirienko
3a70b17b1d
Release builds without -Werror -pedantinc. Strict compilation warnings shall only be enforced for debug builds.
2014-07-24 23:41:00 +04:00
Pavel Kirienko
4e472ed1b4
LPC11C24: WFE disabled by default
2014-07-24 19:07:40 +04:00
Pavel Kirienko
d5e7b277f2
STM32 test: simplified makefile
2014-07-24 13:40:01 +04:00
Pavel Kirienko
126e84a38b
Removed TODOs from stm32 and lpc11 makefiles
2014-07-24 13:16:36 +04:00
Pavel Kirienko
75090d6168
Remove messages uavcan.equipment.rotor.*
2014-07-23 20:05:08 +04:00
Pavel Kirienko
99b7aa8579
Properly handling the initial node status broadcast in passive mode
2014-07-23 03:17:11 +04:00
Pavel Kirienko
43c5d2e090
BatteryStatus message doc fix
2014-07-22 19:54:43 +04:00
Pavel Kirienko
046c9559d1
Gimbal status messageupdate
2014-07-22 15:08:12 +04:00
Pavel Kirienko
35b7ae180b
Power messages update
2014-07-22 15:01:34 +04:00
Pavel Kirienko
dca2611c31
Libuavcan DSDL compiler: Speed optimization - full generation takes less than a second (way faster than Mako)
2014-07-22 02:53:07 +04:00
Pavel Kirienko
5d7666f059
Libuavcan DSDL compiler: Using the built-in Pyratemp instead of Mako, so virtually we don't need any 3rd party dependencies anymore
2014-07-22 02:37:21 +04:00
Pavel Kirienko
137a2f36d8
Refactored uavcan.protocol.SoftwareVersion
2014-07-21 16:31:17 +04:00
Pavel Kirienko
4d554116d8
GetNodeInfo - UAVCAN stack version removed
2014-07-21 15:57:38 +04:00
Pavel Kirienko
767462c992
Firmware update clarifications
2014-07-18 17:31:59 +04:00
Pavel Kirienko
e1eb7554cf
libuavcan: impl_constants.hpp renamed to build_config.hpp
2014-07-16 19:56:34 +04:00
Pavel Kirienko
23178da7af
libuavcan: Coverity false positive suppression
2014-07-15 22:40:34 +04:00
Pavel Kirienko
efd3f23eb1
STM32 doc comments
2014-07-15 15:34:56 +04:00
Pavel Kirienko
e42da1f9ae
LPC11C24 doc comments
2014-07-15 15:24:29 +04:00
Pavel Kirienko
1cfd2a2f84
STM32 doc comments
2014-07-15 15:19:49 +04:00
Pavel Kirienko
9d36eef359
Fixed timeouts in uavcan_linux::BlockingServiceClient
2014-07-15 14:18:22 +04:00
Pavel Kirienko
476d8b8513
libuavcan docs
2014-07-15 14:11:06 +04:00
Pavel Kirienko
c31d41c9c8
libuavcan: Proper passive mode handling
2014-07-15 01:03:41 +04:00
Pavel Kirienko
abaaf8d440
Properly handling passive mode in NodeStatusProvider
2014-07-15 00:54:35 +04:00
Pavel Kirienko
90702b5795
libuavcan: Enforcing constant node name and version information
2014-07-15 00:47:47 +04:00
Pavel Kirienko
93a5755dec
Added clarifications for the type GetNodeInfo
2014-07-15 00:47:17 +04:00
Pavel Kirienko
31642c6963
libuavcan doc clarification
2014-07-14 22:35:57 +04:00
Pavel Kirienko
ce6d4b4a31
Typo
2014-07-14 22:28:56 +04:00
Pavel Kirienko
e5ca1f7379
libuavcan documentation
2014-07-14 22:22:18 +04:00
Pavel Kirienko
ee4c191684
EnumerationRequest message
2014-07-12 19:29:16 +04:00
Pavel Kirienko
af065e9ca9
libuavcan STM32 driver: UAVCAN_ASSERT() instead of assert() (autoreplace)
2014-07-12 17:18:59 +04:00
Pavel Kirienko
530242819d
libuavcan core now uses UAVCAN_ASSERT() instead of assert() (autoreplace)
2014-07-12 17:17:09 +04:00
Pavel Kirienko
cf19d86842
Macro UAVCAN_ASSERT() instead of assert() (not used yet, see the next commit)
2014-07-12 17:16:44 +04:00
Pavel Kirienko
1042d09de5
libuavcan default publisher TX timeout - 10 milliseconds
2014-07-12 16:54:15 +04:00
Pavel Kirienko
c9c9a16e94
libuavcan passive mode support
2014-07-12 16:52:17 +04:00
Pavel Kirienko
93f861ad60
README update
2014-07-12 02:12:58 +04:00
Pavel Kirienko
b060cf7e0d
Refined pyuavcan docs
2014-07-11 19:13:41 +04:00
Pavel Kirienko
26147880a6
Using default Python version in pyuavcan/setup.py
2014-07-11 19:06:59 +04:00
Pavel Kirienko
975a11566d
libuavcan_dsdlc docstrings
2014-07-11 19:02:57 +04:00
Pavel Kirienko
7c8f08b0d0
Explicitly stating the supported Pyhton versions
2014-07-11 18:54:40 +04:00
Pavel Kirienko
e55dd01184
pyuavcan docstring formatting
2014-07-11 18:49:59 +04:00
Pavel Kirienko
907a797a54
Clarified help for libuavcan_dsdlc
2014-07-11 15:33:52 +04:00
Pavel Kirienko
4fd4e217e1
pyuavcan docstrings
2014-07-11 15:28:36 +04:00
Pavel Kirienko
dc347f658b
SocketCAN driver: Node::getDriverPack()
2014-07-09 12:19:40 +04:00
Pavel Kirienko
f66c1a7de3
Comments for uavcan.equipment.PerformAutomaticSelfTest and PerformAutomaticCalibration
2014-07-08 19:04:51 +04:00
Pavel Kirienko
7d7e6b69fa
Updated comment for uavcan.protocol.NodeStatus
2014-07-07 15:36:51 +04:00
Pavel Kirienko
55f2cc9e54
Test update
2014-07-07 15:35:07 +04:00
Pavel Kirienko
a40fde6a0a
GNSS message update
2014-07-07 15:30:11 +04:00
Pavel Kirienko
771623e056
Added specialization for CompileTimeIntSqrt<>
2014-07-05 14:30:38 +04:00
Pavel Kirienko
fc298d19d1
Standard data type renamed
2014-07-05 14:20:09 +04:00
Pavel Kirienko
e9f21773fa
Reorganized message IDs
2014-07-05 14:13:46 +04:00
Pavel Kirienko
75c285c6c2
Camera CaptureSettings update
2014-07-05 13:52:17 +04:00
Pavel Kirienko
d9ed0c3926
LightsCommand message - array length reduced to 15
2014-07-03 22:26:44 +04:00
Pavel Kirienko
3e452ea112
ESC status message - renamed field power_rating_pct
2014-07-03 19:41:56 +04:00
Pavel Kirienko
88bc1520c1
ESC status message update
2014-07-03 15:25:07 +04:00
Pavel Kirienko
154dcd105c
In-place matrix packing
2014-07-03 12:56:33 +04:00
Pavel Kirienko
4098d8694d
Explicitly unsigned literals
2014-06-16 11:25:26 +04:00
Pavel Kirienko
95cdeff49e
Explicit cast in transport CRC computer
2014-06-16 11:22:21 +04:00
Pavel Kirienko
ff7481334a
Python 2.7 compatibility
2014-06-16 00:48:47 +04:00
Pavel Kirienko
7dbba5887a
Ignoring .pyc files
2014-06-16 00:43:48 +04:00
Pavel Kirienko
0c1ecc0caa
NetworkCompatibilityChecker: num_failed_nodes moved to NetworkCompatibilityCheckResult
2014-06-15 22:27:16 +04:00
Pavel Kirienko
163c3e0791
DSDL parser: Support for ASCII character literals
2014-06-15 22:25:46 +04:00
Pavel Kirienko
2337a5d547
File IO services
2014-06-15 21:10:36 +04:00
Pavel Kirienko
518e105809
NetworkCompatChecker can tolerate no-response from CATS service. This allows nodes to not implement services at all while being UAVCAN compatible.
2014-06-14 12:38:50 +04:00
Pavel Kirienko
ce023d14c8
Modified GNSS Aux message: wider bitfields for sat count, extra flag for diff mode
2014-06-11 00:58:25 +04:00
Pavel Kirienko
7c8b2fac61
Modified GNSS Fix message: added pdop, 8-bit alignment
2014-06-11 00:52:11 +04:00
Pavel Kirienko
a11f1b4192
New data types: uavcan.nav.*
2014-06-11 00:43:46 +04:00
Pavel Kirienko
5bd787cce0
DSDL definitions: gnss.Fix got 5 bits for sats_used field
2014-06-09 20:33:22 +04:00
Pavel Kirienko
da3a361840
Optimized gimbal status message
2014-05-29 16:42:43 +04:00
Pavel Kirienko
ab1851d00e
uavcan.equipment.gnss.RTCMStream moved to ID 745
2014-05-29 12:32:50 +04:00
Pavel Kirienko
305301ec1e
pyuavcan.dsdl.parse_namespaces() - search dirs are optional
2014-05-28 20:53:02 +04:00
Pavel Kirienko
2ef80bc853
Merge branch 'master' of https://github.com/pavel-kirienko/uavcan
2014-05-17 18:37:57 +04:00
Pavel Kirienko
d4743555ba
Readme update
2014-05-17 18:37:39 +04:00
Lorenz Meier
01ccf55e5a
Removed non-POSIX tempfile command, using a hardcoded filename instead
2014-05-09 13:37:26 +02:00
Pavel Kirienko
6329351098
LPC11C24 test app: non mandatory preprocessor symbols removed
2014-05-09 02:50:16 +04:00
Pavel Kirienko
eeb8b84215
STM32: Refactored driver; NuttX CPU ussage dropped to 7%
2014-05-09 02:17:27 +04:00
Pavel Kirienko
e260fc2ccd
STM32: SCE interrupt removed, error handling moved to RX/TX interrupts. This reduced CPU load on NuttX from 18% to 12% (with two active interfaces, only one connected to the bus)
2014-05-09 00:42:04 +04:00
Pavel Kirienko
6be5246101
STM32: Implemented event device /dev/uavcan/busevent for multiplexing via poll()
2014-05-08 16:45:49 +04:00
Pavel Kirienko
09ac68bffd
STM32: Proper semaphore destruction in NuttX driver
2014-05-08 11:37:45 +04:00
Pavel Kirienko
7f6ef17b18
Typo
2014-05-08 00:38:23 +04:00
Pavel Kirienko
3a90bbfa5e
STM32: Logging in CAN driver disabled
2014-05-08 00:11:37 +04:00
Pavel Kirienko
44d9764334
STM32: Unused function in CAN driver
2014-05-07 23:47:27 +04:00
Pavel Kirienko
44516c2cbe
Typo
2014-05-07 22:33:48 +04:00
Pavel Kirienko
7d2fccff77
STM32: Proper critical in CAN driver initialization
2014-05-07 19:32:44 +04:00
Pavel Kirienko
cbf5450164
Automatic defaults for MemPoolBlockSize
2014-05-07 14:13:49 +04:00
Pavel Kirienko
72c89a1e0f
Autodetect for UAVCAN_TOSTRING default value
2014-05-07 14:04:31 +04:00
Pavel Kirienko
fe16649de3
STM32 CAN driver fix
2014-05-06 22:36:34 +04:00
Pavel Kirienko
6e8cad20c6
STM32 NuttX support. Doesn't work though, hardfaults in IRQ handler.
2014-05-06 18:27:04 +04:00
Pavel Kirienko
87402b9701
Sign compare fix
2014-05-06 02:28:42 +04:00
Pavel Kirienko
0a9169fe87
Forgotten <cstddef> in templates.hpp
2014-05-05 22:06:37 +04:00
Pavel Kirienko
b2e942c7f9
Shadowed variable fix
2014-05-05 21:59:37 +04:00
Pavel Kirienko
4361703f07
.gitignore update
2014-05-05 21:55:52 +04:00
Pavel Kirienko
c3cae8d8ad
Workaround for broken C++ stdlibs (NuttX)
2014-05-05 21:25:36 +04:00
Pavel Kirienko
ca96854332
Fixed include: <cstdio> for snprintf() in time.hpp
2014-05-05 21:22:22 +04:00
Pavel Kirienko
2b14328787
Style fix, UAVCAN_CPP_VERSION made optional
2014-05-05 20:14:57 +04:00
Pavel Kirienko
581ee43231
UAVCAN_IMPLEMENT_PLACEMENT_NEW
2014-05-05 19:28:28 +04:00
Pavel Kirienko
8c8732d051
Collateral fixes
2014-05-05 16:15:22 +04:00
Pavel Kirienko
17ac1f7f6b
NumericTraits<> specialized for basic types instead of std integer typedefs
2014-05-05 16:07:11 +04:00
Pavel Kirienko
08cea4aacd
<limits> from STL is not required
2014-05-05 15:51:49 +04:00
Pavel Kirienko
1a9e1d8202
Fixed tests
2014-05-05 14:23:14 +04:00
Pavel Kirienko
ad3c0af324
Some headers moved to util/ (map, bitset, linked_list); compile_time.hpp renamed to templates.hpp
2014-05-05 14:17:04 +04:00
Pavel Kirienko
74a7ff6a82
Fixed possible ADL issue in the Array template
2014-05-04 23:15:14 +04:00
Pavel Kirienko
7608e4ca08
Functions from <algorithm> reimplemented in libuavcan
2014-05-04 23:13:38 +04:00
Pavel Kirienko
cf3d6e2c08
UAVCAN_EXPORT for BitSet<>
2014-05-04 21:28:27 +04:00
Pavel Kirienko
0db43b6489
Partially removed all references to STL's algorithm. <algorithm> is not included anywhere, though still used in several places which still alows the code to compile as <algorithm> is being pulled in from some other standard headers.
2014-05-04 21:22:18 +04:00
Pavel Kirienko
d0c2898def
std::bitset<> replaced with BitSet<>; stdexcept is not included unless exceptions are enabled
2014-05-04 20:49:58 +04:00
Pavel Kirienko
9b465a0959
Renamed StartHilSimulation service
2014-05-04 18:17:46 +04:00
Pavel Kirienko
bedc6bbc8a
DSDL messages in uavcan.equpment.*
2014-04-30 14:18:03 +04:00
Pavel Kirienko
ea19fea568
uavcan_linux::Node::makeBlockingServiceClient()
2014-04-29 13:59:11 +04:00
Pavel Kirienko
5d272ca410
Linux test: Hardpoint control from nodetool
2014-04-29 13:51:30 +04:00
Pavel Kirienko
6d39793855
STM32: IRQ definitions fix
2014-04-29 13:50:54 +04:00
Pavel Kirienko
d4689c1616
Hardpoint DSDL types
2014-04-28 23:36:07 +04:00
Pavel Kirienko
ae4acbcd12
Refactored nodetool
2014-04-28 14:26:56 +04:00
Pavel Kirienko
4a2df2975a
Linux: New test util
2014-04-28 01:51:13 +04:00
Pavel Kirienko
ae26afdc9f
Blocking service caller
2014-04-28 00:33:08 +04:00
Pavel Kirienko
4f544f28b7
Service caller: Server Node ID validation before call
2014-04-27 22:49:22 +04:00
Pavel Kirienko
0e93ea6940
STM32: Dramatically improved clock synchronization
2014-04-27 20:57:56 +04:00
Pavel Kirienko
6815e5c755
STM32: Removed debug code
2014-04-26 23:47:39 +04:00
Pavel Kirienko
4a761b44bb
STM32 clock sync defaults
2014-04-26 19:40:36 +04:00
Pavel Kirienko
803222dcc3
STM32: New clock sync algorithm
2014-04-26 17:48:42 +04:00
Pavel Kirienko
430776469f
STM32: Clock speed PPM limit
2014-04-25 15:23:22 +04:00
Pavel Kirienko
32671fe574
Somewhat improved clock sync stability (the algorithm still has to be reimplemented from scratch)
2014-04-25 10:45:39 +04:00
Pavel Kirienko
f28b00c5db
Renamed clock::setMinJump()
2014-04-24 23:48:25 +04:00
Pavel Kirienko
5a01135970
STM32, LPC11C24: Default min jump set to 10 ms
2014-04-24 14:46:37 +04:00
Pavel Kirienko
95363908bf
STM32: clock::setMinJump(..)
2014-04-24 14:14:47 +04:00
Pavel Kirienko
4defcde10b
ComponentStatusManager<>
2014-04-23 13:38:56 +04:00
Pavel Kirienko
9597dc4ddb
crdr_chibios followup
2014-04-20 23:40:53 +04:00
Pavel Kirienko
f155702008
Data type registrator went the same way - using plain statics instead of in-place allocation at first call. For code size critical applications, GCC flag -fno-threadsafe-statics should be used
2014-04-20 23:40:32 +04:00
Pavel Kirienko
7a02960401
Good old GDTR singleton re-implemented via static local again, because previous implementation could cause undefined behavior as GDTR could be initialized after static type registrators that use it
2014-04-20 23:14:02 +04:00
Pavel Kirienko
afc56cf87b
GDTR list integrity check (debug builds only)
2014-04-20 21:36:01 +04:00
Pavel Kirienko
5cd0aff0d3
GDTR list integrity check (debug builds only)
2014-04-20 21:33:51 +04:00
Pavel Kirienko
b7b53630d1
Linux driver: verbose exception with error code
2014-04-20 20:45:26 +04:00
Pavel Kirienko
0fd24fd6b0
Braces in complex boolean condition to suppress false positive from the static analyzer
2014-04-19 22:55:57 +04:00
Pavel Kirienko
5fcfd7726b
Removed unused constant ErrOk
2014-04-19 22:29:40 +04:00
Pavel Kirienko
0440aa844d
DSDL signature in generated types is upper case
2014-04-19 22:15:26 +04:00
Pavel Kirienko
e3aa0d91c8
Minor style fixes in Linux tests
2014-04-19 19:27:17 +04:00
Pavel Kirienko
f8883e0bb2
Fixed memory leak in CanIOManager test
2014-04-19 19:13:52 +04:00
Pavel Kirienko
ddcedfd9d0
Fixed sizeof(ptr) in test (detected by clang static analyzer)
2014-04-19 19:05:34 +04:00
Pavel Kirienko
c1be9f1fef
Explicit virtual keyword
2014-04-19 18:51:36 +04:00
Pavel Kirienko
f31d46ea6c
Explicit void cast for unused return values
2014-04-19 17:45:03 +04:00
Pavel Kirienko
b2c021397d
Linked list test fix
2014-04-19 17:18:51 +04:00
Pavel Kirienko
4e39fc61d9
LinkedListRoot<>::remove() does not return anything, as it was not used anyway
2014-04-19 17:13:44 +04:00
Pavel Kirienko
3eec1e18c3
Include order fix
2014-04-19 17:03:16 +04:00
Pavel Kirienko
4112c949fc
strcmp() --> strncmp()
2014-04-19 16:50:43 +04:00
Pavel Kirienko
acff3d274c
Null pointer checks
2014-04-19 16:47:14 +04:00
Pavel Kirienko
efb2251ef8
strcmp() --> strncmp()
2014-04-19 16:42:39 +04:00
Pavel Kirienko
799846de02
Scope hiding fixes
2014-04-19 16:32:42 +04:00
Pavel Kirienko
c4c77ea321
Fixed typedef reuse
2014-04-19 15:52:17 +04:00
Pavel Kirienko
2eb15268f7
Stupid condition swap to eliminate a false positive from static analyzer
2014-04-19 15:30:30 +04:00
Pavel Kirienko
6aa9bd0c41
Removed enum constants from generated types
2014-04-19 15:26:39 +04:00
Pavel Kirienko
dfe3b4511e
Most enums were replaced with constants, according to MISRA
2014-04-19 15:16:10 +04:00
Pavel Kirienko
ace2cf9d0e
Error codes are constants, not enum. That fixes another MISRA violation.
2014-04-19 14:13:55 +04:00
Pavel Kirienko
519532da14
Fixed undefined behavior
2014-04-19 13:57:10 +04:00
Pavel Kirienko
dfc69b4b5f
Destructor fixes
2014-04-18 23:44:31 +04:00
Pavel Kirienko
707c3e3ed1
All literal suffixes are upper case (U, L, F)
2014-04-18 22:10:59 +04:00
Pavel Kirienko
b3769c9cb3
Removed forward declarations (not compatible with MISRA)
2014-04-18 21:14:17 +04:00
Pavel Kirienko
ed2ad4b4c9
Coding style fix in DSDL header template
2014-04-18 20:23:34 +04:00
Pavel Kirienko
c9ede31d56
U suffix for unsigned constants
2014-04-18 20:17:54 +04:00
Pavel Kirienko
fd71f55933
Control flow/braces fixes
2014-04-18 19:55:51 +04:00
Pavel Kirienko
1853f5c73c
Explicit constructors
2014-04-18 19:37:08 +04:00
Pavel Kirienko
febc3ed870
Virtual call screwup fix
2014-04-18 18:57:54 +04:00
Pavel Kirienko
bfe1447426
Fixes suggested by static analyzer
2014-04-18 18:46:47 +04:00
Pavel Kirienko
1bac8d6561
Fixed unused variables in generated code
2014-04-18 18:21:03 +04:00
Pavel Kirienko
fe2b49b1ab
#undef in generated headers moved into the global scope
2014-04-18 18:05:24 +04:00
Pavel Kirienko
d1d42e83a7
Added script to generate SciTols Understand project file using buildspy
2014-04-18 16:58:18 +04:00
Pavel Kirienko
9a04bc6dbc
SciTools Understand warning fixes
2014-04-18 16:32:20 +04:00
Pavel Kirienko
b7cf443418
Coverity annotation fixes
2014-04-18 15:56:22 +04:00
Pavel Kirienko
189760f662
Uncrustify config moved into tools/
2014-04-18 15:17:53 +04:00
Pavel Kirienko
b5f67403dd
Coverity scan code annotations and modeling file
2014-04-18 15:16:22 +04:00
Pavel Kirienko
c17a2bbd5b
Fixed Linux driver: SocketCan driver adds time offset from the provided clock instance, which fixes time synchronization in PerDriverPrivate clock adjustment mode
2014-04-17 16:14:39 +04:00
Pavel Kirienko
bd27ab02ac
#ifdef for GCC-specific attribute
2014-04-17 15:52:20 +04:00
Pavel Kirienko
3acf0be231
LPC11C24: Removed compiler-dependent code
2014-04-17 12:53:50 +04:00
Pavel Kirienko
32474838c0
LPC11C24: Fixed undefined behavior in clock driver
2014-04-17 12:50:24 +04:00
Pavel Kirienko
03ff492bc4
More compliance fixes
2014-04-17 12:23:31 +04:00
Pavel Kirienko
cff3a24883
C++ compliance fixes
2014-04-17 12:05:02 +04:00
Pavel Kirienko
c772cea438
Typos in Linux driver
2014-04-16 23:07:25 +04:00
Pavel Kirienko
507e395672
LPC11C24 test: Optimized logging
2014-04-16 22:56:47 +04:00
Pavel Kirienko
77ca59a2ad
LPC11C24 test: Added time sync slave and logging
2014-04-16 22:35:03 +04:00
Pavel Kirienko
87e89fc042
Heavy optimizations for ROM/RAM usage in UAVCAN_TINY mode
2014-04-16 21:11:42 +04:00
Pavel Kirienko
4085613d00
Support for zero static buffers
2014-04-16 20:25:37 +04:00
Pavel Kirienko
85c176cb60
Preprocessor symbol UAVCAN_LPC11C24_NO_WFE to disable WFE in select()
2014-04-16 19:20:15 +04:00
Pavel Kirienko
091356c1ba
LPC11C24: Reduced RX queue len
2014-04-16 19:15:52 +04:00
Pavel Kirienko
3c2c623c08
LPC11C24: Added some fancy GCC flags
2014-04-16 19:03:23 +04:00
Pavel Kirienko
698a3ad325
LPC11C24: Enabled LTO; binary size 26.6k
2014-04-16 18:57:59 +04:00
Pavel Kirienko
65c6fdf396
Disabled optimization in crt0 to avoid optimization errors on the naked function (anyway there's nothing to optimize)
2014-04-16 18:47:32 +04:00
Pavel Kirienko
b18daa070b
UAVCAN_TINY does not support GTSM, NCC, TSP - saves ~900 bytes
2014-04-16 17:27:46 +04:00
Pavel Kirienko
a298ad9ba2
Transport CRC will not use table in UAVCAN_TINY builds
2014-04-16 17:19:05 +04:00
Pavel Kirienko
f8b10ab003
Shorter error strings - saves ~200 bytes
2014-04-16 16:59:58 +04:00
Pavel Kirienko
97cb814ffd
LPC11C24: Added node status init
2014-04-16 15:09:32 +04:00
Pavel Kirienko
5926e3dd45
LPC11C24: Fixed TX priority inversion in CAN driver
2014-04-16 15:02:45 +04:00
Pavel Kirienko
c114ce8c99
LPC11C24: Default RX queue len reduced to 10 items
2014-04-16 14:10:19 +04:00
Pavel Kirienko
13e8fdbdc8
LPC11C24: Minor fixes in CAN driver
2014-04-16 13:59:37 +04:00
Pavel Kirienko
58636c780c
LPC11C24: Simple UAVCAN node. Does nothing. There's some problem with TX reordering, it was solved temporarily by setting number of TX slots to one.
2014-04-16 13:53:30 +04:00
Pavel Kirienko
e934f54c9f
LPC11C24: LD script: Implicit function alignment - saves 900 bytes of code for this test
2014-04-16 13:15:21 +04:00
Pavel Kirienko
c62b425b31
LPC11C24: LTO requires abort() to be used
2014-04-16 13:09:37 +04:00
Pavel Kirienko
2a03b21aba
LPC11C24 superheader
2014-04-16 13:09:03 +04:00
Pavel Kirienko
60947bc9dc
LPC11C24: Removed redundant comments
2014-04-16 12:35:50 +04:00
Pavel Kirienko
1e68df6187
LPC11C24 clock driver bug fix: SysTick pending bit is checked in SCB.ICSR, which is the only right way according to the Cortex-M0 manual
2014-04-16 01:16:10 +04:00
Pavel Kirienko
a1ea05bdea
LPC11C24: select()
2014-04-16 00:05:25 +04:00
Pavel Kirienko
09203aab1d
LPC11C24: More complete test
2014-04-15 23:28:01 +04:00
Pavel Kirienko
1c73f4884c
LPC11C24 iface activity LED support
2014-04-15 23:11:55 +04:00
Pavel Kirienko
272c05edf1
LPC11C24: __low_init() renamed to commonly known SystemInit()
2014-04-15 22:57:24 +04:00
Pavel Kirienko
a392f5c61c
LPC11C24: Using --specs=nano.specs (link with small newlib)
2014-04-15 22:17:42 +04:00
Pavel Kirienko
e205c2e441
LPC11C24 clock driver. Not well tested yet, but generally seems to be OK
2014-04-15 22:12:19 +04:00
Pavel Kirienko
1f0f6b0899
Misleading comment removed
2014-04-15 21:18:32 +04:00
Pavel Kirienko
6127963db7
LPC11C24: CAN bouncer (test)
2014-04-15 17:22:45 +04:00
Pavel Kirienko
841c581991
LPC11C24: CAN transmission
2014-04-15 17:15:49 +04:00
Pavel Kirienko
03ab77b02f
LPC11C24: Building with libuavcan; partially implemented CAN driver (RX only, no timestamping)
2014-04-15 16:50:13 +04:00
Pavel Kirienko
a7233c1f17
LPC11C24 linking alignment fix
2014-04-15 16:21:42 +04:00
Pavel Kirienko
a4884fc452
LPC11C24: Added abort() stub
2014-04-15 15:44:40 +04:00
Pavel Kirienko
80ebb62b49
Simple C_CAN test on LPC11C24
2014-04-15 11:05:40 +04:00
Pavel Kirienko
38ca53d7d5
LPC11C24: Proper CRT initialization with BSS and constructors. All assembler code was removed.
2014-04-14 23:30:06 +04:00
Pavel Kirienko
af2141daaf
__start() and main() declared with noreturn attribute
2014-04-14 15:30:20 +04:00
Pavel Kirienko
f451aba2c6
LPC11C24: Fixed C++ runtime initialization
2014-04-14 15:28:50 +04:00
Pavel Kirienko
03fc05a456
LPC11C24 test app - does nothing but blinks a LED
2014-04-14 15:03:48 +04:00
Pavel Kirienko
c2b878965e
DataTypeSignatureCRC - methods moved to .cpp
2014-04-13 00:02:48 +04:00
Pavel Kirienko
627dc5f2d9
UAVCAN_TINY preprocessor option - STM32 test compiles into 41kB in release mode (-Os, LTO)
2014-04-12 23:28:32 +04:00
Pavel Kirienko
bbbcf97cae
STM32 test - typo
2014-04-12 23:12:11 +04:00
Pavel Kirienko
e476a957a8
NetworkCompatibilityChecker will not be executed at each Node<>::start(), there's special method for that - Node<>::checkNetworkCompatibility()
2014-04-12 22:10:26 +04:00
Pavel Kirienko
dd5908dad8
Renaming: NodeInitializer --> NetworkCompatibilityChecker
2014-04-12 21:40:30 +04:00
Pavel Kirienko
d8c37584c0
STM32: clock sync: Simple PI controller for speed adjustments; converges to +-100 usec in few minutes
2014-04-12 21:21:02 +04:00
Pavel Kirienko
67f92628a8
STM32: optimized clock speed adjustment
2014-04-12 20:29:57 +04:00
Pavel Kirienko
77b1cb1320
STM32 test print
2014-04-12 18:44:16 +04:00
Pavel Kirienko
590634a82c
STM32: increased default RX queue size
2014-04-12 18:23:43 +04:00
Pavel Kirienko
d801f4a7f3
CAN TX queue quota - limiting max number of memory blocks per TX queue to avoid memory congestion if one iface is down
2014-04-12 18:11:30 +04:00
Pavel Kirienko
3e4234e049
Allocator fixes
2014-04-12 17:50:32 +04:00
Pavel Kirienko
6f1affa51f
Pool test
2014-04-12 17:34:16 +04:00
Pavel Kirienko
95d2328a8c
Removed debug memset() in pool allocator
2014-04-12 17:18:08 +04:00
Pavel Kirienko
4e7287358a
Dynamic memory refactoring: Entire library now uses IPoolAllocator instead of IAllocator, which was removed completely. This change was needed to enable TX queue constraints, see the next commits.
2014-04-12 17:17:06 +04:00
Pavel Kirienko
5808bfc0c9
LimitedPoolAllocator (for TX queue)
2014-04-12 13:40:15 +04:00
Pavel Kirienko
74b62cc3a9
STM32 CAN driver RX queue bug fix
2014-04-12 12:55:36 +04:00
Pavel Kirienko
ad49bc1ece
STM32 debug helpers: printing RX queue length
2014-04-11 19:34:41 +04:00
Pavel Kirienko
bba89bdd3d
Node<>::getAllocator() preserves full allocator type
2014-04-11 19:23:05 +04:00
Pavel Kirienko
6435c82d06
Linux driver got default logger that dumps everything into stderr
2014-04-11 19:02:24 +04:00
Pavel Kirienko
3b0b0494b8
STM32 test: fixed race condition
2014-04-11 16:14:08 +04:00
Pavel Kirienko
9b56534506
Time sync master: paranoid check for loopback frame correctness
2014-04-11 16:13:23 +04:00
Pavel Kirienko
c634a676be
Removed assert() in time sync master
2014-04-11 15:38:00 +04:00
Pavel Kirienko
11102443be
STM32: Super aggressive memory allocation (testing)
2014-04-11 15:05:56 +04:00
Pavel Kirienko
d2eb0a03ee
Properly implemented registerInternalFailure(); some logging in STM32 test app
2014-04-11 14:18:36 +04:00
Pavel Kirienko
1fbd6c2cdd
STM32: LTO disabled by default
2014-04-11 13:23:41 +04:00
Pavel Kirienko
46e9aeb1a6
STM32 test: libstdc++ support moved into crdr_chibios
2014-04-11 12:55:56 +04:00
Pavel Kirienko
154f4e2e0d
STM32: libstdc++ tweaks. Code size reduced to 61k (release, -Os, LTO) with no functional changes. Shall be refactored later.
2014-04-11 02:09:43 +04:00
Pavel Kirienko
59fd0224e0
STM32: UAVCAN_STM32_DEBUG removed
2014-04-11 00:01:34 +04:00
Pavel Kirienko
e567c16fd0
Compact Entry constructor for GlobalDataTypeRegistry::regist<>()
2014-04-10 22:51:37 +04:00
Pavel Kirienko
01328da9eb
STM32 driver: Space optimized SystemClock constructor
2014-04-10 21:23:57 +04:00
Pavel Kirienko
1c741016bf
STM32 test: libstdc++ error handling workaround
2014-04-10 20:21:14 +04:00
Pavel Kirienko
d7b34ffd99
Fixed singletons in the STM32 test app ( http://stackoverflow.com/questions/22985570 )
2014-04-10 15:06:28 +04:00
Pavel Kirienko
c26c320dd9
Fixed GDTR singleton ( http://stackoverflow.com/questions/22985570 )
2014-04-10 15:05:55 +04:00
Pavel Kirienko
d0b541e22d
Added config macro UAVCAN_TOSTRING
2014-04-10 13:32:35 +04:00
Pavel Kirienko
29138214dc
Unused header
2014-04-10 12:52:01 +04:00
Pavel Kirienko
36192076b3
Removed sstream from uc_frame.cpp
2014-04-10 12:50:49 +04:00
Pavel Kirienko
f65aaa2ecd
Removed sstream from data_type
2014-04-10 12:46:59 +04:00
Pavel Kirienko
b586897948
Removed sstream from can_io
2014-04-10 12:27:05 +04:00
Pavel Kirienko
9849a6ce22
Removed sstream from BitStream::toString()
2014-04-10 12:19:44 +04:00
Pavel Kirienko
f66f06e895
Removed sstream from time.hpp
2014-04-10 12:11:45 +04:00
Pavel Kirienko
266e95127b
Removed sstream in OTR
2014-04-10 11:50:14 +04:00
Pavel Kirienko
d7ec6918be
dsdlc: YAML streamer specialization methods defined out-of-line
2014-04-09 19:28:26 +04:00
Pavel Kirienko
8cd94d152c
Methods of generated types defined out-of-line. This has been done in order to reduce code size on low optimization levels, though for whatever reason the code size INCREASED by 100 bytes on -Os (see STM32 test). Maybe this change should be reverted later.
2014-04-09 19:10:09 +04:00
Pavel Kirienko
693149cb2f
Better formatting of generated headers
2014-04-09 19:07:35 +04:00
Pavel Kirienko
f768378e2b
Size optimized ServiceClient<>
2014-04-09 18:04:16 +04:00
Pavel Kirienko
3391803d86
GenericSubscriber: one method moved to the base class
2014-04-09 18:03:31 +04:00
Pavel Kirienko
33bb1be4a1
Space optimized GenericSubscriber
2014-04-09 17:19:31 +04:00
Pavel Kirienko
44153e16db
GenericPublisher made noncopyable
2014-04-09 17:02:14 +04:00
Pavel Kirienko
72425b712a
Space optimized GenericPublisher
2014-04-09 16:38:49 +04:00
Pavel Kirienko
5bd2f0ea74
Out of line methods - Node<>
2014-04-09 15:58:29 +04:00
Pavel Kirienko
6177e27f8d
GDTR - Out of line methods
2014-04-09 15:42:23 +04:00
Pavel Kirienko
311ae8dca1
Refactored TransferListener - all logic moved into non-generic subclass and implemented in *.cpp
2014-04-09 15:06:27 +04:00
Pavel Kirienko
a8e0037363
Compiling STM32 test with Os by default, no LTO.
2014-04-09 12:52:10 +04:00
Pavel Kirienko
990a531674
Protected constructor of MapBase<>
2014-04-09 12:51:10 +04:00
Pavel Kirienko
37f78c9261
Optimized Map<>
2014-04-09 12:24:27 +04:00
Pavel Kirienko
2c9572d845
TransferBuffer optimized RAM usage
2014-04-09 11:59:45 +04:00
Pavel Kirienko
a8d12d2004
TransferBufferManager rewritten to move all the code into a non-generic subclass. STM32 test code size reduced to 176k (-O1)
2014-04-09 11:52:05 +04:00
Pavel Kirienko
9e5115948b
Out of line Logger methods
2014-04-08 23:07:36 +04:00
Pavel Kirienko
dd38c38ff2
Out of line methods in transfer_listener.hpp
2014-04-08 21:27:35 +04:00
Pavel Kirienko
8102980583
Out of line methods for ScalarCodec
2014-04-08 21:16:38 +04:00
Pavel Kirienko
a573f48372
Space optimized transfer_buffer.hpp - STM32 test 180k -O1
2014-04-08 21:13:37 +04:00
Pavel Kirienko
6a68318d49
OTR out of line methods
2014-04-08 19:07:57 +04:00
Pavel Kirienko
e6559eff9f
Out of line methods in linked_list.hpp
2014-04-08 18:59:15 +04:00
Pavel Kirienko
a32d0d335c
Out of line methods in dynamic_memory.hpp
2014-04-08 18:54:05 +04:00
Pavel Kirienko
a13e4de58a
Much space optimized Map<> container - saves 40kb of Flash for STM32 test (-O1)
2014-04-08 18:43:40 +04:00
Pavel Kirienko
20aa6e3056
Removed needless declarations from dynamic_memory.hpp
2014-04-08 18:22:52 +04:00
Pavel Kirienko
f702be8dc7
Slightly optiimzed for size ScalarCodec
2014-04-08 18:08:09 +04:00
Pavel Kirienko
aca9b98016
STM32: -flto --> binary size reduced from 220k to 155k
2014-04-08 15:53:25 +04:00
Pavel Kirienko
e8fa4a2369
UAVCAN_EXPORT
2014-04-08 15:40:51 +04:00
Pavel Kirienko
159b14e129
Array::packSquareMatrix(), Array::unpackSquareMatrix()
2014-04-07 20:26:51 +04:00
Pavel Kirienko
0c4e76a557
Added future TODO for proper float comparison for generated types
2014-04-07 15:29:46 +04:00
Pavel Kirienko
377d2f7d7f
STM32: iface activity indication
2014-04-07 15:17:58 +04:00
Pavel Kirienko
d3f76c5c16
STM32: Renamed CriticalSectionLocker
2014-04-07 14:54:26 +04:00
Pavel Kirienko
43c0b5490e
STM32 test: cleaner Makefile
2014-04-07 14:51:12 +04:00
Pavel Kirienko
2c38c4b96b
STM32: Fixed race condition in clock driver
2014-04-07 14:50:43 +04:00
Pavel Kirienko
c674fdfc1c
GNSS Fix message got status field
2014-04-06 19:57:39 +04:00
Pavel Kirienko
5d601acb8b
Atmospheric pressure extended to float32
2014-04-06 13:08:48 +04:00
Pavel Kirienko
bbd8088b66
Added some equipment messages
2014-04-06 00:26:21 +04:00
Pavel Kirienko
56c74487ec
STM32: Added notes on thread safety and driver usage.
2014-04-06 00:00:30 +04:00
Pavel Kirienko
8d1d435544
STM32: Slightly optimized clock speed adjustment algorithm, though it still isn't applicable for real work.
2014-04-05 18:18:27 +04:00
Pavel Kirienko
0edeff9e4d
STM32 test: Time sync slave
2014-04-05 18:02:57 +04:00
Pavel Kirienko
befd18de6d
STM32F107 test runs a full featured UAVCAN node (223KB FLASH, 20KB RAM)
2014-04-05 17:18:50 +04:00
Pavel Kirienko
2957da8f34
Updated tests to match recent changes in dynamic memory configuration
2014-04-05 17:15:21 +04:00
Pavel Kirienko
f32cd16f77
Extra runtime check in CanIOManager queue
2014-04-05 17:14:55 +04:00
Pavel Kirienko
e077bbf7a9
Defaults for dynamic memory: Default block size is 64 bytes; packing is disabled by default; alignment set to __BIGGEST_ALIGNMENT__ if available, otherwise 16 bytes.
2014-04-05 16:55:03 +04:00
Pavel Kirienko
54606e494a
Fixed STM32 Event
2014-04-05 16:34:37 +04:00
Pavel Kirienko
db334f9fab
Increased MemPoolAlignment (16 bytes)
2014-04-05 16:34:17 +04:00
Pavel Kirienko
75455438fc
STM32 test fixes
2014-04-05 13:48:25 +04:00
Pavel Kirienko
941f936197
STM32: Driver multiplexing, fixed ChibiOS Event
2014-04-05 13:19:00 +04:00
Pavel Kirienko
9e197f129b
STM32: Added mutex; clock made thread safe
2014-04-05 11:19:20 +04:00
Pavel Kirienko
c025df05fb
STM32: Fixed critical sections
2014-04-05 11:07:28 +04:00
Pavel Kirienko
c92573b840
Added support for timers 6 and 7
2014-04-05 10:43:58 +04:00
Pavel Kirienko
e04a32662e
STM32: RX
2014-04-05 01:39:51 +04:00
Pavel Kirienko
38f57f343d
STM32: Higher default IRQ priority
2014-04-05 01:39:20 +04:00
Pavel Kirienko
6341be88fd
STM32: Fixed critical sections, removed clock interface for can driver
2014-04-05 00:11:21 +04:00
Pavel Kirienko
f66338d329
STM32: Partially implemented CAN driver (transmission only); added debug tracing macro and some stuff into internal.hpp
2014-04-04 23:28:34 +04:00
Pavel Kirienko
daa7b9ec19
STM32 clock driver
2014-04-03 14:53:11 +04:00
Pavel Kirienko
39269c6bf9
Typo
2014-04-02 22:00:36 +04:00
Pavel Kirienko
9c08f54e65
STM32: Added basic OS abstraction (ChibiOS event), test app for this, minor changes in Makefile
2014-04-02 21:56:44 +04:00
Pavel Kirienko
b465c0a303
Added STM32 driver project. Compiles, does nothing; driver itself is not implemented (at all).
2014-04-02 14:27:00 +04:00
Pavel Kirienko
e485541c2e
Compilation error fixes, thanks GCC 4.8
2014-04-02 14:12:21 +04:00
Pavel Kirienko
9e91cd1e7c
C++ library usage fix: snprintf() may or may not be in std::
2014-04-02 13:53:39 +04:00
Pavel Kirienko
cdd0ff3a28
Added prefix 'uc_' to all .cpp files, which allows to compile libuavcan with makefiles that flatten directory structure (e.g. ChibiOS build system)
2014-04-02 13:11:24 +04:00
Pavel Kirienko
68e4c94fca
include.mk make script
2014-04-02 12:34:58 +04:00
Pavel Kirienko
3bbcc9b0db
Removed excessive void casts
2014-04-01 23:35:05 +04:00
Pavel Kirienko
b71657cb39
Formatting in Linux tests
2014-04-01 23:16:41 +04:00
Pavel Kirienko
5d737cf171
Logging shortcuts return void, since logging functions are not expected to fail in most cases
2014-04-01 23:15:35 +04:00
Pavel Kirienko
8fbcf82cd6
GlobalTimeSyncSlave logs whether it is suppressed or not
2014-04-01 23:05:29 +04:00
Pavel Kirienko
639f326341
Linux time sync test
2014-04-01 23:01:57 +04:00
Pavel Kirienko
53c870a950
Fixed time synchronization master: publishing to all ifaces with the same Transfer ID
2014-04-01 23:01:34 +04:00
Pavel Kirienko
943b50bdf0
Publisher::broadcast() with explicit Transfer ID
2014-04-01 18:25:04 +04:00
Pavel Kirienko
e2fa613917
Added slave time sync suppression, which allows to use slave and master on the same node. Shall be documented later.
2014-04-01 17:35:32 +04:00
Pavel Kirienko
2dc8525823
Added another Linux test app - node status monitor (CLI)
2014-04-01 15:08:32 +04:00
Pavel Kirienko
f451015d3b
Fixed linked list traversing in Dispatcher
2014-04-01 13:46:10 +04:00
Pavel Kirienko
d8a976df00
Removed annoying debug trace in ServiceResponseTransferListener
2014-04-01 12:29:13 +04:00
Pavel Kirienko
4f87487d46
Linux test node
2014-04-01 12:08:09 +04:00
Pavel Kirienko
ce50e8e433
Software version is not required for node initialization
2014-04-01 12:07:28 +04:00
Pavel Kirienko
18c4f60a46
Fixed select() in Linux driver
2014-04-01 12:00:21 +04:00
Pavel Kirienko
0309d13eae
Linux SOcketCAN driver: strict ordering of received CAN frames; added debug header for tests
2014-04-01 02:29:57 +04:00
Pavel Kirienko
da6e032cf9
NodeStatus timeout set 5 seconds (was 4). 5 is easier to comprehend for us hoomans.
2014-04-01 02:03:28 +04:00
Pavel Kirienko
29e2ea4e30
Removed two annoying debug traces
2014-04-01 01:56:42 +04:00
Pavel Kirienko
0eb6704edf
ILogSink logging level method made non-pure with default level DEBUG
2014-04-01 00:49:40 +04:00
Pavel Kirienko
0b2c00307d
Some functions with unused return value explicitly casted to (void)
2014-04-01 00:13:43 +04:00
Pavel Kirienko
5f8eb61a6f
Fixed installation rules
2014-03-31 23:53:42 +04:00
Pavel Kirienko
c80e0388eb
Linux helpers
2014-03-31 20:23:26 +04:00
Pavel Kirienko
788d7348b6
Linux: Auto-detecting clock adjustment mode
2014-03-31 19:52:43 +04:00
Pavel Kirienko
fd6f27b7d8
Callback type made visible
2014-03-31 18:45:46 +04:00
Pavel Kirienko
eafdc82b4b
SocketCanIface can maintain arbitrary number of frames pending in socket TX queue, which improves performance. By default, max_frames_in_socket_tx_queue = 3.
2014-03-31 17:57:01 +04:00
Pavel Kirienko
e8ee882379
Extra checks for socketcan driver test
2014-03-31 17:26:25 +04:00
Pavel Kirienko
b3866feda5
Improved vcan_init
2014-03-31 17:17:43 +04:00
Pavel Kirienko
39933ba41d
Finished Linux driver
2014-03-31 17:13:33 +04:00
Pavel Kirienko
75f475fac2
CamIOManager allows the driver to set event masks even if corresponding events were not requested. This feature somewhat simplifies driver logic.
2014-03-31 14:22:52 +04:00
Pavel Kirienko
b941c6293c
Linux SocketCAN driver (not finished yet)
2014-03-31 00:38:09 +04:00
Pavel Kirienko
d2b3832860
Proper priority comparison for CAN frames of different types
2014-03-31 00:32:52 +04:00
Pavel Kirienko
fc4d54ed86
Runtime checks for maximum DLC
2014-03-30 20:04:19 +04:00
Pavel Kirienko
c5d4b81009
SystemClockDriver --> SystemClock
2014-03-30 19:55:17 +04:00
Pavel Kirienko
3df6f958f7
Added clock test, superheader uavcan_linux.hpp
2014-03-30 18:58:30 +04:00
Pavel Kirienko
d9dd012a05
Added script vcan_init
2014-03-30 18:16:32 +04:00
Pavel Kirienko
a869c46f73
Linux clock driver - minor improvements
2014-03-30 17:07:26 +04:00
Pavel Kirienko
ec6a4cd328
Linux clock driver fix
2014-03-29 22:47:15 +04:00
Pavel Kirienko
74ecfe0cc8
Fixed type signedness through the entire codebase; driver interfaces do not use starndard types now
2014-03-29 22:40:15 +04:00
Pavel Kirienko
bdec81bbfa
Explicit 'virtual' for implemented methods
2014-03-29 19:50:22 +04:00
Pavel Kirienko
5a8a672152
Forgotten pragma once
2014-03-29 19:46:42 +04:00
Pavel Kirienko
af14b4efec
Linux clock driver
2014-03-29 19:44:16 +04:00
Pavel Kirienko
68a91d888d
Fixed library targets for tests
2014-03-29 15:37:20 +04:00
Pavel Kirienko
21152e00db
Renamed dsdlc target, library made static, added linux drivers project (empty yet)
2014-03-29 15:31:06 +04:00
Pavel Kirienko
89e5cf60e0
Added top-level CMake script
2014-03-29 15:18:36 +04:00
Pavel Kirienko
18e4d919c1
uavcan_dsdlc renamed to libuavcan_dsdlc
2014-03-29 14:54:26 +04:00
Pavel Kirienko
e212c6a9d5
Rewritten CMake installation directives, added setup.py for libuavcan_dsdl_compiler. uavcan_dsdlc should be lifted from libuavcan to a separate subproject in order to add support for other programming languages
2014-03-29 14:31:27 +04:00
Pavel Kirienko
77d46cb91f
pyuavcan setup.py
2014-03-29 12:35:52 +04:00
Pavel Kirienko
fc543fafe6
Rewritten CMakeLists.txt; now it should work with any compiler (not only GCC). By default it compiles just libuavcan itself and nothing else. In case of GCC or Clang it is possible to select C++ standard (03/11, the latter is default)
2014-03-29 00:35:36 +04:00
Pavel Kirienko
0e2965e6fb
Reorganized CMake script; unit tests and cppcheck will be used only if CMAKE_BUILD_TYPE=Debug, otherwise they are not required
2014-03-28 22:36:55 +04:00
Pavel Kirienko
b25efbb996
Fixed uninitialized variable in Array<>
2014-03-28 21:40:43 +04:00
Pavel Kirienko
eead3f55ec
libuavcan installation rules
2014-03-28 20:25:02 +04:00
Pavel Kirienko
4b1c4014c1
dsdlc fix - now works correctly under root
2014-03-28 20:13:34 +04:00
Pavel Kirienko
162a066575
Updated magic number for uavcan.protocol.StartHilSimulation
2014-03-28 20:03:26 +04:00
Pavel Kirienko
c6df3833d3
Subscriber and Server register their internal errors in the global transport perf counter object
2014-03-28 19:31:02 +04:00
Pavel Kirienko
0d9be57d92
handleFatalError() moved to error.hpp
2014-03-28 19:26:25 +04:00
Pavel Kirienko
ae63ad5db5
Meaningful error codes instead of plain -1
2014-03-28 19:21:08 +04:00
Pavel Kirienko
4886e2194f
Proper data alignment for allocator and lazy constructor
2014-03-28 13:47:21 +04:00
Pavel Kirienko
c54b3314e4
Superheader <uavcan/uavcan.hpp>
2014-03-28 13:33:44 +04:00
Pavel Kirienko
6b733dde49
Main Node class
2014-03-28 13:21:56 +04:00
Pavel Kirienko
b85fdc886b
Added method Logger::init() (optional)
2014-03-28 11:53:07 +04:00
Pavel Kirienko
062170c995
Using std::function<> for callbacks with C++11
2014-03-28 02:17:00 +04:00
Pavel Kirienko
c769626eef
Fixed timings for tests in order to reduce probability of test failure on a non-realtime system
2014-03-28 02:04:22 +04:00
Pavel Kirienko
86269c32ff
Fix for the previous commit
2014-03-28 01:39:43 +04:00
Pavel Kirienko
7616c214b3
Auto ptr checks in tests
2014-03-28 01:32:58 +04:00
Pavel Kirienko
c7cc8c8758
Removed duplicated code of Timer
2014-03-28 00:27:14 +04:00
Pavel Kirienko
96aa295615
NodeInitializer - performs network checks during intialization: NodeID collisions, incompatible data types
2014-03-28 00:15:19 +04:00
Pavel Kirienko
49eb6fa463
Forgotten #pragma once
2014-03-27 22:50:30 +04:00
Pavel Kirienko
701f2a07e1
ServiceClient incapsulation fix
2014-03-27 22:24:13 +04:00
Pavel Kirienko
159fda99db
Some constructors made explicit
2014-03-27 14:09:22 +04:00
Pavel Kirienko
f30b071fcf
Preventing recursive calls of Scheduler::spin()
2014-03-27 14:03:05 +04:00
Pavel Kirienko
5157f9182e
C++11 Timer API
2014-03-27 13:52:41 +04:00
Pavel Kirienko
c4e0404d02
Added test with -O3, removed noexcept tests, the library compiles in two versions: C++11 (default) and C++03 (with suffix '_cpp03')
2014-03-27 13:51:16 +04:00
Pavel Kirienko
9476dfbdad
Renaming: Timer --> TimerBase, see the next commit
2014-03-27 11:59:02 +04:00
Pavel Kirienko
0dff5b36e4
TransportStatsProvider
2014-03-27 03:13:25 +04:00
Pavel Kirienko
851e984e35
Renaming TransportPerfCounter --> TransferPerfCounter
2014-03-27 02:51:06 +04:00
Pavel Kirienko
da357f5992
TransportPerfCounter - counting transfers and transport errors
2014-03-27 02:19:27 +04:00
Pavel Kirienko
66916920ef
TransferReceiver error counter
2014-03-26 19:18:17 +04:00
Pavel Kirienko
2798252fd4
CAN IO perf counters
2014-03-26 18:18:24 +04:00
Pavel Kirienko
09e3ad0187
Transport stats service
2014-03-26 17:58:48 +04:00
Pavel Kirienko
01902f07aa
NodeStatusMonitor
2014-03-26 15:42:04 +04:00
Pavel Kirienko
5fa805e14e
TransferReceiver::DefaultTransferIntervalUSec increased to 1 second
2014-03-26 15:28:33 +04:00
Pavel Kirienko
6eb5a5a401
Fix for Logger::LogLevelAboveAll
2014-03-26 13:06:10 +04:00
Pavel Kirienko
396037af7e
Documented node naming convention
2014-03-26 12:28:00 +04:00
Pavel Kirienko
2fd608d602
Uncrustified test headers
2014-03-25 22:56:49 +04:00
Pavel Kirienko
d1278b5ed3
Uncrustified tests
2014-03-25 22:49:31 +04:00
Pavel Kirienko
57de608bf0
Few manual style fixes for tests
2014-03-25 22:33:12 +04:00
Pavel Kirienko
d967eaf94d
Uncrustify config
2014-03-25 22:32:52 +04:00
Pavel Kirienko
f2be356319
Added references to M. Gergeleit, H. Streich - 'Implementing a Distributed High-Resolution Real-Time Clock using the CAN-Bus'
2014-03-25 21:52:52 +04:00
Pavel Kirienko
40a9194574
Logger: Independent logging level for ILogSink
2014-03-25 21:45:12 +04:00
Pavel Kirienko
379a19c1b8
DSDL definitions for file transfer support were removed. This functionality is certainly needed for the protocol, but it is not going to be implemented in the first order, so there is no point in keeping these (unfinished) types now.
2014-03-25 21:10:19 +04:00
Pavel Kirienko
0da3a93ec9
Parameter server
2014-03-25 19:16:56 +04:00
Pavel Kirienko
7ff5630eaa
FloatSpec does not use non-standard C lib anymore
2014-03-25 03:25:08 +04:00
Pavel Kirienko
7a3790b460
Uncrustify config and launch script
2014-03-25 03:05:27 +04:00
Pavel Kirienko
0cc627016a
Automated style fixes in order to bring the code a little bit closer to compliance with MISRA C++ rules. No changes in logic.
2014-03-25 03:04:36 +04:00
Pavel Kirienko
cce657e1fe
Manual style fixes, logic was not affected
2014-03-25 01:36:25 +04:00
Pavel Kirienko
41a145424b
Style fixes
2014-03-24 23:17:05 +04:00
Pavel Kirienko
42b80da0dd
Style fix for generated code
2014-03-24 21:20:48 +04:00
Pavel Kirienko
0b33dbe173
GlobalTimeSyncMaster
2014-03-24 20:39:59 +04:00
Pavel Kirienko
6b43e55dc6
Dispatcher::getCanIOManager()
2014-03-24 19:11:49 +04:00
Pavel Kirienko
b40ee02383
GlobalTimeSyncSlave message validation test
2014-03-24 16:24:40 +04:00
Pavel Kirienko
31ed44ff5c
GlobalTimeSyncSlave Transfer ID and timing validation (not tested)
2014-03-24 15:14:03 +04:00
Pavel Kirienko
56748523fc
GlobalTimeSyncSlave typo
2014-03-24 13:25:26 +04:00
Pavel Kirienko
9d797e5ac5
::uavcan::CanIOManeger::MaxIfaces --> ::uavcan::MaxCanIfaces
2014-03-24 12:35:23 +04:00
Pavel Kirienko
53027b1365
GlobalTimeSyncSlave: Removed redundant code
2014-03-24 11:03:38 +04:00
Pavel Kirienko
438340ae98
GlobalTimeSyncSlave: methods isActive(), getMasterNodeID()
2014-03-24 10:53:41 +04:00
Pavel Kirienko
d56d5d5dca
GlobalTimeSyncSlave
2014-03-23 21:35:01 +04:00
Pavel Kirienko
42fdadba2c
Tests: Clock mock and test node got some fixes
2014-03-23 21:34:42 +04:00
Pavel Kirienko
1171ef30e8
Refactored helper class InterlinkedTestNodes
2014-03-23 17:40:52 +04:00
Pavel Kirienko
1be6c26a6d
SystemClockMock adjustment support
2014-03-23 17:40:31 +04:00
Pavel Kirienko
c05d27a7c5
PanicListener test fix
2014-03-23 17:15:40 +04:00
Pavel Kirienko
a9dc281c9d
cppcheck warning fixes in tests
2014-03-23 16:42:47 +04:00
Pavel Kirienko
aa5d7a190a
NodeID comparison operators
2014-03-23 16:36:55 +04:00
Pavel Kirienko
ec94ebb1f4
stdint.hpp - typedef instead of using declaration - typedefs are safer
2014-03-23 14:41:17 +04:00
Pavel Kirienko
ac6a1fb9a8
Added the Coverity Scan badge
2014-03-22 10:21:07 +04:00
Pavel Kirienko
166ded6ba5
Array overrun fix in ScalarCodec, thanks Coverity
2014-03-22 10:14:31 +04:00
Pavel Kirienko
fe57f3f5c5
Array<>::resize() pass-by-value fix
2014-03-22 10:10:31 +04:00
Pavel Kirienko
314e117f7e
Fixed DSDL template to prevent name clashing with user defined types
2014-03-22 10:01:02 +04:00
Pavel Kirienko
5f434fe072
getIfaceIndex() for received transfers
2014-03-21 18:32:20 +04:00
Pavel Kirienko
c15ceb64ec
Optional pre-initialization for GenericPublisher<>, TransferSender accessor
2014-03-21 18:24:34 +04:00
Pavel Kirienko
48922c6f37
Typo: Dispatcher::ListenerRegister --> ListenerRegistry
2014-03-21 17:32:28 +04:00
Pavel Kirienko
54921a3738
Loopback frame listener API implemented; TransferSender supports iface masks and CanIOFlags. All of that is necessary to implement network-wide time synchronization.
2014-03-21 17:30:25 +04:00
Pavel Kirienko
9d35c616ef
CAN IO flags
2014-03-21 16:02:05 +04:00
Pavel Kirienko
6246f24297
CAN Error frame support for future extensibility
2014-03-21 10:43:34 +04:00
Pavel Kirienko
670d844f08
ICanDriver::select() call accepts CanSelectMasks instead of raw integer masks
2014-03-21 10:12:33 +04:00
Pavel Kirienko
57d720119f
Typo in CAN driver iface
2014-03-20 23:51:09 +04:00
Pavel Kirienko
96297678dc
Run-time checks: Enforcing valid monotonic timestamp for all received frames
2014-03-20 23:49:26 +04:00
Pavel Kirienko
cfbbe41777
Driver API moved to <uavcan/driver/*>
2014-03-20 23:37:27 +04:00
Pavel Kirienko
6eb660f11a
ISystemClock::adjustUtc() accepts only relative offset now
2014-03-20 23:27:09 +04:00
Pavel Kirienko
9c02ce2e05
GlobalTimeSync message update
2014-03-20 20:41:47 +04:00
Pavel Kirienko
de64f2aef3
Fixed name: TransferID::forwardDistance() --> computeForwardDistance()
2014-03-20 13:38:02 +04:00
Pavel Kirienko
8feacc9072
Fixed visibility of TimerEventForwarder<>::handleTimerEvent()
2014-03-19 20:02:11 +04:00
Pavel Kirienko
cee6ea3529
Changed default prototype of the PanicListener callback
2014-03-19 19:55:23 +04:00
Pavel Kirienko
3829506368
PanicListener
2014-03-19 14:27:37 +04:00
Pavel Kirienko
5cc74bf872
Tests: fixed spin() for InterlinkedTestNodes
2014-03-19 14:27:01 +04:00
Pavel Kirienko
8828b79c4e
Fixed name of a test class
2014-03-19 14:04:10 +04:00
Pavel Kirienko
f2bacbf4e1
Clarified description of uavcan.protocol.Panic
2014-03-19 13:38:05 +04:00
Pavel Kirienko
56d50a4689
uavcan.protocol.RestartNode.magic_number bitlen reduced to 40 bits, which dramatically reduces RAM usage on a service server because the transfer buffers are no longer necessary
2014-03-19 13:37:44 +04:00
Pavel Kirienko
ce9c0b6dbe
PanicBroadcaster
2014-03-19 12:25:49 +04:00
Pavel Kirienko
b353c5b9d8
RestartRequestServer
2014-03-19 10:45:20 +04:00
Pavel Kirienko
1bc411f3af
Removed extra debug.hpp inclusions
2014-03-19 10:00:24 +04:00
Pavel Kirienko
6257896627
Added -Wno-long-long for C++03 builds because this library requires 64 bit integer type
2014-03-18 21:50:40 +04:00
Pavel Kirienko
ad253a80ac
Memory pool block size fixed to 48 bytes
2014-03-18 21:43:43 +04:00
Pavel Kirienko
3dec56da00
Printing size of uavcan.protocol.RestartNode server in a test
2014-03-18 21:13:24 +04:00
Pavel Kirienko
ad65b25a26
Removed an irrelevant comment from ISystemClock class
2014-03-18 20:54:11 +04:00
Pavel Kirienko
888057f3ec
DataTypeInfoProvider
2014-03-18 20:51:22 +04:00
Pavel Kirienko
8879230798
UAVCAN_PACK_STRUCTS is always defined
2014-03-18 20:06:35 +04:00
Pavel Kirienko
5eb49fcf7e
Runtime check for GDTR::find()
2014-03-18 16:40:08 +04:00
Pavel Kirienko
2103e59ef1
GDTR got the method find() by DTID
2014-03-18 16:38:14 +04:00
Pavel Kirienko
f5fd0ffe26
NodeStatus TX timeout set to a large value
2014-03-18 16:00:59 +04:00
Pavel Kirienko
fc490e93e1
Test: TestSubscriber renamed to TestListener
2014-03-18 15:36:31 +04:00
Pavel Kirienko
aeee4b9e37
Added Dispatcher type usage methods: hasPublisher(), hasSubscriber(), hasServer()
2014-03-18 15:33:31 +04:00
Pavel Kirienko
c9b284a2d7
IOutgoingTransferRegistry::exists()
2014-03-18 15:15:53 +04:00
Pavel Kirienko
b5e201647f
Map<> got the new method findFirstKey<>(), which is needed for the upcoming Dispatcher logic
2014-03-18 14:58:05 +04:00
Pavel Kirienko
c7d6bcbdda
Tests: reduced timestamp comparison precision to reduce test failure probability with parallel build
2014-03-18 13:30:24 +04:00
Pavel Kirienko
3a86edad62
Faster CharArrayFormatter
2014-03-18 11:06:47 +04:00
Pavel Kirienko
11267860f3
Logger implementation
2014-03-18 02:30:57 +04:00
Pavel Kirienko
1e2352bb30
CharArrayFormatter<> implementation and tests
2014-03-18 00:45:11 +04:00
Pavel Kirienko
eb0139bd66
array.hpp - fixed #include
2014-03-18 00:44:39 +04:00
Pavel Kirienko
7603007d90
Array<>::appendFormatted() + test
2014-03-17 23:25:45 +04:00
Pavel Kirienko
f3f9f3dd18
Build speedup: dsdlc compiler is being invoked without -v, which improves its performance a tiny bit
2014-03-17 22:24:31 +04:00
Pavel Kirienko
6ad511a9be
Multithreaded mode for cppcheck
2014-03-17 22:19:52 +04:00
Pavel Kirienko
41eeae8200
Automatic selection between <stdint.h> and <cstdint> depending on the C++ standard. This improvement made the library completely independent from the standard C headers in C++11 mode. In C++03 mode, though, some C headers are still needed: <stdint.h>, <math.h>
2014-03-17 21:15:20 +04:00
Pavel Kirienko
81a03b4d5e
impl_constants.hpp: macro definitions were moved out of ::uavcan namespace
2014-03-17 20:51:18 +04:00
Pavel Kirienko
3f99cdd607
Proper #define for UAVCAN_EXCEPTIONS
2014-03-17 20:48:03 +04:00
Pavel Kirienko
093328e386
Proper C++ version detection
2014-03-17 20:38:02 +04:00
Pavel Kirienko
06603ad237
Much improved tests: Both C++03/C++11 are supported, with exceptions and without them; test outputs are being dumped on disk
2014-03-17 19:45:27 +04:00
Pavel Kirienko
4025bf033b
Fixed C++11 support
2014-03-17 19:06:11 +04:00
Pavel Kirienko
fa8a9cd8ed
DSDL: LogLevel extracted into a separate nested type for future extensibility
2014-03-17 15:28:58 +04:00
Pavel Kirienko
730a571c8d
The work on the highest-level concepts have just started; here goes NodeStatusProvider with tests
2014-03-15 14:49:23 +04:00
Pavel Kirienko
65cdbbdddb
Fixed unused arguments in generated data types
2014-03-15 13:59:30 +04:00
Pavel Kirienko
206551bf78
Testing helper class - InterlinkedTestNodes
2014-03-15 12:58:39 +04:00
Pavel Kirienko
bb5f77857d
Changes in uavcan.protocol.GetNodeInfo
2014-03-15 11:55:56 +04:00
Pavel Kirienko
cf3f2080a5
INode got void registerInternalFailure(const char* msg)
2014-03-15 11:55:22 +04:00
Pavel Kirienko
9b0aa5353b
Array<> - more runtime checks
2014-03-15 11:54:20 +04:00
Pavel Kirienko
f60e4a537f
UAVCAN_VERSION_* defines
2014-03-15 11:49:24 +04:00
Pavel Kirienko
964e666f86
Timer constructor takes INode instead of Scheduler - for compatibility reasons
2014-03-14 23:04:45 +04:00
Pavel Kirienko
6e49c2aeaf
Error handling fix
2014-03-14 22:17:00 +04:00
Pavel Kirienko
613efa49b9
INode class. Publisher, Subscriber, ServiceServer, ServiceClient now accept INode in constructor instead of the bunch of independent params. Self NodeID now being configured via setNodeID() method instead of constructor param
2014-03-14 19:54:27 +04:00
Pavel Kirienko
15cbf96378
Reorganized directory structure - directory 'internal' pulled up one level. No logical changes.
2014-03-14 15:01:20 +04:00
Pavel Kirienko
ab34c94ba2
Printing size of some data structures from the ServiceClient<> test
2014-03-14 13:32:01 +04:00
Pavel Kirienko
ce0174a734
Optimized messages in uavcan.protocol.*
2014-03-14 13:18:31 +04:00
Pavel Kirienko
8889a52e63
Added runtime checks for server and client
2014-03-14 11:33:37 +04:00
Pavel Kirienko
0f1b124086
Array<>::operator+=(Array<>) implementation and test
2014-03-14 02:19:57 +04:00
Pavel Kirienko
62abf10f65
ostream operator for ReceivedDataStructure<>
2014-03-14 01:54:02 +04:00
Pavel Kirienko
8f2034b090
ostream operator for ServiceCallResult<>
2014-03-14 01:45:16 +04:00
Pavel Kirienko
bc70390722
Renaming: Server<> --> ServiceServer<>
2014-03-14 01:20:27 +04:00
Pavel Kirienko
cefc346ebb
TimerEvent fields were renamed; timer pointer removed
2014-03-14 01:09:13 +04:00
Pavel Kirienko
6d584734bb
ServiceClient<>
2014-03-14 00:53:53 +04:00
Pavel Kirienko
4bb66fb492
OTR logging
2014-03-14 00:52:51 +04:00
Pavel Kirienko
e7cef20c79
Added logging for GDTR
2014-03-14 00:19:44 +04:00
Pavel Kirienko
b18e9c84ed
Passing callbacks by reference
2014-03-13 21:28:29 +04:00
Pavel Kirienko
51833fb08f
Fixed publication timeouts (Server, Publisher, GenericPublisher)
2014-03-13 14:45:31 +04:00
Pavel Kirienko
2eaa4b3c31
Refactored GenericSubscriber<> to support the upcoming Caller<>
2014-03-13 13:00:03 +04:00
Pavel Kirienko
beaba20749
Simplified service types: the nested types Request/Response are templates now, but the containing type is not, so using 'typename' to refer to Request or Response is no longer necessary.
2014-03-12 21:20:05 +04:00
Pavel Kirienko
7bc7269e37
Checking server failure counters in test
2014-03-12 13:08:31 +04:00
Pavel Kirienko
0f877dec88
Server<>
2014-03-12 13:02:28 +04:00
Pavel Kirienko
629ed8c28e
MethodBinder passes all values by reference
2014-03-12 13:01:39 +04:00
Pavel Kirienko
3426d55cac
CAN mock method - popTxFrame()
2014-03-12 13:01:15 +04:00
Pavel Kirienko
54f920898d
Pub/sub fixes
2014-03-12 13:00:40 +04:00
Pavel Kirienko
ad3175a235
GenericSubscriber<>::getFailureCount() made protected - needed for Server<>
2014-03-12 11:28:19 +04:00
Pavel Kirienko
061dc8f513
Fixed linking of generated types - generated types are templates now, which allows to define static constant member in headers avoiding linking errors
2014-03-12 10:44:40 +04:00
Pavel Kirienko
07bad40387
Added tests for proper linking of generated types. Now these tests are failing to pass - will be fixed soon.
2014-03-11 22:23:15 +04:00
Pavel Kirienko
d1d35760d4
DataTypeID tests
2014-03-11 21:33:18 +04:00
Pavel Kirienko
62ea9e2746
Type safe DataTypeID class
2014-03-11 21:29:35 +04:00
Pavel Kirienko
befea376c2
Fixed inclusion loops
2014-03-11 21:00:28 +04:00
Pavel Kirienko
6eee97fb05
DSDLC default output directory name was changed to more obvious 'dsdlc_generated'
2014-03-11 20:16:58 +04:00
Pavel Kirienko
026105d0b4
DSDLC invocation has been fixed - now it generates messages even if the tests are not going to be built
2014-03-11 20:12:57 +04:00
Pavel Kirienko
ca9bebce13
Time overflow tests
2014-03-11 15:00:14 +04:00
Pavel Kirienko
d5e30f643c
Renaming: MonotonicDeadlineHandler --> DeadlineHandler
2014-03-11 14:49:43 +04:00
Pavel Kirienko
65a4dcc2cf
Superrefactoring - all time values were replaced with new safer classes from uavcan/time.hpp; generated types were moved away from anonymous namespaces because this makes it impossible to use a type from different compilation units. Some less vital fixes are to follow - see the next few commits
2014-03-11 14:41:48 +04:00
Pavel Kirienko
633fa9d8bd
Bitarray copy algorithm was moved to C++ source file, thus C compiler is no longer required
2014-03-10 19:33:06 +04:00
Pavel Kirienko
b86ea67563
Reorganized directory structure for tests and src
2014-03-10 19:25:28 +04:00
Pavel Kirienko
21fda96978
Type safe time classes with tests, to replace uint64_t for time values
2014-03-10 19:00:59 +04:00
Pavel Kirienko
aa7a74bd1e
Scheduler test moved into the appropriate directory
2014-03-10 17:25:25 +04:00
Pavel Kirienko
1f2b8bf006
Checking the max transfer payload length for generated types
2014-03-10 15:51:59 +04:00
Pavel Kirienko
ee7a847ce0
dsdlc template renamed to *.tmpl to enable proper syntax highlighting and avoid confusion with C++ headers
2014-03-10 15:48:27 +04:00
Pavel Kirienko
d834edbf62
Forgotten explicit keyword for timer forwarder constructor
2014-03-10 14:08:30 +04:00
Pavel Kirienko
3d8285b123
Common naming conventions for event handling methods: handleFooBar() instead of onFooBar()
2014-03-10 14:03:46 +04:00
Pavel Kirienko
393641b5b6
Conforming style for TimerEventForwarder<>
2014-03-10 14:00:51 +04:00
Pavel Kirienko
4b92497aee
Refactoring - Scheduler, GenericPublisher, GenericSubscruber moved into /uavcan/internal/node/*
2014-03-10 13:53:10 +04:00
Pavel Kirienko
6573d79fd1
Style fix in Map<>
2014-03-10 11:18:04 +04:00
Pavel Kirienko
224a072120
try_implicit_cast<>() supports non default constructible target types
2014-03-10 11:12:57 +04:00
Pavel Kirienko
38e43e58ad
Nicer TimerEventForwarder<>
2014-03-10 11:01:43 +04:00
Pavel Kirienko
2aa9d8cdb5
Subscriber properly handles types that do not require buffering (i.e. types that do not require MFT transport). Ugly test added.
2014-03-10 01:50:42 +04:00
Pavel Kirienko
30aa1bdecc
StaticIf<> renamed to much more appropriate and widely known name - Select<>
2014-03-09 21:50:58 +04:00
Pavel Kirienko
ce618f6436
Utils moved to uavcan/util/*
2014-03-09 21:46:21 +04:00
Pavel Kirienko
0aa76d71e3
Comparison operators for generated types
2014-03-09 21:28:46 +04:00
Pavel Kirienko
ee1de9ab2e
Streaming operator for generated types was moved into the type's namespace
2014-03-09 21:13:37 +04:00
Pavel Kirienko
3dc5183317
Centralized fatal error handling via handleFatalError(msg)
2014-03-09 20:48:06 +04:00
Pavel Kirienko
1b7efa45f5
Subscriber: proper destruction, tests for that, tests for getFailureCount()
2014-03-09 19:37:07 +04:00
Pavel Kirienko
31e169db4a
Added checks for the subscriber test
2014-03-09 18:02:28 +04:00
Pavel Kirienko
2c2d7605a7
Subscriber with simple test
2014-03-09 17:58:32 +04:00
Pavel Kirienko
5fa5962f6f
Tests: areTimestampsClose() moved to common.hpp
2014-03-09 17:58:17 +04:00
Pavel Kirienko
acca96f5a0
Quick fix for test execution order problems (yes, singletones are hard to unittest)
2014-03-09 17:03:39 +04:00
Pavel Kirienko
c7351c4bbb
Improved MethodBinder
2014-03-09 16:53:32 +04:00
Pavel Kirienko
c1a8f818f8
GDTR tracing
2014-03-09 16:49:59 +04:00
Pavel Kirienko
326f7082d5
Syntax fix
2014-03-09 14:07:51 +04:00
Pavel Kirienko
6a2eb3b852
Tests for try_implicit_cast<>()
2014-03-09 14:04:11 +04:00
Pavel Kirienko
1659b5c476
Added try_implicit_cast<>() to check callbacks validness at run time
2014-03-09 13:47:07 +04:00
Pavel Kirienko
0afb7f4eea
Minor optimization for publisher
2014-03-09 11:24:13 +04:00
Pavel Kirienko
8bd1dd01e9
Test fix
2014-03-09 11:17:34 +04:00
Pavel Kirienko
081f1f9733
Publisher got simplified - no blocking deadline, default tx_timeout = 2.5 ms
2014-03-09 11:14:31 +04:00
Pavel Kirienko
baed1d17c5
IncomingTransfer implements ITransferBuffer, which is necessary for message codec
2014-03-09 00:47:01 +04:00
Pavel Kirienko
31e47daf84
Fixed fatal error handing (exceptions); MethodBinder moved into a separate file
2014-03-09 00:12:07 +04:00
Pavel Kirienko
d9474388b0
Compile time BitLenToByteLen computation; marshal type util tests
2014-03-08 23:24:20 +04:00
Pavel Kirienko
fb329a2f0a
Typo
2014-03-08 23:08:30 +04:00
Pavel Kirienko
395710b781
getScheduler() for Publisher
2014-03-08 23:04:05 +04:00
Pavel Kirienko
77184fc062
Writing top-level logic - publisher
2014-03-08 23:01:05 +04:00
Pavel Kirienko
35db1858c8
Latest fixes to GDTR made such thing as name collisions completely impossible, so tests were fixed accordingly
2014-03-08 22:03:58 +04:00
Pavel Kirienko
7e17e852d1
Static analyzer warning fix; I'm not sure there is any point in such initialization though, so it might need to be removed later
2014-03-08 22:02:51 +04:00
Pavel Kirienko
5a92b58e3e
Safer LazyConstructor - now requires to specify constructor parameter types manually
2014-03-08 21:50:28 +04:00
Pavel Kirienko
b6dd1e3a14
GDTR fix - double remove() before registering
2014-03-08 20:10:10 +04:00
Pavel Kirienko
c00083f9f8
Added accessors for static transfer buffer template
2014-03-08 19:51:46 +04:00
Pavel Kirienko
7cb85561bf
Scheduler checks its timing configs
2014-03-08 18:54:22 +04:00
Pavel Kirienko
7b4ef80c40
Lazy constructor init fix
2014-03-08 18:53:42 +04:00
Pavel Kirienko
fd454a77f8
LazyConstructor
2014-03-08 15:19:41 +04:00
Pavel Kirienko
bc065ee3c4
TransferSender::DefaultMaxTransferInterval made public
2014-03-08 14:13:00 +04:00
Pavel Kirienko
9ad3017929
Explicit constructors for deadline handler and timer
2014-03-08 13:24:34 +04:00
Pavel Kirienko
5559e7e447
Added scheduler accessor for deadline handler
2014-03-08 13:20:18 +04:00
Pavel Kirienko
2fa3f2c7c7
Refactored scheduler
2014-03-08 13:03:04 +04:00
Pavel Kirienko
aef70367d9
Scheduler
2014-03-08 01:01:50 +04:00
Pavel Kirienko
fb5840116a
Enabled RTTI for tests, added POSIX clock driver, modified CAN driver mock to add the new clock driver support
2014-03-07 23:59:20 +04:00
Pavel Kirienko
edb6a58d1b
Added simple method binder and system clock getter for dispatcher
2014-03-07 22:14:54 +04:00
Pavel Kirienko
93d06a2494
Fixed DSDL parser test
2014-03-07 01:10:16 +04:00
Pavel Kirienko
4fef972c2a
DSDL compiler fix: detecting DTID collisions from all namespaces
2014-03-07 01:08:03 +04:00
Pavel Kirienko
35e4fd00fc
Cleaner YAML streaming for strings
2014-03-07 00:58:14 +04:00
Pavel Kirienko
4753d4ac79
YAML streaming for generated types
2014-03-07 00:43:36 +04:00
Pavel Kirienko
da6e25a708
dsdlc bugfix
2014-03-07 00:22:09 +04:00
Pavel Kirienko
d470cf1fb4
Added workarounds for name clashing in generated messages
2014-03-06 17:55:51 +04:00
Pavel Kirienko
c08aa34645
Simplified structures in uavcan.protocol.*
2014-03-06 17:22:18 +04:00
Pavel Kirienko
5345dd794f
Optimized array initialization
2014-03-06 16:53:58 +04:00
Pavel Kirienko
76cecca84a
String-like behavior for arrays
2014-03-06 16:39:12 +04:00
Pavel Kirienko
a2d786fe5c
Removed test DSDL files
2014-03-06 13:35:21 +04:00
Pavel Kirienko
451ea11795
Added standard DSDL types: uavcan.*, uavcan.protocol.*, uavcan.mavlink.*
2014-03-06 13:32:38 +04:00
Pavel Kirienko
f06346877f
Type registration test
2014-03-05 22:32:35 +04:00
Pavel Kirienko
98b2597c30
Slightly more verbose error reporting
2014-03-04 23:13:39 +04:00
Pavel Kirienko
c4f47e0b70
Disabled instantiation of Service types
2014-03-04 22:31:15 +04:00
Pavel Kirienko
6b7eea5a4f
Added tests for generated types
2014-03-04 19:57:17 +04:00
Pavel Kirienko
082805b2f1
Generated types can be compiled sucessfully now
2014-03-03 22:14:37 +04:00
Pavel Kirienko
7e2182c5ed
Numerous fixes for type header template: UL prefix for DSDL signature, static const data members defined out of the class in an anonymous namespace
2014-03-03 22:05:23 +04:00
Pavel Kirienko
5e10ac6434
Follow-up fixes
2014-03-03 21:07:17 +04:00
Pavel Kirienko
8e298f98c3
Added gtest for dsdlc (not fully implemented yet); dropped support for inf and nan constants in DSDL as this functionality is not portable
2014-03-03 20:58:21 +04:00
Pavel Kirienko
6f4cf36438
dsdlc cmake integration; dsdlc implements lazy write
2014-03-03 18:56:49 +04:00
Pavel Kirienko
e0fdb7e773
Missed header
2014-03-03 16:37:51 +04:00
Pavel Kirienko
f4112068c1
Using UAVCAN_PACKED_BEGIN/UAVCAN_PACKED_END macros globally
2014-03-03 16:34:36 +04:00
Pavel Kirienko
89f8925a76
Packing control for generated types
2014-03-03 16:27:06 +04:00
Pavel Kirienko
02963500ec
Refactored and fixed DSDL signature computation; added DSSD comment into .hpp template
2014-03-03 15:40:53 +04:00
Pavel Kirienko
fdfe5938c2
Read only permissions for generated types
2014-03-03 14:52:43 +04:00
Pavel Kirienko
c035dd4436
DSDL compiler for libuavcan - dsdlc
2014-03-03 13:39:27 +04:00
Pavel Kirienko
5568e5751e
Preserving original filename in the compound type descriptor structure
2014-03-03 10:46:57 +04:00
Pavel Kirienko
c994fa59b0
DSDL signature is being computed from constants as well
2014-03-03 10:43:11 +04:00
Pavel Kirienko
33ebb1f9e0
parse_namespace() parses one namespace at a time
2014-03-02 21:26:14 +04:00
Pavel Kirienko
b8aa04917f
Less verbose logging
2014-03-02 17:48:58 +04:00
Pavel Kirienko
30566e3b69
Slightly reorganized DSDL parser
2014-03-02 17:42:34 +04:00
Pavel Kirienko
609346b26f
Max data structure length validation
2014-03-02 17:37:06 +04:00
Pavel Kirienko
888c2dfd44
parse_namespaces()
2014-03-02 16:45:09 +04:00
Pavel Kirienko
dac212e997
Cleaner error reporting
2014-03-02 15:39:23 +04:00
Pavel Kirienko
e21142f746
Simplified PrimitiveType.get_normalized_definition()
2014-03-02 14:50:58 +04:00
Pavel Kirienko
e3eb70f33e
DSDL constant range validation
2014-03-02 14:46:04 +04:00
Pavel Kirienko
3b35c27c05
Fixed gitignore
2014-03-01 23:17:09 +04:00
Pavel Kirienko
954b3e4bf3
DSDL parser
2014-03-01 23:13:26 +04:00
Pavel Kirienko
1f7054b6ca
Minor cleanup for utils.hpp
2014-02-28 15:22:36 +04:00
Pavel Kirienko
161c3fdc7d
Some more renamings: marshalling --> marshal
2014-02-28 14:31:03 +04:00
Pavel Kirienko
2e79b92aee
name --> full_name
2014-02-28 14:26:13 +04:00
Pavel Kirienko
1c1e1b1fb9
GDTR: much faster type signature computation
2014-02-28 14:12:35 +04:00
Pavel Kirienko
03cf4aa901
GDTR remove() fix
2014-02-28 12:33:05 +04:00
Pavel Kirienko
eb573ce04e
GDTR registration error codes
2014-02-28 12:26:46 +04:00
Pavel Kirienko
61a9adb369
Typo
2014-02-28 12:01:12 +04:00
Pavel Kirienko
e4f6866524
GDTR collision checks, ordered storage
2014-02-28 11:59:54 +04:00
Pavel Kirienko
c4add96a81
Improved GDTR test
2014-02-28 11:35:50 +04:00
Pavel Kirienko
c6518d22f5
Aggregate type signature computation + tests
2014-02-28 11:19:16 +04:00
Pavel Kirienko
3b67b15ff5
GlobalDataTypeRegistry partially implemented
2014-02-27 11:30:38 +04:00
Pavel Kirienko
d71ec29fcf
DataTypeDescriptor got name_
2014-02-27 09:29:58 +04:00
Pavel Kirienko
bc54015265
data_type.hpp moved one level up from 'internal/'
2014-02-27 08:47:32 +04:00
Pavel Kirienko
1a7c0ee65b
DataTypeDescriptor::MaxDataTypeID
2014-02-27 08:35:07 +04:00
Pavel Kirienko
c46beca304
Integrated DataTypeSignature; hash removed
2014-02-26 19:13:35 +04:00
Pavel Kirienko
057574b2ec
DataTypeSignature
2014-02-26 19:01:12 +04:00
Pavel Kirienko
121f8d2dee
TransportCRC --> TransferCRC
2014-02-26 18:16:14 +04:00
Pavel Kirienko
dc2460f264
Signature CRC extension
2014-02-26 18:12:05 +04:00
Pavel Kirienko
a73560e1bd
Added DataTypeSignatureCRC
2014-02-26 12:17:06 +04:00
Pavel Kirienko
3edfe803c7
Added compile time and run time assertions for IntegerSpec<>
2014-02-26 10:56:12 +04:00
Pavel Kirienko
887ee64d54
Fixed TransportCRC compatibility with CRC-16-CCITT
2014-02-26 09:45:06 +04:00
Pavel Kirienko
a6ab9c416f
Crc16 --> TransferCRC
2014-02-25 17:58:31 +04:00
Pavel Kirienko
366c5f5460
Two extra array tests
2014-02-25 16:26:15 +04:00
Pavel Kirienko
e4530daa2d
Optimized Array<>::clear()
2014-02-25 15:44:07 +04:00
Pavel Kirienko
af00efade2
TAO tests
2014-02-25 15:23:08 +04:00
Pavel Kirienko
ca277a4ef9
Tail array optimization; untested
2014-02-25 13:19:55 +04:00
Pavel Kirienko
a24cbcc493
Simplified StorageType<>
2014-02-24 21:46:18 +04:00
Pavel Kirienko
2b8996b82c
Fixed array MaxBitLen
2014-02-24 21:15:03 +04:00
Pavel Kirienko
01b45c892d
Dynamic array test
2014-02-24 14:14:45 +04:00
Pavel Kirienko
da4c2b524b
CRC fix
2014-02-23 20:10:09 +04:00
Pavel Kirienko
0c7d51b9ec
Dynamic arrays; not fully tested yet. Tail array optimization is not implemented yet.
2014-02-23 16:53:27 +04:00
Pavel Kirienko
77d3cb3518
StaticArray<> boolean specialization shouldn't have ValueType, so it was removed
2014-02-22 22:35:32 +04:00
Pavel Kirienko
e2e4e420f1
Marshalling headers reorganized
2014-02-22 21:56:24 +04:00
Pavel Kirienko
056791619e
StaticArray specialization for std::bitset<>
2014-02-22 21:37:31 +04:00
Pavel Kirienko
ac6456695e
StaticArray<> impl and test
2014-02-22 21:10:58 +04:00
Pavel Kirienko
202fa3b58b
Minor fixes for FloatSpec, IntegerSpec and types.hpp
2014-02-22 20:47:54 +04:00
Pavel Kirienko
fb32aabb54
Removed enable_tail_array_optimization and init()
2014-02-22 17:08:38 +04:00
Pavel Kirienko
a58e8842e2
FloatSpec made unconstructible
2014-02-22 15:25:52 +04:00
Pavel Kirienko
51e42038c6
FloatSpec<> implementation and tests
2014-02-22 15:06:08 +04:00
Pavel Kirienko
1e1fdc613b
IntegerSpec test name fix
2014-02-22 12:54:13 +04:00
Pavel Kirienko
ac2a31b087
Renamed IntegerInfo to IntegerSpec, few minor naming fixes
2014-02-22 11:00:42 +04:00
Pavel Kirienko
0e28a0826c
IntegerInfo
2014-02-21 22:03:17 +04:00
Pavel Kirienko
aee9ce238e
Type categorization via EnableIfType - for integer info class
2014-02-21 21:41:14 +04:00
Pavel Kirienko
47a2b01a14
Style fix: All constants are CamelCase now
2014-02-21 18:45:23 +04:00
Pavel Kirienko
a155e6f859
StaticIf - needed for standard types
2014-02-21 15:58:44 +04:00
Pavel Kirienko
232b69580f
ScalarCodec fix
2014-02-21 15:58:04 +04:00
Pavel Kirienko
df04599ac0
ScalarCodec - added representation correctness test
2014-02-21 00:42:11 +04:00
Pavel Kirienko
dc3111c77d
ScalarCodec implementation; more tests to come
2014-02-21 00:29:26 +04:00
Pavel Kirienko
361cf53265
Cleaner error reporting logic for BitStream
2014-02-20 20:58:57 +04:00
Pavel Kirienko
4eb2886ca9
Doc comment
2014-02-20 20:36:40 +04:00
Pavel Kirienko
5d106dfac0
Resolved TODO in BitStream
2014-02-20 20:30:16 +04:00
Pavel Kirienko
cb0ff11eea
BitStream::read() - implementation and tests
2014-02-20 20:28:42 +04:00
Pavel Kirienko
3cf6a5ff60
Partially implemented BitStream class - only write() so far.
2014-02-20 19:03:43 +04:00
Pavel Kirienko
e5a8302b9d
CMake C rules (for the upcoming BitStream class)
2014-02-20 17:03:38 +04:00
Pavel Kirienko
c10abf53e9
Style fix - DynamicTransferBuffer --> DynamicTransferBufferManagerEntry
2014-02-20 14:09:25 +04:00
Pavel Kirienko
7c4902deb5
StaticTransferBuffer extracted for standalone usage
2014-02-20 14:06:09 +04:00
Pavel Kirienko
4f49d61de6
Style fixes
2014-02-19 17:55:18 +04:00
Pavel Kirienko
195dca3696
Renaming: TransferBufferBase --> ITransferBuffer
2014-02-19 17:11:05 +04:00
Pavel Kirienko
cd851312ff
TransferSender implementation and tests
2014-02-19 17:05:19 +04:00
Pavel Kirienko
bb9d21287e
makeDataType() moved to generic transfer test helpers
2014-02-19 16:47:48 +04:00
Pavel Kirienko
15d90f72e9
Verbose logging on CRC failure
2014-02-19 16:47:08 +04:00
Pavel Kirienko
c136d92b5d
Added Frame::setIndex()
2014-02-19 16:46:50 +04:00
Pavel Kirienko
d330572e37
Style fix: LinkedListRoot<>::length() --> getLength()
2014-02-19 00:50:24 +04:00
Pavel Kirienko
903ec1b0a1
getNum*() Dispatcher methods for testing
2014-02-19 00:45:52 +04:00
Pavel Kirienko
0d50ec077c
Cleaned up dynamic memory management, explicit pointer zeroing from destroy()
2014-02-19 00:39:58 +04:00
Pavel Kirienko
2f9c0087ef
Dispatcher spin timeout test
2014-02-18 16:48:21 +04:00
Pavel Kirienko
f186888b04
Dispatcher transmission test
2014-02-18 16:42:32 +04:00
Pavel Kirienko
69eadee72b
Dispatcher reception test
2014-02-18 16:26:48 +04:00
Pavel Kirienko
0bc595d4a8
Test: Transfer::operator==() - data type comparison
2014-02-18 14:16:29 +04:00
Pavel Kirienko
cd2a13c60d
Further test refactoring: data type descriptor moved to transfer object
2014-02-18 14:14:55 +04:00
Pavel Kirienko
7039711027
Tests: refectored IncomingTransferEmulator, CAN iface mock supports pushRx(RxFrame)
2014-02-18 12:20:35 +04:00
Pavel Kirienko
a9a86bc151
CAN iface mock uses monotonic timestamping instead of UTC
2014-02-18 12:03:05 +04:00
Pavel Kirienko
980659ebb5
Minor test refactoring
2014-02-18 12:00:45 +04:00
Pavel Kirienko
06d74d3213
Added test for maximum transfer length
2014-02-17 15:13:05 +04:00
Pavel Kirienko
1886f0a8a9
Frame parsing test
2014-02-17 14:14:08 +04:00
Pavel Kirienko
d3d85a671c
Renamed some Frame methods
2014-02-17 12:53:07 +04:00
Pavel Kirienko
9d06a328dc
Simplified Frame::parse()
2014-02-17 12:43:47 +04:00
Pavel Kirienko
697a55aebb
Refactoring: Frame Index field size increased, Trnasfer ID field size reduced. NodeID class added, Frame class rewritten with stricter runtime checks. All tests were updated accordingly.
2014-02-17 12:35:12 +04:00
Pavel Kirienko
20778f1acb
Better explanation of frame filtering logic
2014-02-15 21:08:45 +04:00
Pavel Kirienko
06d757b78e
Tests refactoring - mocks and helpers were separated from testing logic
2014-02-15 21:04:12 +04:00
Pavel Kirienko
e7ce9fb586
Extra logging in TransferListener
2014-02-14 19:34:34 +04:00
Pavel Kirienko
20c828912f
Dispatcher class, tests to come
2014-02-14 19:19:23 +04:00
Pavel Kirienko
69fa8643d4
Added RxCanFrame::toString()
2014-02-14 18:45:49 +04:00
Pavel Kirienko
d81a96beb2
TransferListener::cleanup() test
2014-02-14 15:53:28 +04:00
Pavel Kirienko
02cbd60efe
Outgoing Transfer ID registry
2014-02-14 15:04:26 +04:00
Pavel Kirienko
96f8c9aa09
TransferListenerBase holds its DataTypeDescriptor, which is needed for the upcoming dispatcher class
2014-02-13 14:06:59 +04:00
Pavel Kirienko
328f98e605
Typo
2014-02-13 13:04:50 +04:00
Pavel Kirienko
2d2116f624
TransferListener implemented and tested
2014-02-13 13:01:08 +04:00
Pavel Kirienko
f78a2a452c
Removing the buffer after handleIncomingTransfer()
2014-02-12 13:40:54 +04:00
Pavel Kirienko
4a7efc19d0
Fixed specialization of TransferBufferManager<0, 0>
2014-02-12 13:29:31 +04:00
Pavel Kirienko
a1ead1b90b
TransferListener implemented, tests to be added
2014-02-12 13:27:49 +04:00
Pavel Kirienko
5ceaafe419
TransferReceiver: on-the-fly CRC extraction from multi frame transfers saves 2 to 3 bytes of payload buffers
2014-02-12 12:34:48 +04:00
Pavel Kirienko
0533539c7c
Starting refactoring of the receiving logic
2014-02-12 10:49:32 +04:00
Pavel Kirienko
0bc62a74c9
TransferListener partially implemented
2014-02-11 21:55:36 +04:00
Pavel Kirienko
0acf1b976b
Explicit specialization for empty TransferBuffer (for single frame transfers)
2014-02-11 21:44:43 +04:00
Pavel Kirienko
5be2801fa1
Dynamic buffer size limitation
2014-02-11 21:26:18 +04:00
Pavel Kirienko
031f90f326
Added TransferBufferAccessor, saves few bytes on stack/heap
2014-02-11 20:13:19 +04:00
Pavel Kirienko
25d285e209
Map<>, TransferBufferManager - isEmpty() calls for runtime checks
2014-02-11 19:56:09 +04:00
Pavel Kirienko
bb215d3c15
Map<>, TransferBufferManager - isEmpty() calls for runtime checks
2014-02-11 19:50:15 +04:00
Pavel Kirienko
fe2126536d
TransferReceiver: removed field for buffer manager key in order to save some memory (at least 2 bytes)
2014-02-11 19:27:52 +04:00
Pavel Kirienko
8a007c8522
Fixed destruction/copying of TransferReceiver
2014-02-11 19:18:43 +04:00
Pavel Kirienko
4c1a4a32c7
Map<>::insert() --> Value*, saves one lookup for TransferListener::handleFrame()
2014-02-11 19:11:36 +04:00
Pavel Kirienko
445ec8173c
IncomingTransfer for single frame and multi frame transfers
2014-02-11 18:08:20 +04:00
Pavel Kirienko
55ea9963f0
Minor renaming in TransferReceiver
2014-02-11 15:34:19 +04:00
Pavel Kirienko
afd265e8c6
TransferReceiver made 32 bit less in size
2014-02-11 14:51:23 +04:00
Pavel Kirienko
557278c6ac
Added tests for UTC transfer timestamping
2014-02-11 14:41:24 +04:00
Pavel Kirienko
696451baca
RX frames have two timestamps: monotonic - for protocol timings management; utc - for application-level timestamping
2014-02-11 14:32:45 +04:00
Pavel Kirienko
b8f6bf3ffa
Minor renaming in DataTypeDescriptor
2014-02-11 13:55:50 +04:00
Pavel Kirienko
d4e4f1a416
Added CRC initializing constructor
2014-02-11 12:36:54 +04:00
Pavel Kirienko
78ff31f9ad
TransferBufferManager: using TransferBufferManagerKey instead of plain Node ID, this allows to distinguish transfers of different type from the same Node ID, which is necessary for message broadcasting/unicasting
2014-02-11 12:21:25 +04:00
Pavel Kirienko
149ac87a54
TransferReceiver - new tests, fixed logic
2014-02-10 20:35:35 +04:00
Pavel Kirienko
dae9718903
Cleaner copyableness of transfer buffers
2014-02-10 18:51:50 +04:00
Pavel Kirienko
e9680c04d0
TransferReceiver - fixed assignment operator
2014-02-10 18:50:39 +04:00
Pavel Kirienko
b2adf25485
Transfer receiver
2014-02-10 18:35:58 +04:00
Pavel Kirienko
12111e63d4
Frame::toString() with tests
2014-02-10 13:39:27 +04:00
Pavel Kirienko
6c76e8a25d
Transfer buffer: removed timestamps and cleanup()
2014-02-09 21:35:35 +04:00
Pavel Kirienko
017863a32d
Explicit noncopyableness, static_assert.hpp --> util.hpp
2014-02-09 21:28:10 +04:00
Pavel Kirienko
56a69a4ba0
Typo
2014-02-07 19:55:02 +04:00
Pavel Kirienko
070e85d2ab
Removed TransferIDRegistry in favor of Map<>
2014-02-06 22:26:55 +04:00
Pavel Kirienko
ad51ca5c0d
KV container for TransferID
2014-02-06 22:23:51 +04:00
Pavel Kirienko
7ed9c43e95
DataTypeDescriptor, DataTypeHash
2014-02-06 15:50:14 +04:00
Pavel Kirienko
544940fd6b
CRC16 class
2014-02-06 15:30:16 +04:00
Pavel Kirienko
cc991efdc6
CanIOManager::send() unblocks as soon as the frame was transmitted, instead of waiting for the entire queue to flush
2014-02-06 12:41:09 +04:00
Pavel Kirienko
805fea8234
Added prefix TRANSFER_TYPE_ to enum TransferType
2014-02-06 12:24:24 +04:00
Pavel Kirienko
46657e8449
TransferIDRegistry - grouping by data type kind instead of transfer type
2014-02-06 12:23:20 +04:00
Pavel Kirienko
261dd546cd
Implemented TransferBufferManager
2014-02-06 00:08:51 +04:00
Pavel Kirienko
690e0257dc
cppcheck: removed flag --inconclusive as it was producing some stupid false positives
2014-02-06 00:08:18 +04:00
Pavel Kirienko
c8c7a86f99
Proper destruction of DynamicTransferBuffer
2014-02-05 19:35:14 +04:00
Pavel Kirienko
f707e889f9
Arch dependent MEM_POOL_BLOCK_SIZE
2014-02-05 19:15:06 +04:00
Pavel Kirienko
50d399e5b3
Improved test for dynamic transfer buffer
2014-02-05 19:07:20 +04:00
Pavel Kirienko
06cb11b6ec
Transport buffers - dynamic and static
2014-02-05 01:23:02 +04:00
Pavel Kirienko
fb0f44c4b4
Renamed AssertDynamicallyAllocatable --> IsDynamicallyAllocatable
2014-02-05 01:21:53 +04:00
Pavel Kirienko
f91d8090c9
Globally defined and statically checked block size for pool allocator
2014-02-04 20:16:50 +04:00
Pavel Kirienko
832f0395bd
Transfer ID registry
2014-02-04 02:12:24 +04:00
Pavel Kirienko
9559a9506a
Static assert for TX queue entry size
2014-02-03 14:41:27 +04:00
Pavel Kirienko
366ae6397e
Extra tests for RxFrame
2014-02-02 23:10:08 +04:00
Pavel Kirienko
479e851f0a
RxFrame inherits Frame
2014-02-02 23:00:30 +04:00
Pavel Kirienko
6790b04056
CanRxFrame inherits CanFrame
2014-02-02 22:58:44 +04:00
Pavel Kirienko
8794c7eab9
Frame parse()/compile(), some renamings
2014-02-02 22:54:27 +04:00
Pavel Kirienko
4bf2b2e81a
TransferID class
2014-02-02 01:57:54 +04:00
Pavel Kirienko
5252972d3e
Basic transfer definitions (untested)
2014-02-01 20:03:47 +04:00
Pavel Kirienko
00b977eb40
Minor source reorganization; few dangerous C functions replaced with safer std:: alternatives
2014-02-01 19:00:05 +04:00
Pavel Kirienko
b385ffb12e
Running cppcheck with every build
2014-02-01 17:04:56 +04:00
Pavel Kirienko
d77d2967e0
Minor clarification on how to test
2014-02-01 15:45:15 +04:00
Pavel Kirienko
f6feaa0544
Pool manager automatically sorts pools by block size in addPool()
2014-02-01 15:04:52 +04:00
Pavel Kirienko
6c12982b9d
Basic functionality: CAN IO Manager, unit tests, debug stuff, memory management
2014-02-01 14:40:09 +04:00
Pavel Kirienko
b685173185
Very basic stuff: CAN driver iface, linked list, system clock interface, tests
2014-01-25 20:06:43 +04:00
Pavel Kirienko
0d2f1da2a2
First commit
2014-01-24 14:21:15 +04:00
Pavel Kirienko
4ae1ef3c71
Initial commit
2014-01-23 11:41:25 -08:00