README.rst
1.. zephyr:code-sample:: wpan-serial
2 :name: 802.15.4 "serial-radio"
3 :relevant-api: ieee802154 uart_interface
4
5 Implement a slip-radio device for Contiki-based border routers.
6
7Overview
8********
9
10The wpan_serial sample shows how to use hardware with 802.15.4 radio and USB
11controller as a "serial-radio" device for Contiki-based border routers.
12
13Requirements
14************
15
16The sample assumes that 802.15.4 radio and USB controller are supported on
17a board. You can pick, for example, a transceiver such as a CC2520 or RF2xx
18using overlays, or by using an SoC with a built-in radio, such as a kw41z,
19nrf5, or samr21.
20
21Building and Running
22********************
23
24#. Before building and running this sample, be sure your Linux system's
25 ModemManager is disabled, otherwise, it can interfere with serial
26 port communication:
27
28 .. code-block:: console
29
30 $ sudo systemctl disable ModemManager.service
31
32#. Build the sample Zephyr application to a board with a 802.15.4 radio
33 and USB controller. There are configuration files for various setups
34 in the ``samples/net/wpan_serial`` directory:
35
36 - :file:`prj.conf`
37 This is the standard default config. This can be used by itself for
38 hardware which has native 802.15.4 support.
39
40 To build the wpan_serial sample:
41
42 .. zephyr-app-commands::
43 :zephyr-app: samples/net/wpan_serial
44 :board: <board name>
45 :conf: "prj.conf [overlay-<RADIO>.conf]"
46 :goals: build
47 :compact:
48
49 Here's how to build and flash the sample for the Atmel SAM R21
50 Xplained Pro Development Kit.
51
52 .. zephyr-app-commands::
53 :zephyr-app: samples/net/wpan_serial
54 :board: samr21_xpro
55 :goals: build flash
56 :compact:
57
58#. Connect board to Linux PC, /dev/ttyACM[number] should appear.
59#. Run Contiki-based native border router (6lbr, native-router, etc)
60 Example for Contiki:
61
62 .. code-block:: console
63
64 $ cd examples/ipv6/native-border-router
65 $ make
66 $ sudo ./border-router.native -v5 -s ttyACM0 fd01::1/64
67
68Now you have a Contiki native board router. You can access its web-based
69interface with your browser using the server address printed in the
70border-router output.
71
72.. code-block:: console
73
74 ...
75 Server IPv6 addresses:
76 0x62c5c0: =>fd01::212:4b00:531f:113a
77 ...
78
79Use your browser to access ``http://[fd01::212:4b00:531f:113a]/`` and you'll
80see available neighbors and routes.
81