private void ComPortOnSerialDataReceived(IComPortDevice device, ComPortSerialDataEventArgs args) { foreach (var b in args.SerialData.ToByteArray()) { RxQueue.Enqueue(b); } }
private void ComPortOnSerialDataReceived(IComPortDevice receivingComPort, ComPortSerialDataEventArgs args) { var bytes = args.SerialData.ToByteArray(); #if DEBUG //Debug.WriteWarn("Lg Serial Rx"); //Tools.PrintBytes(bytes, 0, bytes.Length, true); #endif foreach (var b in bytes) { _rxQueue.Enqueue(b); } #if DEBUG //Debug.WriteWarn("Bytes in queue", _rxQueue.Count.ToString()); #endif if (_rxThread != null && _rxThread.ThreadState == Thread.eThreadStates.ThreadRunning) { return; } _rxThread = new Thread(ReceiveBufferProcess, null) { Priority = Thread.eThreadPriority.UberPriority, Name = string.Format("LG Display ComPort - Rx Handler") }; }
internal ChristieComPortHandler(IComPortDevice comPort) { _comPort = comPort; var port = _comPort as CrestronDevice; if (port != null && !port.Registered) { var result = port.Register(); if (result != eDeviceRegistrationUnRegistrationResponse.Success) { CloudLog.Error("Could not register {0}, {1}", port, result); } } _comPort.SetComPortSpec(new ComPort.ComPortSpec() { BaudRate = ComPort.eComBaudRates.ComspecBaudRate115200, DataBits = ComPort.eComDataBits.ComspecDataBits8, StopBits = ComPort.eComStopBits.ComspecStopBits1, Parity = ComPort.eComParityType.ComspecParityNone, Protocol = ComPort.eComProtocolType.ComspecProtocolRS232, ReportCTSChanges = false, HardwareHandShake = ComPort.eComHardwareHandshakeType.ComspecHardwareHandshakeNone, SoftwareHandshake = ComPort.eComSoftwareHandshakeType.ComspecSoftwareHandshakeNone, }); _bytes = new byte[1000]; _byteIndex = 0; _comPort.SerialDataReceived += ComPortOnSerialDataReceived; }
public NecComPortHandler(IComPortDevice comPort) { _comPort = comPort; RxQueue = new CrestronQueue <byte>(1000); var port = _comPort as ComPort; if (port != null) { if (!port.Registered) { if (port.Register() != eDeviceRegistrationUnRegistrationResponse.Success) { ErrorLog.Error("Could not register com port {0}", _comPort.ID); } } } var spec = new ComPort.ComPortSpec() { BaudRate = ComPort.eComBaudRates.ComspecBaudRate9600, DataBits = ComPort.eComDataBits.ComspecDataBits8, Parity = ComPort.eComParityType.ComspecParityNone, StopBits = ComPort.eComStopBits.ComspecStopBits1, Protocol = ComPort.eComProtocolType.ComspecProtocolRS232, HardwareHandShake = ComPort.eComHardwareHandshakeType.ComspecHardwareHandshakeNone, SoftwareHandshake = ComPort.eComSoftwareHandshakeType.ComspecSoftwareHandshakeNone, ReportCTSChanges = false }; _comPort.SetComPortSpec(spec); }
public SamsungDisplayComPortHandler(IComPortDevice comPort) { _comPort = comPort; _rxQueue = new CrestronQueue <byte>(1000); CrestronEnvironment.ProgramStatusEventHandler += type => { if (type == eProgramStatusEventType.Stopping) { _programStopping = true; if (_txThread != null && _txThread.ThreadState == Thread.eThreadStates.ThreadRunning) { _txQueue.Enqueue(null); } if (_rxThread != null && _rxThread.ThreadState == Thread.eThreadStates.ThreadRunning) { _rxQueue.Enqueue(0x00); } } }; _txQueue = new CrestronQueue <byte[]>(50); }
private void PortOnSerialDataReceived(IComPortDevice device, ComPortSerialDataEventArgs args) { var bytes = Encoding.ASCII.GetBytes(args.SerialData); #if DEBUG //Debug.WriteSuccess("Codec Rx Enqueue", Tools.GetBytesAsReadableString(bytes, 0, bytes.Length, true)); #endif _rxQueue.Enqueue(bytes); }
/// <summary> /// Send bytes to the serial port to prevent issues with encoding of non ascii strings /// </summary> /// <param name="port">ComPort to extend</param> /// <param name="bytes">Byte array to send</param> /// <param name="count">Count of bytes from array</param> public static void Send(this IComPortDevice port, byte[] bytes, int count) { var str = string.Empty; for (var i = 0; i < count; i++) { str = str + (char)bytes[i]; } port.Send(str); }
public SmartBoard(string name, IComPortDevice comPort) : base(name) { _comHandler = new SmartBoardComPortHandler(comPort); _comHandler.ReceivedString += ComHandlerOnReceivedString; _volumeLevel = new SmartBoardVolume(this); AudioLevels = new AudioLevelCollection() { _volumeLevel }; }
public PolycomGroupSeriesCodec(SystemBase system, IComPortDevice comPort) { _system = system; _port = new ComPortHandler(comPort); _port.DataReceived += OnReceive; Calls = new Calls(this); Calls.CallChanged += Calls_CallChanged; Microphones = new Microphones(this); Cameras = new Cameras(this); AddressBook = new AddressBook(this); Meetings = new CalendarMeetings(this); }
public FaMotorController(IComPortDevice comPort) { _comPort = comPort; if (comPort is ComPort) { var result = ((ComPort)comPort).Register(); if (result != eDeviceRegistrationUnRegistrationResponse.Success) { CloudLog.Error("Could not register comport \"{0}\" for {1}", comPort.ToString(), GetType().Name); } } comPort.SetComPortSpec(ComSpec); }
public ChristieGS800(string name, IComPortDevice comPort) : base(name) { _serialPort = new ChristieComPortHandler(comPort); _serialPort.ReceivedData += OnReceivedData; _availableInputs = new ReadOnlyCollection <DisplayDeviceInput>( new List <DisplayDeviceInput> { DisplayDeviceInput.HDMI1, DisplayDeviceInput.HDMI2, DisplayDeviceInput.DVI, DisplayDeviceInput.SDI, DisplayDeviceInput.VGA, DisplayDeviceInput.HDBaseT }); }
public SurfaceHubDisplay(string name, IComPortDevice comPort) : base(name) { CrestronEnvironment.ProgramStatusEventHandler += type => { _programStopping = type == eProgramStatusEventType.Stopping; }; _comPort = comPort; var port = _comPort as ComPort; if (port != null) { port.Register(); } _comPort.SetComPortSpec(_portSpec); _comPort.SerialDataReceived += ComPortOnSerialDataReceived; }
public LgComPortHandler(IComPortDevice comPort) { CrestronEnvironment.ProgramStatusEventHandler += type => { _programStopping = type == eProgramStatusEventType.Stopping; }; _comPort = comPort; var port = _comPort as ComPort; if (port != null) { port.Register(); } _comPort.SetComPortSpec(_spec); _comPort.SerialDataReceived += ComPortOnSerialDataReceived; }
private void ComPortOnSerialDataReceived(IComPortDevice device, ComPortSerialDataEventArgs args) { var bytes = args.SerialData.ToByteArray(); #if DEBUG Debug.WriteWarn("Surface Hub Rx"); Tools.PrintBytes(bytes, 0, bytes.Length, true); #endif foreach (var b in bytes) { _rxQueue.Enqueue(b); } #if DEBUG Debug.WriteWarn("Bytes in queue", _rxQueue.Count.ToString()); #endif DeviceCommunicating = true; if (_commsTimeOutTimer == null) { _commsTimeOutTimer = new CTimer(specific => { DeviceCommunicating = false; }, 60000); } else { _commsTimeOutTimer.Reset(60000); } if (_rxThread != null && _rxThread.ThreadState == Thread.eThreadStates.ThreadRunning) { return; } _rxThread = new Thread(ReceiveBufferProcess, null) { Priority = Thread.eThreadPriority.UberPriority, Name = string.Format("LG Display ComPort - Rx Handler") }; }
public SmartBoardComPortHandler(IComPortDevice comPort) { CrestronEnvironment.ProgramStatusEventHandler += type => { _programStopping = type == eProgramStatusEventType.Stopping; if (_rxThread != null && _rxThread.ThreadState == Thread.eThreadStates.ThreadRunning) { _rxQueue.Enqueue(0x00); } }; _comPort = comPort; var port = _comPort as CrestronDevice; if (port != null && !port.Registered) { var result = port.Register(); if (result != eDeviceRegistrationUnRegistrationResponse.Success) { CloudLog.Error("Could not register {0}, {1}", port, result); } } _comPort.SetComPortSpec(new ComPort.ComPortSpec() { BaudRate = ComPort.eComBaudRates.ComspecBaudRate19200, DataBits = ComPort.eComDataBits.ComspecDataBits8, StopBits = ComPort.eComStopBits.ComspecStopBits1, Parity = ComPort.eComParityType.ComspecParityNone, Protocol = ComPort.eComProtocolType.ComspecProtocolRS232, ReportCTSChanges = false, HardwareHandShake = ComPort.eComHardwareHandshakeType.ComspecHardwareHandshakeNone, SoftwareHandshake = ComPort.eComSoftwareHandshakeType.ComspecSoftwareHandshakeNone, }); _comPort.SerialDataReceived += PortOnSerialDataReceived; }
private void PortOnSerialDataReceived(IComPortDevice device, ComPortSerialDataEventArgs args) { var bytes = args.SerialData.ToByteArray(); #if false Debug.WriteWarn("Smart Serial Rx", Tools.PrintBytes(bytes, 0, bytes.Length, true)); #endif foreach (var b in bytes) { _rxQueue.Enqueue(b); } if (_rxThread != null && _rxThread.ThreadState == Thread.eThreadStates.ThreadRunning) { return; } _rxThread = new Thread(ReceiveBufferProcess, null) { Priority = Thread.eThreadPriority.UberPriority, Name = string.Format("SmartBoard ComPort - Rx Handler") }; }
public ComPortHandler(IComPortDevice comPort) { _bytes = new byte[10000]; _port = comPort; _rxQueue = new CrestronQueue <byte[]>(); var cp = _port as ComPort; if (cp != null && !cp.Registered) { var result = cp.Register(); if (result != eDeviceRegistrationUnRegistrationResponse.Success) { CloudLog.Warn("Registering comport for {0} result: {1}", GetType().Name, result); } } try { var spec = new ComPort.ComPortSpec() { BaudRate = ComPort.eComBaudRates.ComspecBaudRate38400, DataBits = ComPort.eComDataBits.ComspecDataBits8, StopBits = ComPort.eComStopBits.ComspecStopBits1, Parity = ComPort.eComParityType.ComspecParityNone, HardwareHandShake = ComPort.eComHardwareHandshakeType.ComspecHardwareHandshakeNone, SoftwareHandshake = ComPort.eComSoftwareHandshakeType.ComspecSoftwareHandshakeNone, Protocol = ComPort.eComProtocolType.ComspecProtocolRS232, ReportCTSChanges = false }; _port.SetComPortSpec(spec); } catch (Exception e) { CloudLog.Error("Error could not set comport spec for {0}, {1}", GetType().Name, e.Message); } }
private void ComPortOnSerialDataReceived(IComPortDevice device, ComPortSerialDataEventArgs args) { var bytes = Encoding.ASCII.GetBytes(args.SerialData); foreach (var b in bytes) { _bytes[_byteIndex] = b; if (_bytes[_byteIndex] != ')') { _byteIndex++; } else { _byteIndex++; var data = Encoding.ASCII.GetString(_bytes, 0, _byteIndex); #if DEBUG Debug.WriteSuccess("Projector Rx", data); #endif OnReceivedData(data); _byteIndex = 0; } } }
private void PortOnSerialDataReceived(IComPortDevice device, ComPortSerialDataEventArgs args) { OnReceivedString(args.SerialData); }
public EpsonProjector(string name, IComPortDevice comPort) : base(name) { _comPort = new ComPortHandler(comPort); _comPort.ReceivedString += ComPortOnReceivedString; }
/// <summary> /// Send a byte to the serial port to prevent issues with encoding of non ascii strings /// </summary> /// <param name="port">ComPort to extend</param> /// <param name="b">Byte to send</param> public static void Send(this IComPortDevice port, byte b) { var str = string.Empty + (char)b; port.Send(str); }