Appendix Software Configuration
=====================
The following sections will explain in detail how to configure the WebSQ software on the Beagle Bone.


Software Updates
-------------------------

Once the WebSQ software is running it can be reached through a browser. Updates can be performed through the web interface.
To do that, navigate to 'Config' and open the tab 'Update'. There, a zip file of the WebSQ software package can be uploaded and installed.

.. _network-setup:

Network Setup
-------------------------

Standard
^^^^^^^^^^^^^
The driver is set by standard to function as a DHCP-server to set up a local network. The driver can be reached under::

    192.168.1.1 or sq.local/

Configuration
^^^^^^^^^^^^^^^^^^^^^^^
The driver can be configured in three modes::
  * *DHCP-server*
  * *DHCP-client*
  * *Static IP address*

To choose and configure the corresponding mode go to the configuration menu and select the network tab.
Each setting change is confirmed by pressing the Apply button. For the changes to take effect the driver will restart after pressing the apply button.

DHCP-Server
"""""""""""""""""""""""""""""""""""

To setup the DHCP-server, an IP range for it's clients has to be selected.
Note that these range should comply with the drivers own IP address and should end with a higher number than the start number of the range.
For example if the drivers IP is::

    192.168.3.1

The DHCP-server range could be set for example to::

    From 192.168.3.20 to 192.168.3.40

The driver will now supply connecting computers with an IP-address ending between 20 and 40.
Please make sure that your computer is setup properly to function as a DHCP-client.
Also be mindful that a network can be disrupted when there are several DHCP-servers inside one network.

DHCP-Client
""""""""""""""""""""""""""""""""""
Switch the DHCP-Client button to on. With the DHCP-Client on the driver will get an ip address from the DHCP server on the network. 

Static IP-address
"""""""""""""""""""""""""""""""
Disable the DHCP-client and the DHCP-server and select your fixed IP address.

Lockout
""""""""""""""""""""""""""""""
If you can't access the driver anymore, press the reset button on
the backside for 5 seconds and the default settings will be loaded. The default ip address is 192.168.1.1

More information
^^^^^^^^^^^^^^^^^^^^^^^

For more information concerning networking, please visit the following address::

    http://tldp.org/LDP/nag/node3.html


Clean (or Fresh) Installation
------------------------------------------

For the initial installation it is the easiest to connect the mini-USB on the Beagle Bone with
a computer where the WebSQ software folder is available. This will emulate an ethernet connection and the Beagle Bone
is reachable at "192.168.7.2". On Unix machines you execute the following command in a terminal:

.. code-block:: bash

    scp -r websq_folder root@192.168.7.2:./

This will copy the folder to the board.
As a next step you have to login to the board and perform the installation. For this step internet access is needed that the installation routine can download all the necessary libraries. Connect an ethernet cable to the ethernet port of the board providing internet access.
Login to the Beagle Bone via the terminal:

.. code-block:: bash

    ssh root@192.168.7.2

Open the folder:

.. code-block:: bash

    cd websq_folder

And start the installation:

.. code-block:: bash

    sudo python setup.py install

This will install the software and it will be started automatically after a reboot:

.. code-block:: bash

    reboot

For debugging purposes the software can be started:

.. code-block:: bash

    systemctl start websq.service

stopped:

.. code-block:: bash

    systemctl stop websq.service

or its status acquired by:

.. code-block:: bash

    systemctl status websq.service
