Example #1
0
 public X10()
 {
     x10lib = new XTenManager();
     x10lib.ModuleChanged += X10lib_ModuleChanged;
     x10lib.RfDataReceived += X10lib_RfDataReceived;
     x10lib.RfSecurityReceived += X10lib_RfSecurityReceived;
     securityModules = new List<InterfaceModule>();
 }
Example #2
0
 public X10Module(XTenManager x10manager, string code)
 {
     x10 = x10manager;
     Code = code;
     houseCode = Utility.HouseCodeFromString(code);
     unitCode = Utility.UnitCodeFromString(code);
     Level = 0.0;
     Description = "";
 }
Example #3
0
 public X10Module(XTenManager x10manager, string code)
 {
     x10         = x10manager;
     Code        = code;
     houseCode   = Utility.HouseCodeFromString(code);
     unitCode    = Utility.UnitCodeFromString(code);
     Level       = 0.0;
     Description = "";
 }
Example #4
0
        public X10()
        {
            string assemblyFolder = MigService.GetAssemblyDirectory(this.GetType().Assembly);
            var libusblink = Path.Combine(assemblyFolder, "libusb-1.0.so");
            // RaspBerry Pi armel dependency check and needed symlink
            if ((File.Exists("/lib/arm-linux-gnueabi/libusb-1.0.so.0.1.0") || File.Exists("/lib/arm-linux-gnueabihf/libusb-1.0.so.0.1.0")) && !File.Exists(libusblink))
            {
                MigService.ShellCommand("ln", " -s \"/lib/arm-linux-gnueabi/libusb-1.0.so.0.1.0\" \"" + libusblink + "\"");
            }
            // Debian/Ubuntu 64bit dependency and needed symlink check
            if (File.Exists("/lib/x86_64-linux-gnu/libusb-1.0.so.0") && !File.Exists(libusblink))
            {
                MigService.ShellCommand("ln", " -s \"/lib/x86_64-linux-gnu/libusb-1.0.so.0\" \"" + libusblink + "\"");
            }

            x10lib = new XTenManager();
            x10lib.ModuleChanged += X10lib_ModuleChanged;
            x10lib.RfDataReceived += X10lib_RfDataReceived;
            x10lib.RfSecurityReceived += X10lib_RfSecurityReceived;
            securityModules = new List<InterfaceModule>();
        }
Example #5
0
 public X10()
 {
     x10lib = new XTenManager();
     x10lib.PropertyChanged += HandlePropertyChanged;
     x10lib.RfDataReceived += new Action<RfDataReceivedAction>(x10lib_RfDataReceived);
 }
Example #6
0
 public X10()
 {
     x10lib = new XTenManager();
     x10lib.ModuleChanged += X10lib_ModuleChanged;
     x10lib.RfDataReceived += X10lib_RfDataReceived;
 }
Example #7
0
 public void InterfaceEnable(string domain)
 {
     try
     {
         switch (domain)
         {
         case Domains.HomeAutomation_ZWave:
             var zwaveInterface = (GetInterface(Domains.HomeAutomation_ZWave) as MIG.Interfaces.HomeAutomation.ZWave);
             if (zwaveController != null)
             {
                 zwaveController.DiscoveryEvent -= zwaveController_DiscoveryEvent;
             }
             zwaveInterface.SetPortName(systemConfiguration.GetInterfaceOption(
                 Domains.HomeAutomation_ZWave,
                 "Port"
             ).Value.Replace(
                 "|",
                 "/"
             ));
             zwaveInterface.Connect();
             zwaveController = zwaveInterface.ZWaveController;
             if (zwaveController != null)
             {
                 zwaveController.DiscoveryEvent += zwaveController_DiscoveryEvent;
             }
     //                    LoadModules();
     //                        RefreshModules(domain, true);
             break;
         case Domains.HomeAutomation_X10:
             var x10Interface = (GetInterface(Domains.HomeAutomation_X10) as MIG.Interfaces.HomeAutomation.X10);
             x10Interface.SetPortName(systemConfiguration.GetInterfaceOption(
                 Domains.HomeAutomation_X10,
                 "Port"
             ).Value.Replace(
                 "|",
                 "/"
             ));
             x10Interface.SetHouseCodes(systemConfiguration.GetInterfaceOption(
                 Domains.HomeAutomation_X10,
                 "HouseCodes"
             ).Value);
             x10Interface.Connect();
             x10Controller = x10Interface.X10Controller;
     //                    LoadModules();
             RefreshModules(domain, true);
             break;
         case Domains.HomeAutomation_W800RF:
             var w800rfInterface = (GetInterface(Domains.HomeAutomation_W800RF) as MIG.Interfaces.HomeAutomation.W800RF);
             w800rfInterface.SetPortName(systemConfiguration.GetInterfaceOption(
                 Domains.HomeAutomation_W800RF,
                 "Port"
             ).Value);
             w800rfInterface.Connect();
     //                    LoadModules();
             RefreshModules(domain, true);
             break;
         case Domains.EmbeddedSystems_Weeco4mGPIO:
             var weeco4mInterface = (GetInterface(Domains.EmbeddedSystems_Weeco4mGPIO) as MIG.Interfaces.EmbeddedSystems.Weeco4mGPIO);
             weeco4mInterface.SetInputPin(uint.Parse(systemConfiguration.GetInterfaceOption(
                 Domains.EmbeddedSystems_Weeco4mGPIO,
                 "InputPin"
             ).Value));
             weeco4mInterface.SetPulsePerWatt(double.Parse(systemConfiguration.GetInterfaceOption(
                 Domains.EmbeddedSystems_Weeco4mGPIO,
                 "PulsePerWatt"
             ).Value));
             weeco4mInterface.Connect();
             RefreshModules(domain, true);
             break;
         default:
             GetInterface(domain).Connect();
             RefreshModules(domain, true);
             break;
         }
     }
     catch (Exception ex)
     {
         HomeGenieService.LogEvent(
             Domains.HomeAutomation_HomeGenie,
             "InterfaceEnable()",
             ex.Message,
             "Exception.StackTrace",
             ex.StackTrace
         );
     }
 }
Example #8
0
 public void InterfaceDisable(string domain)
 {
     try
     {
         switch (domain)
         {
         case Domains.HomeAutomation_ZWave:
             GetInterface(domain).Disconnect();
             if (zwaveController != null)
             {
                 zwaveController.DiscoveryEvent -= zwaveController_DiscoveryEvent;
             }
             zwaveController = null;
             break;
         case Domains.HomeAutomation_X10:
             GetInterface(domain).Disconnect();
             x10Controller = null;
             break;
         default:
             GetInterface(domain).Disconnect();
             break;
         }
         RefreshModules(domain, true);
     }
     catch (Exception ex)
     {
         HomeGenieService.LogEvent(
             Domains.HomeAutomation_HomeGenie,
             "InterfaceDisable()",
             ex.Message,
             "Exception.StackTrace",
             ex.StackTrace
         );
     }
 }