The Siglent SDG2042X Thread - Page 1
Forum section: electronics / testgear

author: billfernandez
author_rank: Regular Contributor
timestamp: November 06, 2015, 09:43:15 pm
content: I just got a Siglent SDG2042X Function & Arbitrary Waveform Generator. I searched to see if there was a thread already started that focuses on this device and didn't find one, so am creating one.Here's a thread on this forum announcing the new line of which this is a part:https://www.eevblog.com/forum/testgear/siglent-sdg2000x-new-arbitary-generator/msg774407/#msg774407And here's the thread for EEVBLOG #805, where Dave tears down the SDG2122X -- the 120MHz model in the SDG2xxxX line:https://www.eevblog.com/forum/blog/eevblog-805-siglent-sdg2122x-arb-generator-teardown/msg776709/#msg776709

author: billfernandez
author_rank: Regular Contributor
timestamp: November 06, 2015, 10:02:08 pm
content: OUTPUT LEVEL VS DC OFFSETSBy default (0V DC offset) the output always swings symmetrically above and below ground.Into 50 Ohms it can at most output a maximum voltage of +5V and a minimum voltage of -5V. How you use that range is up to you.For example, if you output a 10Vpp waveform, it will take up the whole range, and the device will not allow you to add a DC offset.On the other hand, if you have a 1Vpp waveform, it will allow you to add an offset of up to +/- 4.5V. (remember that the 1Vpp swings from +1/2V to -1/2V.)OUTPUT LEVEL VS FREQUENCYWhen outputting sinewaves into a 50 Ohm load: For frequencies of up to 20MHz the unit lets you specify (and it will deliver) up to 10Vpp. But above 20MHz (up to 40MHz for this model) the unit will only let you specify up to 5Vpp.Same for squarewaves except that squarewave generation tops out at 25MHz.Pulses have the same limits as squarewaves.Ramps (triangle and sawtooth waves) have a maximum frequency of 1MHz, and a maximum output of 10Vpp into 50 Ohms.The DC Offset output can only go to +/-5V.Haven't figured out the limits for arbitrary waveforms. All the ones I've tried have allowed me to specify up to 10Vpp, but I haven't generated a waveform faster than 10MHz (max frequency depends upon # of samples, etc.).ABOVE 50 OHM LOADThe documentation says that into a "high impedance" load the output can swing up to 20Vpp (-/+10V), but I haven't explored the limits thereof.

author: billfernandez
author_rank: Regular Contributor
timestamp: November 06, 2015, 10:37:06 pm
content: The arbitrary waveform generator can play samples at a maximum rate of 75 megasamples/second. But the minimum length of a sample set is 8 samples. So the fastest rate at which you can play an 8-sample set is 9.375MHz.In the EasyWave program I created a new wave:9 points40MHz20VppI used 9 points so that I could create a symmetrical waveform with no discontinuities where the sample set repeats.Then I edited the waveform to create a sawtooth waveform with 4 peaks, from 0V to +10V.Then ran it on the unit in DDS mode at 20MHz, 10Vpp, into 50 Ohms.What I saw on my scope was an 80MHz softened sawtooth at about 4Vpp, with, that seemed to be amplitude modulated with a 960mVpp, 20MHz sinewave.Also, the entire waveform seemed to be offset about 400-400mV above 0V.Then I switched the arbitrary waveform generator from "DDS" (Direct Digital Synthesise) mode to "TrueArb" mode. The result on the scope was a 3MHz squarewave, with no offset above 0V, with amplitude of 5.2V, and a discontinuity where the sample set repeats.I've noticed that TrueArb seems to add a short 0V segment at each sample-set repeat point. I've also noticed that DDS and TruArb produce distinctly different waveforms, and I'm still trying to figure out what's going on.I've attached a few files showing screen shots.

