» sub-microsecond-syncronisation
This site relies heavily on Javascript. You should enable it if you want the full experience. Learn more.

sub-microsecond-syncronisation

acl(admin devvvv vvvvgroup)

see discussion
here

Windows Time

general:http://www.codeproject.com/system/simpletime.asp

NTP

Kommunikations Prinzip

client sendet seine zeit in paket (sendezeit)

server schreibt bei empfang seine eingangszeit dazu

server schickt paket zurück und fügt seine sendezeit dazu

client empfängt packet und schreibt seine eingangszeit dazu

client errechnet statistiken

The NTP Clock-Combining Algorithmhttp://www.bytefusion.com/products/ntm/ptnt/appendixf.htm

Welcome to ntp.org, home of the Network Time Protocol projecthttp://www.ntp.org/index.html

Network Time Synchronization Projecthttp://www.eecis.udel.edu/~mills/ntp.html

NTP Ports to Windows NThttp://norloff.org/ntp/

A Beginner's Guide to Network Time Protocol (NTP)
Installing NTP Clients and Servers on Windowshttp://geodsoft.com/howto/timesync/wininstall.htm

Using NTP and Windows PCs in a cable-modem environmenthttp://www.david-taylor.myby.co.uk/ntp/index.html

NTP

> > NTP is _the_ best piece of sw available to sync a system clock to an
> > external source, preferably using a Pulse Per Second (PPS) signal to
> > slave the kernel clock directly to the exterbak reference.
>
> It all depends on what you need the time precision to be. I found out
> recently that setting the system clock on a Wintel box would give upto
> 100 milliseconds error from the time base it was being set against
> even though that was good to a few microseconds. This problem was
> inherent in the design of the O/S and onboard clock.

This is one of the reasons why NTP never syncs a clock by setting it, to work NTP requires as an absolute minimum a kernel clock API which allows gradual tuning.

This way the monitoring process can note that the kernel clock at the time when the last PPS pulse was received, was off by N microseconds, and then use the clock tuning api to request that the clock should be speeded up or slowed down by just enough to correct this error over the next minute or so.
http://www.ntp.org/ntpfaq/NTP-s-def.htm

NTP stands for Network Time Protocol, and it is an Internet protocol used to synchronize the clocks of computers to some time reference.

How accurate will my Clock be?

Of course the final achievable accuracy depends on the time source being used. Basically, no client can be more accurate than its server. In addition the quality of network connection also influences the final accuracy. Slow and non predictable networks with varying delays are very bad for good time synchronization.

Mostly, it depends on your networking. Sure, you can get your machines within a few milliseconds of each other if they are connected to each other with normal 10-Base-T Ethernet connections and not too many routers hops in between. If all the machines are on the same quiet subnet, NTP can easily keep them within one millisecond all the time.

NTP Hardware

Achieving accurate time synchronization in a
switched Ethernet infrastructure is not an easy task due to the
variable latencies through the Ethernet switches. The switch
latency depends on the network load and the switch
architecture. However, this problem can be solved if the time
servers are integrated in the Ethernet switches. This article
describes the basic principles of the well established internet
SNTP/NTP time protocol, and how this protocol can be
implemented in an Ethernet switch and in an Ethernet enabled
end node in order to achieve a timing accuracy better than one
microsecond (us) regardless of the network load.
Index terms - Time synchronization, switched Ethernet,
SNTP/NTP, extreme accuracy.
http://www.ontimenet.com/pdfs/Time%20synchronization.pdfhttp://www.ontimenet.com/fst200.htm

IEEE1588

Successful IEEE1588 Plug Fest @ 2004 Conference on IEEE1588

On the occasion of the 2004 conference on IEEE1588, September 27-29, hosted by NIST in Gaithersburg, a plug fest was arranged. Five IEEE1588 implementors participated, ZHW and Hirschmann Electronics among them. All nodes proved protocol interoperability and synchronized correctly. Precision of synchronization was in the range of +-200ns between some nodes and even +-50ns and less between the better ones.

See pictures (1, 2, 3),read the conference contributions of ZHW about PHY's and Timestamping, the conference proceedings and the plug fest report or go to the IEEE1588 web site for further information.
http://ines.zhwin.ch/ieee1588

Uhren mit IEEE 1588 synchronisieren
Auf eine Mikrosekunde genau im lokalen Netzwerk Eine präzise Zeitbasis ist insbesondere für verteilte Systeme in der Automation wichtig. Das in IEEE 1588 spezifizierte Precision Time Protocol (PTP) [1] synchronisiert Uhren genauer als eine
Mikrosekunde. Es ist zugeschnitten auf lokale Netzwerke wie Ethernet, die Multicast Nachrichten erlauben.
http://ines.zhwin.ch/ieee1588/Fachartikel_IEEE1588.pdf

With the Precision Time Protocol IEEE 1588 there is now, for the first
time, a standard available which makes it possible to synchronize the
clocks of different end devices over a network at speeds faster than one
microsecond. This article is written to supply answers to several
questions: how this protocol works, how to use and implement it, and
what results you can expect.
http://www.industrialnetworking.com/support/general_faqs_info/Precise_Time_Sync.pdf

