# ModbusPal simulator profiles Drop device-specific `.xmpp` profiles here. The integration tests connect to the endpoint in `MODBUS_SIM_ENDPOINT` (default `localhost:502`) and expect the simulator to already be running — tests do not launch ModbusPal themselves, because its Java GUI + JRE requirement is heavier than the harness is worth. ## Getting started 1. Download ModbusPal from SourceForge (`modbuspal.jar`). 2. `java -jar modbuspal.jar` to launch the GUI. 3. Load a profile from this directory (or configure one manually) and start the simulator on TCP port 502. 4. `dotnet test tests/ZB.MOM.WW.OtOpcUa.Driver.Modbus.IntegrationTests` — tests auto-skip with a clear `SkipReason` if the TCP probe at the configured endpoint fails within 2 seconds. ## Profile files - `DL205.xmpp` — _to be added_ — register map reflecting the AutomationDirect DL205 quirks tracked in `docs/v2/modbus-test-plan.md`. The scaffolded smoke test in `DL205/DL205SmokeTests.cs` needs holding register 100 writable and present; a minimal ModbusPal profile with a single holding-register bank at address 100 is sufficient. ## Environment variables - `MODBUS_SIM_ENDPOINT` — override the simulator endpoint. Accepts `host:port`; defaults to `localhost:502`. Useful when pointing the suite at a real PLC on the bench.