{"route":"/skills/modbus/build-node-red","title":"Build Node-RED","tab":"skills/modbus/build-node-red.md","description":"Create a disabled Node-RED flow for one manual probe or a five-second read-only live view.","updatedAt":"2026-08-28","enabled":true,"url":"https://studioseventeen.io/skills/modbus/build-node-red","markdown":"# Build Node-RED\n\nREAD-ONLY\n\nCreate a disabled Node-RED flow for one manual probe or a five-second read-only live view.\n\n## What you get\n\nIt creates `node-red/flow.json` and a short `README.md`. Probe mode runs the approved plan once from one manual button. Final mode can run the same plan every five seconds after you review and enable the disabled flow. Both modes write `capture.json` and expose the latest values at `/modbus-dashboard`.\n\n## How it runs\n\n**Generates and checks the complete flow JSON.** The flow sends one request at a time and waits for a response or timeout before it continues. Probe mode is a manual one-time run. Final mode adds one five-second poll trigger, but the flow remains disabled until you enable it. The read-only dashboard uses Node-RED core HTTP nodes and cannot start a read, write, or scan.\n\n## Files this skill creates\n\n- **Import into Node-RED:** `node-red/flow.json` — The disabled, read-only flow. Probe mode has one manual trigger. Final mode has one five-second live-poll trigger.\n- **Read before use:** `node-red/README.md` — Connection settings, mode behavior, the capture path, and safe enable steps.\n- **Keep with the flow:** `node-red/manifest.json · node-red-result.json` — The map and read-plan hashes, generated status, and holds.\n- **Created after a run:** `capture.json` — The raw responses and exact point details used by Analyze Capture.\n- **Open in a browser:** `/modbus-dashboard` — A read-only HTML view of the latest capture rows and run state. It is an endpoint in flow.json, not a separate file.\n\n## Requirements\n\n- **Plugin files (included):** SKILL.md, the Python wrapper, and the generator source.\n- **Python 3.11+ (install separately):** Required to run the bundled generator. Plugin installation does not install Python.\n- **Node-RED (install separately):** Required to import and run flow.json.\n- **node-red-contrib-modbus (install separately):** Required by the generated Modbus nodes. The native test used Node-RED 5.0.4 and module 5.60.1.\n- **Dashboard nodes (included):** The browser view uses Node-RED core HTTP nodes. It does not require the optional Node-RED Dashboard package.\n\n## Example request\n\n```text\n$build-node-red\n\nBuild a final Node-RED flow from `reviewed-map.json` and `read-plan.json`. Keep it disabled by default, poll the approved plan every five seconds after explicit operator activation, save `capture.json`, and include the read-only `/modbus-dashboard` view.\n```\n\n## Safety\n\nNo writes. No broadcasts. No discovery scans. No polls without a defined limit. Unknown values stay blank and remain visible for review.\n\n## Source\n\n- [Canonical SKILL.md](https://github.com/studioxvii/modbus-skills/blob/v0.2.2/plugins/modbus-skills/skills/build-node-red/SKILL.md)\n- [Modbus Skills 0.2.2 release](https://github.com/studioxvii/modbus-skills/releases/tag/v0.2.2)\n- [All Modbus Skills](/skills/modbus.md)\n"}