diff --git a/src/modules/zenoh/CMakeLists.txt b/src/modules/zenoh/CMakeLists.txt index 9fc0ba0cb1..6765ce7ae4 100644 --- a/src/modules/zenoh/CMakeLists.txt +++ b/src/modules/zenoh/CMakeLists.txt @@ -42,12 +42,11 @@ set(BUILD_SHARED_LIBS OFF) set(BUILD_TESTING OFF) set(CHECK_THREADS NO) set(MESSAGE_QUIET ON) -set(ZENOH_DEBUG ${CONFIG_ZENOH_DEBUG}) +set(ZENOH_DEBUG ${CONFIG_ZENOH_DEBUG} CACHE STRING "Debug print level" FORCE) set(PICO_STATIC ON) -set(Z_FEATURE_TCP_NODELAY 0) -set(Z_FEATURE_MATCHING 0) -#set(Z_FEATURE_BATCHING 0) -#set(Z_FEATURE_INTEREST 0) +if(NOT DEFINED CONFIG_NET_TCPPROTO_OPTIONS AND CONFIG_PLATFORM_NUTTX) + set(Z_FEATURE_TCP_NODELAY 0 CACHE STRING "Toggle TCP_NODELAY") +endif() px4_add_git_submodule(TARGET git_zenoh-pico PATH "zenoh-pico") add_subdirectory(zenoh-pico) diff --git a/src/modules/zenoh/zenoh.cpp b/src/modules/zenoh/zenoh.cpp index 46fe490d4f..0e78b6a1a3 100644 --- a/src/modules/zenoh/zenoh.cpp +++ b/src/modules/zenoh/zenoh.cpp @@ -207,6 +207,13 @@ int ZENOH::setupSession() return ret; } + // Start read and lease tasks for zenoh-pico + if (zp_start_read_task(z_loan_mut(s), NULL) < 0 || zp_start_lease_task(z_loan_mut(s), NULL) < 0) { + PX4_ERR("Unable to start read and lease tasks"); + z_drop(z_move(s)); + ret = -EINVAL; + } + return ret; } @@ -225,13 +232,6 @@ int ZENOH::setupTopics(px4_pollfd_struct_t *pfds) px4_guid[2] = 0xCC; #endif - // Start read and lease tasks for zenoh-pico - if (zp_start_read_task(z_loan_mut(s), NULL) < 0 || zp_start_lease_task(z_loan_mut(s), NULL) < 0) { - PX4_ERR("Unable to start read and lease tasks"); - z_drop(z_move(s)); - return -EINVAL; - } - #ifdef CONFIG_ZENOH_RMW_LIVELINESS z_id_t self_id = z_info_zid(z_loan(s));