Author Topic: SDS1104X-E and SAG1021 unwanted DC offset from USB powering  (Read 6302 times)

0 Members and 1 Guest are viewing this topic.

Offline HendriXMLTopic starter

  • Super Contributor
  • ***
  • Posts: 1085
  • Country: nl
    • KiCad-BOM-reporter
Re: SDS1104X-E and SAG1021 unwanted DC offset from USB powering
« Reply #25 on: April 10, 2019, 12:38:29 am »
The screws are hidden behind the face stickers. Not the feet. I have some pictures i can uplosd in about 6 hours
I saw it, thanks for that!
“I ‘d like to reincarnate as a dung beetle, ‘cause there’s nothing wrong with a shitty life, real misery comes from high expectations”
 

Offline Rerouter

  • Super Contributor
  • ***
  • Posts: 4694
  • Country: au
  • Question Everything... Except This Statement
Re: SDS1104X-E and SAG1021 unwanted DC offset from USB powering
« Reply #26 on: April 10, 2019, 04:37:58 am »
https://drive.google.com/folderview?id=18Q-35O1MndeLHVA5e185MpZoPtxlvlBC
Internal photos. Just to add to whats out there.
« Last Edit: April 10, 2019, 04:45:40 am by Rerouter »
 

Offline HendriXMLTopic starter

  • Super Contributor
  • ***
  • Posts: 1085
  • Country: nl
    • KiCad-BOM-reporter
Re: SDS1104X-E and SAG1021 unwanted DC offset from USB powering
« Reply #27 on: April 10, 2019, 09:44:51 am »
Now that I took a good look at the device, I started to wonder why it says aux in/out on the other bNC connector. To my knowledge it can only be used as a sync trigger. But can it for example also record a signal?
“I ‘d like to reincarnate as a dung beetle, ‘cause there’s nothing wrong with a shitty life, real misery comes from high expectations”
 

Offline Rerouter

  • Super Contributor
  • ***
  • Posts: 4694
  • Country: au
  • Question Everything... Except This Statement
Re: SDS1104X-E and SAG1021 unwanted DC offset from USB powering
« Reply #28 on: April 10, 2019, 09:48:45 am »
Its a digital input, it can be used as a on/off switch for the sweep / burst / arbitary modes.
 

Offline HendriXMLTopic starter

  • Super Contributor
  • ***
  • Posts: 1085
  • Country: nl
    • KiCad-BOM-reporter
Re: SDS1104X-E and SAG1021 unwanted DC offset from USB powering
« Reply #29 on: April 10, 2019, 10:34:28 am »
Its a digital input, it can be used as a on/off switch for the sweep / burst / arbitary modes.
That is advanced stuff accessible using SCPI commands? I saw in another thread you did some research on that.  :clap:

Did you find eventually a document or other resource which describes the more advanced commands?
“I ‘d like to reincarnate as a dung beetle, ‘cause there’s nothing wrong with a shitty life, real misery comes from high expectations”
 

Offline Rerouter

  • Super Contributor
  • ***
  • Posts: 4694
  • Country: au
  • Question Everything... Except This Statement
Re: SDS1104X-E and SAG1021 unwanted DC offset from USB powering
« Reply #30 on: April 10, 2019, 10:53:24 am »
Its able to be used where ever you have a "trigger source", generally the parameter TSRC or SRC,

fully exploring all this is what is part of the hold up, not just finding out what commands respond, but why some behave weird, and patching out weird stuff, e.g. there is a number of things that while valid queries, are hard coded to just return nothing.

