All Projects → Mr-Markus → Zigbeenet

Mr-Markus / Zigbeenet

Licence: epl-1.0
A .NET Standard library for working with ZigBee

Programming Languages

csharp
926 projects

Projects that are alternatives of or similar to Zigbeenet

Cbj smart Home
If you are searching for an easy way to deploy a smart home 🏡 by yourself CyBear Jinni 🦾🐻🧞‍♂️ is here for you. Join the community and make your home smarter than yesterday.
Stars: ✭ 37 (-51.32%)
Mutual labels:  smarthome, smart-home, iot
Hoobs
Build your Smart Home with HOOBS. Connect over 2,000 Accessories to your favorite Ecosystem.
Stars: ✭ 325 (+327.63%)
Mutual labels:  smarthome, smart-home, iot
Waterius
Передача показаний воды по Wi-Fi. Watermeter Wi-Fi transmitter.
Stars: ✭ 295 (+288.16%)
Mutual labels:  smarthome, smart-home, iot
Home Assistantconfig
🏠 Home Assistant configuration & Documentation for my Smart House. Write-ups, videos, part lists, and links throughout. Be sure to ⭐ it. Updated FREQUENTLY!
Stars: ✭ 3,687 (+4751.32%)
Mutual labels:  smarthome, smart-home, iot
Alexa Smarthome
Resources for Alexa Smart Home developers.
Stars: ✭ 496 (+552.63%)
Mutual labels:  smarthome, smart-home
Automated Irrigation System
This is the software of an open source automated irrigation system. The complete setup including hardware can be found in the README.
Stars: ✭ 442 (+481.58%)
Mutual labels:  smart-home, iot
Assistant Relay
A Node.js server that allows for sending commands to Google Home/Assistant from endpoints
Stars: ✭ 638 (+739.47%)
Mutual labels:  smarthome, iot
Coapnet
CoAPnet is a high performance .NET library for CoAP based communication. It provides a CoAP client and a CoAP server. It also has DTLS support out of the box.
Stars: ✭ 23 (-69.74%)
Mutual labels:  smart-home, iot
Smartir
Integration for Home Assistant to control climate, TV and fan devices via IR/RF controllers (Broadlink, Xiaomi, MQTT, LOOKin, ESPHome)
Stars: ✭ 677 (+790.79%)
Mutual labels:  smarthome, iot
Pimatic Edimax
Pimatic Plugin for Edimax WiFi Smart Plugs
Stars: ✭ 7 (-90.79%)
Mutual labels:  smarthome, smart-home
Hodd
Homie Device Discovery
Stars: ✭ 21 (-72.37%)
Mutual labels:  smarthome, iot
Tp Link Smart Switch Web Client
Creating a web client for the tp-link series of smart switches (HS-100, HS-110, etc).
Stars: ✭ 31 (-59.21%)
Mutual labels:  smarthome, iot
Redmatic
Node-RED packaged as Addon for the Homematic CCU3 and RaspberryMatic 🤹‍♂️
Stars: ✭ 407 (+435.53%)
Mutual labels:  smarthome, iot
Mqtt Smarthome
Smart home automation with MQTT as the central message bus - Architectural proposal
Stars: ✭ 356 (+368.42%)
Mutual labels:  smarthome, iot
Streamdeck Homeassistant
🏠 Use the Elgato Stream Deck as Home Assistant controller. Call any available service and toggle lights or resume your music.
Stars: ✭ 69 (-9.21%)
Mutual labels:  smarthome, smart-home
Raspberrymatic
🏠 A lightweight, buildroot-based Linux operating system alternative for your CCU3, ELV-Charly or for running your IoT "HomeMatic CCU" as a virtual appliance (using ESXi, Proxmox, VirtualBox, Docker/OCI, Kubernetes/K8s, Home Assistant, etc.) or on your own RaspberryPi, Tinkerboard, etc. SBC devices...
Stars: ✭ 803 (+956.58%)
Mutual labels:  smarthome, iot
Node Zwave Js
Z-Wave driver written entirely in JavaScript/TypeScript
Stars: ✭ 284 (+273.68%)
Mutual labels:  smart-home, iot
Tuyapi
🌧 An easy-to-use API for devices that use Tuya's cloud services. Documentation: https://codetheweb.github.io/tuyapi.
Stars: ✭ 1,043 (+1272.37%)
Mutual labels:  smarthome, iot
Smarthome
Eclipse SmartHome™ project
Stars: ✭ 867 (+1040.79%)
Mutual labels:  smarthome, iot
Node Hue Api
Node.js Library for interacting with the Philips Hue Bridge and Lights
Stars: ✭ 1,034 (+1260.53%)
Mutual labels:  smarthome, smart-home

