SiglentRemote - Support
SiglentRemote Icon

SiglentRemote v1.0

Native remote control for Siglent SDS1200X‑E and compatible oscilloscopes

🚀 Quick Support Guide

Welcome to the official SiglentRemote documentation. Set up, monitor, and acquire waveforms from your Siglent oscilloscope directly on macOS with a native, high‑performance SwiftUI interface.

📋 Quick Start
1

Connect the oscilloscope

Connect your Siglent to the same LAN network as your Mac (via Ethernet cable or router).

2

Get the IP address

On the scope: press UtilityI/OLAN. Write down the IP address.

3

Connect in the app

Enter the IP in the top‑right field and click Connect. The LED turns green.

4

Control & acquire

Use the panels for timebase, channels, screenshots and full waveform acquisition.

⚡ Key Features

📸 Native Screenshot

Capture BMP screenshot via SCDP command, view, save or copy to clipboard. Interactive zoom with gestures.

📊 Waveform Acquisition

Reads C1:WF? DAT2 binary data, decodes with correct voltage/code conversion, displays interactive chart.

📈 Live Monitor

Automatic polling of frequency, trigger status, timebase, CH1/CH2 V/div with adjustable interval.

🎛️ Full Measurement Panel

CH1/CH2 measurements: FREQ, Vpp, RMS, Period, Mean, Min, Max. On‑demand refresh.

⌨️ SCPI Console

Send manual text commands, quick‑suggest buttons, and view raw responses in the log panel.

💾 CSV Export

Save waveform points as CSV (time in seconds, voltage in volts) for external analysis.

📡 Requirements & Network Setup

🖥️ Mac Requirements

  • macOS 13.0 (Ventura) or newer
  • Intel or Apple Silicon
  • Ethernet/WiFi connection to the oscilloscope’s LAN
  • TCP port 5025 (standard SCPI for SDS1200X‑E)

🌐 Oscilloscope LAN Setup

  1. Connect Ethernet cable to the scope
  2. UtilityIO SetLAN
  3. Set DHCP: Enable for automatic IP, or configure a static IP
  4. Save settings via Save/Recall
  5. Default SCPI port: 5025 (5024 for some SDG models)
🔧 Common Issues & Solutions
IssueSolution
❌ “Connection failed”Verify IP address, LAN cable, firewall, and that port 5025 is open. Try pinging the oscilloscope.
📸 Screenshot not receivedThe scope must support SCDP. Wait up to 10 seconds (auto‑timeout). Ensure acquisition is running (Run mode).
📉 No waveform / zero pointsMake sure CH1 is on (C1:TRA ON) and the scope is not in STOP. The 📈 WF button temporarily stops monitoring to read parameters correctly.
🔄 Live monitor shows “--”The query command may not be supported by your firmware. Try sending manually from the console: CYMT? or TDIV?.
⏱️ Timeout during binary transferNetwork congestion? Reduce data load or restart the connection. The app automatically handles half‑close and will retry.
📡 Example SCPI Commands

Basic Commands

*IDN?               → instrument identification
*RST                → factory reset
TRig_MoDe AUTO      → auto acquisition
TRig_MoDe STOP      → hold acquisition
ASET                → quick auto setup

Channels & Timebase

C1:VDIV 1          → CH1 vertical scale 1V/div
C1:OFST 0.5         → CH1 offset +0.5V
C2:TRA ON           → turn on CH2
TDIV 1MS            → timebase 1ms/div
HPOS 0ns            → horizontal position zero

Queries & Measurements

CYMT?               → main frequency
SAST?               → trigger state (ARM/TRIG/STOP)
C1:PAVA? FREQ       → CH1 frequency
C1:PAVA? PKPK       → CH1 Vpp
C1:WF? DAT2         → CH1 binary waveform data

📖 For the full command set, refer to the SDS1000X‑E Programming Manual.

📐 Waveform Decoding

SiglentRemote implements the correct formula from the SDS1000X‑E manual to convert raw points into voltage and time:

V = code × (V/div ÷ 25) – Voffset
t0 = – (Timebase × 14 ÷ 2)
dt = 1 / SARA (sample rate in Sa/s)

V/div, offset, timebase and sample rate are automatically queried before each acquisition. Min‑max downsampling preserves peaks and valleys even with over 10,000 points.

🔗 External Resources & Links

🐙 GitHub Repository (Source code)

SiglentRemote – Native SwiftUI client
Updates, bug reports and feature requests.