Page 2 of 3

Re: Pre alpha version of c# scope app.

Posted: Fri Aug 31, 2018 10:12 am
by shop
No, I haven't DSO 112A. I have only DSO068. It would be very pleased If you will send me a dso112a. :)

Re: Pre alpha version of c# scope app.

Posted: Fri Aug 31, 2018 2:42 pm
by jye1
Please send you address to jyetech@163.com. We'll send the sample as soon as possible.

We also tested the app with DSO068. Please see attachment. It was found much more reliable.
DSO068-1.pdf
(402.46 KiB) Downloaded 562 times

Re: Pre alpha version of c# scope app.

Posted: Fri Aug 31, 2018 9:10 pm
by shop
Hello. Thank you for reply. I must admit that timebase is changeable. Blank timebase is only because there is a bug in this app causing possibly infinity loop while connecting with scope. So to avoid this, first state is set to none. After connection you can freely change timebase with limitation described in first post. I sent you my adress in e-mail you provided.

Re: Pre alpha version of c# scope app.

Posted: Tue Sep 04, 2018 6:51 pm
by shop
Hello, I have simple question. How is the correct way to retrieve correct voltage level from raw data in buffer? In original jyeLab i found :
Dup0 = osc->oscCh[0].BufDupA;
Dup1 = osc->oscCh[1].BufDupA;
// tmp2 = osc->oscCh[0].VPosOfs;
// tmp3 = osc->oscCh[1].VPosOfs;
tmp2 = osc->oscCh[0].Reference;
tmp3 = osc->oscCh[1].Reference;
// Determine transform factor for Ch 1 and Ch2
ddtmp1 = AnsiString(VSenInMicroVolt[osc->oscCh[0].Sen]).ToDouble();
ddtmp2 = AnsiString(VSenInMicroVolt[osc->oscCh[0].SenOrig]).ToDouble();
ftmp = ddtmp1/ddtmp2;
ddtmp1 = AnsiString(VSenInMicroVolt[osc->oscCh[1].Sen]).ToDouble();
ddtmp2 = AnsiString(VSenInMicroVolt[osc->oscCh[1].SenOrig]).ToDouble();
ftmp1 = ddtmp1/ddtmp2;
tmp0 = 0;
while(tmp0 < osc->oscRecLen) {
// *Dup0 = (sSIZE)((float)(*Dup0 + tmp2 - V0)/ftmp) + V0 - tmp2;
// *Dup1 = (sSIZE)((float)(*Dup1 + tmp3 - V0)/ftmp1) + V0 - tmp3;
*Dup0 = (sSIZE)((float)(*Dup0 - tmp2)/ftmp) + tmp2;
*Dup1 = (sSIZE)((float)(*Dup1 - tmp3)/ftmp1) + tmp3;
Dup0++;
Dup1++;
tmp0++;
}
// }
break;
Something messy is happening here. Maybe there is a simple formula. Thanks for help.

Re: Pre alpha version of c# scope app.

Posted: Wed Sep 05, 2018 3:09 am
by jye1
The real voltage level can be calculated with the parameters obtained by the GetParam command.

1 ) VPos + VPosOfs is corresponding to 0V level. Both VPos and VPosOfs are signed value. When VPos + VPosOfs = 0 it is corresponding to value 128 (the center) of ADC output.

2 ) With sensitivity (Volt/div) and vertical display resolution (point/div, this value is 25 for DSO112A and 10 for DSO068) we can get the (volt/point). The real volage (v) for an ADC output (V) can be calculated by

v = (V - (VPos + VPosOfs)) * (volt/point)

The codes in jyeLab were kind of mess because the grid resolutions are different between scope screen and PC screen. Some conversions are required.

Re: Pre alpha version of c# scope app.

Posted: Wed Sep 05, 2018 6:47 pm
by shop
New update! Many changes underhood. Now data is scaled:
((rawData - (128)) * (_voltPerDiv / ScopeConfig.PointsPerDiv));

I tried use v = (V - (VPos + VPosOfs)) * (volt/point) but maybe I'm lost something. I understand that (VPos + VPosOfs) is for calculating correct voltage while trace is moved away from zero offset. But I don't really understand how to calulate VPosOfs.

Re: Pre alpha version of c# scope app.

Posted: Sun Sep 09, 2018 4:35 pm
by jye1
Thank you for the new version. We will test it as soon as possible.

VPosOfs was set by performing VPos alignment by user. It is used to correct VPos error caused by opamp errors. By default its value is zero.

Re: Pre alpha version of c# scope app.

Posted: Wed Sep 12, 2018 12:46 am
by jye1
We tested the new version with DSO068. At the first run it was very good. All major features worked without problem. But later when we re-ran it it pop out an exception message at connecting to scope. See attachment. The message said something like "index exceeds array limit" (translated from the sentence in Chinese). But the scope showed connection was established.

This problem happened again and again even after the computer re-booted. We couldn't do further tests.
PCscope_0.png

Re: Pre alpha version of c# scope app.

Posted: Wed Sep 12, 2018 5:10 am
by shop
That's strange. Please try restore default settings to DSO068. I observed that there are some bugs in DSO068 (or maybe in my app) that may cause to froze scope. And in that situation received frames are corrupted. I'm also curious if this app works more reliable with DSO112A.

Re: Pre alpha version of c# scope app.

Posted: Thu Sep 27, 2018 7:11 pm
by shop
Hi there. I finally got into my hands DSO112. I've already commit some changes to github code. Stay tuned for more info. And as always, feel free to review code on github and make your own changes,