how to use NRF RPC without thread_custom_data

I want to use NRF RPC.

It seems to use thread_custom_data.

But, My application also use thread_custom_data.

Is there a way to use NRF RPC without thread_custom_data?
If not, please tell me a module that does not use thread_custom_data with the same functionality as NRF RPC.

  • Hello,

    Due to the summer vacations there will unfortunately be some delays on DevZone for a few weeks. Thanks for your understanding.

    I will have to get back to you on this next week.

    Regards,

    Elfving

  • Hi,

    Is there a way to use NRF RPC without thread_custom_data?

    From what I can tell, thread_custom_data is only used by the nRF RPC drivers in these two functions.

    I do not think you can configure the nRF Connect SDK to change this.
    However, since it is just two lines, you can patch your version of the nRF Connect SDK to make the nRF RPC use something else for this.

    See Managing the code base

    If not, please tell me a module that does not use thread_custom_data with the same functionality as NRF RPC.

    Can you describe the use-case here a bit?

  • Can not NRF_RPC and thread_custom_data use coexist?
    It's an unfortunate design.

    Is there any mention of such restrictions somewhere?

  • Hi,

    If I read Thread Custom Data docs, I can see that they say:

    "A thread can only access its own
    custom data, and not that of another thread.
    "

    This makes it look like you can use custom thread data for multiple different threads, right?

  • I'm on C++ and using my own framework.
    This framework defines a "class AppThread"
    Thread_custom_data stores "AppThread*".
    On the other hand, NRF_RPC also uses thread_custom_data, so it conflicts.
    Is there a workaround left for me other than fixing NRF_RPC?

    Is there a problem with using k_thread->init_data like thread_custom_data?

1 2