private void UploadButton_Click(object sender, EventArgs e)
        {
            if (!ValidateConnectionStatus())
            {
                return;
            }

            m_worker.RunWorkerAsync(new AsyncProcessWrapper(worker =>
            {
                try
                {
                    var dataflashCopy = new byte[m_simple.Data.Length];
                    Buffer.BlockCopy(m_simple.Data, 0, dataflashCopy, 0, m_simple.Data.Length);

                    UpdateUI(() => SaveWorkspaceToDataflash(m_dataflash));

                    m_manager.Write(m_dataflash, dataflashCopy);
                    m_usbConnector.WriteDataflash(new SimpleDataflash {
                        Data = dataflashCopy
                    }, worker);
                }
                catch (Exception ex)
                {
                    s_logger.Warn(ex);
                    InfoBox.Show(GetErrorMessage("uploading settings"));
                }
            }));
        }