aboutsummaryrefslogtreecommitdiffstats
path: root/Software/Visual_Studio/MachineStudio/Tango.MachineStudio.UI
diff options
context:
space:
mode:
authorRoy Ben-Shabat <Roy@Twine-s.com>2019-02-17 11:46:27 +0200
committerRoy Ben-Shabat <Roy@Twine-s.com>2019-02-17 11:46:27 +0200
commit0cd0b590f62b31a8874ea21f225ba75c7a37053c (patch)
tree7cfda9f863eb827b5c3ea14eeddf638e73841ffd /Software/Visual_Studio/MachineStudio/Tango.MachineStudio.UI
parent7d7d28fdeab29f74d064e50f19a4985c763ee813 (diff)
downloadTango-0cd0b590f62b31a8874ea21f225ba75c7a37053c.tar.gz
Tango-0cd0b590f62b31a8874ea21f225ba75c7a37053c.zip
Improved firmware upgrade..
Added firmware upgrade type selection to machine studio. Made upload hw config async when connecting. Removed success message for hw upload after connect.
Diffstat (limited to 'Software/Visual_Studio/MachineStudio/Tango.MachineStudio.UI')
-rw-r--r--Software/Visual_Studio/MachineStudio/Tango.MachineStudio.UI/ViewModels/FirmwareUpgradeViewVM.cs40
-rw-r--r--Software/Visual_Studio/MachineStudio/Tango.MachineStudio.UI/ViewModels/MainViewVM.cs18
-rw-r--r--Software/Visual_Studio/MachineStudio/Tango.MachineStudio.UI/Views/FirmwareUpgradeView.xaml17
3 files changed, 62 insertions, 13 deletions
diff --git a/Software/Visual_Studio/MachineStudio/Tango.MachineStudio.UI/ViewModels/FirmwareUpgradeViewVM.cs b/Software/Visual_Studio/MachineStudio/Tango.MachineStudio.UI/ViewModels/FirmwareUpgradeViewVM.cs
index 14b9d0d8e..e3726f1dd 100644
--- a/Software/Visual_Studio/MachineStudio/Tango.MachineStudio.UI/ViewModels/FirmwareUpgradeViewVM.cs
+++ b/Software/Visual_Studio/MachineStudio/Tango.MachineStudio.UI/ViewModels/FirmwareUpgradeViewVM.cs
@@ -50,6 +50,35 @@ namespace Tango.MachineStudio.UI.ViewModels
set { upgradeError = value; RaisePropertyChangedAuto(); }
}
+ private bool _dfu;
+ public bool DFU
+ {
+ get { return _dfu; }
+ set
+ {
+ _dfu = value; RaisePropertyChangedAuto();
+
+ if (_dfu)
+ {
+ UploadTFP = false;
+ }
+ }
+ }
+
+ private bool _uploadTFP;
+ public bool UploadTFP
+ {
+ get { return _uploadTFP; }
+ set
+ {
+ _uploadTFP = value; RaisePropertyChangedAuto();
+
+ if (_uploadTFP)
+ {
+ DFU = false;
+ }
+ }
+ }
public RelayCommand SelectCommand { get; set; }
@@ -59,6 +88,8 @@ namespace Tango.MachineStudio.UI.ViewModels
public FirmwareUpgradeViewVM(IMachineOperator machineOperator, INotificationProvider notificationProvider) : base()
{
+ DFU = true;
+ UploadTFP = true;
_notification = notificationProvider;
_operator = machineOperator;
SelectCommand = new RelayCommand(BrowseForFile);
@@ -101,7 +132,14 @@ namespace Tango.MachineStudio.UI.ViewModels
{
IsFree = false;
- _operator.FirmwareUpgradeMode = FirmwareUpgradeModes.DFU;
+ if (UploadTFP)
+ {
+ _operator.FirmwareUpgradeMode = FirmwareUpgradeModes.DFU | FirmwareUpgradeModes.TFP_PACKAGE;
+ }
+ else
+ {
+ _operator.FirmwareUpgradeMode = FirmwareUpgradeModes.DFU;
+ }
_stream = new FileStream(SelectedFile, FileMode.Open);
Handler = await _operator.UpgradeFirmware(_stream);
diff --git a/Software/Visual_Studio/MachineStudio/Tango.MachineStudio.UI/ViewModels/MainViewVM.cs b/Software/Visual_Studio/MachineStudio/Tango.MachineStudio.UI/ViewModels/MainViewVM.cs
index 573e56fff..1d03dd389 100644
--- a/Software/Visual_Studio/MachineStudio/Tango.MachineStudio.UI/ViewModels/MainViewVM.cs
+++ b/Software/Visual_Studio/MachineStudio/Tango.MachineStudio.UI/ViewModels/MainViewVM.cs
@@ -11,6 +11,7 @@ using System.Windows;
using System.Windows.Controls;
using System.Windows.Media;
using Tango.BL;
+using Tango.BL.Builders;
using Tango.BL.Entities;
using Tango.Core.Commands;
using Tango.Core.DI;
@@ -483,7 +484,7 @@ namespace Tango.MachineStudio.UI.ViewModels
if (x.UploadHardwareConfiguration)
{
- UploadHardwareConfiguration();
+ UploadHardwareConfiguration(false);
}
}
@@ -525,7 +526,7 @@ namespace Tango.MachineStudio.UI.ViewModels
if (x.UploadHardwareConfiguration)
{
- UploadHardwareConfiguration();
+ UploadHardwareConfiguration(false);
}
}
catch (Exception ex)
@@ -615,18 +616,21 @@ namespace Tango.MachineStudio.UI.ViewModels
InvalidateRelayCommands();
}
- private async void UploadHardwareConfiguration()
+ private async void UploadHardwareConfiguration(bool showSuccessMessage = true)
{
try
{
using (ObservablesContext db = ObservablesContext.CreateDefault())
{
- var config = db.Adapter.GetConfiguration(s => s.Guid == ApplicationManager.Machine.ConfigurationGuid);
- var hw = db.Adapter.GetHardwareVersionByMachine(ApplicationManager.Machine.Guid);
+ var config = (await new ConfigurationBuilder(db).Set(ApplicationManager.Machine.ConfigurationGuid).WithIdsPacks().WithHardwareVersion().BuildAsync());
- await ApplicationManager.ConnectedMachine.UploadHardwareConfiguration(hw, config);
+ await ApplicationManager.ConnectedMachine.UploadHardwareConfiguration(config.HardwareVersion, config);
+ }
+
+ if (showSuccessMessage)
+ {
+ NotificationProvider.ShowInfo("Hardware configuration uploaded successfully.");
}
- NotificationProvider.ShowInfo("Hardware configuration uploaded successfully.");
}
catch (Exception ex)
{
diff --git a/Software/Visual_Studio/MachineStudio/Tango.MachineStudio.UI/Views/FirmwareUpgradeView.xaml b/Software/Visual_Studio/MachineStudio/Tango.MachineStudio.UI/Views/FirmwareUpgradeView.xaml
index 4de64db12..9acd0386a 100644
--- a/Software/Visual_Studio/MachineStudio/Tango.MachineStudio.UI/Views/FirmwareUpgradeView.xaml
+++ b/Software/Visual_Studio/MachineStudio/Tango.MachineStudio.UI/Views/FirmwareUpgradeView.xaml
@@ -25,7 +25,7 @@
</Style.Triggers>
</Style>
</UserControl.Style>
-
+
<Grid>
<Grid Margin="10">
<Grid.RowDefinitions>
@@ -58,10 +58,17 @@
<LineBreak/>
<Run>Press 'SELECT' to browse for an .tfp file (Tango Firmware Package).</Run>
</TextBlock>
- <DockPanel Margin="0 30 0 0" Width="600" HorizontalAlignment="Left">
- <Button DockPanel.Dock="Right" Margin="10 0 0 0" Command="{Binding SelectCommand}">SELECT</Button>
- <TextBox Style="{x:Null}" VerticalContentAlignment="Center" BorderBrush="{StaticResource AccentColorBrush}" Padding="5 0" Foreground="DimGray" IsReadOnly="True" Text="{Binding SelectedFile,Mode=OneWay}"></TextBox>
- </DockPanel>
+ <StackPanel>
+ <DockPanel Margin="0 30 0 0" Width="600" HorizontalAlignment="Left">
+ <Button DockPanel.Dock="Right" Margin="10 0 0 0" Command="{Binding SelectCommand}">SELECT</Button>
+ <TextBox Style="{x:Null}" VerticalContentAlignment="Center" BorderBrush="{StaticResource AccentColorBrush}" Padding="5 0" Foreground="DimGray" IsReadOnly="True" Text="{Binding SelectedFile,Mode=OneWay}"></TextBox>
+ </DockPanel>
+
+ <StackPanel Orientation="Horizontal" Margin="0 5 0 0">
+ <RadioButton IsChecked="{Binding DFU,Mode=TwoWay}">DFU</RadioButton>
+ <RadioButton IsChecked="{Binding UploadTFP,Mode=TwoWay}" Margin="20 0 0 0">DFU &amp; Package</RadioButton>
+ </StackPanel>
+ </StackPanel>
</StackPanel>
<Grid Height="60" Grid.Row="1">