Code: [Select]
:ARbWaVe | :ARWV
Command Syntax <channel>:ARbWaVe {INDEX, NAME}
Query Syntax <channel>:ARbWaVe?
Description Set or query the Arbitary Wave Parameters
Parameter Name Type Range Default
<channel> Discrete {C1|C2}
<index> Discrete {0:59} See Below
Index Name
0 Sine
1 Noise
2 StairUp
3 StairDn
4 StarUP
5 PPulse
6 NPulse
7 Trapezia
8 UpRamp
9 DnRamp
10 ExpFall
11 ExpRise
12 LogFall
13 LogRise
14 Sqrt
15 Root3
16 X^2
17 X^3
18 Sinc
19 Gussian
20 Dlorentz
21 Haversine
22 Lorentz
23 Gauspuls
24 Gmonopuls
25 Tripuls
26 Cardiac
27 Quake
28 Chirp
29 Twotone
30 Snr
31~34 ?? Missing ??
34 Hamming
35 Hanning
36 Kaiser
37 BlackMan
38 Gausswin
39 Triang
40 Blackmanharris
41 Bartlett
42 Tan
43 Cot
44 Sec
45 Csc
46 Asin
47 Acos
48 Atan
49 Acot
50~59 Userspace
Command Example C1:ARWV INDEX, 2  /*Set StarUp arbitrary wave output by index*/
Query Example C1:ARWV?    /*Returns channel 1's current wave*/

:BaSicWaVe | :BSWV
Command Syntax <channel>:BaSicWaVe <parameter>,<value>[,<parameter>,<value>,...,<parameter>,<value>]
Query Syntax <channel>:BaSicWaVe?
Description Set or get basic wave parameters.
Parameter Name Type Range Default
<channel> Discrete {C1:C2}
<parameter> Discrete {WVTP|FRQ|AMP|OFST|SYM|DUTY|PHSE|VAR|MEAN|DLY}
WVTP <value> Discrete WVTP {SINE|SQUARE|RAMP|PULSE|NOISE|ARB|DC}
FRQ <value> Numeric {0.000001:25000000}
AMP <value> Numeric {0.004:6.000}
OFST <value> Numeric {-4.000:4.000}
SYM <value> Numeric {0.0:100.0}
DUTY <value> Numeric {0.1:99.9}
PHSE <value> Numeric {0:360}
VAR <value> {0.004:2.222}
MEAN <value> ?
DLY <value> ?
Command Example C1:BSWV FRQ,2000 /* Changes the frequency of channel one to 2000 Hz*/
Query Example C1:BSWV?    /* reads channel basic wave parameters from device*/

