From b1fe107da48ebea189a27aee744214590911f124 Mon Sep 17 00:00:00 2001 From: Jan Vos Date: Tue, 18 Aug 2026 10:48:44 +0200 Subject: [PATCH 1/3] implement signal getter function --- src/dmdreader.cpp | 10 ++++++---- src/dmdreader.h | 1 + 2 files changed, 7 insertions(+), 4 deletions(-) diff --git a/src/dmdreader.cpp b/src/dmdreader.cpp index 74311b3b..68832373 100644 --- a/src/dmdreader.cpp +++ b/src/dmdreader.cpp @@ -112,6 +112,7 @@ uint8_t *framebuf_to_send; uint8_t dummy_sniff_dst[1]; uint32_t frame_crc = 0; uint32_t crc_previous_frame = 0; +uint64_t detected_signals = 0; bool detected_0_1_0_1 = false; bool detected_1_0_0_0 = false; bool locked_in = false; @@ -330,10 +331,10 @@ uint64_t read_clock_count() { DmdType detect_dmd() { - uint64_t signals = read_clock_count(); - uint32_t dotclk = signals >> 32; - uint16_t rclk = signals >> 16; // never exceeds 25000 - uint16_t rdata = signals; // never exceeds 600 + detected_signals = read_clock_count(); + uint32_t dotclk = detected_signals >> 32; + uint16_t rclk = detected_signals >> 16; // never exceeds 25000 + uint16_t rdata = detected_signals; // never exceeds 600 // By checking DOTCLK, RCLK and RDATA we can identify system types // All values are based on a 1000ms sample of data @@ -1654,3 +1655,4 @@ uint8_t *dmdreader_loopback_render() { uint16_t dmdreader_get_source_width() { return source_width; } uint16_t dmdreader_get_source_height() { return source_height; } +uint64_t dmdreader_get_detect_signals() {return detect_signals; } diff --git a/src/dmdreader.h b/src/dmdreader.h index fc6460a0..58229b5c 100644 --- a/src/dmdreader.h +++ b/src/dmdreader.h @@ -56,5 +56,6 @@ void dmdreader_error_blink(bool no_error); uint16_t dmdreader_get_source_width(); uint16_t dmdreader_get_source_height(); +uint64_t dmdreader_get_detected_signals(); #endif From 3f4ad1e84ec4c08897e758754c49b13f88228338 Mon Sep 17 00:00:00 2001 From: Jan Vos Date: Tue, 18 Aug 2026 10:50:48 +0200 Subject: [PATCH 2/3] naming --- src/dmdreader.cpp | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/dmdreader.cpp b/src/dmdreader.cpp index 68832373..4701f37e 100644 --- a/src/dmdreader.cpp +++ b/src/dmdreader.cpp @@ -1655,4 +1655,4 @@ uint8_t *dmdreader_loopback_render() { uint16_t dmdreader_get_source_width() { return source_width; } uint16_t dmdreader_get_source_height() { return source_height; } -uint64_t dmdreader_get_detect_signals() {return detect_signals; } +uint64_t dmdreader_get_detect_signals() {return detected_signals; } From 80f14eb2e1e32b3db81acc504d14febecee8d819 Mon Sep 17 00:00:00 2001 From: Jan Vos Date: Tue, 18 Aug 2026 12:30:58 +0200 Subject: [PATCH 3/3] detected sifgnals --- src/dmdreader.cpp | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/dmdreader.cpp b/src/dmdreader.cpp index 4701f37e..30ec21d5 100644 --- a/src/dmdreader.cpp +++ b/src/dmdreader.cpp @@ -1655,4 +1655,4 @@ uint8_t *dmdreader_loopback_render() { uint16_t dmdreader_get_source_width() { return source_width; } uint16_t dmdreader_get_source_height() { return source_height; } -uint64_t dmdreader_get_detect_signals() {return detected_signals; } +uint64_t dmdreader_get_detected_signals() {return detected_signals; }