The new IEEE Standard Precision Time Protocol (PTP) IEEE1588 is now a
very comprehensive solution to do very precise time synchronization in
an Ethernet network. The protocol was originally developed by Agilent
for distributed instrumentation and control tasks. The technique is
based on the work of John Eidson, who, as chairman of the
standardization committee, is largely responsible for the approval of
the standard in November 2002. Using IEEE1588, it is possible for the
first time to synchronize, in the sub-microsecond range, the local
clocks in sensors, actuators, and other terminal devices using the same
Ethernet network that also transports the process data. Without such a
standardized synchronization protocol, which is defined to be used with
any protocol, not just Ethernet, it would probably not be possible to
synchronize local clocks in terminal devices from different
manufacturers with this precision. Existing time synchronization
protocols such as NTP and SNTP do not achieve the required
synchronization accuracy or the convergence speed. Others, such as
SynUTC from the Technical University in Vienna, were not accepted on the
market.


IEEE Instrumentation and Measurement Society
EEE 1588TM-2002 Standard for
A Precision Clock Synchronization Protocol for
Networked Measurement and Control Systems

2004 Conference on IEEE 1588, Sept. 27-29, 2004
http://ieee1588.nist.gov/1588model.htm

OSC

we have implemented clock synchronization in reaktor 4, very similar to the mechanism described in... for more see the following:

SynUTC

SynUTC from the Technical University in Vienna

Project SynUTC is devoted to the problem of how to establish a common
notion of time that also relates within a few µs to an external time
standard, in particular, Coordinated Universal Time (UTC), for a
distributed fault-tolerant real-time system.http://www.auto.tuwien.ac.at/Projects/SynUTC/

SoftGenLock

SoftGenLock enables active stereo for Linux Clusters
High quality image projection and active stereo rendering require multi display systems to have their different video outputs swaplocked and genlocked. Swaplock is related to frame buffer swap synchronization. Genlock is related to video retrace synchronization. Active stereo also require quad buffering and left/right eye buffer flipping synchronized with the video retrace.

Except for some high end cards, off-the-shelf graphics cards do not support swaplock and genlock. Especially for Linux, today's graphics card drivers generally do not enable quad buffer page flipped stereo.

We developed software solutions that do not require specific hardware or access to the driver source code. Swaplock support is integrated in Net Juggler. Genlock and active stereo support are gathered in the SoftGenLock library.
http://netjuggler.sourceforge.net/SoftGenLock.php

MetaVR

The MetaVR ChannelSync™ cable is designed to work hand-in-hand with the MetaVR VRSG 3D visualization software. ChannelSync is a graphics card independent hardware device that enables multiple VRSG visual channels to intercommunicate such that the refresh rate of all the views is synchronized. The ChannelSync cable is used with the MetaVR ChannelSurfer so that multiple out-the-window views can update in synchronization eliminating undesirable artifacts and flicker between adjacent views. The ChannelSync cable is designed to eliminate variable update rates that can result from uneven scene complexity across multiple out-the-window views.
http://www.metavr.com/products/vrsg/channelsync.html

Reclock

http://reclock.free.fr/main.htm

The purpose of ReClock is to definitely get rid of jerky playback of AVI and MPEG material on a PC (or a PC connected to a TV). It's a DirectShow filter which is loaded in place of the default directsound audio renderer.
It provides a new reference clock that is locked to the video card hardware clock, in order to ensure that frames are played at the exact speed of what is expected by the video card vertical sync.

Powerstrip

Powerstrip http://www.entechtaiwan.net/util/ps.shtm

Powerstrip APIhttp://www.entechtaiwan.net/forums/viewtopic.php?t=6&highlight=powerstrip+api

Using PS API for framelocking display to video stream ?http://www.entechtaiwan.net/forums/viewtopic.php?t=2450&highlight=reclock

Now do I get *exactly* the frequency I want?http://www.entechtaiwan.net/forums/viewtopic.php?t=1422http://www.entechtaiwan.net/forums/viewtopic.php?t=1356

"That's why I also think about building a modified card, that would allow a nearly continuously variable pixel clock, by the use of VCXOs or as another alternative by coupling audio and video card together with a shared clock source (like the old ATI-AIW)."

PLL Tutorial

How to sync asychronuous clocks

Tutorial Unlocking the Phase Locked Loop (PLL)
http://www.complextoreal.com/tutorial.htm

General Reading

Your application needs a synchronised real-time clock. There surely must
be a correct, or even preferred way of doing so? Wrong! No such
implementation presently exists off the shelf. Creating a real-time
function has to be done from first principles. Having decided on the
precision required and the resources available to implement the design,
only then is it possible to figure out the right sort of solution.
http://ethernet.industrial-networking.com/articles/i22clocks.asp

anonymous user login

Shoutbox

~4d ago

~7d ago

joreg: The Winter Season of vvvv workshops is now over but all recordings are still available for purchase: https://thenodeinstitute.org/ws23-vvvv-intermediates/

~14d ago

schlonzo: Love the new drag and drop functionality for links in latest previews!

~22d ago

joreg: Workshop on 29 02: Create Sequencers and Precise Clock Based Tools. Signup here: https://thenodeinstitute.org/courses/ws23-vvvv-08-create-sequencers-and-precise-clock-based-tools-in-vvvv-gamma/

~29d ago

joreg: Workshop on 22 02: Unlocking Shader Artistry: A Journey through ‘The Book of Shaders’ with FUSE. Signup here: https://thenodeinstitute.org/courses/ws23-vvvv-12-book-of-shaders/

~1mth ago

joreg: Talk and Workshop on February 15 & 16 in Frankfurt: https://visualprogramming.net/blog/vvvv-at-node-code-frankfurt/

~1mth ago

woei: @Joanie_AntiVJ: think so, looks doable

~1mth ago

xd_nitro: Anyone remember who increased projector brightness by removing some components that product the color?

~1mth ago

Joanie_AntiVJ: This looks super interesting (vectors over network) would anyone here know how to implement this in beta? https://github.com/madmappersoftware/Ponk