ZigBeeNet

Twitter Follow

ZigBeeNet is a implementation of the Zigbee 3.0 Cluster Library for .NET Standard.

It is fully implemented in Netstandard 2.0 and NET Core 3.0 so that it runs on multiple platform

Build Status

Name Status
master Build status
develop Build status

Packages

Package name NuGet Description
ZigBeeNet NuGet Core library
ZigBeeNet.Transport.SerialPort NuGet Platform indipendent SerialPort implementation
ZigBeeNet.Hardware.TI.CC2531 NuGet Texas Instruments CC25XX dongle implementation
ZigBeeNet.Hardware.Digi.XBee NuGet Digi XBee dongle implementation
ZigbeeNet.Hardware.ConBee NuGet Dresden Elektronik ConBee dongle implementation
ZigbeeNet.Hardware.Ember NuGet Silicon Labs ember dongle implementation
ZigbeeNet.DataStore.JSON NuGet JSON DataStore
ZigbeeNet.DataStore.MongoDb NuGet MongoDb DataStore

Smart Home

With Zigbee 3.0 you can also build your own Smart Home solution and control Zigbee devices from different manufactures like Philips with Philips Hue and IKEA with Tradfri at the same time in the same network. So you are very flexible and the components are very cheap.

Usage

For a detailed description about how to use ZigBeeNet see our wiki page:

You can also take a look at the Playground Demo project

If you need further information we will help you whenever you need it. Just open an new issue for it.

A basic example here:

using System;

namespace ZigBeeNet.PlayGround
{
    class Program
    {
        static void Main(string[] args)
        {
            try
            {
                ZigBeeSerialPort zigbeePort = new ZigBeeSerialPort("COM4");

                IZigBeeTransportTransmit dongle = new ZigBeeDongleTiCc2531(zigbeePort);

                ZigBeeNetworkManager networkManager = new ZigBeeNetworkManager(dongle);

                // Initialise the network
                networkManager.Initialize();

                networkManager.AddSupportedCluster(0x06);

                ZigBeeStatus startupSucceded = networkManager.Startup(false);

                if (startupSucceded == ZigBeeStatus.SUCCESS)
                {
                    Log.Logger.Information("ZigBee console starting up ... [OK]");
                }
                else
                {
                    Log.Logger.Information("ZigBee console starting up ... [FAIL]");
                    return;
                }
            }
            catch (Exception ex)
            {
                Console.WriteLine(ex.ToString());
            }

            Console.ReadLine();
        }
    }
}

Supported Dongles and Chipsets / Zigbee Stacks

Because Zigbee is just a specification you need a stack of a manufacturer that implements it. ZigBeeNet is developed with a strict seperation of the Zigbee Cluster Library (ZCL) and the various manufacturer stacks. Because of that it is possible to use different hardware for your Zigbee solution

If there is a manufacturer solution missing, feel free to open an issue or take part of it's implementation

Texas Instruments ( Z-Stack )

Z-Stack 3.0.x is TI's Zigbee 3.0 compliant protocol suite for the CC2530, CC2531, and CC2538 Wireless MCU. Z-Stack comunicates through TI's Unified Network Processor Interface (NPI) which is used for establishing a serial data link between a TI SoC and external MCUs or PCs. UNPI is also implemented in this project and is also implemented for different plattforms.

The easiest solution is the CC2531 USB Stick with the ZNP (Zigbee Network Processor) Image, so that it works as an Zigbee gateway via serial port

