private ErrorCode WriteReadBytesCommand(UsbEndpointBase endpoint) { UsbPacket usbPacket = CreateReadBytesCommandPacket(); UsbTransfer transfer = null; try { ErrorCode errorCode = endpoint.SubmitAsyncTransfer(usbPacket, 0, (int)(_usbPacketSizeWithoutData + usbPacket.uiDataLen), _transferTimeoutInMilliseconds, out transfer); if (errorCode != ErrorCode.None) { return(errorCode); } WaitHandle.WaitAll(new[] { transfer.AsyncWaitHandle }, _waitTimeout, false); if (!transfer.IsCompleted) { transfer.Cancel(); } int bytesTransferred; return(transfer.Wait(out bytesTransferred)); } finally { transfer?.Dispose(); } }
MCTest() { mct = new MCTestForm(this); //usbPacket = new UsbWin32Packet(); usbPacket = new UsbPacket(); usbPacket.Open(); if (usbPacket.IsOpen()) { mct.SetUsbPortName(usbPacket.Name); } oscUsb = null; oscUsb = new Osc(usbPacket); oscUsb.SetAllMessageHandler(UsbMessages); udpPacket = new UdpPacket(); udpPacket.RemoteHostName = mct.GetUdpRemoteHostName(); udpPacket.RemotePort = mct.GetUdpRemotePort(); udpPacket.LocalPort = mct.GetUdpLocalPort(); udpPacket.Open(); oscUdp = new Osc(udpPacket); oscUdp.SetAllMessageHandler(UdpMessages); oscUdp.SetAddressHandler("/analogin/0/value", AIn0Message); Application.Run(mct); }
private uint StartSession() { UsbPacket usbPacket = new UsbPacket(UsbPacketType.USB_PROTOCOL_LAYER, (short)UsbPacketId.Pid_Start_Session, 0); _device.GarminWrite(usbPacket); UsbPacket returnPacket = _device.GarminReadSingleton(); // packet returned should be 3.2.3.3 "Pid_Session_Started (6)". // It should also contain the device's unit id. We expect only 1 packet if (returnPacket.packetId != (short)UsbPacketId.Pid_Session_Started) { throw new InvalidOperationException("Unexpected packet id: " + returnPacket.packetId); } return(BitConverter.ToUInt32(returnPacket.data, 0)); }
public QuickTest() { InitializeComponent(); // udpPacket = new UdpPacket(); // udpPacket.RemoteHostName = "192.168.0.200"; // udpPacket.RemotePort = 10000; // udpPacket.LocalPort = 10000; // udpPacket.Open(); // oscUdp = new Osc(udpPacket); usbPacket = new UsbPacket(); usbPacket.Open(); osc = new Osc(usbPacket); osc.SetAddressHandler("/analogin/7/value", TrimPotReading); }
public DeskTimerForm() { InitializeComponent(); // udpPacket = new UdpPacket(); // udpPacket.RemoteHostName = "192.168.0.200"; // udpPacket.RemotePort = 10000; // udpPacket.LocalPort = 10000; // udpPacket.Open(); // osc = new Osc(udpPacket); usbPacket = new UsbPacket(); usbPacket.Open(); osc = new Osc(usbPacket); Working = true; ResetTimers(); osc.SetAddressHandler("/analogin/0/value", SensorReading); }
public CPUMonitorWindow() { InitializeComponent(); cpuCounter = new PerformanceCounter(); cpuCounter.CategoryName = "Processor"; cpuCounter.CounterName = "% Processor Time"; cpuCounter.InstanceName = "_Total"; usbPacket = new UsbPacket(); usbPacket.Open(); osc = new Osc(usbPacket); // udpPacket = new UdpPacket(); // udpPacket.RemoteHostName = "192.168.0.200"; // udpPacket.RemotePort = 10000; // udpPacket.LocalPort = 10000; // udpPacket.Open(); // osc = new Osc(udpPacket); }
private unsafe UsbPacket CreateReadBytesCommandPacket() { // ReSharper disable once UseObjectOrCollectionInitializer var usbPacket = new UsbPacket { uiSeqNum = _sequenceNumber, usPacketType = 0x0013, uiDataLen = 0, ReadBytes = new ReadBytesParams { uiFileOffset = _fileOffset, uiByteCount = 512 } }; usbPacket.ucSync[0] = (byte)'S'; usbPacket.ucSync[1] = (byte)'G'; usbPacket.ReadBytes.uiUnused[0] = 0; usbPacket.ReadBytes.uiUnused[1] = 0; usbPacket.ReadBytes.uiUnused[2] = 0; return(usbPacket); }