Implemented qt port + e2e

This commit is contained in:
Martino Ferrari
2026-06-26 09:11:10 +02:00
parent 0d7d8f396b
commit 4702d0a217
146 changed files with 57272 additions and 128 deletions
+18 -8
View File
@@ -7,11 +7,14 @@
* Sine1 (1 Hz, 5 V, phase 0)
* Sine2 (0.3 Hz, 3 V, phase 60 deg)
*
* Thread2 1 kHz — 2 array sines @ 1 Msps (1000 elem × 1 kHz)
* Thread2 1 kHz — 2 array sines @ 1 Msps (1000 elem × 1 kHz, Strict)
* Ch1 (1 kHz, 1 V, phase 0)
* Ch2 (5 kHz, 0.5 V, phase 90 deg)
* Strict publishing: every cycle's 1 ms array is sent so the
* reconstructed waveform is contiguous (Decimate would drop
* whole cycles, leaving periodic gaps in the array trace).
*
* Thread3 5 kHz — 2 array sines @ 5 Msps (1000 elem × 5 kHz, Ratio=5 → 1 kHz pub)
* Thread3 5 kHz — 2 array sines @ 5 Msps (1000 elem × 5 kHz, Strict)
* Ch3 (10 kHz, 2 V, phase 0)
* Ch4 (50 kHz, 1.5 V, phase 45 deg)
*/
@@ -437,9 +440,13 @@ $App = {
+Streamer2 = {
Class = UDPStreamer
Port = 44501
MaxPayloadSize = 1400
PublishingMode = "Decimate"
Ratio = 10
// One full cycle = TimeArray1(8000) + Ch1(4000) + Ch2(4000) = 16000 B.
// Sizing the payload above a whole cycle sends each cycle as a single
// datagram (totalFragments = 1): at Strict 1 kHz / 5 kHz this avoids
// saturating the receiver's fragment-reassembly pool, which otherwise
// evicts in-flight cycles and reintroduces gaps in the array traces.
MaxPayloadSize = 18000
PublishingMode = "Strict"
Signals = {
TimeArray1 = {
Type = uint64
@@ -469,9 +476,12 @@ $App = {
+Streamer3 = {
Class = UDPStreamer
Port = 44502
MaxPayloadSize = 1400
PublishingMode = "Decimate"
Ratio = 5
// One full cycle = TimeArray2(8000) + Ch3(4000) + Ch4(4000) = 16000 B.
// Single-datagram cycles (see Streamer2) — essential here because this
// source runs Strict at 5 kHz, where per-cycle fragmentation would flood
// the reassembly pool.
MaxPayloadSize = 18000
PublishingMode = "Strict"
Signals = {
TimeArray2 = {
Type = uint64