openthread / ot-reference-release

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

radvd service cannot be started by default in otbr

siddhesh-grl opened this issue · comments

I am running the otbr image on a rasberry pi 3 board alongwith an rcp nrf-52840 dongle.
While setting up the border router, I was trying to run the radvd service.

However, the service does not start when I run the following command :
sudo service radvd restart

On checking the status (sudo service radvd status), I can see the radvd.conf file is not created by default.

Attaching status command screenshot below :

Screenshot 2021-11-12 143551

The service starts working, only after I manually create the file using
sudo touch /etc/radvd.conf

Shouldn't the file be created by default during the otbr build process?

Note :
Commit used for otbr image build : 3daef11
Command used for building the otbr image : REFERENCE_PLATFORM=nrf52840 REFERENCE_RELEASE_TYPE=1.3 IN_CHINA=0 ./script/make-reference-release.bash

  1. OTBR doesn't use radvd at all, it transmits RA messages on its own.
  2. It's radvd's default behavior that the configuration file is not created.

@wgtdkp I have a noob question, We were trying to use default THCI file Openthread_BR.py, it invokes radvd service in __setupServices method. Do you mean it is not required anymore and we can remove it from THCI?

@karthick-grl
ah, sorry, I didn't notice that it's a reference release issue :(

I think we are creating the radvd.conf when the __startRadvdService is called
https://github.com/openthread/openthread/blob/9dedd186961b90e623a58f2b230d59b389840fd5/tools/harness-thci/OpenThread_BR.py#L528-L558

Side note @siddhesh-grl, as for Thread 1.2/1.3 I think it is preferred to build ncs rather than nrf52840. This version will be used at the end in both Test Beds and it is more advanced as well. @MarekPorwisz can you confirm it?

@wgtdkp, Thanks for pointing it out. Confirming the file is created in __startRadvdService method.

In Earlier screenshot posted by @siddhesh-grl, we were running the sudo service radvd restart command in Pi where we did not run harness. and lost track on looking into the code https://github.com/openthread/ot-br-posix/blob/617932e28ce793d2130c4a2066a30fd106bfeef3/script/standalone_ipv6#L149 and this particular script is not invoked anywhere. perhaps it is not needed anymore

But still, it looks like there is a python error after creating the file and also a unicode exception while checking the status of radvd service. We are already investigating it and will keep you posted if any THCI update has to be done.
image

@LuDuda Sure, we will do that.

Ticket can be closed, if there is no any further comments.

Side note @siddhesh-grl, as for Thread 1.2/1.3 I think it is preferred to build ncs rather than nrf52840. This version will be used at the end in both Test Beds and it is more advanced as well. @MarekPorwisz can you confirm it?

Yes, currently we focus on NCS implementation and our reference device implementation(in development) also uses NCS for both end device and RCP for border router.