private void SyncTime()
        {
            var time   = RTC.CurrentTime();
            var millis = BitConverter.GetBytes(Clock.Instance.ElapsedMilliseconds);

            var dataIndex = _metaDataCount;

            _dataArray[dataIndex++] = time[0];
            _dataArray[dataIndex++] = time[1];
            _dataArray[dataIndex++] = time[2];

            _dataArray[dataIndex++] = millis[0];
            _dataArray[dataIndex++] = millis[1];
            _dataArray[dataIndex++] = millis[2];
            _dataArray[dataIndex++] = millis[3];
            _dataArray[dataIndex++] = millis[4];
            _dataArray[dataIndex++] = millis[5];
            _dataArray[dataIndex++] = millis[6];
            _dataArray[dataIndex]   = millis[7];

            Array.Copy(_dataArray, _workItem.PacketData, 0);

            Thread.Sleep(_delay);
        }