TIME MACHINES TM-Manager Windows Application Instruction Manual
- June 5, 2024
- TIME MACHINES
Table of Contents
TIME MACHINES TM-Manager Windows Application
Introduction
The TimeMachines TM-Manager Windows application is used for monitoring and configuring a growing number of TimeMachines products including POE and WiFi Clocks, and the Dot-Matrix displays. It has the ability to discover the devices on the network, monitor the function of the individual devices, update the most common of their parameters, control their timer functions across multiple devices simultaneously, and display text message on multiple Dot- Matrix displays enabling a cost effective mass notification option.
Installation
Installation of the TM-Manager application is like any other windows application. Launch the installer and follow the directions. Double-click the desktop icon to start the application and bring up the main window.
Main Window Overview
The Main Window shows an overview of all known devices that have been found through discovery or direct entry. There is a significant amount of information available from this screen and setting options.
-
Main Window Overview
The columns of the main window give a great deal of information about each device. The column meanings are as follows. -
Device Table
-
Item Column
The first column contains a checkbox that allows the user to select this device for multiple device operations like timer controls, text displays, global parameter updates, and alarm setting updates. -
Status Column
The status column is a Red, Yellow, Green indication of the status of the device. If a device is functioning normally, updating its time regularly, and responding to status queries from TM-Manager, this indicator will be green. If there is a potential problem, it will turn yellow, and if it has failed to respond or isn’t updating its sync count often enough, it will turn Red. See the “Mins” column information for additional information.
The indicator has slightly different meanings for the TM1000/2000/2500 products. A red indicator is displayed if the GPS is not locked. A yellow indicator is used if the TM1000A hasn’t incremented its NTP Lookup count for a period of time. This may or may not indicate and issue, but may simply be caused by low traffic to the TM1000A. -
Type Column
The Type column displays the type of device reported when queried. This can be a POE clock, WiFi clock, Dot-Matrix display, or as of version 1.03 a TM1000A time server. -
Name Column
The Name column displays the name of the device as set in the devices web page. This field is editable and when the cursor leaves the field after a change, it will immediately be updated on the device. Generally it would reflect the location of the device, or some other identifying value. -
IP Address Column
This is the IP address of the device as reported when queried. -
MAC Address Column
This is the MAC address of the device as reported when queried. -
Version Column
This is the software version of the device as reported when queried. -
Syncs Column
Syncs is the number of times the clock has synced with a time source since being powered on or last reset. In the case of the TM1000A, it is the number of NTP sync requests received and served. -
Change Column
The Change column, which used to be Mins, shows the amount of time since a device last responded to a query for status. This will increment until a response is received at the rate programmed in the setup dialog. Response times greater than the clock NTP refresh rate, also defined in the TM-Manager setup dialog, and less than 2X that rate will turn the status indicator Yellow. If it goes above 2X the clock refresh rate, the Status LED will turn Red. A general query is sent every 6 minutes. For time servers, TM1000/2000/2500, if GPS lock is lost, the indicator will turn red. -
Time Column
The Time column shows the approximate time currently displayed on the clock. If the clock has a time zone error, then this will be reflected here. It is updated each time a device responds to a query, but is incremented by an internal 1 second timer in the TM-Manager software. It is generally pretty accurate, but not synced to NTP time as the clocks are. Starting in version 2.0.0, count up/down modes are roughly displayed in real time. -
Configure Column
The Configure column holds a settings button that when clicked will open a browser window directly to the associated device. The user can then log in to the device and update parameters as needed. By default, Google Chrome is set as the browser. It can be changed in the application settings to another browser. -
Button Functions
-
Query Button
When clicked, this button will send a broadcast to the IP address set in the Settings dialog. All clocks that receive the broadcast will respond back to the source, which is the TM-Manager computer, so that they can be located. If the device is already in the displayed list, it will have its information updated. -
About Button
The About button displays information about the TM-Manager application and contact information for TimeMachines. -
Time Mode Button
At times, some displays may be in timer or text display modes. To return them to time display, this button can be clicked and all devices that are checked in the Item column will be reset to display time from whatever mode they might have been in. -
Delete Button
The delete button will remove all devices that are checked in the Item column. No data is lost in this process. If the device subsequently responds to a Query, it will be re-added to the list. -
Manual Add Button
The Manual Add button allows a device’s IP address to be manually entered. This may be useful if a device does not responds to the Query button because it is on another subnet. Periodic status is done through UDP IP uni-cast messaging, so as long as the device is at an IP address that is routable on the network, devices outside of the local broadcast domain can be monitored. The list of IP addresses is saved when the application is closed and will re- appear when the application is opened. Other fields will be filled in as queries are completed. -
Settings Button
This button opens the dialog box for TM-Manager application settings. See the section of this document on the meanings of those settings. -
Timer Controls Button
This button opens the multi-device simple Up/Down timer control. See that section of the manual for more information on how to utilize it. Multiple copies of this window can be open simultaneously controlling different clock(s) in real time. -
Presentation Timer Button
The Presentation Timer button opens a dialog that can be used for quickly controlling multi-color countdown timer modes. See that section for more information on how to utilize it. Multiple copies of this window can be open simultaneously controlling different clock(s) in real time. -
Text Controls Button
This button opens the multi-device text control. See that section of the manual for more information on how to utilize it. -
Timer Programs Button
This button opens the multi-device timer program editing and execution dialog window. See that section of the manual for more information on how to utilize it. Multiple copies of this window can be opened simultaneously controlling different clock(s) in real time. -
Countdown to Date
For clock firmware v5.2 for POE and v3.2 WiFi, the option to count down to a future date is supported. This dialog box provides a quick method to setup 1 or more clocks to this mode. -
Clock Settings Button
This button allows the update of the most common clock parameters to all checked devices. See the Clock Settings section of this document for more information. -
Clock Alarms Button
This button allows the update of the alarm settings of all checked devices. See the Clock Settings section of this document for more information. -
Color Pallet Button
This button is used to update the specific RGB formulas used in the clock to create their individual and blended colors. See the specific section on how this dialog box is utilized. -
Relay On, 1 Second
This will send an API command to energize the relay of all selected clocks for 1 second. -
Application Settings
There are a few settings that can be reached by clicking the “Settings” button on the main screen. The dialog to the right will be displayed. -
Web Browser Path
This setting is the path and program name of an internet browser. By default set to Google Chome’s default installation location, but can be changed to any other browser location desired. When the “Settings” button on a given row of the main window is clicked, the IP address of the device is appended to this path and a browser is opened to enable a quick connection for all the settings of a given device. -
Clock NTP Update Interval
This setting should generally match the setting of the clocks. TM-Manager checks each clock in the main window to see that its “Syncs” count is increasing. If this setting is lower than that of the clocks, TM-Manager will think that an update of the time has not occurred and will mark the device as having a possible fault. -
Display Update Interval
This setting, in seconds, will change how often TM-Manager updates its data from the all the clocks in its list. The minimum is 15 seconds. This allows the main window to more accurately reflect the displays current state. -
Broadcast Address
This setting controls the address used for broadcasting queries. A broadcast is sent to a specific port on the network and all TimeMachines displays will respond to it allowing the TM-Manager application to locate clocks on the local LAN segment. Once the devices are discovered, UDP IP query messages are sent uni-cast to each individual clock to maintain status. The broadcast address will generally be the local subnet address with a 255 in the octets that are variable on the local subnet. Consult your IT staff for more information on how this should be set. -
Retry Delay for UDP IP Communications
Timer and Text displays to multiple devices are done with UDP-IP uni-cast messages. There is a simple acknowledgment sent from the devices for these messages. This setting is the amount of time allowed to pass before a retry is sent if the Ack hasn’t been received. If devices are spread across a wide area network, or a busy WiFi network, then this value may need to be increased. If un-reliable control of timer functions is observed, try increasing this value. -
MAX retries for UDP IP Communications
This setting works with UDP Retry delay and controls how many times the message will be resent if the acknowledgment isn’t received within the timeout setting. -
Password for accessing remote devices
This setting is used to authenticate TM-Manager for setting updates to the devices. It should match the password on the clocks being updated.
Timer Controls
-
The timer control dialog allows simultaneous control of all of the displays that are checked when the Timer Control dialog is entered. It supports control of both count-up and count-down features of the clocks as well as displaying the approximate time of the currently active timing function. Multiple copies of this window can be opened simultaneously, allowing control of separate clocks with separate count up/down parameters. The top of the dialog box window will list the names of the clocks being controlled. Those clocks will be grayed out in the main window such that they cannot be selected for control in a second window at the same time.
Note: The time displayed in this dialog is maintained on the local machine running TM-Manager and is not synchronized to the displays. If the dialog is closed after a timing event is started, TM-Manager will not be able to display the timer time again. Re-opening the timer control will allow the event to be stopped or reset, and a different grouping of devices can be run independently. -
Count Down Controls
Enable the Count-Down controls by checking the checkbox in that section. There are two display modes that can be used, one that displays Minutes:Seconds:Tenths of seconds (and hundredths when stopped) and a second that displays Hours:Minutes:Seconds, use the pulldown to select the one desired. The preset can be edited and the alarm relay can be energized for a programmable period of time at the end of the count down. Once the desired settings are made, click the Reset button to pre-load them to the selected devices. The Start button can now be clicked to start the count-down on all selected devices. It can be paused while running as well. All devices will be closely synchronized, although each device maintains its own timing. -
Count Up Controls
The Count-Up features can be enabled by checking the corresponding checkbox. Once the controls are active there are two formats of time display; one that displays Minutes:Seconds:Tenths of seconds (and hundredths when stopped) and a second that displays Hours:Minutes:Seconds, use the pulldown to select the one desired. The count-up can be controlled using the Start button and Reset to zero using the reset button. -
Set Time Button
Clicking this button will immediately set the selected clocks back to time mode. -
Text Controls
The Text Control Dialog allows simultaneous control of all of the displays that are checked when the Text Control dialog is entered. This feature is only active for TimeMachines Dot-Matrix display products. The Dot-Matrix displays have the ability to display static and scrolling text. This can be controlled from the web page of the individual device as well. -
Display Text
This is the text that will be displayed. The entry field supports single line text for Right to Left scrolling, as well as Multi-Line entries (carriage- return between lines) for Top to Bottom scrolling. The Dot-Matrix does not reformat the text for best display, it is up to the user to format it within this entry field. -
Scroll Speed
This is a number between 0 and 999 that controls the speed of horizontal and vertical scrolling. A lower number if faster and a higher number is slower. 60 is a good default to start with. -
Static Text Justification
When displaying a specific static word, the Dot-Matrix will attempt to place the entire word/phrase on the display and may adjust to a smaller font if the default Arial won’t fit. This setting controls whether the word is Left, Center, or Right justified. -
Scroll Direction
Using scrolling, longer messages can be displayed. When scrolling, use this setting to control the direction of the scroll. -
Send Button
The Send button is used to update the display with the parameters for text display that are currently set on the web page. -
End Scroll Button
Clicking the End Scroll Button will stop the text scroll and resume time display. -
Clock Settings Dialog
The Clock Settings Dialog allows setup of parameters that are typically common across multiple devices on the network. When this dialog is opened, it will affect all devices that were checked in the Item column of the main window. The value of the parameters within the devices themselves are not read and displayed in this dialog, the update is one direction only, from TM-Manager to the devices. The settings in this dialog are stored on the TM-Manager computer when the application is closed. Each of the parameters are explained in the individual product manuals available for download at http://www.timemachinescorp.com.The parameters will be updated to each selected device when OK is clicked. A progress meter will be displayed on the main window during the update process. -
Alarm Settings Dialog
The Alarm Settings Dialog allows setup of the alarm parameters of each device that is checked when the dialog is opened from the main window.
The alarm settings within the devices themselves are not read and displayed in this dialog, the update is one direction only, from TM-Manager to the devices. The settings in this dialog are stored on the TM-Manager computer when the application is closed.
The alarm relay feature is explained in the individual product manuals available for download at
http://www.timemachinescorp.com.
The alarm parameters will be updated to each device when OK is clicked. A progress meter will be displayed on the main window during the update process. There is quite a bit of data posted to each device and each device gets several posts to be completed, so it does take a bit to update multiple devices. -
Alarm Schedule Pulldown
Starting in version 2.0.0 of TM-Manager, up to 5 alarm schedules are supported. Like the rest of the alarm data in this dialog, they are only stored locally. The purpose is to allow the user to change the overall alarm schedule between several different common schedules. One good example of this might be a school that has different bell schedules for students based on special day schedules. Picking a different schedule from the pulldown will show the schedule. Clicking OK, will send it to all selected clocks. -
Alarm Duration Entries
As highlighted in the individual clock manuals, the duration setting for the alarm can have multiple types of values. A single number will activate the internal clock relay for the programmed number of seconds. A “PX”, where X ranges from 1 to 10, will execute an internal stored Timer program at the specified time. “CX”, where X ranges from 1 to 10, for RGB equipped clocks, will allow the color of the time display to be changed at the specified time. -
Get From Clock
This button will retrieve the current Alarm settings from a clock into the currently set Alarm Schedule. This function is only available in POE v5.2+ and WiFi v3.2+. It will not receive valid data from older firmware and may overwrite the current Alarm Schedule with invalid data. -
Presentation Timer Button
The Presentation Timer button opens the dialog to the right. It is intended as a shortcut way to run a standard color-changing presentation timer on RGB displays. An example usage is that a
presenter is given a certain amount of time to give their talk. That is the Total Countdown Time setting. The color of the display can be set for the duration of this time. At some later time, the color of the display is changed to give the presenter a visual indication that their time is nearing its end. The change in color is set with the Color Change Time setting. Finally, if desired a count up timer can be started when the countdown ends to keep track of the speaker’s time over their allotted limit. The internal relay can also be triggered when the count down reaches zero for a programmable length of time. Once the settings for time, color, relay, and count up are made, the Reset button is clicked to send the program to the clock. The program, similar to the Pres:300-60 example in the Timer Programs will be stored to the 9th location in the clocks timer program memory. Clicking the Start button will begin the count down. The count down can be paused by clicking the Start button again and the Reset button resets the program back to its initial values and updates any changes made in the dialog. The resulting timer program can be viewed in the Timer Program dialog by getting the current program. It will be named to match the timings chosen in this dialog. -
Countdown to Date Button
The Countdown to Date button brings up the dialog to the right. This feature is supported in POE v5.2+ and WiFi v3.2+. This will tell all selected clocks to begin a countdown in the specified format to the date specified. The Set to Time button can be used to interrupt the countdown and return to current time display. The product manuals describe this feature with additional detail.
Timer Programs
Timer Programs represent a unique and powerful capability of the TimeMachines
networked displays. This feature set was created with release 1.2 of TM-
Manager to work with POE Clock Firmware 4.6, WiFi Clock firmware 2.4, and
DotMatrix version 2.2. It was added to the TM-Manager application in version
1.0.6, with numerous new features added in version 2.0.0 to support more Timer
Programs and RGB color control. With an essentially infinite number of options
for setting up timing sequences, nearly any timing need can be met.
Round/Interval timing is now supported for athletic training purposes, and
support for sequential count-down timers or count-up timers is now possible.
Looping constructs are also available to repeat sections of timing programs.
Relay closure control for buzzers is also possible within the programs. The
various aspects and options for creating timer programs and how they interact
with the TimeMachines networked displays follows.
Multiple instances of the Timer Program dialog box can be opened to allow
separate control of multiple individual or groups of clocks. Overalapping
control is not allowed. The assigned names of the clocks controlled by a timer
program dialog box are displayed in the window title. If a clock is executing
a timer program when the dialog is opened, it will update and display the
current state of that timer program, joining the program in real-time. Perfect
synchronization is not achieved, but close.
-
Timer Program Storage Architecture
Starting in clock serial number ‘B’ versions POE 4.8, WiFi 2.5, and ‘C’ versions POE 5.1, WiFi 3.1, the clocks can now store up to 10 timer programs in their memory. One of those programs can be executed at a time and significantly more control of editing and storing those programs is available from TM-Manager as well as the phone app version of TM-Timer2. TM-Manager stores all 10 local programs on the local computer in the tmsettings.ini file. By default the first two programs in memory show examples of a full color Tabata interval timer and a full color presentation timer program. The other 8 slots are empty. The names of the programs are also stored on the clocks and kept indexed to their memory location. As an example, if one user were running program 6 from TM-Timer, and TM-Manager were opened, the clock selected from the list, and the Time Program button clicked, TM-Manager would switch to the 6th program and show the current state of execution of the program. -
Start/Pause Button
The Start/Pause Button starts the Timer Program running on the App screen as well as any selected network displays. The time display at the top of page will show approximately what is on the clock displays, and the currently executing step will be highlighted. Colors are approximated as well, although imprefectly. -
Reset Button
The Reset Button sends the entire currently displayed program to the network display and puts the display into the Timer Program execution mode. Clicking the Start button starts the program execution. The program that is sent by the Reset button, does not save the program in the clock to anything other than the RAM of the clock and the program will disappear from that memory if the clock is restarted. If a change is made to the program in the dialog, clicking Reset is required to send the updated program for execution on the clock. Changes made in TM-Manager are stored on the local computer, but must be saved with the Save Programs buttons to store the changes to disk locally. -
Set Clock to Time Mode
This button will put the selected displays back in normal time display mode as setup from the device webpage. The Timer Program mode can be re-entered by pressing the Reset button which will send the program to the displays again. The displays are setup to revert to time mode after 30 minutes of no timer function being used. -
Get Clock Active Program Button
The Get Button is used to retrieve the current program, in the first selected display (from the main dialog), to the TM-Manager application. It will also grab the name assigned the currently active program and jump to that location in the TM-Manager program list. The program is now stored in TM-Manager and can be saved to the local settings file by closing the dialog box with the Save Programs button. -
Save Progs Locally and Close Dialog and Close Button
This button will store all 10 programs to the tmsettings.ini file on disk so that they are retrieved the next time the TimerProgram dialog is opened. The close button closes the dialog without storing the programs. -
Store All / Get All Programs from Clock
These buttons are used to Get and Save all 10 local programs to one or more clocks. The Get All program retrieves all 10 programs from the first selected clock in the main window list. The Store button will send all 10 programs to all selected clocks, and tell the clock to save those programs to non-volatile flash memory. They can then be executed from the Alarms screen as desired. -
Starting a New Program
There are 10 available programs that are stored within the TM-Manager App. By default they are called Tab 60/10, Pres:300-60, Program 3 through Program 10, and can be changed by activating the pulldown below the time display. Clicking on the Program name allows the program name to be changed with the keyboard. By default, each empty program has one default step, End Program. All programs must have an end program step as the final step. Protections exist in the App to ensure this.
Each Step in a program is numbered 1 through 10. Information about the function and settings of each step is displayed on the main screen for the program. Each program step has a popup menu associated with it that is activated with the right mouse button. The menu contains the following entries:
Edit – The Edit option opens a dialog that allows the specific settings of the program step to be changed between functions. The specific options in the Edit dialog box will be discussed later in the document. Insert – The insert option will add another program step before the step where the Insert option is selected. The inserted step will default to an End Program step that can then be edited for another function. Delete – The Delete option will delete the step from which the Delete option is selected. Cancel – The Cancel option simply exists the menu.
Any change to any step of any given program is automatically stored within the Timer Program Window but needs to be saved permanently with the “Save Progs” button.
Edit Timer Program Steps
When the Edit option is selected from a program step by right clicking on the
step, the dialog to the right opens up. Numerous options are available within
a program step and not all of them will be available for a given program
element type. Each of these element types will be discussed with the
associated options.
Interval CountDown – Interval CountDown uses a format of the type
“ROUND – MM:SS”. The option to increment the round number exists in these
steps. If checked, then the round number will increment at the beginning of
this step. The other features that are enabled for this option are the
starting time for the count-down, set with the Hours, Minutes, and Seconds
settings. The CountDown can be stopped mid count if desired by setting a Stop
time, maybe to change colors. Additionally, the alarm relay can be actuated at
the beginning of the step which would serve as essentially a “go” bell.
Putting an Alarm at the beginning of the next program step can serve as an
“end” bell.
-
Interval CountUp – Interval CountUp uses a format of the type
“ROUND – MM:SS”. The option to increment the round number exists in
these steps. If checked, then the round number will increment at the beginning of this step. The other features that are enabled for this option are the ending time of the count-up as well as starting the count-up at something other than 0. If set, the timer will count-up for the number of seconds specified by Hours, Minutes, and Seconds and then terminate the count-up and proceed to the next step. A setting for Hours, Minutes, and Seconds of zero will cause the count-up to continue forever essentially making it the last step of the program. Additionally, the alarm relay can be actuated at the beginning of the step which would serve as essentially a
“go” bell. Putting an Alarm at the beginning of the next program step can serve as an “end” bell. -
count (DAY):HH:MM:SS and (HR):MM:SS:TS – These two count-up options are the same except for the format of the number displayed during the count-up function. There is no round number displayed in this format. The other features that are enabled for this option are the starting time and ending time of the count-up. If set, the timer will count-up from the starting time to the ending time specified by Hours, Minutes, and Seconds and then terminate the count-up and proceed to the next step. Setting a stop time for Hours, Minutes, and Seconds of zero will cause the count-up to continue forever essentially making it the last step of the program. Additionally, the alarm relay can be actuated at the beginning of the step. Putting an Alarm at the beginning of the next program step can serve as an “end” bell.
CountDown (DAY):HH:MM:SS and (HR):MM:SS:TS – These two count-down modes are identical except for the format of the numbers displayed during the count-down function. There is no round number displayed in this format. The other features that are enabled for this option are the starting and ending time for the count-down, set with the Hours, Minutes, and Seconds settings. Additionally, the alarm relay can be actuated at the beginning of the step which would serve as essentially a “go” or “end” bell depending on its position in the program. Putting an Alarm at the beginning of the next program step can serve as needed as well.
Goto Line – Goto Line provides a looping/repeat function. When set as the active command, the target step number can be set. This should be the step number that the program should jump to. The Repeat Count option sets how many times this step will be executed before it steps through to the next step. This step is useful in setting up Round/Interval count-down sequences. For example two count-down steps could be created, one that counts down from 1 minutes to 0 and increments the Interval number, followed by a second count- down step that goes down from 20 seconds and doesn’t increment the interval number. The next statement could be a Goto that goes back to the first step and is allowed to run 3 times, making a timer that has three workout periods followed by three rest periods. After the third time the Goto was reached, it would pass through to the End Program step and the clock would resume its normal time display.
Change Color – This provides the ability to set the clock display to other colors at the beginning or at any other time during the program. The Hours digits can be set to a different color than the Minutes and Seconds digits. This allows for Tabata Interval timers with the round number displayed in a different color than the time count-down. It also allows the work time interval to be a different color than the rest interval. See the Tab 60/15 example program in the first program slot. In a presentation timer, a 5 minutes count-down can start in green, change to yellow at some later point in the count-down and switch to red at the end of the program during count-up, giving the presenter a visual due that they have been talking too long. The second example program shows this type of setup.
End Program – This is the final step of the program. When execution of the program gets to this point, the program will end and the display will return to its default time/calendar setting. -
Example Programs
As mentioned previously, the first two default programs in TM-Manager show most of the features of the timer programs. Several examples of timer programs can be found in the TM-Timer smartphone application manual as well as on the timemachinescorp.com website in the Application section.
Color Pallet Button
Clicking the Color Pallet button supports the update of the colors stored in
the clocks. The dialog is pictured to the right. All clocks that are selected
will be updated with the values in this dialog when OK is clicked.
The color settings are based on “standard” 8bit RGB values. However, the clock
display digits will not reproduce the blended colors with perfect fidelity
when compared to a computer screen. In addition, the color resolution hardware
of the clocks only has 50 gradations across the 255 bits of setting in the
dialog meaning that the values in the table to the right need to change by at
least 5 to see any difference in the color.
RGB clocks manufactured at similar times will have similar color reproduction,
but differences from one display to another will exist, particularly in
blended colors. Red, Green, and Blue pure colors will show much less
variability to the naked eye.
While it is possible to make Color 1 (Red) be something other than Red, say
Green for example, it is not possible to change the names of the colors in the
clock webpage color setting pulldown, nor the dialogs that select colors in
the Timer Programs, so staying with relatively the listed colors may be good
idea. User1-3 are good slots for “exotic” color choices.
Blended colors are generated with pulse width modulation (PWM) of the red,
green, and blue control lines of the LEDs. Color drive times are balanced
across the full timing interval to smooth current draw and prevent digit
overheating. Setting a color to 255,255,255 will reduce all three colors in
balance to be roughly the same current usage as 255,0,0, which is why white is
setup by default as 70,150,160, as well as that red tends to have a strong
impact on the overall color and tends to get reduced in any mapping.
Ultimately, feel free to experiment with the colors. The values in the above
dialog are the defaults. The defaults are restored in the clock by resetting
the clock to factory defaults. It is not possible to retrieve the color table
within a clock, only to set them.
TimeMachines Inc. | 300 South 68th St. Place, Suite 100 | Lincoln NE 68510
voice: 402.486.0511 | email:
tmsales@timemachinescorp.com | web:
timemachinescorp.com
References
- TimeMachines - Your Network Time Solution Source, NTP and PTP Time Servers and Clock Displays - TimeMachines Inc.
- TimeMachines - Your Network Time Solution Source, NTP and PTP Time Servers and Clock Displays - TimeMachines Inc.
- TimeMachines - Your Network Time Solution Source, NTP and PTP Time Servers and Clock Displays - TimeMachines Inc.