Difference between revisions of "EnOcean Gateway"

From KONNEKTING Wiki
Jump to navigation Jump to search
Line 61: Line 61:
  
 
== User Documentation ==
 
== User Documentation ==
 +
* Get the sketch from the GitHub Source. It comes with an example setup, that allows you to
 +
** Receive telegrams from up to 10 EnOcean button-units ([[EnOcean_Gateway Device RPS simple | EnOceanDevice_RPS_simple.h]])
 +
** Send telegrams as up to 10 Buttons would do, so you can teach your KNX group address (type DPT 1) to any EnOcean Device ([[EnOcean_Gateway Device RPS sender | EnOceanDevice_RPS_sender.h]])
 +
** Update the Status of up to 10 2Ch Nodon Actuators ([[EnOcean_Gateway Device NodOn 2Ch | EnOceanDevice_NodOn_2Ch.h]])
 +
* If needed change the device-configuration, e.g. if you need more or different Device Modules.
 +
** Build the XML File with an XML-Editor of your choice
 +
*** Add the Device Module XML snippets of your choice
 +
*** Take good care of the order of the Device Modules within your XML-File
 +
** Use the KONNEKTING-CodeCreator to create your h-File, matching the XML-File
 +
** Alter the KonnektingEnocean_V1.0.ino file to match the XML-File.
 +
* Upload the code to your Hardware. Refer [[HowToUploadArduinoCode]] if you are struggling with Uploading. Here the device only needs to be connected to your PC via USB, no KNX connection is needed.
 +
** You need the Wire lib and this one: [https://github.com/KONNEKTING/KonnektingDeviceLibrary| KONNEKTING Lib]
 +
* Configure the Gateway, using the Konnekting Suite and the XML-File, refer each Device Modules documentation on how to set the configuration. Some EnOcean device-ids might be needed here, so hold them ready.
 +
* Upload the configuration to the device using the Suite. Now no USB connection is needed but your Hardware needs to be connected KNX instead.
 +
* Now you don't need your PC anymore. Teach in all relevant EnOcean devices. Follow the instructions on each Device Modules page to understand the way each device-type is configured.
  
 
== Developer Documentation ==
 
== Developer Documentation ==
 +
[[EnOcean_Gateway Device Software Template | Refer this on how to build your own EnOcean Device Module]]
  
 
== Build It ==
 
== Build It ==

Revision as of 21:09, 29 March 2018

EnOcean Gateway
EnOcean Gateway Case close.jpg
EnOcean Gateway Case open.jpg
Developer Matthias F.
Status Version 0.9 beta
Microcontroller/Board Cortex M0+ SAMD (Arduino Zero)
KNX connectivity KNX Transceiver on Board
EnOcean Module EnOceanPI
Needed libraries KONNEKTING Lib [1]
Wire (part of Standard Arduino)


Description

Hardware

Software

GiitHub Source Code

Software Components

KonnektingEnocean_V1.0.ino
"Operating System", maps together all components, here the set of devices is configured.
kdevice_KNX_EnOcean_Gateway.h
Derived from the Konnekting configuration XML this header-file defines the available-configuration elements
EEPROM.h
Basic input/output, to access the EEPROM storage that stores the configuration.
EnOcean.h / EnOcean.cpp
Core components, that are shared among the device-modules.
EnOceanDevice_EMPTY.h
Empty EnOcean device template, can be used as a source for copying, to create new Device modules for this Gateway. Feel free to join the development!
EnOceanDevice_NodOn_2Ch.h
Device Module to forward the actuators states from EnOcean to KNX. To allow switching of the actuator from KNX it is neccessary to use a sender module.
EnOceanDevice_RPS_sender.h
Device Module that simulates a simple single EnOcean push-button. Can be used to switch EnOcean actuators. This module can be used independently from any actuator, it is working fire and forget.
EnOceanDevice_RPS_simple.h
Device Module that receives commands from EnOcean push-button devices with up to four rockers.

Software structure

Each Device Module defines the Konnekting representation of a specific device-type. E.g. EnOceanDevice_RPS_simple.h is a module that reflects a standard push-button switches such as Eltako FT-55. If you have two switches, so two FT-55, you need two instances of that Device Module loaded in your Sketch.

Within the "operating system" the devices are registered as objects and within the setup-routine configured. The order of appearance within the setup-routine matters.

How to build the software

Use Arduino with the libraries Wire and KonnektingDevice.

User Documentation

  • Get the sketch from the GitHub Source. It comes with an example setup, that allows you to
  • If needed change the device-configuration, e.g. if you need more or different Device Modules.
    • Build the XML File with an XML-Editor of your choice
      • Add the Device Module XML snippets of your choice
      • Take good care of the order of the Device Modules within your XML-File
    • Use the KONNEKTING-CodeCreator to create your h-File, matching the XML-File
    • Alter the KonnektingEnocean_V1.0.ino file to match the XML-File.
  • Upload the code to your Hardware. Refer HowToUploadArduinoCode if you are struggling with Uploading. Here the device only needs to be connected to your PC via USB, no KNX connection is needed.
  • Configure the Gateway, using the Konnekting Suite and the XML-File, refer each Device Modules documentation on how to set the configuration. Some EnOcean device-ids might be needed here, so hold them ready.
  • Upload the configuration to the device using the Suite. Now no USB connection is needed but your Hardware needs to be connected KNX instead.
  • Now you don't need your PC anymore. Teach in all relevant EnOcean devices. Follow the instructions on each Device Modules page to understand the way each device-type is configured.

Developer Documentation

Refer this on how to build your own EnOcean Device Module

Build It

Links

KNX User Forum Thread

EnOcean Equipment Profiles