You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
77 lines
2.1 KiB
77 lines
2.1 KiB
.. _networking_with_ieee802154_qemu: |
|
|
|
Networking with QEMU and IEEE 802.15.4 |
|
###################################### |
|
|
|
.. contents:: |
|
:local: |
|
:depth: 2 |
|
|
|
This page describes how to set up a virtual network between two QEMUs that |
|
are connected together via UART and are running IEEE 802.15.4 link layer |
|
between them. Note that this only works in Linux host. |
|
|
|
Basic Setup |
|
*********** |
|
|
|
For the steps below, you will need two terminal windows: |
|
|
|
* Terminal #1 is terminal window with ``echo-server`` Zephyr sample application. |
|
* Terminal #2 is terminal window with ``echo-client`` Zephyr sample application. |
|
|
|
If you want to capture the transferred network data, you must compile the |
|
``monitor_15_4`` program in the ``tools/net-tools`` directory. |
|
|
|
Open a terminal window and type: |
|
|
|
.. code-block:: console |
|
|
|
cd $ZEPHYR_BASE/../tools/net-tools |
|
make monitor_15_4 |
|
|
|
|
|
Step 1 - Compile and start echo-server |
|
====================================== |
|
|
|
In terminal #1, type: |
|
|
|
.. zephyr-app-commands:: |
|
:zephyr-app: samples/net/sockets/echo_server |
|
:host-os: unix |
|
:board: qemu_x86 |
|
:build-dir: server |
|
:gen-args: -DEXTRA_CONF_FILE=overlay-qemu_802154.conf |
|
:goals: server |
|
:compact: |
|
|
|
If you want to capture the network traffic between the two QEMUs, type: |
|
|
|
.. zephyr-app-commands:: |
|
:zephyr-app: samples/net/sockets/echo_server |
|
:host-os: unix |
|
:board: qemu_x86 |
|
:build-dir: server |
|
:gen-args: -G'Unix Makefiles' -DEXTRA_CONF_FILE=overlay-qemu_802154.conf -DPCAP=capture.pcap |
|
:goals: server |
|
:compact: |
|
|
|
Note that the ``make`` must be used for ``server`` target if packet capture |
|
option is set in command line. The ``build/server/capture.pcap`` file will contain the |
|
transferred data. |
|
|
|
Step 2 - Compile and start echo-client |
|
====================================== |
|
|
|
In terminal #2, type: |
|
|
|
.. zephyr-app-commands:: |
|
:zephyr-app: samples/net/sockets/echo_client |
|
:host-os: unix |
|
:board: qemu_x86 |
|
:build-dir: client |
|
:gen-args: -DEXTRA_CONF_FILE=overlay-qemu_802154.conf |
|
:goals: client |
|
:compact: |
|
|
|
You should see data passed between the two QEMUs. |
|
Exit QEMU by pressing :kbd:`CTRL+A` :kbd:`x`.
|
|
|