Beat Küng
6fcfd5fac1
uxrce_dds_client: immediately create data writers on startup
...
There is some race condition where in rare cases the topic publication
right after creating the writer did not get received on the ROS side.
This happens even with reliable QoS & reliable transport.
2025-04-04 09:12:53 +02:00
Alexander Lerach
430be08131
Add payload tx/rx timeouts to DDS
...
* Add tx/rx timeouts
* Code style & tx default timeout
* Clarify TX/RX disable value
2025-02-14 14:54:42 +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
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
Benjamin Philipp Ketterer
5d025e6d3d
increased uxrce-dds stack size to prevent overflow
2024-05-07 21:13:58 -04: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
Beniamino Pozzan
2363c03bfe
[uxrce_dds_client] wait for Timesync to converge
...
Signed-off-by: Beniamino Pozzan <beniamino.pozzan@gmail.com >
2023-11-27 21:10:26 -05:00
Beniamino Pozzan
f01400de81
[uxrce_dds_client] Fix debug string format - use PRId64 and llabs
...
Signed-off-by: Beniamino Pozzan <beniamino.pozzan@gmail.com >
2023-11-27 21:10:26 -05:00
Jacob Dahl
6cc38776c8
src/modules/uxrce_dds_client: set system clock from agent CLOCK_REALTIME ( #22290 )
...
* Added parameter UXRCE_DDS_SYNCC to enable system clock synchronization. Refactored and cleaned up. Only set system time if it's off by more than 5 seconds (same as mavlink and gps).
2023-11-22 22:06:11 -05:00
Beat Küng
d12a7dd11d
uxrce_dds_client: run session until we do not get data anymore
...
Otherwise there can be significant delay for received data
2023-11-15 13:18:58 +01:00
Beat Küng
22acb08406
uorb: add message format compatibility check
...
This can be used by DDS/ROS 2 to check for matching message definitions.
2023-11-15 13:18:58 +01:00
Beniamino Pozzan
58d2badf9f
[uxrce_dds_client] add services (repliers) and basic VehicleCommand service
...
Signed-off-by: Beniamino Pozzan <beniamino.pozzan@gmail.com >
2023-11-14 11:29:17 -05:00
Daniel Mesham
f02c5319bc
uxrce_dds_client: add participant configuration parameter
...
Replaces the localhost-only and custom participant CLI flags
2023-10-05 08:03:21 +02:00
Daniel Mesham
45fd4d2fb6
uxrce_dds_client: reformat status output
...
* Align status values.
* Add indicators for the custom participant and localhost-only flags.
2023-10-05 08:03:21 +02:00
Jari Nippula
7239e8473e
microxrce_client to use px4_poll for uorb subs
...
Subscribe to poll uorbs instead of sleeping px4_usleep to
allow more accurate timing.
2023-09-21 08:30:28 -04:00
Beniamino Pozzan
b9667e955d
[uxrce-dds-client]: add parameter to disable time synchronization between Agent and Client
...
Signed-off-by: Beniamino Pozzan <beniamino.pozzan@phd.unipd.it >
2023-07-26 09:16:29 -04:00
Beniamino Pozzan
9e5420bbbd
microdds_client: rename to uxrce_dds_client
...
| | old version | new version (second proposal) |
|-|-|-|
| module name | `microdds_client` | **`uxrce_dds_client`** |
| strings / comments about the module | non consistent | **UXRCE-DDS Client** |
| menuconfig option | `MODULES_MICRODDS_CLIENT` | **`MODULES_UXRCE_DDS_CLIENT`** |
| module parameters group name | `Micro XRCE-DDS` | **UXRCE-DDS Client** |
| module parameters name prefix | `XRCE_DDS_` | `UXRCE_DDS_` |
| module class name | `MicroddsClient` | **`UxrceddsClient`** |
|`init.d/rcS` whenever the module is mentioned | `microdds` | **`uxrce_dds`** |
| main doc page name | XRCE-DDS (PX4-FastDDS Bridge) | **uXRCE-DDS (PX4-micro XRCE-DDS Bridge)**|
| environment variable to have custom namespace in simulation | PX4_MICRODDS_NS | **PX4_UXRCE_DDS_NS** |
Signed-off-by: Beniamino Pozzan <beniamino.pozzan@phd.unipd.it >
2023-05-03 11:51:53 -07:00