Skip to content

Commit

Permalink
Merge remote-tracking branch 'thelsing/master' into fix/group-object-…
Browse files Browse the repository at this point in the history
…setting-invalid-value--thelsing/master

# Conflicts:
#	src/knx/group_object.cpp
  • Loading branch information
cornelius-koepp committed Nov 2, 2024
2 parents b8f914c + a30bbd0 commit becfd86
Show file tree
Hide file tree
Showing 832 changed files with 88,167 additions and 58,571 deletions.
3 changes: 3 additions & 0 deletions .readthedocs.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -13,6 +13,9 @@ build:
# nodejs: "20"
# rust: "1.70"
# golang: "1.20"
apt_packages:
- graphviz
- openjdk-11-jre

# Build documentation in the "docs/" directory with Sphinx
sphinx:
Expand Down
7 changes: 6 additions & 1 deletion CMakeLists.txt
Original file line number Diff line number Diff line change
@@ -1,3 +1,8 @@
cmake_policy(SET CMP0048 NEW)
cmake_minimum_required(VERSION 3.16)
project(knx VERSION 1.5)


add_subdirectory(examples/knx-linux)
add_subdirectory(examples/knx-linux-coupler)
add_subdirectory(examples/knxPython)
add_subdirectory(examples/knxPython)
18 changes: 1 addition & 17 deletions README.md
Original file line number Diff line number Diff line change
@@ -1,26 +1,10 @@
# knx

This is a fork of the thelsing/knx stack from Thomas Kunze for and by the OpenKNX Team.

While we did not remove support for any plattform, the testing focus is on RP2040 (main), ESP32 (experimental) and SAMD21(deprecated).

