Skip to content

Hormel Austin

Configuration Disclaimer: The configuration values shown here are based on repository reference files. Production configurations may differ. Always verify against the actual appsettings.json on the production machine.

Quick Reference

Field Value
Site Hormel -- Austin, MN
Validation Mode AV50
Version hormel-v1.0
Config File appsettings-hormel-austin.json
Controller Arduino Portenta H7 (TCP)

Hardware Inventory

Device Type Connection Address
Front Camera Cognex DataMan TCP 192.168.100.201:23
Side Camera Cognex DataMan TCP 192.168.100.200:23
Controller Arduino Portenta H7 TCP 192.168.100.100:502
Camera Listener Push mode TCP 0.0.0.0:3000

Camera Configuration

Camera Role Min. Barcodes Trigger Mode
Austin-Front-Camera Front 1 Hardware (photo-eye)
Austin-Side-Camera Side 1 Hardware (photo-eye)

Arduino Pin Map

Pin Function
0 Stack Light Green
1 Stack Light Yellow
2 Stack Light Red
3 RejectSignal

Key Settings

Setting Value
Auto-start validation Yes
Camera mode Both (Front + Side)
Stack Light Profile AV50
Failures before stop 3
Multi-cam aggregation timeout 500ms
Multi-cam post-validation lockout 1000ms
Horn on fail No

Normal Operating State

When everything is working correctly at Austin:

  • Screen: GateKeeper application shows "AV50" validation mode. Both cameras and the Arduino show connected. A camera mode dropdown shows "Both Cameras."
  • Stack lights: AV50 profile -- Green ON during active validation. No horn on pass or fail.
  • Auto-start: Validation starts automatically when the application launches.
  • Data flow: Cases pass the photo-eye, which triggers both cameras simultaneously. Each camera reads at least one barcode. Barcodes are aggregated with a 500ms timeout.

Validation Flow

  1. Application launches and auto-starts validation in AV50 mode.
  2. A case passes through the photo-eye, which is hardwired to both cameras.
  3. Both cameras trigger and read barcodes. Data is pushed to the application on port 3000.
  4. The multi-camera aggregator collects barcode data with a 500ms timeout.
  5. The AV50 validator checks that each camera (Front and Side) has read at least 1 valid barcode. NOREAD, ERROR, and blank barcodes are filtered out before counting.
  6. PASS: Green flash. FAIL: Red flash (no horn), reject signal fires.
  7. A 1000ms lockout prevents the next case from being processed too quickly.

Common Issues

Camera Not Reading Barcodes

What you see: Validation fails with "insufficient barcodes" for one or both cameras.

What to check: - Can you ping both cameras? (192.168.100.201 for Front, 192.168.100.200 for Side) - Check the Diagnostics panel for camera connection status. - Is the photo-eye triggering the cameras? (Check that the photo-eye LED activates when a case passes.) - Try switching to "Front Camera Only" or "Side Camera Only" in the dropdown to isolate which camera has the issue.

Wrong Camera Mode Selected

What you see: Only one camera is being validated when both should be checked (or vice versa).

What to check: - Look at the camera mode dropdown in the UI. It should show "Both Cameras" for normal operation. - The mode selection is persisted to the database. If someone changed it, it stays changed even after restart. - To reset: use the UI dropdown to select the correct mode.

Reject Signal Not Firing

What you see: Cases fail validation but are not physically rejected.

What to check: - Verify the Arduino is connected (check Diagnostics panel). - Reject is on Arduino Pin 3. Verify wiring. - Check Reject.Enabled in ValidationSettings -- it should be true.

Known Quirks

  • No horn: The AV50 stack light profile at Austin has horn disabled (StackLightHornOnFail: false). Failed validations flash the red light but do not sound the horn. This is intentional for this site.
  • No exports: Austin does not export validation data to any external system (no Mojix, MWE, or AIS). Results are stored locally only.
  • No Matthews interface: AV50 mode does not use Matthews TCP for production data. Validation is purely barcode-presence-based.
  • Auto-start on launch: Validation starts automatically. If the application restarts unexpectedly, validation will resume without operator intervention.
  • Camera mode persists: The Front/Side/Both camera mode selection is saved to the database. If changed from the UI, it remains changed after restart.