Skip to content

Latest commit

 

History

History
50 lines (40 loc) · 1.45 KB

README.md

File metadata and controls

50 lines (40 loc) · 1.45 KB

ftframework

ftframework is desiged for controlling big fischertechnik models with multiple computers (fischertechnik TXT controllers, Raspberry Pis, normal desktop computers, ...). All computers (server and all clients) are using the same codebase, configuration file and extensions.

To start a new project just create an empty folder and place the configuration file config.json:

{
  "clients": {
    "testclient": {
      "peripherals": {
        "complex": {
          "printer0": {}
        }
      }
    }
  },
  "peripherals": {
    "complex": {
      "printer0": {
        "builtin": true,
        "path": "Print",
        "name": "Print"
      }
    }
  }
}

This configuration defines one client called testclient and a complex peripheral printer0. printer0 is added to testclient. In this simple configuration the server part is missing, so the server is running on localhost port 4711.

Now we need a server script server.py:

import time

from ftframework.Server import Server

server = Server("config.json")

while True:
    server.printer0.show("Hello World!")
    time.sleep(1)

All peripherals are attributes of the server object and all their calls are directly available.

Now you can start the server by running python3 server.py and in another shell run the client by python3 ftFrameworkClient.py --name testclient config.json.

For more complex configuration check the source code or wait for more documentation.