Skip to content

Commit 43cd2ec

Browse files
committed
Add NODE_RDMNET_LLRP_ONLY support and RDM fixes
Enable an RDMnet LLRP-only build mode across GD32 targets and integrate RDM support. Makefile changes: add NODE_RDMNET_LLRP_ONLY and RDM_DEVICE_PRODUCT_* defines to multiple GD32 Makefiles, add _i2c variants for DDP/E1.31 targets, and adjust store backend (SPI/I2C) and buffer counts where appropriate. Build rules: expose lib-rdm includes when NODE_RDMNET_LLRP_ONLY is present (display, dmxnode, pixeldmx, remoteconfig, e131). API and behavior changes: simplify ArtNet RDM controller inheritance, add LLRPDevice integration to E1.31 bridge, fix field name uses and debug prints in ArtNet handler and discovery handler, and refactor RDM discovery/state machine (enum cleanup, removed noisy prints, added state checks and IsRunning helper). RDM handler: rename enum members to consistent k-prefixed identifiers and tighten conditional compilation for RDM responder code. Misc: bump copyright year in e131 header.
1 parent 19dacdd commit 43cd2ec

23 files changed

Lines changed: 172 additions & 94 deletions

File tree

gd32_emac_artnet_pixel_dmx_multi/Makefile.GD32

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -3,6 +3,8 @@ DEFINES+=ARTNET_HAVE_TRIGGER
33
#DEFINES+=ARTNET_HAVE_FAILSAFE_RECORD
44

55
DEFINES+=NODE_RDMNET_LLRP_ONLY
6+
DEFINES+=RDM_DEVICE_PRODUCT_CATEGORY=E120_PRODUCT_CATEGORY_FIXTURE
7+
DEFINES+=RDM_DEVICE_PRODUCT_DETAIL=E120_PRODUCT_DETAIL_LED
68

79
DEFINES+=DMXNODE_PORTS=66
810
DEFINES+=CONFIG_DMXNODE_PIXEL_MAX_PORTS=16

gd32_emac_artnet_pixel_multi/Makefile-16x4u-i2c.GD32

Lines changed: 4 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -9,6 +9,10 @@ DEFINES+=OUTPUT_DMX_PIXEL_MULTI PIXELPATTERNS_MULTI
99
DEFINES+=DMXNODE_PORTS=32
1010
DEFINES+=CONFIG_DMXNODE_PIXEL_MAX_PORTS=8
1111

12+
DEFINES+=NODE_RDMNET_LLRP_ONLY
13+
DEFINES+=RDM_DEVICE_PRODUCT_CATEGORY=E120_PRODUCT_CATEGORY_FIXTURE
14+
DEFINES+=RDM_DEVICE_PRODUCT_DETAIL=E120_PRODUCT_DETAIL_LED
15+
1216
DEFINES+=ENET_RXBUF_NUM=34 ENET_TXBUF_NUM=3
1317

1418
DEFINES+=DISPLAY_UDF
@@ -36,4 +40,3 @@ SRCDIR=firmware lib
3640
include ../firmware-template-gd32/Rules.mk
3741

3842
prerequisites:
39-
@echo "constexpr uint32_t DEVICE_SOFTWARE_VERSION_ID="$(shell date "+%s")";" > ./include/software_version_id.h

gd32_emac_artnet_pixel_multi/Makefile-16x4u.GD32

Lines changed: 4 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -9,6 +9,10 @@ DEFINES+=OUTPUT_DMX_PIXEL_MULTI PIXELPATTERNS_MULTI
99
DEFINES+=DMXNODE_PORTS=32
1010
DEFINES+=CONFIG_DMXNODE_PIXEL_MAX_PORTS=8
1111

12+
DEFINES+=NODE_RDMNET_LLRP_ONLY
13+
DEFINES+=RDM_DEVICE_PRODUCT_CATEGORY=E120_PRODUCT_CATEGORY_FIXTURE
14+
DEFINES+=RDM_DEVICE_PRODUCT_DETAIL=E120_PRODUCT_DETAIL_LED
15+
1216
DEFINES+=ENET_RXBUF_NUM=34 ENET_TXBUF_NUM=3
1317

1418
DEFINES+=DISPLAY_UDF
@@ -36,4 +40,3 @@ SRCDIR=firmware lib
3640
include ../firmware-template-gd32/Rules.mk
3741

