diff --git a/.github/scripts/GenerateVersionNumber.ps1 b/.github/scripts/GenerateVersionNumber.ps1
deleted file mode 100644
index 052d48a..0000000
--- a/.github/scripts/GenerateVersionNumber.ps1
+++ /dev/null
@@ -1,38 +0,0 @@
-$latestVersions = $(git tag --merged origin/main)
-$latestVersion = [version]"0.0.0"
-Foreach ($version in $latestVersions) {
- Write-Host $version
- try {
- if (([version]$version) -ge $latestVersion) {
- $latestVersion = $version
- Write-Host "Setting latest version to: $latestVersion"
- }
- } catch {
- Write-Host "Unable to convert $($version). Skipping"
- continue;
- }
-}
-
-$newVersion = [version]$latestVersion
-$phase = ""
-$newVersionString = ""
-switch -regex ($Env:GITHUB_REF) {
- '^refs\/heads\/main*.' {
- $newVersionString = "{0}.{1}.{2}" -f $newVersion.Major, $newVersion.Minor, ($newVersion.Build + 1)
- }
- '^refs\/heads\/feature\/*.' {
- $phase = 'alpha'
- }
- '^refs\/heads\/release\/*.' {
- $phase = 'rc'
- }
- '^refs\/heads\/development*.' {
- $phase = 'beta'
- }
- '^refs\/heads\/hotfix\/*.' {
- $phase = 'hotfix'
- }
-}
-$newVersionString = "{0}.{1}.{2}-{3}-{4}" -f $newVersion.Major, $newVersion.Minor, ($newVersion.Build + 1), $phase, $Env:GITHUB_RUN_NUMBER
-
-Write-Output $newVersionString
diff --git a/.github/scripts/UpdateAssemblyVersion.ps1 b/.github/scripts/UpdateAssemblyVersion.ps1
deleted file mode 100644
index e52b31e..0000000
--- a/.github/scripts/UpdateAssemblyVersion.ps1
+++ /dev/null
@@ -1,40 +0,0 @@
-function Update-SourceVersion {
- Param ([string]$Version)
- #$fullVersion = $Version
- $baseVersion = [regex]::Match($Version, "(\d+.\d+.\d+).*").captures.groups[1].value
- $NewAssemblyVersion = ‘AssemblyVersion("‘ + $baseVersion + ‘.*")’
- Write-Output "AssemblyVersion = $NewAssemblyVersion"
- $NewAssemblyInformationalVersion = ‘AssemblyInformationalVersion("‘ + $Version + ‘")’
- Write-Output "AssemblyInformationalVersion = $NewAssemblyInformationalVersion"
-
- foreach ($o in $input) {
- Write-output $o.FullName
- $TmpFile = $o.FullName + “.tmp”
- get-content $o.FullName |
- ForEach-Object {
- $_ -replace ‘AssemblyVersion\(".*"\)’, $NewAssemblyVersion } |
- ForEach-Object {
- $_ -replace ‘AssemblyInformationalVersion\(".*"\)’, $NewAssemblyInformationalVersion
- } > $TmpFile
- move-item $TmpFile $o.FullName -force
- }
-}
-
-function Update-AllAssemblyInfoFiles ( $version ) {
- foreach ($file in “AssemblyInfo.cs”, “AssemblyInfo.vb” ) {
- get-childitem -Path $Env:GITHUB_WORKSPACE -recurse | Where-Object { $_.Name -eq $file } | Update-SourceVersion $version ;
- }
-}
-
-# validate arguments
-$r = [System.Text.RegularExpressions.Regex]::Match($args[0], "\d+\.\d+\.\d+.*");
-if ($r.Success) {
- Write-Output "Updating Assembly Version to $args ...";
- Update-AllAssemblyInfoFiles $args[0];
-}
-else {
- Write-Output ” “;
- Write-Output “Error: Input version does not match x.y.z format!”
- Write-Output ” “;
- Write-Output "Unable to apply version to AssemblyInfo.cs files";
-}
diff --git a/.github/scripts/ZipBuildOutput.ps1 b/.github/scripts/ZipBuildOutput.ps1
deleted file mode 100644
index 3f1998b..0000000
--- a/.github/scripts/ZipBuildOutput.ps1
+++ /dev/null
@@ -1,41 +0,0 @@
-# Uncomment these for local testing
-# $Env:GITHUB_WORKSPACE = "C:\Working Directories\PD\essentials"
-# $Env:SOLUTION_FILE = "PepperDashEssentials"
-# $Env:VERSION = "0.0.0-buildType-test"
-
-# Sets the root directory for the operation
-$destination = "$($Env:GITHUB_HOME)\output"
-New-Item -ItemType Directory -Force -Path ($destination)
-Get-ChildItem ($destination)
-$exclusions = @(git submodule foreach --quiet 'echo $name')
-# Trying to get any .json schema files (not currently working)
-# Gets any files with the listed extensions.
-Get-ChildItem -recurse -Path "$($Env:GITHUB_WORKSPACE)" -include "*.clz", "*.cpz", "*.cplz" | ForEach-Object {
- $allowed = $true;
- # Exclude any files in submodules
- foreach ($exclude in $exclusions) {
- if ((Split-Path $_.FullName -Parent).contains("$($exclude)")) {
- $allowed = $false;
- break;
- }
- }
- if ($allowed) {
- Write-Host "allowing $($_)"
- $_;
- }
-} | Copy-Item -Destination ($destination) -Force
-Write-Host "Getting matching files..."
-# Get any files from the output folder that match the following extensions
-Get-ChildItem -Path $destination | Where-Object {($_.Extension -eq ".clz") -or ($_.Extension -eq ".cpz" -or ($_.Extension -eq ".cplz"))} | ForEach-Object {
- # Replace the extensions with dll and xml and create an array
- $filenames = @($($_ -replace "cpz|clz|cplz", "dll"), $($_ -replace "cpz|clz|cplz", "xml"))
- Write-Host "Filenames:"
- Write-Host $filenames
- if ($filenames.length -gt 0) {
- # Attempt to get the files and return them to the output directory
- Get-ChildItem -Recurse -Path "$($Env:GITHUB_WORKSPACE)" -include $filenames | Copy-Item -Destination ($destination) -Force
- }
-}
-Compress-Archive -Path $destination -DestinationPath "$($Env:GITHUB_WORKSPACE)\$($Env:SOLUTION_FILE)-$($Env:VERSION).zip" -Force
-Write-Host "Output Contents post Zip"
-Get-ChildItem -Path $destination
\ No newline at end of file
diff --git a/.github/workflows/docker.yml b/.github/workflows/docker.yml
deleted file mode 100644
index 4a17707..0000000
--- a/.github/workflows/docker.yml
+++ /dev/null
@@ -1,102 +0,0 @@
-name: Branch Build Using Docker
-
-on:
- push:
- branches:
- - feature/*
- - hotfix/*
- - release/*
- - main
- - development
-
-env:
- # solution path doesn't need slashes unless there it is multiple folders deep
- # solution name does not include extension. .sln is assumed
- SOLUTION_PATH: PDT.PanasonicDisplay.EPI
- SOLUTION_FILE: PDT.PanasonicDisplay.EPI
- # Do not edit this, we're just creating it here
- VERSION: 0.0.0-buildtype-buildnumber
- # Defaults to debug for build type
- BUILD_TYPE: Debug
- # Defaults to main as the release branch. Change as necessary
- RELEASE_BRANCH: main
-jobs:
- Build_Project:
- runs-on: windows-latest
- steps:
- # First we checkout the source repo
- - name: Checkout repo
- uses: actions/checkout@v2
- with:
- fetch-depth: 0
- # And any submodules
- - name: Checkout submodules
- shell: bash
- run: |
- git config --global url."https://github.com/".insteadOf "git@github.com:"
- auth_header="$(git config --local --get http.https://github.com/.extraheader)"
- git submodule sync --recursive
- git -c "http.extraheader=$auth_header" -c protocol.version=2 submodule update --init --force --recursive --depth=1
- # Set the BUILD_TYPE environment variable
- - name: Set Build to Release if triggered from main
- run: |
- if("$($Env:GITHUB_REF)".contains("$($Env:RELEASE_BRANCH)")) {
- Write-Host "Setting build type to Release"
- Write-Output "::set-env name=BUILD_TYPE::Release"
- }
- # Fetch all tags
- - name: Fetch tags
- run: git fetch --tags
- # Generate the appropriate version number
- - name: Set Version Number
- shell: powershell
- run: |
- $version = ./.github/scripts/GenerateVersionNumber.ps1
- Write-Output "::set-env name=VERSION::$version"
- # Use the version number to set the version of the assemblies
- - name: Update AssemblyInfo.cs
- shell: powershell
- run: |
- Write-Output ${{ env.VERSION }}
- ./.github/scripts/UpdateAssemblyVersion.ps1 ${{ env.VERSION }}
- # Login to Docker
- - name: Login to Docker
- uses: azure/docker-login@v1
- with:
- username: ${{ secrets.DOCKERHUB_USER }}
- password: ${{ secrets.DOCKERHUB_PASSWORD }}
- # Build the solutions in the docker image
- - name: Build Solution
- shell: powershell
- run: |
- Invoke-Expression "docker run --rm --mount type=bind,source=""$($Env:GITHUB_WORKSPACE)"",target=""c:/project"" pepperdash/sspbuilder c:\cihelpers\vsidebuild.exe -Solution ""c:\project\$($Env:SOLUTION_PATH)\$($Env:SOLUTION_FILE).sln"" -BuildSolutionConfiguration $($ENV:BUILD_TYPE)"
- # Zip up the output files as needed
- - name: Zip Build Output
- shell: powershell
- run: ./.github/scripts/ZipBuildOutput.ps1
- - name: Upload Build Output
- uses: actions/upload-artifact@v1
- with:
- name: Build
- path: ./${{ env.SOLUTION_FILE}}-${{ env.VERSION}}.zip
- # Create the release on the source repo
- - name: Create Release
- id: create_release
- uses: actions/create-release@v1
- with:
- tag_name: ${{ env.VERSION }}
- release_name: ${{ env.VERSION }}
- prerelease: ${{contains('debug', env.BUILD_TYPE)}}
- env:
- GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
- # Upload the build package to the release
- - name: Upload Release Package
- id: upload_release
- uses: actions/upload-release-asset@v1
- with:
- upload_url: ${{ steps.create_release.outputs.upload_url }}
- asset_path: ./${{ env.SOLUTION_FILE}}-${{ env.VERSION}}.zip
- asset_name: ${{ env.SOLUTION_FILE}}-${{ env.VERSION}}.zip
- asset_content_type: application/zip
- env:
- GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
diff --git a/.github/workflows/essentialsplugins-betabuilds-caller.yml b/.github/workflows/essentialsplugins-betabuilds-caller.yml
new file mode 100644
index 0000000..8ca618c
--- /dev/null
+++ b/.github/workflows/essentialsplugins-betabuilds-caller.yml
@@ -0,0 +1,22 @@
+name: Beta Build
+
+on:
+ push:
+ branches-ignore:
+ - "main"
+
+ workflow_dispatch:
+ inputs:
+ branch:
+ description: 'Branch to build'
+ required: true
+ type: string
+
+jobs:
+ call-workflow:
+ uses: PepperDash/workflow-templates/.github/workflows/essentialsplugins-builds.yml@main
+ secrets: inherit
+ with:
+ branch: ${{ github.ref_name }}
+ default-branch: "main"
+
diff --git a/.github/workflows/essentialsplugins-releasebuilds-caller.yml b/.github/workflows/essentialsplugins-releasebuilds-caller.yml
new file mode 100644
index 0000000..d17c1d5
--- /dev/null
+++ b/.github/workflows/essentialsplugins-releasebuilds-caller.yml
@@ -0,0 +1,26 @@
+
+name: Release Build
+
+on:
+ release:
+ types:
+ - released
+ branches:
+ - "main"
+
+ workflow_dispatch:
+ inputs:
+ branch:
+ description: 'Branch to build'
+ required: true
+ type: string
+
+jobs:
+ call-workflow:
+ uses: PepperDash/workflow-templates/.github/workflows/essentialsplugins-builds.yml@main
+ secrets: inherit
+ with:
+ branch: "main"
+ default-branch: "main"
+
+
diff --git a/.gitignore b/.gitignore
index 9c3379a..b2c83fd 100644
--- a/.gitignore
+++ b/.gitignore
@@ -5,3 +5,4 @@ PDT.PanasonicDisplay.EPI/obj/Debug/PDT.PanasonicDisplay.EPI.dll
PDT.PanasonicDisplay.EPI/obj/Debug/PDT.PanasonicDisplay.EPI.csproj.FileListAbsolute.txt
PDT.PanasonicDisplay.EPI/bin/Debug/
PDT.PanasonicDisplay.EPI/bin/Release/
+packages/
diff --git a/.gitmodules b/.gitmodules
index 726935e..e69de29 100644
--- a/.gitmodules
+++ b/.gitmodules
@@ -1,3 +0,0 @@
-[submodule "EssentialsBuilds"]
- path = EssentialsBuilds
-url=https://github.com/PepperDash/Essentials-Builds.git
\ No newline at end of file
diff --git a/EssentialsBuilds b/EssentialsBuilds
deleted file mode 160000
index e9f64d5..0000000
--- a/EssentialsBuilds
+++ /dev/null
@@ -1 +0,0 @@
-Subproject commit e9f64d5d7be181e88e593581a595b0c54e421baf
diff --git a/GetNugetPackages.bat b/GetNugetPackages.bat
new file mode 100644
index 0000000..9b6def3
--- /dev/null
+++ b/GetNugetPackages.bat
@@ -0,0 +1,2 @@
+@Echo ON
+nuget install .\packages.config -OutputDirectory .\packages -excludeVersion
diff --git a/PDT.PanasonicDisplay.EPI/PDT-Panasonic-Display-Epi.nuspec b/PDT.PanasonicDisplay.EPI/PDT-Panasonic-Display-Epi.nuspec
new file mode 100644
index 0000000..30a650e
--- /dev/null
+++ b/PDT.PanasonicDisplay.EPI/PDT-Panasonic-Display-Epi.nuspec
@@ -0,0 +1,21 @@
+
+
+
+ PepperDash.Essentials.Plugin.PanasonicDispaly
+ 1.0.0
+ Panasonic Dispaly Plugin
+ PepperDash Technologies
+ pepperdash
+ false
+ MIT
+ https://github.com/PepperDash/PanasonicDisplay.EPI
+ Copyright 2021
+ Extron Dmp DSP plugin used with PepperDash Essentials SIMPL# Pro application to expose functionality in SIMPL Windows using bridges.
+ crestron 3series 4series
+
+
+
+
+
+
+
diff --git a/PDT.PanasonicDisplay.EPI/PDT.PanasonicDisplay.EPI.csproj b/PDT.PanasonicDisplay.EPI/PDT.PanasonicDisplay.EPI.csproj
index 9037cae..d303f92 100644
--- a/PDT.PanasonicDisplay.EPI/PDT.PanasonicDisplay.EPI.csproj
+++ b/PDT.PanasonicDisplay.EPI/PDT.PanasonicDisplay.EPI.csproj
@@ -50,22 +50,26 @@
False
..\..\..\..\..\..\..\..\..\ProgramData\Crestron\SDK\SSPDevices\Crestron.SimplSharpPro.DeviceSupport.dll
+
+ False
+ ..\packages\PepperDashEssentials\lib\net35\Essentials Devices Common.dll
+
-
+
False
- ..\EssentialsBuilds\PepperDashEssentials.dll
+ ..\packages\PepperDashEssentials\lib\net35\PepperDashEssentials.dll
-
+
False
- ..\EssentialsBuilds\PepperDash_Core.dll
+ ..\packages\PepperDashEssentials\lib\net35\PepperDash_Core.dll
-
+
False
- ..\EssentialsBuilds\PepperDash_Essentials_Core.dll
+ ..\packages\PepperDashEssentials\lib\net35\PepperDash_Essentials_Core.dll
-
+
False
- ..\EssentialsBuilds\PepperDash_Essentials_DM.dll
+ ..\packages\PepperDashEssentials\lib\net35\PepperDash_Essentials_DM.dll
False
@@ -101,6 +105,7 @@
+
diff --git a/PDT.PanasonicDisplay.EPI/PDT.PanasonicDisplay.EPI.suo b/PDT.PanasonicDisplay.EPI/PDT.PanasonicDisplay.EPI.suo
index a46c8f1..c6a0796 100644
Binary files a/PDT.PanasonicDisplay.EPI/PDT.PanasonicDisplay.EPI.suo and b/PDT.PanasonicDisplay.EPI/PDT.PanasonicDisplay.EPI.suo differ
diff --git a/PDT.PanasonicDisplay.EPI/PDT.PanasonicDisplay.projectinfo b/PDT.PanasonicDisplay.EPI/PDT.PanasonicDisplay.projectinfo
index 354057d..fa924c2 100644
Binary files a/PDT.PanasonicDisplay.EPI/PDT.PanasonicDisplay.projectinfo and b/PDT.PanasonicDisplay.EPI/PDT.PanasonicDisplay.projectinfo differ
diff --git a/PDT.PanasonicDisplay.EPI/PanasonicDisplay.cs b/PDT.PanasonicDisplay.EPI/PanasonicDisplay.cs
index 0c3ce53..caca2ec 100644
--- a/PDT.PanasonicDisplay.EPI/PanasonicDisplay.cs
+++ b/PDT.PanasonicDisplay.EPI/PanasonicDisplay.cs
@@ -94,6 +94,11 @@ public class PanasonicDisplay : TwoWayDisplayBase, IBasicVolumeWithFeedback, ICo
public const string SelectIrCmd = "";
public const string ExitIrCmd = "";
+ public const string VideoMuteOnCmd = "\02VMT:1\03";
+ public const string VideoMuteOffCmd = "\02VMT:0\03";
+ public const string VideoMutePartialCmd = "\x02VMT:";
+ public const string VideoMutePoll = "\02QVM\03";
+
public const string PollInput = "\x02QMI\x03";
#endregion
@@ -102,7 +107,21 @@ public class PanasonicDisplay : TwoWayDisplayBase, IBasicVolumeWithFeedback, ICo
bool _IsCoolingDown;
ushort _VolumeLevel;
bool _IsMuted;
-
+
+ bool _VideoIsMuted;
+ public bool VideoIsMuted
+ {
+ get
+ {
+ return _VideoIsMuted;
+ }
+ set
+ {
+ _VideoIsMuted = value;
+
+ }
+ }
+ public BoolFeedback VideoIsMutedFeedback;
protected override Func PowerIsOnFeedbackFunc { get { return () => _PowerIsOn; } }
protected override Func IsCoolingDownFeedbackFunc { get { return () => _IsCoolingDown; } }
@@ -150,7 +169,8 @@ void Init()
VolumeLevelFeedback = new IntFeedback(() => { return _VolumeLevel; });
MuteFeedback = new BoolFeedback(() => _IsMuted);
InputNumberFeedback = new IntFeedback(() => { Debug.Console(2, this, "CHange Input number {0}", InputNumber); return InputNumber; });
-
+ VideoIsMutedFeedback = new BoolFeedback(() => { return VideoIsMuted; });
+
// Set the warmup time
WarmupTime = 17000;
}
@@ -266,6 +286,16 @@ void Port_LineReceived(object dev, GenericCommMethodReceiveTextArgs args)
}
break;
}
+ case "QVM:1":
+ {
+ VideoIsMuted = true;
+ break;
+ }
+ case "QVM:0":
+ {
+ VideoIsMuted = false;
+ break;
+ }
}
}
@@ -473,6 +503,30 @@ void SetVolume(ushort level)
_VolumeLevel = level;
VolumeLevelFeedback.FireUpdate();
}
+ public void VideoMuteOff()
+ {
+ Send(VideoMuteOffCmd);
+ Send(VideoMutePoll);
+ }
+
+ public void VideoMuteOn()
+ {
+ Send(VideoMuteOnCmd);
+ Send(VideoMutePoll);
+ }
+
+ public void VideoMuteToggle()
+ {
+ if (VideoIsMuted)
+ {
+ VideoMuteOff();
+ }
+ else
+ {
+ VideoMuteOn();
+ }
+ }
+
#region IBasicVolumeWithFeedback Members
@@ -549,12 +603,12 @@ public void VolumeUp(bool pressRelease)
///
public void LinkToApi(BasicTriList trilist, uint joinStart, string joinMapKey, EiscApiAdvanced bridge)
{
- DisplayControllerJoinMap joinMap = new DisplayControllerJoinMap(joinStart, typeof(DisplayControllerJoinMap));
+ PanasonicDisplayJoinMap joinMap = new PanasonicDisplayJoinMap(joinStart);
var JoinMapSerialized = JoinMapHelper.GetJoinMapForDevice(joinMapKey);
if (!string.IsNullOrEmpty(JoinMapSerialized))
- joinMap = JsonConvert.DeserializeObject(JoinMapSerialized);
+ joinMap = JsonConvert.DeserializeObject(JoinMapSerialized);
if (bridge != null)
{
@@ -652,6 +706,13 @@ public void LinkToApi(BasicTriList trilist, uint joinStart, string joinMapKey, E
volumeDisplayWithFeedback.MuteFeedback.LinkInputSig(trilist.BooleanInput[joinMap.VolumeMute.JoinNumber]);
}
}
+ trilist.SetSigTrueAction(joinMap.VideoMuteOff.JoinNumber, () => this.VideoMuteOff());
+ trilist.SetSigTrueAction(joinMap.VideoMuteOn.JoinNumber, () => this.VideoMuteOn());
+ trilist.SetSigTrueAction(joinMap.VideoMuteToggle.JoinNumber, () => this.VideoMuteToggle());
+ VideoIsMutedFeedback.LinkInputSig(trilist.BooleanInput[joinMap.VideoMuteOn.JoinNumber]);
+ VideoIsMutedFeedback.LinkComplementInputSig(trilist.BooleanInput[joinMap.VideoMuteOff.JoinNumber]);
+ VideoIsMutedFeedback.LinkInputSig(trilist.BooleanInput[joinMap.VideoMuteToggle.JoinNumber]);
+
}
void CurrentInputFeedback_OutputChange(object sender, FeedbackEventArgs e)
diff --git a/PDT.PanasonicDisplay.EPI/PanasonicDisplayJoinMap.cs b/PDT.PanasonicDisplay.EPI/PanasonicDisplayJoinMap.cs
new file mode 100644
index 0000000..dc491e2
--- /dev/null
+++ b/PDT.PanasonicDisplay.EPI/PanasonicDisplayJoinMap.cs
@@ -0,0 +1,45 @@
+using System;
+using System.Collections.Generic;
+using System.Linq;
+using System.Text;
+using Crestron.SimplSharp;
+using PepperDash.Essentials.Core.Bridges;
+using PepperDash.Essentials.Core;
+
+namespace PDT.PanasonicDisplay.EPI
+{
+ public class PanasonicDisplayJoinMap : DisplayControllerJoinMap
+ {
+ public PanasonicDisplayJoinMap(uint joinStart)
+ : base(joinStart, typeof(PanasonicDisplayJoinMap))
+ {
+ }
+ [JoinName("VideoMuteOff")]
+ public JoinDataComplete VideoMuteOff =
+ new JoinDataComplete(new JoinData { JoinNumber = 21, JoinSpan = 1 },
+ new JoinMetadata
+ {
+ Description = "VideoMuteOff",
+ JoinCapabilities = eJoinCapabilities.ToFromSIMPL,
+ JoinType = eJoinType.Digital
+ });
+ [JoinName("VideoMuteOn")]
+ public JoinDataComplete VideoMuteOn =
+ new JoinDataComplete(new JoinData { JoinNumber = 22, JoinSpan = 1 },
+ new JoinMetadata
+ {
+ Description = "VideoMuteOn",
+ JoinCapabilities = eJoinCapabilities.ToFromSIMPL,
+ JoinType = eJoinType.Digital
+ });
+ [JoinName("VideoMuteToggle")]
+ public JoinDataComplete VideoMuteToggle =
+ new JoinDataComplete(new JoinData { JoinNumber = 23, JoinSpan = 1 },
+ new JoinMetadata
+ {
+ Description = "VideoMuteOn",
+ JoinCapabilities = eJoinCapabilities.ToFromSIMPL,
+ JoinType = eJoinType.Digital
+ });
+ }
+}
\ No newline at end of file
diff --git a/PDT.PanasonicDisplay.EPI/bin/Debug/Crestron.SimplSharpPro.DM.dll b/PDT.PanasonicDisplay.EPI/bin/Debug/Crestron.SimplSharpPro.DM.dll
index ee5fc38..bdbcd63 100644
Binary files a/PDT.PanasonicDisplay.EPI/bin/Debug/Crestron.SimplSharpPro.DM.dll and b/PDT.PanasonicDisplay.EPI/bin/Debug/Crestron.SimplSharpPro.DM.dll differ
diff --git a/PDT.PanasonicDisplay.EPI/bin/Debug/Crestron.SimplSharpPro.EthernetCommunications.dll b/PDT.PanasonicDisplay.EPI/bin/Debug/Crestron.SimplSharpPro.EthernetCommunications.dll
index dbdd889..c42a585 100644
Binary files a/PDT.PanasonicDisplay.EPI/bin/Debug/Crestron.SimplSharpPro.EthernetCommunications.dll and b/PDT.PanasonicDisplay.EPI/bin/Debug/Crestron.SimplSharpPro.EthernetCommunications.dll differ
diff --git a/PDT.PanasonicDisplay.EPI/bin/Debug/Crestron.SimplSharpPro.Fusion.dll b/PDT.PanasonicDisplay.EPI/bin/Debug/Crestron.SimplSharpPro.Fusion.dll
index b9f88ff..8cbf011 100644
Binary files a/PDT.PanasonicDisplay.EPI/bin/Debug/Crestron.SimplSharpPro.Fusion.dll and b/PDT.PanasonicDisplay.EPI/bin/Debug/Crestron.SimplSharpPro.Fusion.dll differ
diff --git a/PDT.PanasonicDisplay.EPI/bin/Debug/Crestron.SimplSharpPro.Gateways.dll b/PDT.PanasonicDisplay.EPI/bin/Debug/Crestron.SimplSharpPro.Gateways.dll
index 92ca34d..1cb8aa2 100644
Binary files a/PDT.PanasonicDisplay.EPI/bin/Debug/Crestron.SimplSharpPro.Gateways.dll and b/PDT.PanasonicDisplay.EPI/bin/Debug/Crestron.SimplSharpPro.Gateways.dll differ
diff --git a/PDT.PanasonicDisplay.EPI/bin/Debug/Crestron.SimplSharpPro.GeneralIO.dll b/PDT.PanasonicDisplay.EPI/bin/Debug/Crestron.SimplSharpPro.GeneralIO.dll
index 04aa0b4..85b5042 100644
Binary files a/PDT.PanasonicDisplay.EPI/bin/Debug/Crestron.SimplSharpPro.GeneralIO.dll and b/PDT.PanasonicDisplay.EPI/bin/Debug/Crestron.SimplSharpPro.GeneralIO.dll differ
diff --git a/PDT.PanasonicDisplay.EPI/bin/Debug/Crestron.SimplSharpPro.Lighting.dll b/PDT.PanasonicDisplay.EPI/bin/Debug/Crestron.SimplSharpPro.Lighting.dll
index f4e8c4f..a0d4a5c 100644
Binary files a/PDT.PanasonicDisplay.EPI/bin/Debug/Crestron.SimplSharpPro.Lighting.dll and b/PDT.PanasonicDisplay.EPI/bin/Debug/Crestron.SimplSharpPro.Lighting.dll differ
diff --git a/PDT.PanasonicDisplay.EPI/bin/Debug/Crestron.SimplSharpPro.Shades.dll b/PDT.PanasonicDisplay.EPI/bin/Debug/Crestron.SimplSharpPro.Shades.dll
index 7cd61a4..8718ff2 100644
Binary files a/PDT.PanasonicDisplay.EPI/bin/Debug/Crestron.SimplSharpPro.Shades.dll and b/PDT.PanasonicDisplay.EPI/bin/Debug/Crestron.SimplSharpPro.Shades.dll differ
diff --git a/PDT.PanasonicDisplay.EPI/bin/Debug/Crestron.SimplSharpPro.UI.dll b/PDT.PanasonicDisplay.EPI/bin/Debug/Crestron.SimplSharpPro.UI.dll
index 0178897..b18cae5 100644
Binary files a/PDT.PanasonicDisplay.EPI/bin/Debug/Crestron.SimplSharpPro.UI.dll and b/PDT.PanasonicDisplay.EPI/bin/Debug/Crestron.SimplSharpPro.UI.dll differ
diff --git a/packages.config b/packages.config
new file mode 100644
index 0000000..2affcb3
--- /dev/null
+++ b/packages.config
@@ -0,0 +1,3 @@
+
+
+
\ No newline at end of file