This projects provides a knx-device stack for arduino (ESP8266, ESP32, SAMD21, RP2040, STM32), CC1310 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 the [Kaenx-Creator](https://github.com/OpenKNX/Kaenx-Creator) tool.

Generated documentation can be found [here](https://knx.readthedocs.io/en/latest/).

## Usage
See the examples for basic usage options


## Changelog

### V2.1.0 - 2024-07-03
- complete rework of the TPUart DataLinkLayer with support interrupt-based handling and optimized queue handling
- added DMA support for RP2040 platform
- fix some issues with continous integration causing github actions to fail
- added rp2040 plattform to knx-demo example
- added bool GroupObject::valueCompare method for only sending the value when it has changed

### V2.0.0 - 2024-02-13
- first OpenKNX version
2 changes: 1 addition & 1 deletion doc/Doxyfile
Original file line number Diff line number Diff line change
Expand Up @@ -2072,7 +2072,7 @@ PERLMOD_MAKEVAR_PREFIX =
# C-preprocessor directives found in the sources and include files.
# The default value is: YES.

ENABLE_PREPROCESSING = YES
ENABLE_PREPROCESSING = NO

# If the MACRO_EXPANSION tag is set to YES, doxygen will expand all macro names
# in the source code. If set to NO, only conditional compilation will be
Expand Down
4 changes: 2 additions & 2 deletions doc/conf.py
Original file line number Diff line number Diff line change
Expand Up @@ -26,7 +26,7 @@
read_the_docs_build = os.environ.get('READTHEDOCS', None) == 'True'

if read_the_docs_build:
subprocess.call('wget -O plantuml.jar https://github.com/plantuml/plantuml/releases/download/v1.2023.10/plantuml-1.2023.10.jar', shell=True)
subprocess.call('wget -O plantuml.jar https://github.com/plantuml/plantuml/releases/download/v1.2024.6/plantuml.jar', shell=True)

subprocess.call('doxygen', shell=True)
subprocess.call('mv ./doxyoutput/html/index.html ./doxyoutput/html/index_doxygen.html', shell=True)
Expand Down Expand Up @@ -475,4 +475,4 @@


# Example configuration for intersphinx: refer to the Python standard library.
intersphinx_mapping = {'https://docs.python.org/': None}
# intersphinx_mapping = {'https://docs.python.org/': None}
2 changes: 1 addition & 1 deletion doc/example_list.h
Original file line number Diff line number Diff line change
Expand Up @@ -3,5 +3,5 @@
* @example knx-demo.ino
* @example knx-hdc1008.ino
* @example knx-bme680.ino
*
*
**/
3 changes: 2 additions & 1 deletion doc/requirements.txt
Original file line number Diff line number Diff line change
@@ -1,3 +1,4 @@
exhale
breathe
sphinx>=2.1.2
sphinx>=2.1.2
sphinx-rtd-theme
69 changes: 46 additions & 23 deletions examples/knx-cc1310/CC1310_LAUNCHXL.h
Original file line number Diff line number Diff line change
Expand Up @@ -164,7 +164,8 @@ void CC1310_LAUNCHXL_wakeUpExtFlash(void);
* @def CC1310_LAUNCHXL_ADCBufName
* @brief Enum of ADCBufs
*/
typedef enum CC1310_LAUNCHXL_ADCBufName {
typedef enum CC1310_LAUNCHXL_ADCBufName
{
CC1310_LAUNCHXL_ADCBUF0 = 0,

CC1310_LAUNCHXL_ADCBUFCOUNT
Expand All @@ -174,7 +175,8 @@ typedef enum CC1310_LAUNCHXL_ADCBufName {
* @def CC1310_LAUNCHXL_ADCBuf0SourceName
* @brief Enum of ADCBuf channels
*/
typedef enum CC1310_LAUNCHXL_ADCBuf0ChannelName {
typedef enum CC1310_LAUNCHXL_ADCBuf0ChannelName
{
CC1310_LAUNCHXL_ADCBUF0CHANNEL0 = 0,
CC1310_LAUNCHXL_ADCBUF0CHANNEL1,
CC1310_LAUNCHXL_ADCBUF0CHANNEL2,
Expand All @@ -194,7 +196,8 @@ typedef enum CC1310_LAUNCHXL_ADCBuf0ChannelName {
* @def CC1310_LAUNCHXL_ADCName
* @brief Enum of ADCs
*/
typedef enum CC1310_LAUNCHXL_ADCName {
typedef enum CC1310_LAUNCHXL_ADCName
{
CC1310_LAUNCHXL_ADC0 = 0,
CC1310_LAUNCHXL_ADC1,
CC1310_LAUNCHXL_ADC2,
Expand All @@ -214,7 +217,8 @@ typedef enum CC1310_LAUNCHXL_ADCName {
* @def CC1310_LAUNCHXL_CryptoName
* @brief Enum of Crypto names
*/
typedef enum CC1310_LAUNCHXL_CryptoName {
typedef enum CC1310_LAUNCHXL_CryptoName
{
CC1310_LAUNCHXL_CRYPTO0 = 0,

CC1310_LAUNCHXL_CRYPTOCOUNT
Expand All @@ -224,7 +228,8 @@ typedef enum CC1310_LAUNCHXL_CryptoName {
* @def CC1310_LAUNCHXL_AESCCMName
* @brief Enum of AESCCM names
*/
typedef enum CC1310_LAUNCHXL_AESCCMName {
typedef enum CC1310_LAUNCHXL_AESCCMName
{
CC1310_LAUNCHXL_AESCCM0 = 0,

CC1310_LAUNCHXL_AESCCMCOUNT
Expand All @@ -234,7 +239,8 @@ typedef enum CC1310_LAUNCHXL_AESCCMName {
* @def CC1310_LAUNCHXL_AESGCMName
* @brief Enum of AESGCM names
*/
typedef enum CC1310_LAUNCHXL_AESGCMName {
typedef enum CC1310_LAUNCHXL_AESGCMName
{
CC1310_LAUNCHXL_AESGCM0 = 0,

CC1310_LAUNCHXL_AESGCMCOUNT
Expand All @@ -244,7 +250,8 @@ typedef enum CC1310_LAUNCHXL_AESGCMName {
* @def CC1310_LAUNCHXL_AESCBCName
* @brief Enum of AESCBC names
*/
typedef enum CC1310_LAUNCHXL_AESCBCName {
typedef enum CC1310_LAUNCHXL_AESCBCName
{
CC1310_LAUNCHXL_AESCBC0 = 0,

CC1310_LAUNCHXL_AESCBCCOUNT
Expand All @@ -254,7 +261,8 @@ typedef enum CC1310_LAUNCHXL_AESCBCName {
* @def CC1310_LAUNCHXL_AESCTRName
* @brief Enum of AESCTR names
*/
typedef enum CC1310_LAUNCHXL_AESCTRName {
typedef enum CC1310_LAUNCHXL_AESCTRName
{
CC1310_LAUNCHXL_AESCTR0 = 0,

CC1310_LAUNCHXL_AESCTRCOUNT
Expand All @@ -264,7 +272,8 @@ typedef enum CC1310_LAUNCHXL_AESCTRName {
* @def CC1310_LAUNCHXL_AESECBName
* @brief Enum of AESECB names
*/
typedef enum CC1310_LAUNCHXL_AESECBName {
typedef enum CC1310_LAUNCHXL_AESECBName
{
CC1310_LAUNCHXL_AESECB0 = 0,

CC1310_LAUNCHXL_AESECBCOUNT
Expand All @@ -274,7 +283,8 @@ typedef enum CC1310_LAUNCHXL_AESECBName {
* @def CC1310_LAUNCHXL_AESCTRDRBGName
* @brief Enum of AESCTRDRBG names
*/
typedef enum CC1310_LAUNCHXL_AESCTRDRBGName {
typedef enum CC1310_LAUNCHXL_AESCTRDRBGName
{
CC1310_LAUNCHXL_AESCTRDRBG0 = 0,

CC1310_LAUNCHXL_AESCTRDRBGCOUNT
Expand All @@ -284,7 +294,8 @@ typedef enum CC1310_LAUNCHXL_AESCTRDRBGName {
* @def CC1310_LAUNCHXL_TRNGName
* @brief Enum of TRNG names
*/
typedef enum CC1310_LAUNCHXL_TRNGName {
typedef enum CC1310_LAUNCHXL_TRNGName
{
CC1310_LAUNCHXL_TRNG0 = 0,

CC1310_LAUNCHXL_TRNGCOUNT
Expand All @@ -294,7 +305,8 @@ typedef enum CC1310_LAUNCHXL_TRNGName {
* @def CC1310_LAUNCHXL_GPIOName
* @brief Enum of GPIO names
*/
typedef enum CC1310_LAUNCHXL_GPIOName {
typedef enum CC1310_LAUNCHXL_GPIOName
{
CC1310_LAUNCHXL_GPIO_S1 = 0,
CC1310_LAUNCHXL_GPIO_S2,
CC1310_LAUNCHXL_SPI_MASTER_READY,
Expand All @@ -314,7 +326,8 @@ typedef enum CC1310_LAUNCHXL_GPIOName {
* @def CC1310_LAUNCHXL_GPTimerName
* @brief Enum of GPTimer parts
*/
typedef enum CC1310_LAUNCHXL_GPTimerName {
typedef enum CC1310_LAUNCHXL_GPTimerName
{
CC1310_LAUNCHXL_GPTIMER0A = 0,
CC1310_LAUNCHXL_GPTIMER0B,
CC1310_LAUNCHXL_GPTIMER1A,
Expand All @@ -331,7 +344,8 @@ typedef enum CC1310_LAUNCHXL_GPTimerName {
* @def CC1310_LAUNCHXL_GPTimers
* @brief Enum of GPTimers
*/
typedef enum CC1310_LAUNCHXL_GPTimers {
typedef enum CC1310_LAUNCHXL_GPTimers
{
CC1310_LAUNCHXL_GPTIMER0 = 0,
CC1310_LAUNCHXL_GPTIMER1,
CC1310_LAUNCHXL_GPTIMER2,
Expand All @@ -344,7 +358,8 @@ typedef enum CC1310_LAUNCHXL_GPTimers {
* @def CC1310_LAUNCHXL_I2CName
* @brief Enum of I2C names
*/
typedef enum CC1310_LAUNCHXL_I2CName {
typedef enum CC1310_LAUNCHXL_I2CName
{
CC1310_LAUNCHXL_I2C0 = 0,

CC1310_LAUNCHXL_I2CCOUNT
Expand All @@ -354,7 +369,8 @@ typedef enum CC1310_LAUNCHXL_I2CName {
* @def CC1310_LAUNCHXL_I2SName
* @brief Enum of I2S names
*/
typedef enum CC1310_LAUNCHXL_I2SName {
typedef enum CC1310_LAUNCHXL_I2SName
{
CC1310_LAUNCHXL_I2S0 = 0,

CC1310_LAUNCHXL_I2SCOUNT
Expand All @@ -364,7 +380,8 @@ typedef enum CC1310_LAUNCHXL_I2SName {
* @def CC1310_LAUNCHXL_NVSName
* @brief Enum of NVS names
*/
typedef enum CC1310_LAUNCHXL_NVSName {
typedef enum CC1310_LAUNCHXL_NVSName
{
#ifndef Board_EXCLUDE_NVS_INTERNAL_FLASH
CC1310_LAUNCHXL_NVSCC26XX0 = 0,
#endif
Expand All @@ -379,7 +396,8 @@ typedef enum CC1310_LAUNCHXL_NVSName {
* @def CC1310_LAUNCHXL_PWM
* @brief Enum of PWM outputs
*/
typedef enum CC1310_LAUNCHXL_PWMName {
typedef enum CC1310_LAUNCHXL_PWMName
{
CC1310_LAUNCHXL_PWM0 = 0,
CC1310_LAUNCHXL_PWM1,
CC1310_LAUNCHXL_PWM2,
Expand All @@ -396,7 +414,8 @@ typedef enum CC1310_LAUNCHXL_PWMName {
* @def CC1310_LAUNCHXL_SDName
* @brief Enum of SD names
*/
typedef enum CC1310_LAUNCHXL_SDName {
typedef enum CC1310_LAUNCHXL_SDName
{
CC1310_LAUNCHXL_SDSPI0 = 0,

CC1310_LAUNCHXL_SDCOUNT
Expand All @@ -406,7 +425,8 @@ typedef enum CC1310_LAUNCHXL_SDName {
* @def CC1310_LAUNCHXL_SPIName
* @brief Enum of SPI names
*/
typedef enum CC1310_LAUNCHXL_SPIName {
typedef enum CC1310_LAUNCHXL_SPIName
{
CC1310_LAUNCHXL_SPI0 = 0,
CC1310_LAUNCHXL_SPI1,

Expand All @@ -417,7 +437,8 @@ typedef enum CC1310_LAUNCHXL_SPIName {
* @def CC1310_LAUNCHXL_UARTName
* @brief Enum of UARTs
*/
typedef enum CC1310_LAUNCHXL_UARTName {
typedef enum CC1310_LAUNCHXL_UARTName
{
CC1310_LAUNCHXL_UART0 = 0,

CC1310_LAUNCHXL_UARTCOUNT
Expand All @@ -427,7 +448,8 @@ typedef enum CC1310_LAUNCHXL_UARTName {
* @def CC1310_LAUNCHXL_UDMAName
* @brief Enum of DMA buffers
*/
typedef enum CC1310_LAUNCHXL_UDMAName {
typedef enum CC1310_LAUNCHXL_UDMAName
{
CC1310_LAUNCHXL_UDMA0 = 0,

CC1310_LAUNCHXL_UDMACOUNT
Expand All @@ -437,7 +459,8 @@ typedef enum CC1310_LAUNCHXL_UDMAName {
* @def CC1310_LAUNCHXL_WatchdogName
* @brief Enum of Watchdogs
*/
typedef enum CC1310_LAUNCHXL_WatchdogName {
typedef enum CC1310_LAUNCHXL_WatchdogName
{
CC1310_LAUNCHXL_WATCHDOG0 = 0,

CC1310_LAUNCHXL_WATCHDOGCOUNT
Expand Down
Loading

0 comments on commit becfd86

Please sign in to comment.