Implementation of a MADSci Node Module for integrating a Brooks Automation PreciseFlex 400 (PF400).
This project uses PDM for dependency management.
# Install dependencies
pdm install
# Create a settings file (see Configuration below), then start the node
pdm run python -m pf400_rest_nodeSettings are loaded automatically via MADSci's walk-up file discovery. Create a node.settings.yaml in your working directory (or any parent up to the .madsci/ sentinel):
node_name: pf400
node_url: http://0.0.0.0:2000
pf400_ip: 192.168.1.100
pf400_port: 10100
pf400_status_port: 10000All settings can also be provided as environment variables — see .env.example for the full list. For detailed descriptions of every option, see docs/Configuration.md. The node's stable ID is stored in .madsci/registry.json and reused across restarts.
- We provide a
Dockerfileand example docker compose file (compose.yaml) to run this node dockerized. - There is also a pre-built image available as
ghcr.io/ad-sdl/pf400_module. - You can control the container user's id and group id by setting the
USER_IDandGROUP_ID