Overview
Network Time Protocol (NTP) is used to get Speedway RAIN RFID readers and gateways to sync their clocks. The purpose of this article is to discuss techniques for troubleshooting and resolving NTP issues that prevent our Speedway Readers and Gateways from synchronizing their clocks. Each one of the troubleshooting steps mentioned are grouped into their appropriate section and can be performed individually. Here are the most common NTP problems we've encountered:
- NTP is mis-configured on the reader
- NTP servers are not available
- NTP network ports are blocked by firewalls
- NTP servers are mis-configured
Here are a few good places to read more about NTP:
- https://en.wikipedia.org/wiki/Network_Time_Protocol
- RShell Reference Manual located here: https://support.impinj.com/hc/en-us/articles/202755298-Reader-Documentation
Upgrade to our Latest Octane Firmware
A number of improvements and NTP issues have been fixed as of Octane Firmware version 5.12.2.240. Please upgrade your Octane Firmware to the latest version to make sure this is not an issue that has already been resolved.
Disable Dynamic Servers
When the Speedway Reader or Gateway is configured for DHCP, the default behavior is to use the dynamic NTP servers (Dynamic Servers) that are configured as part of the DHCP server. We have run into situations where the servers added to our readers via DHCP cause clock synchronization issues with other systems. In order to get around these issues the NTP dynamic servers feature needs to be disabled and static NTP servers added. To accomplish this, please ssh into the Speedway Reader or Gateway, disable dynamic servers, and add static NTP servers by issuing the following RShell commands:
config network ntp disable
config network ntp dynamicservers disable
config network ntp add <static NTP server hostname/IP Address>
config network ntp add <static NTP server hostname/IP Address>
...
config network ntp enable
Note: A Dynamic Server can show "Synchronized" when DynamicServers are disabled if the static "Synchronized" servers are also referencing the same ntp server.
Why we need to Enable and Disable NTP
In order to make any changes to the NTP settings on our Speedway Readers and Gateways, the following RShell command must be executed first:
config network ntp disable
Failure to do so will yield the following error:
Status ‘8, Permission Denied
Once all configuration changes are complete, please make sure to enable NTP again by issuing the following RShell command:
config network ntp enable
Finally, please wait up to five (5) minutes before checking whether the NTP setup is now synchronized.
Check the Logs
There are times where NTP is not functioning because the Speedway Reader cannot reach the server. The device logs can help you determine the type of NTP issue you're encountering. To view them, issue the following RShell commands:
show logging events err 1000
show logging events app 1000
Here's an example of an NTP error you may see in the logs:
Verify the DNS and DHCP settings
If the settings for DNS, DHCP, and/or static settings are not correct, the Speedway Reader/Gateway will be unable to communicate with the NTP Server.
Please verify all settings are valid by checking the following values:
- IP Address
- Gateway Address
- Broadcast Address
- IP Subnet Mask
- NtpServerStaticAddress
- DNS servers
The following commands can help determine how the reader is setup:
show network summary
show network dns
show network ntp
Here is an example of a working synchronized NTP connection:
Here is an example output showing NTP not working:
Most of the fields above should make sense but there are a few that need additional information.
Field | Description |
---|---|
NtpServer*State | Describes the state of the associated NTP Server and can have one of the following values:
|
NtpServer*Stratum | Stratum provides a mechanism for identifying how accurate of a time the NTP Server delivering time is relative to those servers acting as a reference clock and preventing timing loops where NTP servers are getting a time from another server that is getting its time from it. Stratum 0 devices are the most accurate non-network connected device (used as a reference clock). Stratum 1 devices are the most accurate ntp time that is accessible via a network connection and normally synchronizes with a Stratum 0 reference clock. Stratum 2 synchronize with Stratum 1 devices. Stratum 3 synchronize with Stratum 2 devices. Etc... |
NtpServer*Reach | The value displayed in column reach is octal, and it represents the status of the reachability register. One digit in the range of 0 to 7 represents three bits. The initial value of that register is 0, and after every poll that register is shifted left by one position. If the corresponding time source sent a valid response, the rightmost bit is set. During a normal startup the registers values are these: 0, 1, 3, 7, 17, 37, 77, 177, 377. |
Hardcode NTP Server Settings
Firewall and/or other network issues may require that you use your own internal NTP server, and manually point your reader there. An example of this setup can be found in the "Clock Synchronization and NTP Configuration" section of the ItemSense Installation Page:
https://developer.impinj.com/itemsense/docs/impinj-itemsense-installation-guide
Then setup the readers to communicate with this NTP Server with the following commands:
config network ntp disable
show network ntp
(This will show what settings you currently have before you make changes.)
config network ntp dynamicservers disable
config network ntp delall
config network ntp add xxx.xxx.xxx.xxx
(Replace "xxx.xxx.xxx.xxx" with the name of the new NTP Server.)
config network ntp enable
Reboot the Speedway Reader/Gateway
Try rebooting the Speedway Reader/Gateway to see if the settings get corrected.
Perform a Factory Reset
It is possible the configuration files on the device got corrupted. You may see the following "System-Resource-Limit" error when getting a NTP summary:
*************************************************
show network ntp
*************************************************
Status='6,System-Resource-Limit'
ServiceEnabled='True'
DynamicServersEnabled='True'
*************************************************
Please try doing a factory reset by following the instructions here:
Support for Windows 10
We've had reports in the past where customers tried to use a Windows 10 machine as an NTP server, but could not make it to reliably work with our readers. Our primary testing for NTP syncing has been done with Linux machine running Ubuntu 14.04.
You can certainly try to see if the readers sync with Windows 10 NTP servers, however, if it doesn't work, our recommendation is that you try a Linux machine.
Contact Impinj Support
If all of the above changes fail to work, please contact Impinj Support (support@impinj.com) and provide the following information:
- Speedway Reader/Gateway Serial Number
- Screenshot of the Speedway Reader/Gateway WebUI
- Reader logs (see: https://support.impinj.com/hc/en-us/articles/202756238-How-do-I-capture-logging-events-from-my-reader-)
- The results from the steps above
Comments
Article is closed for comments.