Exemplo n.º 1
0
            private static void Main()
            {
                var devices = DeviceDiscovery.FindHidDevices(new SerialStringMatcher("aimforfs.eu:RMP"));
                var device  = new UsbHidDevice(devices[0].Key);

                var command = new USB.Classes.Messaging.CommandMessage(0x20, new byte[] {
                    16,
                    0, (1 << 0) + (1 << 3) + (1 << 6) + (1 << 7) + (1 << 4),
                    1, 0x0,
                    2, 0x0,
                    3, 1 << 1,
                        4, (1 << 0) + (1 << 2) + (1 << 3) + (1 << 4) + (1 << 6) + (1 << 7),
                        5, (1 << 3) + (1 << 5),
                        6, 0x0,
                        7, (1 << 0) + (1 << 2) + (1 << 4) + (1 << 5) + (1 << 7),
                        8, (1 << 4) + (1 << 3) + (1 << 5) + (1 << 6),
                        9, (1 << 0) + (1 << 1) + (1 << 4) + (1 << 3) + (1 << 5) + (1 << 7),
                        10, (1 << 0) + (1 << 1) + (1 << 4) + (1 << 3) + (1 << 5) + (1 << 7),
                        11, (1 << 4) + (1 << 3) + (1 << 5) + (1 << 6),
                        12, (1 << 0) + (1 << 2) + (1 << 4) + (1 << 5) + (1 << 7),
                        13, (1 << 0) + (1 << 3) + (1 << 6) + (1 << 7) + (1 << 4),
                        14, (1 << 3) + (1 << 5),
                        15, (1 << 0) + (1 << 2) + (1 << 3) + (1 << 4) + (1 << 6) + (1 << 7)
                }, device.OutputReportByteLength);

                device.SendMessage(command);

                System.Diagnostics.Debug.WriteLine(devices);
            }
Exemplo n.º 2
0
        private void GPSReader_Load(object sender, EventArgs e)
        {
            try
            {
                #region 检测USB设备
                showGPS = new ShowGPSData(show_GPSData);//初始化委托

                device.TargetVendorId  = 0x46d;
                device.TargetProductId = 0xc077;

                device.TargetVendorId  = 0x413c;
                device.TargetProductId = 0x2107;

                // device.TargetVendorId = 0x091E;
                //device.TargetProductId = 0xc077;

                bool DevFound = DeviceDiscovery.FindTargetDevice(ref device);
                if (DevFound)
                {
                    MessageBox.Show("检测到USB外设!", "测试测试", MessageBoxButtons.YesNoCancel,
                                    MessageBoxIcon.Warning, MessageBoxDefaultButton.Button1);
                }
                #endregion
            }
            catch (Exception ex)
            {
                Log.WriteLog.Write("GPSReader_USB", "GPSReader_Load", ex.Message);
            }
        }
Exemplo n.º 3
0
 private void DeviceChangeNotifierDeviceAttached()
 {
     if (IsDeviceConnected)
     {
         Disconnect();
     }
     DeviceDiscovery.FindTargetDevice(ref _deviceInformation);
 }
Exemplo n.º 4
0
        internal void Start(DeviceDiscovery deviceDiscovery, Func <List <string> > localServersLookup)
        {
            _localServersLookup = localServersLookup;

            _deviceDiscovery = deviceDiscovery;
            //deviceDiscovery.DeviceDiscovered += deviceDiscovery_DeviceDiscovered;
            deviceDiscovery.DeviceLeft += deviceDiscovery_DeviceLeft;
        }
Exemplo n.º 5
0
        public void FindFirstDevice()
        {
            var discovery = new DeviceDiscovery();
            var dac       = discovery.FindFirstDevice();
            var name      = discovery.GetDeviceName(dac);
            var ip        = discovery.GetDeviceIp(dac);

            Assert.AreEqual("ether dream 8763fa", name);
            Assert.AreEqual("192.168.1.111", ip);
        }
Exemplo n.º 6
0
        public void DacTest()
        {
            var discovery = new DeviceDiscovery();
            var dac       = discovery.FindFirstDevice();
            var name      = discovery.GetDeviceName(dac);
            var ip        = discovery.GetDeviceIp(dac);

            Dac etherDream = new Dac(ip);
            var points     = MakePoints(1000);

            etherDream.StreamPoints(points);
        }