author: alank2
author_rank: Super Contributor
timestamp: November 07, 2015, 02:41:35 am
content: Quote from: billfernandez on November 06, 2015, 10:37:06 pmIt will go down to 2 even though the documentation says 8. I didn't test this with loading a CSV file, but a BIN file.It will also autoscale a CSV file, so if the maximum value given is -1 to +1, it will scale those to the lowest value to the highest value. The amplitude will actually be driven by the amplitude setting.Quote from: billfernandez on November 06, 2015, 10:37:06 pmThis is necessary for the DDS mode because the final sample does not get a time slot like the TrueArb mode does.In TrueArb mode if you have 4 samples, sample 0, 1, 2, and 3 will have the same amount of time each is "played" at the sample rate.In DDS mode, if you have 4 samples, sample 0 is the left edge and sample 3 is the right edge of the waveform. DDS mode interpolates between samples. What you have then is a time slot assigned to sample 0-1, 1-2, and finally 2-3. This is why you want sample 3 to be the same as sample 0. Otherwise it will end at 3 and then instantly SNAP to sample 0. There is no time slot assigned to sample 3-0.Quote from: billfernandez on November 06, 2015, 10:37:06 pmThey are completely different, one interpolates a waveform and the other plays samples.By the way, you can load CSV files of your own samples without having to use or make them with EasyWave. Just use this format:data length,8xpos,value,1,-1,1,-1,1,-1,1,-1In this case 1 being the highest value will be scaled to the maximum and -1 being the lowest value will be scaled to the minimum.What the generator does with this file is turns it into this binary file (see picture)It is a simple 2 byte signed integer array. FF 7F 00 80 --> 0x7FFF (highest value from the "1") followed by 0x8000 (lowest value from the -1). 0x0000 would be the center.You can load binary files directly from a USB stick though they will not be copied to the internal drive.I was very impressed with the arbitrary wave testing I did on the Siglent. It excels at generating waveforms with its interpolating DDS mode, and you can use its TrueArb mode with deep memory to deliver 8M samples at the sample rate you choose. That means you could send 8M/10=838860 8-bit UART frames (1 start, 8 data, 1 stop) using TrueArb!

author: billfernandez
author_rank: Regular Contributor
timestamp: November 07, 2015, 04:30:08 am
content: @AlanK2 thanks for your comments. I'll do some experiments.

