traclabs / cfe_cfdp

cfe_cfdp
https://traclabs-brash.bitbucket.io/
MIT License
0 stars 0 forks source link

Loop in SBN when transferring rosfsw->rosgsw #3

Open ana-GT opened 4 months ago

ana-GT commented 4 months ago

Test case: When we try to send an image (say 800x800, size 100KB) from rosfsw to rosgsw:

ros2 service call /cfdp/cmd/get cfdp_msgs/srv/CfdpXfrCmd "{src: 'rover_image.png', dst: 'out.png', dstid: 2, ack: True}"

We get into an infinite loop at SBN, because some topics are set to be both command and telemetry. This happens because we use the same config file for both CFE and SBN bridges.

Temporal fix: Create different files:

cfe_ros2_bridge_plugin: Here we add a config file for SBN: https://github.com/traclabs/cfe_ros2_bridge_plugin/tree/hotfix/loop_sbn

cfe_sbn_bridge_plugin: Here we tell the SBN bridge to use the new config file: https://github.com/traclabs/cfe_sbn_bridge_plugin/tree/hotfix/loop_sbn

With these 2 fixes, I don't see the loop anymore and I can do the service call multiple times.

PS.- Attached the images I am testing with. Original has a size of 800x800. Since that one didn't transmit fully, I tested with scaled down versions (100x100 and 40x40) which work. rover_image rover_image_100 rover_image_40