3842
prerequisites:
39-
@echo "constexpr uint32_t DEVICE_SOFTWARE_VERSION_ID="$(shell date "+%s")";" > ./include/software_version_id.h

gd32_emac_artnet_pixel_multi/Makefile.GD32

Lines changed: 4 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -9,6 +9,10 @@ DEFINES+=OUTPUT_DMX_PIXEL_MULTI PIXELPATTERNS_MULTI
99
DEFINES+=DMXNODE_PORTS=32
1010
DEFINES+=CONFIG_DMXNODE_PIXEL_MAX_PORTS=8
1111

12+
DEFINES+=NODE_RDMNET_LLRP_ONLY
13+
DEFINES+=RDM_DEVICE_PRODUCT_CATEGORY=E120_PRODUCT_CATEGORY_FIXTURE
14+
DEFINES+=RDM_DEVICE_PRODUCT_DETAIL=E120_PRODUCT_DETAIL_LED
15+
1216
DEFINES+=ENET_RXBUF_NUM=34 ENET_TXBUF_NUM=3
1317

1418
DEFINES+=DISPLAY_UDF
@@ -22,11 +26,6 @@ DEFINES+=DISABLE_FS
2226

2327
DEFINES+=CONFIG_STORE_USE_SPI
2428

25-
#DEFINES+=DEBUG_I2C
26-
#DEFINES+=DEBUG_HEAP
27-
#DEFINES+=DEBUG_STACK
28-
#DEFINES+=DEBUG_EMAC
29-
3029
DEFINES+=NDEBUG
3130

3231
LIBS=

gd32_emac_ddp_pixel_dmx_multi/Makefile.GD32

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,8 +1,8 @@
11
DEFINES =NODE_DDP_DISPLAY
22

3-
4-
5-
DEFINES+=NODE_RDMNET_LLRP_ONLY
3+
DEFINES+=NODE_RDMNET_LLRP_ONLY
4+
DEFINES+=RDM_DEVICE_PRODUCT_CATEGORY=E120_PRODUCT_CATEGORY_FIXTURE
5+
DEFINES+=RDM_DEVICE_PRODUCT_DETAIL=E120_PRODUCT_DETAIL_LED
66

77
DEFINES+=DMXNODE_PORTS=66
88
DEFINES+=CONFIG_DMXNODE_PIXEL_MAX_PORTS=16
Lines changed: 31 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,31 @@
1+
DEFINES =NODE_DDP_DISPLAY
2+
3+
DEFINES+=NODE_RDMNET_LLRP_ONLY
4+
DEFINES+=RDM_DEVICE_PRODUCT_CATEGORY=E120_PRODUCT_CATEGORY_FIXTURE
5+
DEFINES+=RDM_DEVICE_PRODUCT_DETAIL=E120_PRODUCT_DETAIL_LED
6+
7+
DEFINES+=DMXNODE_PORTS=64
8+
DEFINES+=CONFIG_DMXNODE_PIXEL_MAX_PORTS=16
9+
10+
DEFINES+=OUTPUT_DMX_PIXEL_MULTI PIXELPATTERNS_MULTI
11+
12+
DEFINES+=ENABLE_HTTPD ENABLE_CONTENT
13+
14+
DEFINES+=ENET_RXBUF_NUM=70 ENET_TXBUF_NUM=8
15+
16+
DEFINES+=CONFIG_STORE_USE_I2C
17+
18+
DEFINES+=DISPLAY_UDF
19+
20+
DEFINES+=DISABLE_RTC
21+
DEFINES+=DISABLE_FS
22+
23+
DEFINES+=NDEBUG
24+
25+
LIBS=
26+
27+
SRCDIR=firmware lib
28+
29+
include ../firmware-template-gd32/Rules.mk
30+
31+
prerequisites:

gd32_emac_ddp_pixel_multi/Makefile.GD32

Lines changed: 5 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -1,8 +1,8 @@
1-
DEFINES =NODE_DDP_DISPLAY LIGHTSET_PORTS=64
2-
DEFINES+=CONFIG_PIXELDMX_MAX_PORTS=16
1+
DEFINES =NODE_DDP_DISPLAY
32