Exemplo n.º 7
0
 public PlayToController(SessionInfo session, ISessionManager sessionManager, IItemRepository itemRepository, ILibraryManager libraryManager, ILogger logger, IDlnaManager dlnaManager, IUserManager userManager, IImageProcessor imageProcessor, string serverAddress, DeviceDiscovery deviceDiscovery)
 {
     _session         = session;
     _itemRepository  = itemRepository;
     _sessionManager  = sessionManager;
     _libraryManager  = libraryManager;
     _dlnaManager     = dlnaManager;
     _userManager     = userManager;
     _imageProcessor  = imageProcessor;
     _serverAddress   = serverAddress;
     _deviceDiscovery = deviceDiscovery;
     _logger          = logger;
 }
 public PlayToManager(ILogger logger, ISessionManager sessionManager, IItemRepository itemRepository, ILibraryManager libraryManager, IUserManager userManager, IDlnaManager dlnaManager, IServerApplicationHost appHost, IImageProcessor imageProcessor, DeviceDiscovery deviceDiscovery, IHttpClient httpClient, IServerConfigurationManager config)
 {
     _logger          = logger;
     _sessionManager  = sessionManager;
     _itemRepository  = itemRepository;
     _libraryManager  = libraryManager;
     _userManager     = userManager;
     _dlnaManager     = dlnaManager;
     _appHost         = appHost;
     _imageProcessor  = imageProcessor;
     _deviceDiscovery = deviceDiscovery;
     _httpClient      = httpClient;
     _config          = config;
 }
Exemplo n.º 9
0
        public ActionPage()
        {
            RegisteredDevices = DeviceDiscovery.DiscoverRegisteredDevices();
            this.InitializeComponent();
            InstallInfo = new ProgressIndicatorVM();
            var sz = Window.Current.Bounds;

            sz.Width         /= 2;
            Size              = sz;
            this.SizeChanged += MainPage_SizeChanged;

            NavigationCacheMode     = NavigationCacheMode.Enabled;
            MainSection.DataContext = this;
        }
Exemplo n.º 10
0
        public UsbHidDevice(string devicePath)
        {
            _deviceInformation.DevicePathName = devicePath;

            _worker         = new BackgroundWorker();
            _worker.DoWork += WorkerDoWork;
            if (DeviceDiscovery.FindTargetDevice(ref _deviceInformation))
            {
                _worker.RunWorkerAsync();
            }

            _deviceInformation.ConnectedChanged += DeviceConnectedChanged;
            DeviceChangeNotifier.DeviceAttached += DeviceChangeNotifierDeviceAttached;
            DeviceChangeNotifier.DeviceDetached += DeviceChangeNotifierDeviceDetached;
        }
Exemplo n.º 11
0
        private static void Main()
        {
            try
            {
#pragma warning disable 4014
                DeviceDiscovery.SearchAsync();
#pragma warning restore 4014
            }
            catch (Exception ex) // doesn't matter at this point just show the exception
            {
                Console.ForegroundColor = ConsoleColor.Red;
                Console.WriteLine(ex.Message);
            }
            Console.ReadKey();
        }
Exemplo n.º 12
0
        private void StartSsdpHandler()
        {
            try
            {
                _ssdpHandler.Start();

                _deviceDiscovery = new DeviceDiscovery(_logger, _config, _ssdpHandler, _appHost);

                _deviceDiscovery.Start();
            }
            catch (Exception ex)
            {
                _logger.ErrorException("Error starting ssdp handlers", ex);
            }
        }
Exemplo n.º 13
0
 public PlayToController(SessionInfo session, ISessionManager sessionManager, ILibraryManager libraryManager, ILogger logger, IDlnaManager dlnaManager, IUserManager userManager, IImageProcessor imageProcessor, string serverAddress, string accessToken, DeviceDiscovery deviceDiscovery, IUserDataManager userDataManager, ILocalizationManager localization, IMediaSourceManager mediaSourceManager)
 {
     _session            = session;
     _sessionManager     = sessionManager;
     _libraryManager     = libraryManager;
     _dlnaManager        = dlnaManager;
     _userManager        = userManager;
     _imageProcessor     = imageProcessor;
     _serverAddress      = serverAddress;
     _deviceDiscovery    = deviceDiscovery;
     _userDataManager    = userDataManager;
     _localization       = localization;
     _mediaSourceManager = mediaSourceManager;
     _accessToken        = accessToken;
     _logger             = logger;
 }
