[^minicom]:In Debian-like distribution you can install minicom by executing
`sudo apt-get install minicom`.
> ***Note***: ttyUSB0 and ttyUSB1 usally correspond respectively to FGPA and ARM UART.
> ***Note***: ttyUSB0 and ttyUSB1 usually correspond respectively to FGPA and ARM UART.
However this order can change dependably on how you plug the cable.
Login via USB
...
...
@@ -347,28 +408,9 @@ instead of the ARM UART.
minicom -D /dev/ttyACM0 -b 115200
~~~~~~~~~~
The ARM UART is usually employed during development and monitoring because
the kernel and daemons messages are sent to this console.
Login via SSH
--------------
The Ethernet management port automatically obtains its IP using the DHCP
protocol. If you don't have any DHCP router/server in your network please
refer to the [non-DHCP](#non-dhcp-user) section.
To obtain the IP of the [WRS] you can connect to your DHCP server interface
and retrieve the IP, or [connect to ttyACM0](#login-via-usb) to retrieve the
IP (`ipconfig eth0`).
If the [WRS] IP is for example `192.168.1.50` you might connect using:
ssh root@192.168.1.50
The ARM UART is usually employed for development or monitoring because
the log messages are usually printed to this console.
And press enter when requesting the password.
Login using Windows
...
...
@@ -398,130 +440,137 @@ by the one in your subnetwork.
![Putty - SSH connection](putty-SSH.png)
Login using the Web Management Interface (WMI)
-----------------------
If you want to access and manage the [WRS] using the web interface, it is necessary to connect the [WRS] manager ethernet port to
your local network and obtain the IP as explained in [login via SSH](#login-via-ssh).
The access should be carried out by a network browser (Mozilla Firefox and Google Chrome supported) as it follows:
1. Open your browser and type the IP address (i.e. 192.168.1.50) of the [WRS]. By default, the network IP configuration
is provided by the DHCP server in the same network and can be retrieved from it.
![Web Management Interface - Login](wwwlogin.png)
2. After accessing the **WMI**, you should enter the web interface user and password, which is not
same for the SSH connection, otherwise you will be only able to see the Dashboard info.
By default the user is **admin** with no password. For this reason it is strongly recommended to change the password.
In order to change the **WMI** password you just need to click on "**User: admin**" on the left side of the webpage.
You have to enter your username (**admin**), old password, new password and repeat the new password.
Once you submit the new password you will be redirected to the main screen and logged out.
Configurations
==================
We strongly suggest you to configure the switch using the Web Management Interface.
Web Management Interface Features:
-------------------
**WMI** is a web interface that allows the [WRS] management from a web browser. It displays the main configuration and status of the main services and programms that are available for the switch, such as endpoints' mode and calibration status, SFP calibration, PTP, SNMP, VLANs, etc. It acts as an abstraction layer between the back-end scritps and programs in */wr/bin/* folder, making the WR switch management easier for the user.
**WMI** is a web interface that allows the [WRS] management from a web browser.
It displays the configuration and status of the main services and programs
List of all the actions that can be performed by using the **WMI**:
- Display info: HW information, services status and main configuration.
- Stop/run services: PPSi, WRSW_HAL, NTP.
- NTP server setup.
- Modify endpoint wr_master/wr_slave mode.
- VLAN setup.
- White-Rabbit timing.
- Modify maximum filesize of uploaded files to the switch.
- PPSi daemon configuration: clock class, clock accuracy, etc.
- Terminal simulation avoiding SSH connections.
- Login system.
- Modify login password.
- Load lm32 and FPGA binaries into the switch.
- Switch reboot.
- Backup and restore configuration files for services (PPSi, HAL, SNMP, etc).
- Restore configuration files from tarball.
- Flash firmware.
- Backup firmware.
If you want to know more about each section you can click the help icon
-**Dashboard** : Display info about the WRS such as HW information, services status and main configuration.
-**Network Setup**: Configuration of the ethernet management port (DHCP, Static, etc.)
-**WR-PPSi Setup**: Configuration about the timing network: WR mode, NTP server, PPSi clock class, etc.
-**Endpoint Mode**: Modify the mode for each port (wr_master/wr_slave/auto/none).
-**VLAN setup** : Let the user configure specific VLANs for different ports.
-**Switch Managment**: Let the user load/backup a specific configuration, reboot switch, disable system monitor.
-**Advanced Tab** :
- Calibrate the SFP
- Configure the endpoint
- Calibrate the endpoint
- Load lm32 and FPGA binaries into the switch.
- Configure the files for the login system.
- Open a virtual console that emulate a terminal connection.
-**Flash a new firmware**
> **Notes**: If you want to know more about each section you can click the help icon
that you will find on the top-right corner of each page.
Console tools:
-------------------
GrandMaster mode
-----------------
Once you are logged via a terminal you can use various tools to monitor the [WRS].
All these tools are found in `/wr/bin/` which is included in the `$PATH`.
![White Rabbit Network](wr_network2.jpg)
The following list resumes the most interesting commands:
In a White Rabbit network, almost all the switches are configured as boundary clock (a.k.a Simple Master)
which is the default configuration. They receive a clock from an upper layer, and transmit it to other switches or nodes (lower layer).
However the "top" switch connected to the GPS signal is called the **GrandMaster**
and is configured in a specific way.
*`wrs_version`: Print information about the SW & HW version of the [WRS].
*`rtu_stat`: Routing Table Unit Statistic, returns the routing table information where we can find which MAC needs to be forwarded to which port. It also allows to add and delete entries.
*`wr_mon`: WR Switch Sync Monitor, outputs information about the state of WR syncrhonisation such as Phase Tracking, Master-Slave delay, link asymmetry, etc...
*`wrs_vlans`: Creation and configuration of VLANs.
First you need to connect the 10MHz and PPS from a clock source to the switch SMC inputs.
Please consult the [wr_external_reference.pdf] document to understand what kind and shape
of signals is needed as input for grand master mode.
> ***Note:*** More information about the tools are explained in the [wrs-user-manual.pdf] or can be obtain using the embedded help argument: `--help`, `-h` or `help`.
Then to configure a [WRS] as GrandMaster you must:
#### Warning:
The SFP ports are labeled from 1 to 18 on the front panel but their corresponding
network interface are named from `wr0` to `wr17`.
### Using the web-interface
You can find the option to select the switch in grandmaster mode in the configuration panel under the **WR-PPSi** tab.
Once you have change the option, you should click on *Save new configuration*, and
We strongly suggest you to configure the switch using the Web Management Interface.
However if you prefer to configure it using a terminal just follow some examples below.
> **Notes**: A NTP server should be provided for the grandmaster switch
so that we can distribute the current TAI seconds to the whole WR network
### By editing the dot-config file in a terminal
Booting
------------
If you prefer to configure the [WRS] using a terminal you should open the `dot-config` file
After 10 seconds, the bootloader automatically loads the [WRS] firmware
from the Flash NAND memory of the switch. If you connect to the ARM debug
port you might see the following message:
~~~~{.C}
nano /wr/etc/dot-config
~~~~~~~~
And replace the following lines:
~~~~~{.bash}
Welcome on WRSv3 Boot Sequence
1: boot from nand (default)
2: boot from TFTP script
3: edit config
4: exit to shell
5: reboot
~~~~~~~~~~~~~~~~~~~
~~~~{.Haskell}
# CONFIG_TIME_GM is not set
# CONFIG_TIME_FM is not set
CONFIG_TIME_BC=y
~~~~~~
by
~~~~~~{.config}
CONFIG_TIME_GM=y
# CONFIG_TIME_FM is not set
# CONFIG_TIME_BC is not set
~~~~~~~
and finally you need to `reboot` the switch.
> ***Note:*** If you want to change how
the [WRS] is booted you can place a `wrboot` script in your TFTP root
folder and select the second option or you can edit the configuration
(third option). Please find more explanations in the
[wrs-user-manual.pdf]
Non-DHCP user
---------------
If you have no DHCP server in your network you must connect to the [WRS]
using the [login via USB method](#login-via-usb) and then edit the
`interfaces` file:
using the [login via USB method](#login-via-usb) and edit the `dot-config` file:
~~~~{.bash}
vi /etc/network/interfaces
nano /wr/etc/dot-config
~~~~~~~~~~~
for example, in a `192.168.1.x` subnetwork you might replace the
`iface eth0 inet dhcp` by
`CONFIG_ETH0_DHCP=y` by
~~~~~{.bash}
iface eth0 inet static
address 192.168.1.10
netmask 255.255.255.0
network 192.168.1.0
broadcast 192.168.1.255
gateway 192.168.1.1
#
# Local Network Configuration
#
# CONFIG_ETH0_DHCP is not set
# CONFIG_ETH0_DHCP_ONCE is not set
CONFIG_ETH0_STATIC=y
#
# Management port (eth0) Address
#
CONFIG_ETH0_IP="192.168.1.254"
CONFIG_ETH0_MASK="255.255.255.0"
CONFIG_ETH0_NETWORK="192.168.1.0"
CONFIG_ETH0_BROADCAST="192.168.1.255"
CONFIG_ETH0_GATEWAY="192.168.1.1"
~~~~~~~~~~~~~~
...
...
@@ -529,38 +578,25 @@ iface eth0 inet static
must also statically set the IP in the bootloader configuration.
GrandMaster mode
-----------------
![White Rabbit Network](wr_network2.jpg)
In a White Rabbit network, almost all the switches are configured as master (a.k.a SimpleMaster)
(default configuration). They transmit the clock signal that cames from other switches.
However the "top" switch connected to the GPS signal is called the **GrandMaster**
and is configured in a specific way.
To configure a switch as GrandMaster you must edit[^viedit] the `wrsw_hal.conf` file
~~~~{.C}
vi /wr/etc/wrsw_hal.conf
~~~~~~~~
And uncommenting the timing.mode value the line below:
Console tools:
-------------------
~~~~{.Haskell}
timing = {
-- other values
mode = "GrandMaster"; -- grand-master with external reference
};
~~~~~~
If you are logged via a terminal you can use various tools to monitor/configure the [WRS].
All these tools are found in `/wr/bin/` which is included in the `$PATH`.
Finally you need to connect the 10MHz and PPS from a clock source to the switch SMC inputs, and reboot the switch.
The following list resumes the most interesting commands:
For a more detailed explanation on how to configure and connect the switch as GrandMaster, please consult the
[wr_external_reference.pdf] document.
*`wrs_version -t`: Print information about the SW & HW version of the [WRS].
*`rtu_stat`: Routing Table Unit Statistic, returns the routing table information where we can find which MAC needs to be forwarded to which port. It also allows to add and delete entries.
*`wr_mon`: WR Switch Sync Monitor, outputs information about the state of WR syncrhonisation such as Phase Tracking, Master-Slave delay, link asymmetry, etc...
*`wrs_vlans`: Creation and configuration of VLANs.
> ***Note:*** More information about the tools are explained in the [wrs-user-manual.pdf] or can be obtain using the embedded help argument: `--help`, `-h` or `help`.
[^viedit]: To edit in `vi`: `Ins` Insert text; `Esc` back to normal mode; `:wq` Save and Exit
#### Warning:
The SFP ports are labeled from 1 to 18 on the front panel but their corresponding
network interface are named from `wr0` to `wr17`.
Firmware updates
...
...
@@ -569,7 +605,7 @@ Firmware updates
Since the firmware v4.1 we have improved the update procedure and the
switch is able to upgrade by itself.
Just copy the firmware you have donwload to the `/update` folder of the switch.
Just copy the firmware you have downloaded to the `/update/wrs-firmware.tar` in the [WRS] switch.