:BursTWaVe | :BTWV
Command Syntax <channel>:BursTWaVe <parameter>
Query Syntax <channel>:BursTWaVe?
Description Set or get burst wave parameters.
Parameter Name Type Range Default
<channel> Discrete {C1:C2}
<parameter> Discrete {STATE|PRD|STPS|GATE_NCYC|TRSR|DLAY|PLRT|TRMD|EDGE|TIME|MTRIG|CARR}
CARR <parameter> Discrete {WVTP|FRQ|AMP|OFST|SYM|DUTY|PHSE|DLY|VAR|MEAN}
STATE <value> Discrete {ON|OFF}
PRD <value> Numeric {0.000001:500}
STPS <value> Numeric {0:360}
GATE_NCYV... Discrete {GATE|NCYC}
TRSR <value> Discrete {EXT|INT|MAN}
DLAY <value> Numeric {0:500}
TIME <value> Discrete {0.001:500}
STOP <value> Numeric {0.000001:25000000}
START <value> Numeric {0.000001:25000000}
TRSC <value> Discrete {EXT|INT|MAN}
PLRT <value> Discrete {NEG,POS}
TRMD <value> Discrete {RISE|FALL|OFF}
EDGE <value> Discrete {ON|OFF}
WVTP <value> Discrete {SINE|SQUARE|RAMP|ARB}
FRQ <value> Numeric {0.002:25000}
AMP <value> Numeric {0.004:6.000}
OFST <value> Numeric ?
SYM <value> Numeric {0:100}
DUTY <value> Numeric {0.1:99.9
PHSE <value> Numeric {0:360}
DLY <value> Numeric {0:?}
VAR <value> Numeric {0.004:0.6666}
MEAN <value> Numeric ?
Command Example C1:BTWV DLAY, 0S /* Set channel one burst wave delay to 0S. */
Query Example C1:BTWV?    /* reads channel Burst wave parameters from device*/

:CoMBiNe | :CMBN
Command Syntax <channel>:CoMBiNe <state>
Query Syntax <channel>:CoMBiNe?
Description This command sets or gets the waveform combining parameters.
Parameter Name Type Range Default
<channel> Discrete {C1:C2}
<state> Discrete {ON|OFF}
Command Example C1:CMBN ON /* Turn on the waveform combining of CH1:*/
Query Example C1:CMBN?    /* Query the waveform combining state of CH1*/



:HARMonic | :HARM
Command Syntax <channel>: HARMonic HARMSTATE,<state>,HARMTYPE,<type>,HARMORDER,<order>,<unit>,<value>,HARMPHASE,<phase>
Query Syntax <channel>: HARMonic?
Description This command sets or gets the harmonic parameters. Only available when the basic wave is SINE.
Parameter Name Type Range Default
<channel> Discrete {C1|C2}
<state> Discrete {ON|OFF}
<type> {EVEN|ODD|ALL}
<order> {1|2|etc...}
<unit> {HARMAMP|HARMDBC}
<value> Amplitude ?
<phase> {0:360}
Command Example C1:HARM HARMSTATE,ON/* Enable the harmonic function of CH1:*/
Query Example C1:HARM?    /* Get the harmonic information of CH1:*/

:INVerT | :INVT
Command Syntax <channel>:INVerT <state>
Query Syntax <channel>:INVerT?
Description Set or query the AWG phase inversion state.
Parameter Name Type Range Default
<channel> Discrete {C1|C2}
<state> Discrete {OFF|ON}
Command Example C1:INVT ON /*Sets channel 1 phase to invert*/
Query Example C1:INVT?    /*Returns channel 1's phase inversion state*/

:MoDulateWaVe | :MDWV
Command Syntax <channel>:MoDulateWaVe_<parameter>,<value>[,<parameter>,<value>,...,<parameter>,<value>]
Query Syntax <channel>:MoDulateWaVe?
Description Set or get modulated wave parameters
Parameter Name Type Range Default
<channel> Discrete {C1:C2}
<parameter> Discrete {STATE|AM|DSBAM|FM|PM|PWM|ASK|FSK|CARR}
AM <parameter> Discrete {SRC|MDSP|FRQ|DEPTH}
DSBAM <parameter> Discrete {SRC|MDSP|FRQ}
FM <parameter> Discrete {SRC|MDSP|FRQ|DEVI}
PM <parameter> Discrete {SRC|MDSP|FREQ|DEVI}
PWM <parameter> Discrete {SRC|MDSP|FREQ|DEVI}
FSK <parameter> Discrete {SRC|KFRQ}
ASK <parameter> Discrete {SRC|KFRQ|HFRQ}
CARR <parameter> Discrete {WVTP|FRQ|AMP|OFST|SYM|DUTY|PHSE|DLY}
STATE <value> Discrete {ON|OFF}
SRC <value> Discrete {INT|EXT}
MDSP <value> Discrete {SINE|SQUARE|TRIANGLE|UPRAMP|DNRAMP|NOISE|ARB}
FRQ <value> Numeric {0.002:20000}
AMP <value> Numeric {0.004:6.000}
OFST <value> Numeric ?
SYM <value> Numeric {0:100}
DUTY <value> Numeric {0.1:99.9
PHSE <value> Numeric {0:360}
DLY <value> {?:20000}
Command Example C1:MDWV AM, MDSP, SINE /* Set modulation shape to AM, and set AM modulating wave type*/
Query Example C1:MDWV?    /* reads channel modulate wave parameters from device*/

:OUTPut | OUTP
Command Syntax <channel>:OUTPut <parameter>[,<load>]
Query Syntax <channel>:OUTPut?
Description DESCRIPTION Enable or disable the output of the [Output] connector at the front panel corresponding to the channel. The query returns ON or OFF.
Parameter Name Type Range Default
<channel> Discrete {C1:C2}
<parameter> Discrete {ON|OFF|LOAD}
<load> Discrete {50|HZ}
Command Example OUTP LOAD,50 /* Turns set the channel load to 50 Ohms*/
Query Example OUTP?    /* Reads channel one output state*/

:SampleRATE | :SRATE
Command Syntax <channel>: SampleRATE MODE,<mode>,VALUE,<sample rate>,INTER,<interpolation>
Query Syntax <channel>: SampleRATE?
Description This command sets or gets the Arb mode, sampling rate and interpolation method. Sampling rate and interpolation method can only be set when MODE is TARB.
Parameter Name Type Range Default
<channel> Discrete {C1|C2}
<mode> Discrete {DDS|TARB}
<sample rate> ?
<interpolation> {LINE|HOLD}
Command Example C1:SRATE MODE, TARB /* Set CH1 to TureArb mode*/
Query Example C1:SRATE?    /* Get the sampling rate of CH1 */

:SWeepWaVe | :SWWV
Command Syntax <channel>:SWeepWaVe <parameter>
Query Syntax <channel>:SWeepWaVe?
Description Set or get sweep wave parameters
Parameter Name Type Range Default
<channel> Discrete {C1:C2}
<parameter> Discrete {STATE|TIME|STOP|START|TRSC|TRMD|SWMD|DIR|EDGE|MTRIG|CARR}
CARR <parameter> Discrete {WVTP|FRQ|AMP|OFST|SYM|DUTY|PHSE|DLY}
STATE <value> Discrete {ON|OFF}
TIME <value> Discrete {0.001:500}
STOP <value> Numeric {0.000001:25000000}
START <value> Numeric {0.000001:25000000}
TRSC <value> Discrete {EXT|INT|MAN}
TRMD <value> Discrete {ON|OFF}
SWMD <value> Discrete {LINE|LOG}
DIR <value> Discrete {UP|DOWN}
EDGE <value> Discrete {ON|OFF}
WVTP <value> Discrete {SINE|SQUARE|RAMP|ARB}
FRQ <value> Numeric {0.002:25000}
AMP <value> Numeric {0.004:6.000}
OFST <value> Numeric ?
SYM <value> Numeric {0:100}
DUTY <value> Numeric {0.1:99.9
PHSE <value> Numeric {0:360}
Command Example C1: SWWV STOP, 1000HZ /* Set channel one sweep stop frequency to 1000hz. */
Query Example C1:SWWV?    /* reads channel sweep wave parameters from device*/

:SYNC
Command Syntax <channel>:SYNC <state>
Query Syntax <channel>:SYNC?
Description Set AWG signal output from backward panel in phase with forward
Parameter Name Type Range Default
<channel> Discrete {C1|C2}
<state> Discrete {OFF|ON}
Command Example C1:SYNC ON /*Sync function on defend of channel one */
Query Example C1:SYNC?    /*Returns channel 1's sync state*/

PAraCoPy | :PACP
Command Syntax PAraCoPy <dest_channel>,<src_channel>
Description Copy channel data
Parameter Name Type Range Default
<src_channel> Discrete {C1|C2}
<dest_channel> Discrete {C1|C2}
Command Example PACP C2,C1 /*Copy parameters from channel one to channel two.*/

ROSCillator | ROSC
Command Syntax ROSCillator <source>
Query Syntax ROSCillator?
Description Set or get signal oscillator resource
Parameter Name Type Range Default
<time> Discrete {INT|EXT} INT
Command Example ROSC INT /* Uses system clock source*/
Query Example ROSC?    /*Returns clock source*/

WaVe_DaTa | WVDT
Command Syntax WaVe_DaTa <address>,<parameter>
Query Syntax WaVe_DaTa <address>?
Description used to change user defined memory unit arbitrary wave data.
Parameter Name Type Range Default
<address> Discrete {M50|M51|M52|M53|M54|M55|M56|M57|M58|M59}
<parameter> Discrete {WVNM|TYPE|LENGTH|FREQ|AMPL|OFST|PHASE|WAVEDATA}
WVNM <value> ASCII ASCII
TYPE <value> Fixed 5
LENGTH <value> Fixed 32KB
FREQ <value> Numeric ?
AMPL <value> Numeric ?
OFST <value> Numeric ?
PHASE <value> Numeric ?
WAVEDATA... Data Block Wavedata of 32KB size
Command Example WVDT M51, WVNM, WAVE02, LENGTH, 32KB, TYPE, 5
Query Example WVDT M50?    /*Read device memory saved arbitrary data at M50*/

VOLTPRT
Command Syntax VOLTPRT <state>
Query Syntax VOLTPRT?
Description This commend sets or gets the state of the AWG over-voltage protection
Parameter Name Type Range Default
<state> Discrete {ON|OFF}
Command Example VOLTPRT ON /* Turns on the AWG output protection*/
Query Example VOLTPRT?    /* */

 
The following users thanked this post: HendriXML

Offline HendriXMLTopic starter

  • Super Contributor
  • ***
  • Posts: 1085
  • Country: nl
    • KiCad-BOM-reporter
Re: SDS1104X-E and SAG1021 unwanted DC offset from USB powering
« Reply #31 on: April 10, 2019, 11:36:58 am »
Great info! I'll certainly dive into it.

So I added V-neg very close to the base op the BNC connector.

The results speak for themselves! It is with 30 sec persistence.

Without the hack the offset even drifts!

As I guessed the offset is mostly just needed to counterbalance the USB problem. When done correctly only about 1 mV is needed. And that is partly because there’s 360mA of current running through the BNC connection and groundplane. The difference between the 2 BNC output connectors is 0,1/0,2 mV: barely measurable using a Fluke 179.
« Last Edit: April 11, 2019, 01:13:52 pm by HendriXML »
“I ‘d like to reincarnate as a dung beetle, ‘cause there’s nothing wrong with a shitty life, real misery comes from high expectations”
 

Offline HendriXMLTopic starter

  • Super Contributor
  • ***
  • Posts: 1085
  • Country: nl
    • KiCad-BOM-reporter
Re: SDS1104X-E and SAG1021 unwanted DC offset from USB powering
« Reply #32 on: April 10, 2019, 12:01:17 pm »
Here's the most important part of the hack. A neg-V on the output BNC. The heatshrink melted while doing so, thus it became more ugly.

Another (and even better) way would solder the wire to a nut which could be screwed at the output BNC. But there is very little thread sticking out of the case. And I didn’t have such a nut.

Because there should be no GND currents anymore the heavy speakerwire is somewhat overkill.

My hacked usb cable has still a V-neg wire running through, that I will have to cut. now it acts as a unnecessary GND wire from the scope, maybe even creating GND loops.
(Later on I came to the conclusion the wire is still needed)
« Last Edit: April 11, 2019, 01:16:03 pm by HendriXML »
“I ‘d like to reincarnate as a dung beetle, ‘cause there’s nothing wrong with a shitty life, real misery comes from high expectations”
 

Offline HendriXMLTopic starter

  • Super Contributor
  • ***
  • Posts: 1085
  • Country: nl
    • KiCad-BOM-reporter
Re: SDS1104X-E and SAG1021 unwanted DC offset from USB powering
« Reply #33 on: April 10, 2019, 12:42:00 pm »
Is there a way to make smaller offset adjustments steps? Mine only goes 1 mV/step. Can’t find a “fine” option.
“I ‘d like to reincarnate as a dung beetle, ‘cause there’s nothing wrong with a shitty life, real misery comes from high expectations”
 

Offline tinhead

  • Super Contributor
  • ***
  • Posts: 1918
  • Country: 00
    • If you like my hacks, send me a donation
Re: SDS1104X-E and SAG1021 unwanted DC offset from USB powering
« Reply #34 on: April 10, 2019, 08:34:20 pm »
there is no fine option for offset adj., but you can use on screen keyboard and type e.g. -3.254m
I tested my SAG with USB isolator, with manual offset adj. over keyboard, i got 2uV offset, with auto 600uV.

With such setup no issue at all - well, except the bitstream / firmware timing, i have to plug USB first,
then power up/down/up SAG 3 times within 500ms to get bitstream / firmware running and no "busy" LED error.
Once it runs, it runs with no issues.

EDIT: i have only ADUM4160 based isolator, so not the best option, but good enough to have some isolation.
« Last Edit: April 10, 2019, 08:38:07 pm by tinhead »
I don't want to be human! I want to see gamma rays, I want to hear X-rays, and I want to smell dark matter ...
I want to reach out with something other than these prehensile paws and feel the solar wind of a supernova flowing over me.
 

Offline HendriXMLTopic starter

  • Super Contributor
  • ***
  • Posts: 1085
  • Country: nl
    • KiCad-BOM-reporter
Re: SDS1104X-E and SAG1021 unwanted DC offset from USB powering
« Reply #35 on: April 10, 2019, 08:51:02 pm »
I tested my SAG with USB isolator, with manual offset adj. over keyboard, i got 2uV offset, with auto 600uV.

With such setup no issue at all - well, except the bitstream / firmware timing, i have to plug USB first,
then power up/down/up SAG 3 times within 500ms to get bitstream / firmware running and no "busy" LED error.
Once it runs, it runs with no issues.
So you even got better results than my setup? That’s great! How did you get to the 2uV reading, do I have more noise than supposed to? Because the best device I’ve got to measure such low voltages is the scope. And that’s very noisy in my case.

Edit - Probably: Yokogawa 7552
That will do some noise filtering   :-+
For a moment I thought my DSO didn’t perform as it should. :phew:

Also I was about to cut the V-neg of the usb cable, but I think it is also needed for the data signals? Via the GND connection it will get that line also, but that I find a bit too crude of a solution.
But that line seems the main difference to me to a fully isolated usb connection. But maybe that is my inexperience talking.

Using the manual screen keyboard entering I managed to get a 0,0mV reading on my Fluke.

In that situation between some of the grounds there’s still a 0,1mV voltage drop, which I could not explain. But that voltage drop is also there when the AWG is disconnected from power and scope. So no worries  :-+

To conclude my setup isn’t the optimal one, but a good poor man’s solution. What I find most important is that there’re no 360mA current flowing through testleads.
My setup may have stil a tiny bit, because the USB V-neg can still form a alternative current path (but of much higher resistance). For a moment I thought I could measure the voltage drop it creates, but it is the same as the non current flowing situation. Where the 0,1 mV then come from? I don’t know: thermoelectric effect?
« Last Edit: April 11, 2019, 07:11:33 pm by HendriXML »
“I ‘d like to reincarnate as a dung beetle, ‘cause there’s nothing wrong with a shitty life, real misery comes from high expectations”
 

Offline HendriXMLTopic starter

  • Super Contributor
  • ***
  • Posts: 1085
  • Country: nl
    • KiCad-BOM-reporter
Re: SDS1104X-E and SAG1021 unwanted DC offset from USB powering
« Reply #36 on: April 11, 2019, 10:43:10 am »
I took the time of verifying the poor man’s solution against the USB protocol. Which is explained very extensively on this webpage:
http://www.usbmadesimple.co.uk/index.html

The question I wanted to have answers to was wether the GND wire is needed between the DSO and the AWG.
The answer is yes, even though the it is a differential data signal protocol, GND is used for termination in high speed mode.
Also technically V-pos should be used to pull up the D+ dataline for full speed identification, but because it seems to work just fine, I think it doesn’t hurt to have the V-pos simply injected the way I did. We don’t have to comply with the full standard when hacking away someone else’s mistakes :-+
It is probably best to power up both devices first and then connect the USB cable, but I may have done otherwise. (By just leaving the cable plugged in.) But it might be harmful to some devices.

If I’ve made wrong assumptions anywhere, pleasy correct me  (if I did not myself). There will be more people like me without a full comprehension of things and use this thread as a source of information to act on.
« Last Edit: April 11, 2019, 01:02:25 pm by HendriXML »
“I ‘d like to reincarnate as a dung beetle, ‘cause there’s nothing wrong with a shitty life, real misery comes from high expectations”
 

Offline HendriXMLTopic starter

  • Super Contributor
  • ***
  • Posts: 1085
  • Country: nl
    • KiCad-BOM-reporter
Re: SDS1104X-E and SAG1021 unwanted DC offset from USB powering
« Reply #37 on: April 11, 2019, 11:32:34 am »
EDIT: i have only ADUM4160 based isolator, so not the best option, but good enough to have some isolation.
Just to verify, you can probably set the USB speed of the device with a jumper. Is it set to full speed?
It would surprise me that if it was a low speed device, but I also guess speed doesn’t matter much for this decice.
I ask this question, because I could improve my setup using a 1K5 pullup resistor at the D+ dataline myself to identify for full speed, but that should technically be done from 3.3 V. Thus dropping the V-pos first.

But if its a high speed device I guess this way of identification should not matter.. :-//

After some thinking, I will leave it as it is. The device is identified and working, so no reason to make a crude hack more “beautiful”. (The mentioned USB isolator seems to have more issues regarding the communication.) But it is good to mention what stuff is involved.
« Last Edit: April 12, 2019, 09:45:30 am by HendriXML »
“I ‘d like to reincarnate as a dung beetle, ‘cause there’s nothing wrong with a shitty life, real misery comes from high expectations”
 

Offline tinhead

  • Super Contributor
  • ***
  • Posts: 1918
  • Country: 00
    • If you like my hacks, send me a donation
Re: SDS1104X-E and SAG1021 unwanted DC offset from USB powering
« Reply #38 on: April 16, 2019, 08:19:09 pm »
actually the 1uV is the lowest i can measure with the Yokogawa DMM, so that's why. In the reality something like 20-50uV was the lowest usable value, there is always some drift (e.g. only if one wiggle a bit with BNC).

The autocalibration does not use lower values than 1mV, manual is much better, as one can use down to 1uV over on screen keyboard.

I will stay with isolated SAG, just because isolated is isolated. I have to play a bit with better power supply, have currently some noise from DC/DC converter. Of course the communication issue remains, it seems to be timing based, a clone of SAG (to test firmware dump i made) got same issue, without USB isolator, just because FPGA is sending something after bitfile started.

I don't want to be human! I want to see gamma rays, I want to hear X-rays, and I want to smell dark matter ...
I want to reach out with something other than these prehensile paws and feel the solar wind of a supernova flowing over me.
 

Offline HendriXMLTopic starter

  • Super Contributor
  • ***
  • Posts: 1085
  • Country: nl
    • KiCad-BOM-reporter
Re: SDS1104X-E and SAG1021 unwanted DC offset from USB powering
« Reply #39 on: April 16, 2019, 08:37:38 pm »
actually the 1uV is the lowest i can measure with the Yokogawa DMM, so that's why. In the reality something like 20-50uV was the lowest usable value, there is always some drift (e.g. only if one wiggle a bit with BNC).

The autocalibration does not use lower values than 1mV, manual is much better, as one can use down to 1uV over on screen keyboard.

I will stay with isolated SAG, just because isolated is isolated. I have to play a bit with better power supply, have currently some noise from DC/DC converter. Of course the communication issue remains, it seems to be timing based, a clone of SAG (to test firmware dump i made) got same issue, without USB isolator, just because FPGA is sending something after bitfile started.
It seems I’m picking up a lot more noise. But I must say I was working without having it earth ground connected. The mains where I did the measurements hasn’t got an earths ground connection. I’ve to check if that makes a difference, otherwise I’ve got some exploring to do.

What I also did was using a battery powered supply:
https://www.eevblog.com/forum/projects/battery-voltage-to-5v-regulation/
It probably gives the highest possible noise free and non capacitive coupled power one can get.   :-+
But the main reason for it was not having to transport the heavy bench power supply.
At the moment I’m doing an automated characterization with the SAG.
https://www.eevblog.com/forum/testgear/using-a-awg-and-a-scope-do-a-low-voltage-level-characterization-of-a-1n4005/
Doing the averaging via a script: like having a combination of the scopes averaging and eRes mode, and ending with extra resolution!
« Last Edit: April 16, 2019, 09:27:58 pm by HendriXML »
“I ‘d like to reincarnate as a dung beetle, ‘cause there’s nothing wrong with a shitty life, real misery comes from high expectations”
 


Share me

Digg  Facebook  SlashDot  Delicious  Technorati  Twitter  Google  Yahoo
Smf