From: xandinator Date: Sat, 12 Feb 2022 23:45:56 +0000 (+0100) Subject: hameg-hmo: Add support for R&S RTH100x X-Git-Url: https://sigrok.org/gitaction?a=commitdiff_plain;h=10e6dfd1f921ab45d9eb50af6d79a4de527a2ff2;p=libsigrok.git hameg-hmo: Add support for R&S RTH100x --- diff --git a/src/hardware/hameg-hmo/protocol.c b/src/hardware/hameg-hmo/protocol.c index c155d338..5a2a1d50 100644 --- a/src/hardware/hameg-hmo/protocol.c +++ b/src/hardware/hameg-hmo/protocol.c @@ -161,6 +161,11 @@ static const char *coupling_options_rtm300x[] = { "GND", }; +static const char *coupling_options_rth100x[] = { + "ACL", // AC with 1 MOhm termination + "DCL", // DC with 1 MOhm termination +}; + static const char *scope_trigger_slopes[] = { "POS", "NEG", @@ -209,6 +214,12 @@ static const char *an2_dig16_sbus_trigger_sources[] = { "D8", "D9", "D10", "D11", "D12", "D13", "D14", "D15", }; +/* RTH1002 */ +static const char *an2_dig8_isol_trigger_sources[] = { + "CH1", "CH2", + "D0", "D1", "D2", "D3", "D4", "D5", "D6", "D7", +}; + /* HMO Compact4 */ static const char *an4_dig8_trigger_sources[] = { "CH1", "CH2", "CH3", "CH4", @@ -232,6 +243,12 @@ static const char *an4_dig16_sbus_trigger_sources[] = { "D8", "D9", "D10", "D11", "D12", "D13", "D14", "D15", }; +/* RTH1004 */ +static const char *an4_dig8_isol_trigger_sources[] = { + "CH1", "CH2", "CH3", "CH4", + "D0", "D1", "D2", "D3", "D4", "D5", "D6", "D7", +}; + static const uint64_t timebases[][2] = { /* nanoseconds */ { 1, 1000000000 }, @@ -754,6 +771,47 @@ static struct scope_config scope_models[] = { .num_ydivs = 8, + .scpi_dialect = &rohde_schwarz_log_not_pod_scpi_dialect, + }, + /* RTH1002 & RTH1004 are both identified as RTH */ + { + .name = {"RTH", NULL}, + .analog_channels = 4, + .digital_channels = 8, + + .analog_names = &scope_analog_channel_names, + .digital_names = &scope_digital_channel_names, + + .devopts = &devopts, + .num_devopts = ARRAY_SIZE(devopts), + + .devopts_cg_analog = &devopts_cg_analog, + .num_devopts_cg_analog = ARRAY_SIZE(devopts_cg_analog), + + .devopts_cg_digital = &devopts_cg_digital, + .num_devopts_cg_digital = ARRAY_SIZE(devopts_cg_digital), + + .coupling_options = &coupling_options_rth100x, + .num_coupling_options = ARRAY_SIZE(coupling_options_rth100x), + + .logic_threshold = &logic_threshold, + .num_logic_threshold = ARRAY_SIZE(logic_threshold), + .logic_threshold_for_pod = TRUE, + + .trigger_sources = &an4_dig8_isol_trigger_sources, + .num_trigger_sources = ARRAY_SIZE(an4_dig8_isol_trigger_sources), + + .trigger_slopes = &scope_trigger_slopes, + .num_trigger_slopes = ARRAY_SIZE(scope_trigger_slopes), + + .timebases = &timebases, + .num_timebases = ARRAY_SIZE(timebases), + + .vdivs = &vdivs, + .num_vdivs = ARRAY_SIZE(vdivs), + + .num_ydivs = 8, + .scpi_dialect = &rohde_schwarz_log_not_pod_scpi_dialect, }, };