BFC Setup Tool
The desktop commissioning application is the recommended entry point for the current release. It:
- Saves and selects SSH connections.
- Detects Debian-family systems and normalizes their CPU architecture.
- Uploads BFC Docker images without requiring a registry.
- Creates Gateway and Node-RED services.
- Uploads a complete script workspace and launches a Console container.
- Lists container state and provides start, stop, log, and delete actions.
BFC Console
The Console is the automation runtime. With no script argument it starts an interactive command environment. With a file argument it detects the mode by extension:
| Extension | Mode |
|---|---|
.lua |
Lua automation |
.json |
Phased command script |
.py |
Python script |
The Setup Tool's Upload script workflow is currently designed around Lua files inside _volumes.
BFC Gateway
The Gateway is an ASP.NET Core REST service backed by MariaDB. On startup it:
- Waits for the configured database.
- Applies database migrations.
- Creates the initial preview administrator when the user table is empty.
- Serves Swagger, a simple home page, and an active RFID tag view.
- Issues JWT access tokens and protects data endpoints by permission.
It stores RFID tag observations and typed Lua values (Integer, Float, or String) with validity, unit, timestamps, latest value, and history.
MariaDB and phpMyAdmin
MariaDB is the persistent store. phpMyAdmin is installed for inspection and administration. The Setup Tool publishes both ports on the controller; restrict their network exposure.
Node-RED integration
The node-red-bfc-gateway package adds:
- A reusable FOG API Server configuration with host, protocol, port, credentials, and TLS verification.
- A Get Lua Value action node that returns the latest Gateway value in
msg.payload. - Automatic login and token refresh.
The Setup Tool also installs @flowfuse/node-red-dashboard, but it does not create a dashboard or example flow automatically.
Device support
The runtime contains communication and application layers for use cases including:
- Balluff IO-Link masters over REST.
- Generated IO-Link device drivers from IODD files.
- Balluff SmartLight operations.
- UHF RFID operations.
- Gateway data exchange.
Actual capabilities depend on the plugins, generated drivers, and scripts shipped in the selected release.