Google은 흑인 공동체를 위한 인종적 평등을 추구하기 위해 노력하고 있습니다. 자세히 알아보기

OpenThread 경계 라우터 빌드 및 구성

이 가이드는 OTBR(OpenThread Border Router)의 기본 빌드 및 구성을 다룹니다. 이 절차를 완료하면 RCP 설계에서 전체 스레드 장치(FTD)로 작동하는 OTBR을 갖게 됩니다.

플랫폼 구성

지원되는 하드웨어 플랫폼 구성:

RCP 빌드 및 플래시

OTBR은 RCP 설계에서 실행됩니다. 선별 지원 OpenThread 플랫폼 RCP로 사용하고 해당 플랫폼에 대한 건물 및 깜박이는 지침을 준수합니다.

OpenThread 구축에 대한 개요를 참조 건물 가이드 .

GNU Autotools가 지원 플랫폼 구축에 대한 구체적인 지시 사항은 각 예제의에서 찾을 수 있습니다 플랫폼 폴더 .

경계 라우터 설정

OTBR은 스피넬을 통해 RCP와 통신합니다. 온 구성된 하드웨어 플랫폼 :

  1. 복제하려면 OTBR 저장소 :
    git clone https://github.com/openthread/ot-br-posix
  2. 종속성을 설치합니다
    cd ot-br-posix
    ./script/bootstrap
  3. OTBR을 컴파일하고 설치합니다. 설정 스크립트는 기본적으로 경계 라우팅을 활성화합니다. 경계 라우팅을 활성화하려면 플랫폼의 이더넷 또는 Wi-Fi 인터페이스를 지정하십시오.

    이더넷

    INFRA_IF_NAME=eth0 ./script/setup

    와이파이

    INFRA_IF_NAME=wlan0 ./script/setup
  4. 첨부 번쩍 RCP 장치를 USB를 통해 국경 라우터 플랫폼.
  5. 에서 RCP 장치의 직렬 포트를 구성 otbr-agent :
    1. RCP 체크함으로써 장치에 대한 직렬 포트 이름을 확인 /dev :
      ls /dev/tty*
    2. 추가] 이것 /etc/default/otbr-agent . 예를 들어,의 직렬 포트 이름 ttyUSB0 :
      OTBR_AGENT_OPTS="-I wpan0 spinel+hdlc+uart:///dev/ttyUSB0"
  6. 경계 라우터의 전원을 껐다 켭니다. BeagleBone 블랙 플랫폼을 사용하는 경우, 기억 부팅 버튼을 누른 상태에서 그렇게하는 동안.
  7. OTBR 서비스는 부팅 시 시작되어야 합니다.

서비스 확인

필요한 모든 서비스가 활성화되어 있는지 확인합니다.

sudo systemctl status

는 IF setup 스크립트가 성공적으로 다음 서비스는 출력에 나타납니다 :

  • avahi-daemon.service
  • otbr-agent.service
  • otbr-web.service

예를 들어:

● raspberrypi
    State: running
     Jobs: 0 queued
   Failed: 0 units
    Since: Thu 1970-01-01 00:00:01 UTC; 47 years 7 months ago
   CGroup: /
           ├─user.slice
           │ └─user-1000.slice
           │   ├─user@1000.service
           │   │ └─init.scope
           │   │   ├─576 /lib/systemd/systemd --user
           │   │   └─580 (sd-pam)
           │   └─session-c1.scope
           │     ├─480 /bin/login --
           │     └─585 -bash
           ├─init.scope
           │ └─1 /sbin/init
           └─system.slice
             ├─systemd-timesyncd.service
             │ └─334 /lib/systemd/systemd-timesyncd
             ├─dbus.service
             │ └─339 /usr/bin/dbus-daemon --system --address=systemd: --nofork --nopidfile --systemd-activation
             ├─hciuart.service
             │ └─442 /usr/bin/hciattach /dev/serial1 bcm43xx 921600 noflow -
             ├─ssh.service
             │ └─621 /usr/sbin/sshd -D
             ├─avahi-daemon.service
             │ ├─341 avahi-daemon: running [raspberrypi.local]
             │ └─361 avahi-daemon: chroot helper
             ├─otbr-web.service
             │ └─472 /usr/sbin/otbr-web
             ├─triggerhappy.service
             │ └─354 /usr/sbin/thd --triggers /etc/triggerhappy/triggers.d/ --socket /run/thd.socket --user nobody --deviceglob /dev/input/event*
             ├─systemd-logind.service
             │ └─353 /lib/systemd/systemd-logind
             ├─otbr-agent.service
             │ └─501 /usr/sbin/otbr-agent -I wpan0
             ├─cron.service
             │ └─350 /usr/sbin/cron -f
             ├─systemd-udevd.service
             │ └─154 /lib/systemd/systemd-udevd
             ├─rsyslog.service
             │ └─345 /usr/sbin/rsyslogd -n
             ├─bluetooth.service
             │ └─445 /usr/lib/bluetooth/bluetoothd
             ├─systemd-journald.service
             │ └─136 /lib/systemd/systemd-journald
             └─dhcpcd.service
               ├─409 wpa_supplicant -B -c/etc/wpa_supplicant/wpa_supplicant.conf -iwlan0
               └─466 /sbin/dhcpcd -q -w

이러한 서비스가 실행되고 있지만 RPI가 성능이 저하 된 상태에있는 경우, 다른 서비스를 시작하지 못했습니다. 다음을 확인하십시오.

sudo systemctl --failed

RCP 확인

RCP가 올바른 상태인지 확인합니다.

sudo ot-ctl state

ot-ctl OTBR 제공하는 명령 줄 유틸리티입니다. (기본값은 스레드 PAN 인터페이스와 통신하는 데 사용되는 wpan0 ) 것을 otbr-agent RCP 디자인에 바인딩됩니다.

RCP가 성공적으로 실행되고 노드가 스레드 네트워크의 구성원이 아닌 경우 출력은 아래와 유사해야 합니다.

disabled

출력 인 경우 OpenThread daemon is not running 다음으로, 문제 해결을 :

  1. 경계 라우터의 전원이 충분한지 확인합니다(적절한 외부 AC 어댑터 사용).
  2. 보더 라우터 플랫폼에서 RCP 보드를 분리했다가 다시 연결하십시오.
  3. RCP 직렬 장치가 있는지 확인하십시오. 예를 들어, 상기 장치에 연결해야하는 경우 /dev/ttyUSB0 :
    ls /dev/ttyUSB*
    /dev/ttyUSB0
  4. 와 RCP 다시 sudo ot-ctl reset .

로 다시 RCP 상태를 확인 sudo ot-ctl state .