knx stack (TP, IP and RF) for arduino and linux, Can be configured with ETS
Go to file
nanosonde 77a796a39c
Add coupler support (#79)
* save work.

* save work

* save work

* save work

* save work

* Remember which interface received the cemi frame

* save work

* save work

* save work

* Use default value from PID_ROUTING_COUNT

* Add simple alternative to std::function without smart pointers or move semantics

* Remove include

* Add more comments about cleanup

* save work

* Remove forgotten code.

* Move crc16Ccitt to bits.c as it also used for PID_MCB

* save work

* move comment

* save work

* save work

* save work

* save work

* save work

* save work

* save work

* derive from TableObject instead of InterfaceObject

* save work

* save work

* Fix wrong pointer arithmetic in TableObject

* Filter table setting/clearing

* move comment

* save work

* save work

* save work

* handle SBC on closed media

* save work

* move coupler example to different dir

* Restore device example for linux

* save work

* Remove MEDIUM_TYPE and use MASK_VERSION

* save work

* save work

* save work

* save work

* save work

* save work

* save work

* save work

* save work

* save work

* save work

* save work

* save work

* save work

* Replace MEDIUM_TYPE by MASK_VERSION

* Remove adafruit/travis-ci tests

* Disable travis ci cache for platformio

* Fix missing changes

* Fix cemi server and add missing MASK_VERSION definitions

* Enable platformio caching on travis ci again

* Handle device address update for routing decision

* source address is set in network layer and not in data link layer

* Add remaining APCI types that are used with system broadcast

* Add debug print for routing

* Remove simple_functional

* Fix CMakLists.txt

* Use MASK_VERSION to conditionally compile code.

* Remove fixed version reuqirement from platform esp8266

* Add demo-coupler for MCUs

* Remove simple_functional.h from demo knx-linux

* Enable CI for coupler demos

* Correct path for knx-linux-coupler

* Fix knx_facade.h

* Refactor NetworkLayer to use getInterface() for devices and getPrimaryInterface(), getSecondaryInterface() for couplers

* Add platformio configs for other currently possible mask/platform combinations

* Add class diagrams and remove obsolete includes

* Add some minimal docs
2020-09-06 21:41:34 +02:00
.vscode add platformio file and fix compiling without IP 2020-05-08 01:50:50 +02:00
doc Add coupler support (#79) 2020-09-06 21:41:34 +02:00
examples Add coupler support (#79) 2020-09-06 21:41:34 +02:00
src Add coupler support (#79) 2020-09-06 21:41:34 +02:00
visualstudio fix bug in save code 2020-02-11 22:16:59 +01:00
.clang-format add .clang-format, remove VS class diagramm 2019-07-15 21:23:19 +02:00
.gitattributes remove submodule (hopefully) 2018-11-07 21:30:20 +01:00
.gitignore add pio ignores to gitignore 2020-05-08 02:06:23 +02:00
.gitmodules some progress with python wrapper 2018-12-22 01:55:08 +01:00
.travis.yml Add coupler support (#79) 2020-09-06 21:41:34 +02:00
library.properties Update library.properties 2020-06-19 21:57:46 +02:00
LICENSE Create LICENSE 2018-04-21 21:51:41 +02:00
platformio.ini add platformio file and fix compiling without IP 2020-05-08 01:50:50 +02:00
README.md Update README.md 2019-06-02 00:36:28 +02:00

knx Build Status

This projects provides a knx-device stack for arduino (ESP8266, SAMD21) and linux. (more are quite easy to add) It implements most of System-B specification and can be configured with ETS. The necessary knxprod-files can be generated with my CreateKnxProd tool.

The visual studio files use the VisualGdb. But you can use the lib in Arduino as usual. The linux Version can be build with cmake.

For esp8266 WifiManager is used to configure wifi.

Don't forget to reset ESP8266 manually (disconnect power) after flashing. The reboot doen't work during configuration with ETS otherwise.

The SAMD21 version uses my version of the FlashStorage lib (Pull request pending).

Generated documentation can be found here.