Fix: Attendance Terminal Cannot Connect or Offline
Root Cause: Physical network disconnection, incorrect default gateway, or power outage preventing local TCP handshakes.
-
1. Check Physical Ethernet Cable and RJ45 LED
Ensure the Ethernet cable is firmly plugged into the RJ45 port on the back of the ZKTeco machine. Look for flashing green/amber link LEDs next to the port.
-
2. Verify Static IP in Device Hardware Menu
Press "M/OK" to enter the terminal menu. Navigate to Comm. -> Ethernet. Ensure "DHCP" is OFF (Disabled) and assign a dedicated static IPv4 address.
Menu -> Comm. -> Ethernet -> DHCP (OFF) & IP Address
-
3. Verify Default Gateway and Subnet Mask
Confirm the Subnet Mask is set to 255.255.255.0 and the Gateway matches your office main router IP (e.g., 192.168.1.1).
Menu -> Comm. -> Ethernet -> Gateway
-
4. Test Local Ping from Host PC
Open Command Prompt or PowerShell on your Windows PC and ping the attendance terminal to verify ICMP packets respond.
ping 192.168.1.201 -n 4
Still Failing? If ping returns "Request timed out" or "Destination host unreachable", the device cable terminates on an unlinked network switch or isolated VLAN.
Fix: Communication Key (Password) Mismatch
Root Cause: The attendance machine has a non-zero communication password set in hardware that does not match your software configuration.
{"ip":"192.168.1.201","port":"4370", "password":"0"}
-
1. Access Hardware PC Connection Menu
On the ZKTeco attendance terminal screen, press "M/OK" (authenticate as Admin if prompted). Navigate to Comm. -> PC Connection.
Menu -> Comm. -> PC Connection
-
2. Inspect and Reset Comm Key to "0"
Check the field labeled "Comm Key" (or "Password" on older firmware). By default, this must be set to "0" (zero). If it contains numbers, delete and reset to "0". Save and exit.
Menu -> Comm. -> PC Connection -> Comm Key = 0
-
3. Update Device Settings in Software (ZKTime / BioTime)
In ZKTime (Device -> Device Management) or BioTime (Device -> Device List), edit the device parameters. Locate "Communication Key" or "Device Password" and enter "0". Click Save.
-
4. Disconnect and Reconnect in Software
Right-click the device in ZKTime and click "Disconnect", wait 5 seconds, then click "Connect". The connection status bar should turn green.
Still Failing? If the terminal is locked with an Admin password preventing menu access, an Arbre technician can perform a firmware hash reset without erasing attendance records.
Fix: Subnet Mismatch (PC and Machine on Different Networks)
Root Cause: Your computer and the attendance device are on separate IP networks (e.g. 192.168.1.x vs 192.168.0.x) and cannot discover each other.
-
1. Check Your PC Subnet with ipconfig
Open PowerShell on your computer and execute the ipconfig command. Note your IPv4 Address and Default Gateway.
ipconfig
-
2. Change Terminal IP to Match PC Subnet
If your PC is 192.168.0.50, change your ZKTeco device to 192.168.0.201. Match the first 3 octets exactly.
Menu -> Comm. -> Ethernet -> IP Address
-
3. Update Gateway on Terminal
Set the Gateway on the ZKTeco device to match your PC default gateway (e.g. 192.168.0.1).
Menu -> Comm. -> Ethernet -> Gateway
-
4. Update Device IP in Software
In ZKTime or payroll software, update the device IP to the new address and test the connection.
Still Failing? If your company uses segregated Office and Guest Wi-Fi VLANs, ensure the PC is on the internal LAN network, not Guest Wi-Fi.
Fix: TCP Port 4370 Blocked by Windows Firewall
Root Cause: Windows Defender Firewall is silently dropping inbound and outbound packets on TCP port 4370.
-
1. Open Elevated PowerShell (Run as Administrator)
Click Windows Start, type "PowerShell", right-click and choose "Run as administrator".
-
2. Create Inbound Firewall Rule for Port 4370
Copy and paste this command into the administrator PowerShell window and press Enter:
netsh advfirewall firewall add rule name="ZKTeco 4370" dir=in action=allow protocol=TCP localport=4370
-
3. Create Inbound Rule for ZKTime Application
Ensure third-party antiviruses (Kaspersky, ESET, Norton, QuickHeal) also have an exception allowing ZKTime.exe and port 4370.
-
4. Verify Port Reachability
Run the connection test again to verify TcpTestSucceeded returns True.
Test-NetConnection 192.168.1.201 -Port 4370
Still Failing? If corporate domain group policies (GPO) enforce central firewall rules, request your network administrator to whitelist TCP port 4370.
Fix: Factory Default IP Conflict (192.168.1.201)
Root Cause: 192.168.1.201 is shared by another machine or a printer on your local office network.
-
1. Unplug the Network Cable from the Machine
Physically disconnect the LAN cable from the back of the ZKTeco terminal.
-
2. Ping 192.168.1.201 from Host PC
Execute ping in PowerShell. If it still replies while the machine is disconnected, another device on your network is using 192.168.1.201!
ping 192.168.1.201 -n 4
-
3. Assign a High Static IP (e.g. 192.168.1.240)
On the terminal screen, assign an unused high IP address such as 192.168.1.240 outside your router DHCP scope.
Menu -> Comm. -> Ethernet -> IP Address = 192.168.1.240
-
4. Plug Cable Back and Connect in Software
Reconnect the cable, update the IP in your attendance software to 192.168.1.240, and click Connect.
Still Failing? Ask your router administrator to create a permanent DHCP IP reservation tied to the ZKTeco device MAC address.
Fix: Connection Timed Out (Socket Error 10060)
Root Cause: Network gateway drop, router NAT routing issue, or terminal in an unroutable state.
-
1. Power-Cycle the Attendance Machine
Unplug the 12V power supply adapter from the wall, wait 15 seconds, and plug it back in. Allow 60 seconds for the Linux OS to boot.
-
2. Check Router Client Table
Log into your office router (e.g. 192.168.1.1) and check the DHCP/ARP client list to verify the terminal MAC address is active.
-
3. Test Port 4370 using PowerShell
Run Test-NetConnection to pinpoint whether latency or packet filtering is dropping the TCP handshake.
Test-NetConnection 192.168.1.201 -Port 4370
-
4. Switch Network Cable to Wall Port Directly
Bypass unmanaged desktop mini-switches and connect the terminal directly to your primary office switch patch panel.
Still Failing? Persistent 10060 timeout on direct connection indicates internal mainboard NIC failure on the ZKTeco terminal.
Fix: Download AttLog Failed or Buffer Overflow
Root Cause: The device log buffer is congested or contains a corrupted punch record that breaks the SDK data stream.
-
1. Backup Logs to USB Flash Drive Immediately
Insert a FAT32-formatted USB flash drive into the terminal USB port. Navigate to USB Manager -> Download -> Attendance Data.
Menu -> USB Manager -> Download -> Download AttLog
-
2. Clear Transaction Logs on Machine
Once confirmed saved to USB, enter Menu -> Data Mgt. -> Clear Data -> Clear AttLog. Do NOT clear user templates or admin rights.
Menu -> Data Mgt. -> Clear Data -> Clear Attlog
-
3. Re-test Software Log Sync
In ZKTime or BioTime, click "Download Attendance Logs". With the buffer cleaned, sync will complete instantaneously.
-
4. Import USB File if Needed
In ZKTime, navigate to Data -> Import Attendance Logs from USB to populate any missing days.
Still Failing? If USB download also fails with "Read Error", the onboard NAND flash memory requires re-flashing or hardware replacement.
Fix: Device Connects Then Immediately Drops
Root Cause: Faulty 12V 1.5A power adapter causing brownouts under CPU load, or loose crimped RJ45 connectors.
-
1. Inspect Power Supply Voltage (12V DC, 1.5A)
ZKTeco optical sensors and face cameras draw surge current during recognition. Substandard 12V adapters drop to 9V, rebooting the network chip.
-
2. Connect Terminal to Dedicated UPS Power
Karachi power grids suffer micro-surges and brownouts. Connect the attendance terminal to an online UPS or regulated backup power.
-
3. Re-crimp RJ45 Connector with Solid Copper Cat6
Ensure the Ethernet cable uses 100% solid copper wire (not cheap CCA) with gold-plated RJ45 connectors.
-
4. Continuous Ping Monitor to Detect Drops
Run a continuous ping in PowerShell while employees punch in to detect if packet loss coincides with punches.
ping 192.168.1.201 -t
Still Failing? If drops persist despite stable 12V power and new cabling, the terminal power filtering capacitors require technician servicing.