internal void BridgeDigitalWrite(int b, DigitalPin dp) { if (Connected) { txMessageId++; List <byte> txMessage = new List <byte>() { ( byte )Command.BRIDGE }; txMessage.Add(( byte )(txMessageId >> 8)); txMessage.Add(( byte )(txMessageId)); txMessage.AddRange(ASCIIEncoding.ASCII.GetBytes(b.ToString())); txMessage.Add(( byte )(0x00)); txMessage.Add(( byte )('d')); txMessage.Add(( byte )('w')); txMessage.Add(( byte )(0x00)); txMessage.AddRange(ASCIIEncoding.ASCII.GetBytes(dp.Pin.ToString())); txMessage.Add(( byte )(0x00)); txMessage.Add((byte)(dp.Value ? '1' : '0')); int msgLength = txMessage.Count - 3; txMessage.Insert(3, ( byte )((msgLength) >> 8)); txMessage.Insert(4, ( byte )((msgLength))); WriteToTcpStream(txMessage); } }
/// <summary> /// This is the digital pin sender. /// </summary> /// <param name="dp">The digital pin to send.</param> public void SendDigitalPin(DigitalPin dp) { if (Connected) { txMessageId++; List <byte> txMessage = new List <byte>() { ( byte )Command.HARDWARE }; txMessage.Add(( byte )(txMessageId >> 8)); txMessage.Add(( byte )(txMessageId)); string pin = dp.Pin.ToString(); int msgLength = pin.Length + 5; txMessage.Add(( byte )((msgLength) >> 8)); txMessage.Add(( byte )((msgLength))); txMessage.Add(( byte )'d'); txMessage.Add(( byte )'w'); txMessage.Add(0x00); txMessage.AddRange(ASCIIEncoding.ASCII.GetBytes(pin.ToString())); txMessage.Add(0x00); if (dp.Value) { txMessage.Add(( byte )'1'); } else { txMessage.Add(( byte )'0'); } WriteToTcpStream(txMessage); } }
public void DigitalWrite(DigitalPin dp) { refBlynk.BridgeDigitalWrite(Pin, dp); }