Source: http://www.ti.com/tool/z-stack

Digi XBee

Digi XBee is the brand name of a family of form factor compatible radio modules from Digi International.

Source: https://en.wikipedia.org/wiki/XBee

We have tested it with the XBee ZigBee S2C chip

ConBee

ConBee is a hardware dongle from Dresden Elektronik

Source: https://www.phoscon.de/en/conbee2

We have tested it with the ConBee 2

Silicon Labs Ember EM35x / EFR32

The library supports the Silicon Labs EZSP protocol using ASH protocol over a serial interface. The implementation of the SPI protocol assumes that the SPI provides a TTY-like software interface to the application, or is otherwise abstracted via the ZigBeePort interface.

It is worth noting that EM3588 devices that have an embedded USB core will likely work with any baud rate, where dongles using external USB interface (eg CP2102 used with an EM3581) will likely require a specific baud rate.

Currently there are two main NCP images - one that supports hardware flow control with a baud rate of 115200, and one that supports software flow control with a rate of 57600.

Free beer !!

No. Sorry. But now that I have your attention .. we need your help! Since it is hardly possible to test all devices, let us know with which devices you have already successfully tested ZigBeeNet or where you encountered problems. Just open an Issue.

See also:

Related Issue
Wiki

Many thanks!

Hint

This project is highly inspired by https://github.com/zsmartsystems/com.zsmartsystems.zigbee and many ideas were adopted (almost a java -> c# port).

Contributing

Feel free to open an issue if you have any idea or enhancement. If you want to implement on code create a fork and open a pull request.

Coding guidelines

For a cleaner code we have some coding guidelines. you can find them here.

License and Copyright

ZigBeeNet is licensed under the Eclipse Public License. Refer to the license file for further information.

Some parts of this project are converted to c# from com.zsmartsystems.zigbee.

com.zsmartsystems.zigbee use code from zigbee4java which in turn is derived from ZB4O projects which are licensed under the Apache-2 license.

ZigBee Documentation

Some documentation used to create parts of this framework is copyright © ZigBee Alliance, Inc. All rights Reserved. The following copyright notice is copied from the ZigBee documentation.

Elements of ZigBee Alliance specifications may be subject to third party intellectual property rights, including without limitation, patent, copyright or trademark rights (such a third party may or may not be a member of ZigBee). ZigBee is not responsible and shall not be held responsible in any manner for identifying or failing to identify any or all such third party intellectual property rights.

No right to use any ZigBee name, logo or trademark is conferred herein. Use of any ZigBee name, logo or trademark requires membership in the ZigBee Alliance and compliance with the ZigBee Logo and Trademark Policy and related ZigBee policies.

This document and the information contained herein are provided on an “AS IS” basis and ZigBee DISCLAIMS ALL WARRANTIES EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO (A) ANY WARRANTY THAT THE USE OF THE INFORMATION HEREIN WILL NOT INFRINGE ANY RIGHTS OF THIRD PARTIES (INCLUDING WITHOUT LIMITATION ANY INTELLECTUAL PROPERTY RIGHTS INCLUDING PATENT, COPYRIGHT OR TRADEMARK RIGHTS) OR (B) ANY IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, TITLE OR NONINFRINGEMENT. IN NO EVENT WILL ZIGBEE BE LIABLE FOR ANY LOSS OF PROFITS, LOSS OF BUSINESS, LOSS OF USE OF DATA, INTERRUPTION OF BUSINESS, OR FOR ANY OTHER DIRECT, INDIRECT, SPECIAL OR EXEMPLARY, INCIDENTIAL, PUNITIVE OR CONSEQUENTIAL DAMAGES OF ANY KIND, IN CONTRACT OR IN TORT, IN CONNECTION WITH THIS DOCUMENT OR THE INFORMATION CONTAINED HEREIN, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH LOSS OR DAMAGE.

All Company, brand and product names may be trademarks that are the sole property of their respective owners.

Dongle Documentation

Some documentation used to implement dongle drivers is copywrite to the respective holders, including Silicon Labs, Texas Instruments, Dresden Electronics, Digi International.

Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].