author: billfernandez
author_rank: Regular Contributor
timestamp: November 07, 2015, 04:44:41 am
content: The documentation says that the unit can generate a sync/trigger pulse out of a BNC jack on the back of the unit, but only for waveforms with frequencies of up to 1MHz.I found that the 1MHz limit was true for the built-in sine, square, pulse and ramp functions, but that you could push up to about 1.9MHz when in TruArb arbitrary waveform mode (I didn't test DDS). As the frequency increases the space between trigger pulses gets narrower, but the pulse width remains the same at about 508nS.Also, the sync pulse seems to be offset from the start of the waveform pattern. For example in the picture below of a 1MHz sinewave, neither the leading nor trailing edge of the sync pulse aligns with the zero crossing or peak of the sinewave.Below are some pictures showing the sync pulse in relationship to a 1MHz sinewave, then to a TruArb waveform played at 1MHz, 1.5MHz and 1.9MHz, which is about as fast as you can go before losing the sync pulse.

author: billfernandez
author_rank: Regular Contributor
timestamp: November 10, 2015, 01:56:45 am
content: I have been looking at the squarewave output of my new Siglent SDG2042X. I've run a BNC cable directly to a 50Ohm inline shunt that is attached directly to the DC-coupled input of my 200MHz, 2.5Gs/S, Fluke 199C ScopeMeter.RISE AND FALL TIMES:Rise and fall times appear to be symmetrical across the range I tested (from 1Hz to 25MHz -- the max freq of the unit). At 1Hz rise and fall times are about 9.6nS. From 1kHz to 25MHz rise and and fall times read about 8.2nS. The spec for the unit is 7.5nS, and my scope's rise time is rated at 1.7nS.SHAPE:From about 2 to 6 MHz the tops and bottoms, although straight, are a bit tilted. Below this range the tops and bottoms are horizontal.By about 10MHz the (apoprox) 8nS rise/fall time starts taking up a significant portion of each cycle, until at 25MHz the waveforms look more like truncated sinewaves than square waves.At all frequencies the transitions at the tops of bottoms of each rise and fall are rounded. There is no particular overshoot, undershoot. There is no ringing.NOISE:The output of this unit is surprisingly noisy. It ranges from about 0.5mVpp at 1kHz to about 1Vpp at 25MHz.CONCLUSION:Except for the noise the squarewave output is well-behaved over the tested frequency range, although the output hardly looks like a squarewave above, say 10MHz due to the constant (approx) 8nS rise and fall times.There is a sampling of representative screen shots below.

author: Salas
author_rank: Frequent Contributor
timestamp: November 10, 2015, 02:27:22 am
content: Noisy...bad. Can you show non averaged 100mV pk=pk 1kHz 1MHZ 10MHZ Square so we get the idea? How do you find the general ergonomics, i.e. can it be used fast enough without frustration, and how is the side fan's noise? Thanx

author: billfernandez
author_rank: Regular Contributor
timestamp: November 10, 2015, 03:00:24 am
content: Quote from: Salas on November 10, 2015, 02:27:22 amGeneral ergonomics are generally good. Many settings are fast and easy. It's also got its share of awkward and weird user interface design choices. The knob and the buttons all have really good tactile feedback.Fan is clearly audible, but soft and low frequency. I find that I don't mind it at all.

author: Salas
author_rank: Frequent Contributor
timestamp: November 10, 2015, 03:14:11 am
content: Thank you.P.S. Can your handheld scope limit at 20MHz by the way? Then run 1kHZ 100mVpp square comparing with full bandwidth scope setting just in case significant noise comes from the scope. Because 0.5Vpp noise seems much to a fault.

author: billfernandez
author_rank: Regular Contributor
timestamp: November 10, 2015, 04:01:14 am
content: Quote from: Salas on November 10, 2015, 03:14:11 amOops, that should say 0.5mVpp at 1kHz.At present I'm doing a series of tests at the full 200MHz bandwidth of my scope because I'm bouncing around over a wide range. Later I'll bandwidth limit at 20MHz and try again with the lower frequencies.

author: cnkz
author_rank: Contributor
timestamp: November 10, 2015, 01:54:14 pm
content: For the tests i have done with the arbitrary generator:- 9-points (as you tried above) seems not to be possible. It seems the generator use 16-points instead, means jumps from 8-points to 16-points (this tests i have done with the old firmware, need to re-check this with the latest firmware)- In truARB mode the output sampling rate is 75Ms/s, in DDS mode it is 125Ms/s

author: alank2
author_rank: Super Contributor
timestamp: November 10, 2015, 02:04:21 pm
content: Quote from: cnkz on November 10, 2015, 01:54:14 pmI'm using the latest firmware and I've successfully only loaded 2 points. In DDS mode it interpolates between samples and in TrueArb mode is plays the samples.

author: cnkz
author_rank: Contributor
timestamp: November 10, 2015, 04:27:18 pm
content: Did you tried other (odd) number of points also?

author: alank2
author_rank: Super Contributor
timestamp: November 10, 2015, 04:44:25 pm
content: Quote from: cnkz on November 10, 2015, 04:27:18 pmYes - I just tested 1 pt, 2 pts, 8 pts, and 9 pts, and tried both DDS and TrueArb modes on each. They all did what I would have expected.

author: smarteebit
author_rank: Contributor
timestamp: November 13, 2015, 12:43:40 am
content: Quote from: billfernandez on November 10, 2015, 01:56:45 amWhat is the noise level of your scope when no input @ 2V/div ?

author: gby
author_rank: Frequent Contributor
timestamp: November 13, 2015, 07:02:11 pm
content: On my SDG2042X using an old Tektronix TDS-420A 200 MHz oscilloscope and connecting with a BNC cable direct to scope with 50 Ohm termination I don't see any noise issues. With scope set to 0.5 V/div and the generator outputting 3.0 Vpp at 100 kHz I see basically no noise. The square wave flat section trace is a single pixel width. I even put the scope in envelope mode to capture any deviations over 200 sweeps and the tested square wave width is less than 60 mVp-p which matches the scope when the input is internally 50 Ohm terminated and no BNC cable connected. Same result with the scope in peak detect mode.I conclude that this generator output is very quiet/very low spurious noise. I suspect the test setup and/or equipment in billfernandez's test result that was noisy.

author: gby
author_rank: Frequent Contributor
timestamp: November 13, 2015, 07:08:47 pm
content: SDG2042X has open telnet port with no user name or password required.I just connected with Putty.exe to the network IP address on port 23 and got right in with no request for a user name or password. So, I had a look around to see how the system was configured. No surprise it is Linux based running on an ARM 7 CPU. It was a bit of a surprise to see the log on message say "SDG800 project" which tells me that the SDG2000 FW is based on the SDG800 FW in some way. For everyone's reference below is a log of my poking around cleaned up and organized a little.If anyone has any questions on things to check/poke at ask away and I will try.Code:===============================================|SIGLENT SDG800 project /dev/pts/0===============================================SIGLENT Project http:// (none)/ # lsbin etc lib media proc sbin tmp vardev home linuxrc mnt root sys usr*** lscpu, lshw, lsusb, do not work/ # cat /proc/cpuinfoProcessor : ARMv7 Processor rev 2 (v7l)BogoMIPS : 718.02Features : swp half thumb fastmult vfp edsp thumbee neon vfpv3 tlsCPU implementer : 0x41CPU architecture: 7CPU variant : 0x3CPU part : 0xc08CPU revision : 2Hardware : am335xevmRevision : 0000Serial : 0000000000000000/ # cat /proc/meminfoMemTotal: 124528 kBMemFree: 83820 kBBuffers: 0 kBCached: 14096 kBSwapCached: 0 kBActive: 24476 kBInactive: 6472 kBActive(anon): 16852 kBInactive(anon): 0 kBActive(file): 7624 kBInactive(file): 6472 kBUnevictable: 0 kBMlocked: 0 kBSwapTotal: 0 kBSwapFree: 0 kBDirty: 4 kBWriteback: 0 kBAnonPages: 16880 kBMapped: 4540 kBShmem: 0 kBSlab: 5248 kBSReclaimable: 2288 kBSUnreclaim: 2960 kBKernelStack: 488 kBPageTables: 236 kBNFS_Unstable: 0 kBBounce: 0 kBWritebackTmp: 0 kBCommitLimit: 62264 kBCommitted_AS: 138708 kBVmallocTotal: 892928 kBVmallocUsed: 10496 kBVmallocChunk: 803904 kB/ # cat /proc/versionLinux version 3.2.0+ (ding@ding-desktop) (gcc version 4.5.3 20110311 (prerelease) (GCC) ) #19 Wed Sep 9 16:32:51 ULAT 2015/ # dfFilesystem 1K-blocks Used Available Use% Mounted onubi0:rootfs 36008 15412 20596 43% /mdev 62264 0 62264 0% /devubi1_0 174664 120 174544 0% /usr/bin/siglent/usr/usr/bin/siglent/usr/usr # df -hFilesystem Size Used Available Use% Mounted onubi0:rootfs 35.2M 15.0M 20.1M 43% /mdev 60.8M 0 60.8M 0% /devubi1_0 170.6M 132.0K 170.4M 0% /usr/bin/siglent/usr/ # freetotal used free shared buffersMem: 124528 40744 83784 0 0Swap: 0 0 0Total: 124528 40744 83784/ # ls /usr/bin/siglent/usrconfig log usr version.txt/ # ls /usr/bin/siglent/usr/usr4096-10x-Triangle.bin STATE01GBY.xml/ # cat /usr/bin/siglent/usr/version.txtDate:2014-12-13Author:Bookwore.PengVersion:1.0Ceating datafs/ #/ # ls /usr/bin/siglentconfig drivers numen.app upgrade usr/ # ls /usr/bin/siglent/upgradeReadMe.txt datafs.img/ # cat /usr/bin/siglent/upgrade/ReadMe.txtAuthor:Boowkore.peng 2015.06.08When "data fs " crashed, "datafs.img" file is used to format the new "data fs"/u

author: TheSteve
author_rank: Unknown
timestamp: November 13, 2015, 07:49:30 pm
content: Time to start looking for the license file or a file with limits in it so you can hack/enable more features, bandwidth etc.

author: alank2
author_rank: Super Contributor
timestamp: November 13, 2015, 07:51:50 pm
content: There is no reason to even bother hacking it. The only difference/limitation between models is the top sine wave frequency only, and you can easily use an arbitrary wave with 10 sine waves in it to get by that limitation.BTW, I love my SDG2082X - I truly did not know what I was missing not having a signal gen.

author: TheSteve
author_rank: Unknown
timestamp: November 13, 2015, 07:53:49 pm
content: Quote from: alank2 on November 13, 2015, 07:51:50 pmWhere is your sense of adventure?

author: alank2
author_rank: Super Contributor
timestamp: November 13, 2015, 07:56:22 pm
content: I'll say it again, I think the SDG2042X is going to be the next DS1052 in signal gens. Everything is in place for it to do so much more.

author: smgvbest
author_rank: Unknown
timestamp: November 13, 2015, 11:04:08 pm
content: Nice read in this thread. I just ordered a SDG2122X and should be here for my birthday (it was my birthday present to myself) Ordered from TEquipment.Have to say they are great. They recently had it on sale and honored the EEVBLOG discount so got it for just over 700

author: alank2
author_rank: Super Contributor
timestamp: November 13, 2015, 11:52:45 pm
content: Good for you smgvbest - I really love my SDG2082X.

author: tautech
author_rank: Super Contributor
timestamp: November 14, 2015, 01:29:51 am
content: Quote from: smgvbest on November 13, 2015, 11:04:08 pmCongrats, I only heard good stuff too from my internal sources.Quote from: alank2 on November 13, 2015, 11:52:45 pmThanks for your feedback too.