Sample ipc_service failed in NCS v2.3.0

 Hello !

I have compiled sampel ncs/v2.3.0/nrf/samples/ipc/ipc_service without any overlays west build -p --board nrf5340dk_nrf5340_cpuapp and west flash --recover it.

Looks like it doesn't work in new release

Network core traces

*** Booting Zephyr OS build v3.2.99-ncs2 ***
IPC-service nrf5340dk_nrf5340_cpunet demo started
Message length 100, interval 30  <--------------------------------------- I have added this line
[00:00:00.522,338] <inf> sync_rtc: Updated timestamp to synchronized RTC by 8391 ticks (256072us)
Δpkt: 0 (100 B/pkt) | throughput: 0 bit/s
Δpkt: 0 (100 B/pkt) | throughput: 0 bit/s
Δpkt: 0 (100 B/pkt) | throughput: 0 bit/s
Δpkt: 0 (100 B/pkt) | throughput: 0 bit/s

App core , only short line

*** Booting Zephyr

Looks like some problem. I try to use this sample in own application and someting weired there as well.

Regards,

Eugene

Parents
  • Hi,

    You are right, the sample seems broken in nRF Connect SDK 2.3.0. I have not been able to get to the bottom of this yet, but will look into it.

    Regarding RTC synchronization, CONFIG_NRF53_SYNC_RTC is set to y by default in most cases.

  • Hi Einar !

    Looks like RTC_SYNC is automatically added to my custom network core automatically.

    *** Bootnghyr O uld v3.2.99-ns2 ***
    Hello world from net nrf5340dcpunet, data Mar 7 2023, time 14:1:10
    OSF I-srvienrf540dk_nf0et started
    [00:00:00.027,862]nc_rtc: Updated timetamp to synchronized RTC by 294 ticks (8972us)Δpkt: 249 (255 B/pkt) | throughput: 507960 bit/s
    Δpkt: 248 (255 B/pkt) | throughput: 505920 bit/s
    Δpkt: 248 (255 B/pkt) | throughput: 505920 bit/s

    I have disabled it 

    # IPC service
    CONFIG_IPC_SERVICE=y
    CONFIG_HEAP_MEM_POOL_SIZE=4096
    CONFIG_OPENAMP=y
    CONFIG_OPENAMP_SLAVE=y
    CONFIG_OPENAMP_MASTER=n
    CONFIG_IPC_SERVICE_BACKEND_RPMSG=y
    CONFIG_MBOX=y
    CONFIG_NRF53_SYNC_RTC=n
    #CONFIG_MBOX_NRFX_IPC=n
    CONFIG_IPM=n
    CONFIG_IPC_SERVICE_LOG_LEVEL_INF=y

    I have added CONFIG_NRF53_SYNC_RTC=n  to application core as well. At list build is not complain.

    Regards,

    Eugene

  • Hi Eugene,

    I am sorry for the late reply. Did you resolve this? If not, can you elaborate on the issue (what you are seeing, what you are doing, and what you are expecting)?

    Einar

  • Hi Einar !

    In sample you need to change timeout for demo if  it expect to work out of box.

    And open question is remain how-to disable RTC sync in both core in correct ways

    and for what reason this sync is really need ?

    Regards,

    Eugene

  • Hi Eugene,

    I see. I have till not been able to track down what caused the issue with IPC performance in SDK 2.3.0, but I am looking into it and checking with the developers.

    Regarding RTC synchronization, the point of this feature is to have the same time reference on the net core and app core, for instance for logging (which has a dependency on it). This is based on the same clock, so there is just a need to communicate and use a offset. You can see the documentation for the Synchronized RTC sample for a bit more information on that. You will need to remove more functionality in order to disable it, setting CONFIG_LOG_MODE_MINIMAL=y.

Reply
  • Hi Eugene,

    I see. I have till not been able to track down what caused the issue with IPC performance in SDK 2.3.0, but I am looking into it and checking with the developers.

    Regarding RTC synchronization, the point of this feature is to have the same time reference on the net core and app core, for instance for logging (which has a dependency on it). This is based on the same clock, so there is just a need to communicate and use a offset. You can see the documentation for the Synchronized RTC sample for a bit more information on that. You will need to remove more functionality in order to disable it, setting CONFIG_LOG_MODE_MINIMAL=y.

Children
Related