Skip to content
Go to file

Latest commit


Git stats


Failed to load latest commit information.
Latest commit message
Commit time

Instrument Server/Client

The main purpose of this project is to have a server running in a remote machine, accessible via the network, that can trigger actions on devices.

The server is built around Flask with threading for the actions on devices, allowing to concurrently trigger long measurements or processes.

More documentation is available at

How to use it

You need to import the instserver package into your own project and load the devices you want to have available.

Server side

In the server side you run just the server and the classes that correspond to the devices. If you need more personalization, you can always check the documentation at Flask, specially regardin the listening IP and port.

from instserver.server import InstServer
from instserver.dummyDevice import dummyDevice
# First instantiate the device
dev = dummyDevice()

# Now is time for the server:
server = InstServer(__name__)

Client side

from instserver.client import InstClient
# First instantiate the client with the IP address and port of the server
c = InstClient('')
# Let's print a list of the available devices and methods on the server

Building the documentation

The documentation of the program can be build locally and is available at

To build the documentation locally, you need to have sphinx installed. Go to the folder docs and run the following command:

    sphinx-build -b html source/ build/

This will build all the documentation from the source folder into the build folder. Remember that for it to work, the program needs to import every module, therefore you can't build the documentation if you don't have the dependencies in order.

You can’t perform that action at this time.