Troubleshooting NI TPC-2106 IP Settings Not Loading After Reboot

Daniel Price3 min read
Industrial NetworkingOther ManufacturerTroubleshooting
Licensed PE Working through this on a live machine? A Maine-licensed engineer can take it from here — included with IMD hardware, by the hour for everything else. Book an engineer

Symptom: Static IP Saved but Not Loaded After Hard Reboot

On the NI TPC-2106 touch panel (Windows CE) connected directly to a cRIO controller over a crossover cable, a hard power cycle produces a repeatable failure: the NI Configurator initially reports IP address and subnet mask as 0.0.0.0, and the saved static settings only load after approximately 3 minutes (measured at 3 min 8 s, consistent across 10 hard-reboot trials). The static configuration itself is not lost — Network Connections still shows "Specify an IP address" with the correct address, mask, and gateway — but those settings are not applied to the interface until a soft reboot or the 3-minute timeout elapses.

Isolating the Cause: Link Negotiation, Not the RT Application

A structured test matrix rules out the cRIO real-time application and points at Ethernet link negotiation between the SMSC91181 adapter and the cRIO port:

Test Result
Hard reboot with crossover cable unplugged Settings default to 0.0.0.0; custom IP never loads even after reconnecting the cable, until a soft or hard reboot
TPC connected through a Netgear ProSafe FS116 10/100 switch Custom IP settings load immediately
cRIO "No App" switch enabled (RT program does not run), hard reboot Default IP first, custom IP loads after ~3 minutes
Soft reboot (Configurator Misc tab or rear-panel switch) Custom IP settings load immediately

Because the delay persists with the cRIO application disabled but disappears when a switch sits between the two devices, the direct crossover link is failing to come up in a mode the panel's adapter accepts at boot. The interface then retries until the saved configuration is finally applied.

Fix: Force Full Duplex via the SMSC91181 LinkMode Registry Key

The documented resolution is to change the Ethernet adapter's link mode in the touch panel registry, forcing full duplex instead of relying on auto-negotiation:

Key:   HKEY_LOCAL_MACHINE\Comm\SMSC91181\Parms\LinkMode
From:  7F   (auto-negotiate)
To:    72   (force full duplex)

After editing the key, disable and re-enable the Ethernet adapter to apply the change. When making any registry or IP configuration changes on this platform, run regsave from the Run dialog to persist the registry before rebooting — without it, edits survive only until the next power cycle. The validated sequence is: load registry defaults and reboot, set the custom IP on the SMSC91181 connection in Network Connections, run regsave, then soft reboot and confirm the NI Configurator shows the new settings.

Why the netsh Startup Batch Fails

A common workaround — a startup-folder batch file calling netsh interface ip set address name="smsc91181" source=static ... — does not work on this target. Even when the .bat file executes at boot, the IP settings do not change, and running netsh (or netsh ?) from the MS-DOS prompt returns "Cannot execute netsh.exe." The netsh utility is not available in this Windows CE image, so any boot-time network reconfiguration must go through the registry and the persisted SMSC91181 settings, not command-line netsh scripting.

FAQ

Why does my NI TPC-2106 show 0.0.0.0 for 3 minutes after a power cycle?

The SMSC91181 Ethernet adapter fails to negotiate a usable link on a direct crossover connection at boot, so the saved static IP is not applied until a ~3-minute timeout (measured at 3 min 8 s) elapses. A soft reboot applies the settings immediately.

How do I force full duplex on the TPC-2106 Ethernet port?

Edit the registry key HKEY_LOCAL_MACHINE\Comm\SMSC91181\Parms\LinkMode from 7F to 72, then disable and re-enable the Ethernet adapter. Run regsave afterwards so the change survives a hard power cycle.

Can I use netsh in a startup batch file to set the TPC-2106 IP address?

No. The command returns "Cannot execute netsh.exe" because netsh is not included in this Windows CE image. Configure the static IP through Network Connections and persist it with regsave instead.

Back to blog