Ecosyste.ms: Awesome

An open API service indexing awesome lists of open source software.

Awesome Lists | Featured Topics | Projects

https://github.com/dotmorten/zigbeenet

Portable Class Library for Zigbee. Supports .NET, Windows Store and Windows Phone.
https://github.com/dotmorten/zigbeenet

Last synced: 5 days ago
JSON representation

Portable Class Library for Zigbee. Supports .NET, Windows Store and Windows Phone.

Awesome Lists containing this project

README

        

ZigbeeNet
=========

Portable Class Library for Zigbee. Supports .NET, Windows Store and Windows Phone.

This project is in its very early stages. Only supports Smartenit CID API, and very limited set of commands.

.NET Example code:

private void Start()
{
SerialPort port = new SerialPort("COM3", 115200, Parity.None, 8, StopBits.One);
port.DataReceived += port_DataReceived;
port.Open();

client = new ZigbeeNet.Smartenit.CidClient(port.BaseStream);
client.ResponseReceived += client_ResponseReceived;
client.SendPacket(CidPackets.SystemPing);
client.SendPacket(CidPackets.SystemGetTime);
client.SendPacket(CidPackets.SystemSetTime(DateTime.Now));
client.SendPacket(CidPackets.SystemGetTime);
client.SendPacket(CidPackets.SystemStartNetwork());
}

private void port_DataReceived(object sender, SerialDataReceivedEventArgs e)
{
SerialPort port = sender as SerialPort;
int count = port.BytesToRead;
while (count > 0)
{
byte[] bytes = new byte[count];
int readBytes = port.Read(bytes, 0, count);
client.OnDataRecieved(bytes);
count = port.BytesToRead;
}
}

private void client_ResponseReceived(object sender, ZigbeeNet.Smartenit.CidResponseItem e)
{
Console.WriteLine(
string.Format("{0}: {1}\n", e.GetType().Name, e.ToString());
);
}