Cargill Oil - Sidney¶
Configuration Disclaimer: The configuration values shown here are based on repository reference files. Production configurations may differ. Always verify against the actual
appsettings.jsonon the production machine.
Quick Reference¶
| Field | Value |
|---|---|
| Site | Cargill Oil -- Sidney, OH |
| Validation Mode | CargillRfid |
| Version | v1.9 |
| Config File | appsettings-cargill-sidney.json |
| Controller | Arduino Portenta H7 (TCP) |
| Status | Active |
Hardware Inventory¶
| Device | Type | Connection | Address |
|---|---|---|---|
| Camera | Cognex DataMan | TCP | 10.9.3.207:23 |
| RFID Reader | Zebra FX9600 | TCP | 10.9.3.206:5084 |
| Controller | Arduino Portenta H7 | TCP | 10.9.3.205:502 |
| Data Source | Matthews TCP | TCP listener | Port 60251 |
| App Listener | Camera Push | TCP | 10.9.3.11:3000 |
Arduino Pin Map¶
| Pin | Function |
|---|---|
| 0 | DeviceTrigger (photo-eye input) |
| 0 | Stack Light Red (output) |
| 1 | Stack Light Green |
| 2 | Horn (StackLightAlarm) |
| 3 | Stack Light Yellow |
| 4 | RejectSignal |
| 5 | MachineStop |
| 6 | SystemReady |
RFID Reader Configuration¶
| Setting | Value |
|---|---|
| Model | FX9600 |
| Antenna Count | 1 |
| Power Level | 21.0 dBm |
| Tag Expiration | 17 seconds |
Export Configuration¶
| Export | Enabled | Endpoint |
|---|---|---|
| AIS | Yes | http://10.4.212.84:8085/bartenderapi/v1/createresource |
| Mojix | No (Phase 2) | -- |
| MWE | No (Phase 2) | -- |
Note: Sidney currently uses AIS export only. Mojix and MWE will be enabled in Phase 2 once firewall access is resolved.
Normal Operating State¶
When everything is working correctly at Sidney:
- Screen: GateKeeper application shows "CargillRfid" validation mode. Camera, RFID, and Arduino all show connected in the status bar.
- Stack lights: CargillRfid profile -- lights are OFF when idle, Green ON during active validation.
- Data flow: Matthews sends production data to port 60251. Cases pass RFID antenna first, then camera scans barcode.
- Exports: Pass results are exported to AIS at the configured endpoint.
Validation Flow¶
- Matthews system sends production data (GTIN, expiration offset) to port 60251.
- Application switches to CargillRfid mode and starts validation.
- Case passes through the RFID antenna. Tag is read and cached (17-second expiration).
- Case reaches the Cognex DataMan camera, which pushes barcode data to the application at 10.9.3.11:3000.
- Application validates GTIN, lot, expiration (1-day tolerance), and RFID tag match.
- PASS: Green inverse flash, result exported to AIS. FAIL: Red flash + horn (50ms), reject signal fires.
Common Issues¶
RFID Tags Not Being Read¶
What you see: Every validation fails with "No matching RFID data."
What to check: - Can you ping the RFID reader at 10.9.3.206? - Check the Diagnostics panel for RFID reader status. - This was a known bug in cargilloil-v1.0 (RFID polling wasn't started for CargillRfid mode). It was fixed in v1.1. - If running an older version, verify you have cargilloil-v1.1 or later.
Camera Not Sending Data¶
What you see: RFID reads are fine but no barcode data arrives.
What to check: - Camera is in Push mode and should send data to 10.9.3.11:3000. - Check that the camera's TCP client output is configured to push to the correct IP and port. - Check the Windows firewall on the GateKeeper machine for an inbound rule allowing TCP port 3000.
AIS Export Failing¶
What you see: Validations pass but data isn't reaching the AIS endpoint.
What to check:
- Check network connectivity to http://10.4.212.84:8085.
- Look in the application logs for AIS-related HTTP errors.
- Check the AIS export queue folder: C:\gatekeeper\conveyor\data\ for pending/failed exports.
Only First Case Validates, Then Nothing¶
What you see: The first case after starting validation passes or fails correctly, but all subsequent cases show no camera data arriving.
What to check: - This was a v1.8 bug caused by JSON noise from the comm script v1.2 polluting the camera data stream. Fixed in v1.9. - Verify the site is running v1.9 or later. - If still on v1.8, upgrade to v1.9.
Camera Generating Excessive Log Noise¶
What you see: Log files are very large, full of barcode parse warnings when validation is OFF.
What to check:
- This was fixed in cargilloil-v1.1 with the IsProcessingEnabled flag. When validation is OFF, camera data is consumed but not parsed or logged.
- If you see this issue, verify the version is cargilloil-v1.1 or later.
Version History at This Site¶
| Version | Date | Notes |
|---|---|---|
| v1.9 | 2026-02-12 | JSON noise filtering fix. Resolved v1.8 bug where only first case validated. |
| v1.8 | 2026-02-11 | Pilot deployment. Included trigger gating + stale buffer drain. Bug discovered: only first case validated, then nothing. Replaced by v1.9. |
| cargilloil-v1.1 | 2026-02-06 | Initial CargillRfid deployment. Fixed RFID polling not starting. |
| cargilloil-v1.0 | 2026-02-05 | First deployment (migrated from Chipotle mode). |
Known Quirks¶
- Comm script v1.2 deployed: Sidney's Cognex camera has the v1.2 comm script which supports trigger gating (camera only flashes when validation is active). This comm script sends JSON responses through port 3000 — the v1.9 software filters these out automatically.
- First deployment site for new versions: Sidney is the validation site for the Cargill Oil rollout. Gainesville and Fullerton deploy after Sidney is confirmed stable.
- AIS-only export for now: Mojix and MWE are disabled pending firewall configuration. When ready, they can be enabled by changing
EnableMojixExportorEnableMweExporttotruein appsettings (config-only change, restart required). - Lower RFID power: Power level is 21.0 dBm (vs 27.0 at St. Clair). This is site-specific tuning.
- FailuresBeforeStop is 1: A single failure stops the line. This is stricter than some other sites.