weinzierl-engineering / baos

BAOS SDK - http://weinzierl-engineering.github.io/baos
MIT License
40 stars 18 forks source link

= BAOS SDK :author: Weinzierl Engineering GmbH :email: info@weinzierl.de ifdef::env-github,env-browser[:outfilesuffix: .adoc]

== Introduction

The BAOS Binary SDK is a C++ implementation of the KNX BAOS Binary Protocol. The class library aligns itself with the KNX BAOS Binary protocol, and for each protocol message type a corresponding class is available to send and receive the message data. In addition several convenience classes are provided to interpret the information, such as a Datapoint class for converting the raw byte stream into a specific parameter type. It is currently supported on the following platforms:

In addition to the native {cpp} classes a Managed {cpp} wrapper is also included to provide some level of integration with the .net languages, such as C# and Visual Basic.NET.

The KNX BAOS Binary SDK supports the BAOS Protocol version 1.2 as the 2.x versions.

== Contents

The SDK contains:

cmake:: utility files used by the cmake build system. docs:: SDK documentation dotnet:: .NET bindings ets:: ETS3/4 Project file (used by the Samples) kdrive:: the kdrive BAOS C++ implementation samples:: {cpp}, C# and vb sample files thirdparty:: open-source Poco platform abstraction library

== Supported Interfaces

== Requirements

=== Compiling

==== Linux

[source]

mkdir build cd build cmake -DCMAKE_BUILD_TYPE=Release -DWZSDK_STATIC=1 -DWZSDK_SAMPLES=1 -DWZSDK_SAMPLES_QT=0 -G "Unix Makefiles" ../ make -j5

==== Windows

[source]

generate VS project files

mkdir build cd build cmake -DBOOST_ROOT=D:\boost\boost_1_57_0 -DCMAKE_BUILD_TYPE=Release -DWZSDK_STATIC=1 -DWZSDK_SAMPLES=1 -DWZSDK_SAMPLES_QT=0 -G "Visual Studio 12 2013" ../

open build/BAOS_SDK.sln and compile


===== C# bindings

To include the C# bindings in the build process, add the -DWZSDK_BINDINGS=1 option to the cmake command

After successful building the kdriveBAOS_dotnetd.dll and kdriveBAOS_dotnet.dll files can be found inside the /build/bin/Debug or /build/bin/Release folders

To create the intellisense file kdriveBAOS_dotnet.xml you need to enable the xml documentation generation. See http://msdn.microsoft.com/en-us/library/ms173501%28v=vs.90%29.aspx

== User Guide

See <<docs/User_Guide/User_Guide#,docs/User_Guide/User_Guide.adoc>> and for Raspbian <<docs/Raspbian#,docs/Raspbian.adoc>>

== API Documentation

== Copyright and Licensing

See <<LICENSE,LICENSE>>