SiglentRemote v1.0
🚀 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.
Connect the oscilloscope
Connect your Siglent to the same LAN network as your Mac (via Ethernet cable or router).
Get the IP address
On the scope: press Utility → I/O → LAN. Write down the IP address.
Connect in the app
Enter the IP in the top‑right field and click Connect. The LED turns green.
Control & acquire
Use the panels for timebase, channels, screenshots and full waveform acquisition.
📸 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.
🖥️ 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
- Connect Ethernet cable to the scope
- Utility → IO Set → LAN
- Set DHCP: Enable for automatic IP, or configure a static IP
- Save settings via Save/Recall
- Default SCPI port: 5025 (5024 for some SDG models)
| Issue | Solution |
|---|---|
| ❌ “Connection failed” | Verify IP address, LAN cable, firewall, and that port 5025 is open. Try pinging the oscilloscope. |
| 📸 Screenshot not received | The scope must support SCDP. Wait up to 10 seconds (auto‑timeout). Ensure acquisition is running (Run mode). |
| 📉 No waveform / zero points | Make 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 transfer | Network congestion? Reduce data load or restart the connection. The app automatically handles half‑close and will retry. |
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.
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.
📘 Official Manuals
🐙 GitHub Repository (Source code)
SiglentRemote – Native SwiftUI client
Updates, bug reports and feature requests.
💬 SCPI / Python Examples
SCPI and Siglent are trademarks of their respective owners. This application is an independent project not affiliated with Siglent Technologies.