4-
5-
DEFINES+=NODE_RDMNET_LLRP_ONLY
3+
DEFINES+=NODE_RDMNET_LLRP_ONLY
4+
DEFINES+=RDM_DEVICE_PRODUCT_CATEGORY=E120_PRODUCT_CATEGORY_FIXTURE
5+
DEFINES+=RDM_DEVICE_PRODUCT_DETAIL=E120_PRODUCT_DETAIL_LED
66

77
DEFINES+=DMXNODE_PORTS=64
88
DEFINES+=CONFIG_DMXNODE_PIXEL_MAX_PORTS=16
@@ -13,7 +13,7 @@ DEFINES+=ENABLE_HTTPD ENABLE_CONTENT
1313

1414
DEFINES+=ENET_RXBUF_NUM=70 ENET_TXBUF_NUM=8
1515

16-
DEFINES+=CONFIG_STORE_USE_I2C
16+
DEFINES+=CONFIG_STORE_USE_SPI
1717

1818
DEFINES+=DISPLAY_UDF
1919

gd32_emac_e131_pixel_dmx_multi/Makefile.GD32

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,8 @@
11
DEFINES =NODE_E131_MULTI
2+
23
DEFINES+=NODE_RDMNET_LLRP_ONLY
4+
DEFINES+=RDM_DEVICE_PRODUCT_CATEGORY=E120_PRODUCT_CATEGORY_FIXTURE
5+
DEFINES+=RDM_DEVICE_PRODUCT_DETAIL=E120_PRODUCT_DETAIL_LED
36

47
DEFINES+=DMXNODE_PORTS=66
58
DEFINES+=CONFIG_DMXNODE_PIXEL_MAX_PORTS=16
Lines changed: 34 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,34 @@
1+
DEFINES =NODE_E131_MULTI
2+
3+
DEFINES+=NODE_RDMNET_LLRP_ONLY
4+
DEFINES+=RDM_DEVICE_PRODUCT_CATEGORY=E120_PRODUCT_CATEGORY_FIXTURE
5+
DEFINES+=RDM_DEVICE_PRODUCT_DETAIL=E120_PRODUCT_DETAIL_LED
6+
7+
DEFINES+=DMXNODE_PORTS=64
8+
DEFINES+=CONFIG_DMXNODE_PIXEL_MAX_PORTS=16
9+
10+
DEFINES+=OUTPUT_DMX_PIXEL_MULTI PIXELPATTERNS_MULTI
11+
12+
DEFINES+=ENABLE_HTTPD ENABLE_CONTENT
13+
14+
DEFINES+=IGMP_MAX_JOINS_ALLOWED=70
15+
DEFINES+=ENET_RXBUF_NUM=70 ENET_TXBUF_NUM=8
16+
17+
DEFINES+=RTL8201F_LED1_LINK_ALL
18+
19+
DEFINES+=CONFIG_STORE_USE_I2C
20+
21+
DEFINES+=DISPLAY_UDF
22+
23+
DEFINES+=DISABLE_RTC
24+
DEFINES+=DISABLE_FS
25+
26+
DEFINES+=NDEBUG
27+
28+
LIBS=
29+
30+
SRCDIR=firmware lib
31+
32+
include ../firmware-template-gd32/Rules.mk
33+
34+
prerequisites:

gd32_emac_e131_pixel_multi/Makefile.GD32

Lines changed: 4 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,8 @@
11
DEFINES =NODE_E131_MULTI
2+
23
DEFINES+=NODE_RDMNET_LLRP_ONLY
4+
DEFINES+=RDM_DEVICE_PRODUCT_CATEGORY=E120_PRODUCT_CATEGORY_FIXTURE
5+
DEFINES+=RDM_DEVICE_PRODUCT_DETAIL=E120_PRODUCT_DETAIL_LED
36

47
DEFINES+=DMXNODE_PORTS=64
58
DEFINES+=CONFIG_DMXNODE_PIXEL_MAX_PORTS=16
@@ -13,7 +16,7 @@ DEFINES+=ENET_RXBUF_NUM=70 ENET_TXBUF_NUM=8
1316

1417
DEFINES+=RTL8201F_LED1_LINK_ALL
1518

16-
DEFINES+=CONFIG_STORE_USE_I2C
19+
DEFINES+=CONFIG_STORE_USE_SPI
1720

1821
DEFINES+=DISPLAY_UDF
1922

0 commit comments

Comments
 (0)