Exemplo n.º 14
0
 public PlayToManager(ILogger logger, ISessionManager sessionManager, ILibraryManager libraryManager, IUserManager userManager, IDlnaManager dlnaManager, IServerApplicationHost appHost, IImageProcessor imageProcessor, DeviceDiscovery deviceDiscovery, IHttpClient httpClient, IServerConfigurationManager config, IUserDataManager userDataManager, ILocalizationManager localization, IMediaSourceManager mediaSourceManager)
 {
     _logger             = logger;
     _sessionManager     = sessionManager;
     _libraryManager     = libraryManager;
     _userManager        = userManager;
     _dlnaManager        = dlnaManager;
     _appHost            = appHost;
     _imageProcessor     = imageProcessor;
     _deviceDiscovery    = deviceDiscovery;
     _httpClient         = httpClient;
     _config             = config;
     _userDataManager    = userDataManager;
     _localization       = localization;
     _mediaSourceManager = mediaSourceManager;
 }
Exemplo n.º 15
0
        private void StartSsdpHandler()
        {
            try
            {
                _ssdpHandler = new SsdpHandler(_logger, _config, GenerateServerSignature());

                _ssdpHandler.Start();

                _deviceDiscovery = new DeviceDiscovery(_logger, _config, _httpClient, _ssdpHandler, _network);

                _deviceDiscovery.Start();
            }
            catch (Exception ex)
            {
                _logger.ErrorException("Error starting ssdp handlers", ex);
            }
        }
Exemplo n.º 16
0
 public bool Connect(string Path = "")
 {
     DeviceDiscovery.FindTargetDevices(ref _deviceInformation, Path);
     Debug.WriteLine("Connect() -> Method called");
     return(IsDeviceConnected);
 }
Exemplo n.º 17
0
        static async Task Main(string[] args)
        {
            const string fn = "auth.json";

            AuthenticatedDevice cDevice;

            // discover and auth if there's no file
            if (!File.Exists(fn))
            {
                Console.WriteLine("Discovery starting...");
                Console.WriteLine();

                var devices = await DeviceDiscovery.Discover();
                for (var index = 0; index < devices.Count; index++)
                {
                    var device = devices[index];
                    Console.WriteLine($"[{index}] {device}");
                }

                Console.Write("Pick device to auth:");
                var line = Console.ReadLine();
                // ReSharper disable once AssignNullToNotNullAttribute
                var pick = int.Parse(line);

                var authDev = devices[pick];
                Console.WriteLine($"picked {authDev}");
                Console.WriteLine("hold power for 5-7 seconds on device until light starts blinking then press enter to continue");
                Console.ReadLine();

                var asession = AuthenticationSession.CreateFromDiscovery(devices);
                var authedDev = await asession.Authenticate(authDev, "pc");
                Console.WriteLine(authedDev);
                var content = asession.SerializeAuthenticatedDevices();
                File.WriteAllText(fn, content);

                cDevice = authedDev;
            }
            else
            {
                Console.WriteLine("Loading pre-authed devices from file...");
                Console.WriteLine();

                var s = File.ReadAllText(fn);
                var psession = AuthenticationSession.RestoreFromFile(s);

                cDevice = psession.AuthenticatedDevices[0];
            }

            Console.WriteLine("controlling device...");
            Console.WriteLine();

            Console.WriteLine(cDevice);
            Console.WriteLine();

            var loop = true;
            var cs = new ControlSession(cDevice);
            while (loop)
            {
                Console.Write($"Q - exit; A - query on/off; W - turn on; S - turn off: ");
                var line = Console.ReadLine();

                switch (line.ToUpper())
                {
                    case "Q":
                        loop = false;
                        break;
                    case "A":
                        Console.WriteLine(await cs.QueryOnOff());
                        break;
                    case "W":
                        await cs.SetOnOff(true);
                        break;
                    case "S":
                        await cs.SetOnOff(false);
                        break;
                }
            }

            Console.ReadLine();
        }
Exemplo n.º 18
0
 public bool Connect()
 {
     DeviceDiscovery.FindTargetDevice(ref _deviceInformation);
     return(IsDeviceConnected);
 }